/* PEIRU 4.3 — premium dark workspace skin. Presentation only; no PDF/editor logic changed. */
:root{--peiru-night:#07111f;--peiru-panel:#0e1d32;--peiru-stroke:rgba(137,177,232,.18);--peiru-blue:#3995ff;--peiru-cyan:#75e1ef}
body.peiru-app{font-family:'Pretendard Variable','Pretendard','Malgun Gothic',sans-serif;letter-spacing:-.025em}
body.peiru-app .topbar{background:linear-gradient(100deg,rgba(8,16,31,.97),rgba(13,28,49,.95) 60%,rgba(8,16,31,.97));border-bottom:1px solid rgba(128,171,236,.16);box-shadow:0 10px 36px #030b1640;backdrop-filter:blur(22px)}
body.peiru-app .brand-logo{background:linear-gradient(145deg,#369dff,#1763f0 63%,#164cbd);border:1px solid rgba(161,206,255,.5);box-shadow:0 0 0 4px #2676f519,0 6px 24px #0b64fa70,inset 0 1px 3px #ffffff55}
body.peiru-app .top-action,body.peiru-app .btn-primary{background:linear-gradient(105deg,#247bf5,#3168f5 64%,#1856cf);box-shadow:inset 0 1px #ffffff39,0 10px 28px #126afa40;transition:filter .2s,transform .2s,box-shadow .2s}
body.peiru-app .top-action:hover,body.peiru-app .btn-primary:hover{filter:brightness(1.12);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff49,0 14px 34px #126afa60}
body.peiru-app :is(button,a,input,select,summary):focus-visible{outline:2px solid #79c9ff;outline-offset:3px}
/* The report showcase occupies a polished optical workspace instead of an empty flat navy field. */
.peiru-home .hero{background:radial-gradient(ellipse 47% 87% at 73% 47%,rgba(25,77,133,.42),transparent 80%),radial-gradient(ellipse 29% 45% at 92% 36%,rgba(21,53,101,.30),transparent 87%),radial-gradient(ellipse 43% 82% at 23% 90%,rgba(3,29,54,.30),transparent 90%),linear-gradient(112deg,#06111f 5%,#0b1a30 57%,#071323 100%)}
.peiru-home .hero:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(90deg,transparent 0%,rgba(64,122,186,.045) 55%,transparent 100%);opacity:.7}
.peiru-home .hero .hero-orbit-one{width:520px;height:365px;right:6%;top:15%;background:radial-gradient(ellipse,#3b8be9 0%,#154778 48%,transparent 72%);filter:blur(70px);opacity:.26}
.peiru-home .hero .hero-orbit-two{width:360px;height:200px;right:14%;bottom:4%;background:#1e88d0;filter:blur(90px);opacity:.16}
.peiru-home .hero-visual{z-index:1;isolation:isolate;overflow:visible}
.peiru-home .hero-visual:before{content:'';position:absolute;inset:5% 0 6%;pointer-events:none;z-index:-2;background-image:linear-gradient(rgba(119,164,231,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(119,164,231,.08) 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse at 48% 49%,#000 10%,transparent 77%);-webkit-mask-image:radial-gradient(ellipse at 48% 49%,#000 10%,transparent 77%);transform:perspective(650px) rotateX(6deg)}
.peiru-home .hero-visual:after{content:'';position:absolute;z-index:-1;pointer-events:none;width:72%;height:69%;top:11%;left:14%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(27,101,194,.44),rgba(14,61,120,.18) 45%,transparent 72%);filter:blur(25px)}
.peiru-home .visual-halo{inset:11% 2% 7%;background:radial-gradient(ellipse at 48% 48%,rgba(76,152,248,.27),transparent 69%);filter:blur(36px)}
.peiru-home .visual-stack{filter:drop-shadow(0 31px 34px rgba(0,4,15,.55)) drop-shadow(0 4px 45px rgba(47,133,244,.11));transition:transform .5s ease}
@media (hover:hover) and (min-width:1000px){.peiru-home .hero-visual:hover .visual-stack{transform:translateY(-7px) rotate(-.6deg)}}
.peiru-home .visual-sheet.sheet-front{box-shadow:0 6px 16px #03142e4d,0 27px 70px rgba(0,5,16,.68),0 0 0 1px rgba(255,255,255,.33)}
.peiru-home .visual-sheet.sheet-middle{box-shadow:0 16px 40px #0008}.peiru-home .visual-sheet.sheet-back{box-shadow:0 18px 44px #0008}
.peiru-home .stage-kicker{position:absolute;left:3.5%;top:11%;display:flex;align-items:center;gap:8px;font-family:'Pretendard',sans-serif;font-size:10px;letter-spacing:.18em;font-weight:700;color:#a5c6e9;pointer-events:none;text-shadow:0 1px 18px #0a1830}
.peiru-home .stage-kicker:before{content:'';width:6px;height:6px;border-radius:50%;background:#61ccff;box-shadow:0 0 0 4px #38a7fe24,0 0 14px #5ac1ff}
.peiru-home .stage-metric{position:absolute;right:0;bottom:15%;display:flex;gap:10px;align-items:center;color:#d0e5fa;border:1px solid rgba(123,181,249,.26);background:linear-gradient(115deg,rgba(16,38,69,.89),rgba(13,30,55,.74));backdrop-filter:blur(16px);box-shadow:0 13px 35px #0308146e,inset 0 1px #ffffff14;padding:10px 13px;border-radius:10px;transform:rotate(1deg);pointer-events:none;z-index:5}
.peiru-home .stage-metric b{font-size:11px;font-weight:750;color:#e8f3ff}.peiru-home .stage-metric small{display:block;color:#8eaccf;font-size:9px;margin-top:3px;letter-spacing:.02em}
.peiru-home .metric-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:15px;color:#7edaff;background:#1a4a77;border:1px solid #3b7dab}
.peiru-home .stage-sidecode{position:absolute;left:2%;bottom:14%;font-size:9px;letter-spacing:.14em;line-height:1.8;color:#7898bf;opacity:.8;pointer-events:none;writing-mode:vertical-rl;transform:rotate(180deg)}
.peiru-home .stage-rule{position:absolute;z-index:-1;pointer-events:none;left:4%;right:3%;bottom:10%;height:1px;background:linear-gradient(90deg,transparent,#4386c54d,#80c5fa48,transparent)}
.peiru-home .hero-note{color:#b3d9ff;text-shadow:0 2px 17px #0009}
.peiru-home .quick-start{background:linear-gradient(140deg,rgba(15,32,55,.93),rgba(10,25,44,.88));border:1px solid rgba(114,160,223,.38);box-shadow:0 22px 55px #0005,inset 0 1px rgba(255,255,255,.05);backdrop-filter:blur(18px);border-radius:16px}
.peiru-home .quick-start:before{content:'';position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(138,197,255,.50),transparent);pointer-events:none}
.peiru-home .drop-area{background:linear-gradient(140deg,#142844aa,#12264077);border-color:#497aaf}.peiru-home .drop-area:hover{box-shadow:inset 0 0 0 1px #408ee554}
.peiru-home .tool-tile{box-shadow:0 14px 30px #02081735,inset 0 1px #ffffff10;border-color:rgba(110,158,225,.23);background:linear-gradient(143deg,#15243b,#0d1b2e)}
.peiru-home .tool-tile:hover{box-shadow:0 19px 38px #02081765,0 0 0 1px #2f7fdc26;transform:translateY(-4px)}
/* The editor uses the same visual language, keeping the paper preview dominant. */
.peiru-editor-premium{background:radial-gradient(ellipse 65% 65% at 80% 32%,#102847,#081321 80%),#071221}
.peiru-editor-premium .editor-shell{gap:20px}
.peiru-editor-premium .edit-card{background:linear-gradient(145deg,rgba(19,37,61,.96),rgba(11,26,46,.94));border:1px solid rgba(126,170,230,.22);box-shadow:0 13px 32px #0209122b,inset 0 1px #ffffff0a;border-radius:17px}
.peiru-editor-premium .edit-card h2{color:#f5f9ff;font-weight:740;letter-spacing:-.038em}
.peiru-editor-premium .edit-card .card-desc{color:#a7bad5}
.peiru-editor-premium .step-num{background:linear-gradient(150deg,#429cff,#185ae4);box-shadow:0 3px 12px #1c77ed5e}
.peiru-editor-premium .field input,.peiru-editor-premium .field select{background:#0b1a2d;border-color:#355370;color:#edf5ff}
.peiru-editor-premium .drop-area{background:linear-gradient(140deg,#112947,#102239);border-color:#4676ad;border-radius:12px}
.peiru-editor-premium .brand-advanced{border-color:#426282;background:linear-gradient(140deg,#132b49,#10223a)}
.peiru-editor-premium .editor-preview{border:1px solid rgba(103,161,238,.25);background:linear-gradient(145deg,#102038,#081526);box-shadow:0 20px 60px #0005,inset 0 1px #ffffff0c;border-radius:18px}
.peiru-editor-premium .preview-toolbar{background:linear-gradient(100deg,#122740,#0c1c33);border-color:#304766}
.peiru-editor-premium .preview-toolbar>span{color:#e8f5ff}
.peiru-editor-premium .preview-scroller{position:relative;isolation:isolate;background:radial-gradient(ellipse 67% 78% at 50% 40%,#24476b 0%,#102743 39%,#091626 88%)}
.peiru-editor-premium .preview-scroller:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#7eaddb16 1px,transparent 1px),linear-gradient(90deg,#7eaddb16 1px,transparent 1px);background-size:29px 29px;mask-image:radial-gradient(ellipse at 50% 45%,#000 13%,transparent 82%);-webkit-mask-image:radial-gradient(ellipse at 50% 45%,#000 13%,transparent 82%)}
.peiru-editor-premium .preview-scroller canvas{position:relative;z-index:1;box-shadow:0 8px 20px #0005,0 26px 80px #000b,0 0 0 1px #ffffff0a}
.peiru-editor-premium .preview-pager{background:#0e1d31;border-color:#304766}
.peiru-editor-premium .icon-btn{background:linear-gradient(145deg,#1c3250,#142640);border:1px solid #385a80;color:#e3f1ff}
.peiru-editor-premium .icon-btn:hover,.peiru-editor-premium .icon-btn.active{background:#2056a0}
.peiru-editor-premium .photo-unit{background:#14273f;border-color:#385674;box-shadow:0 4px 14px #030b173d}
.peiru-editor-premium .photo-unit:focus-within{border-color:#5daaff}
@media (max-width:1100px){.peiru-home .stage-metric{right:1%;bottom:12%}.peiru-home .stage-kicker{left:5%;top:6%}}
@media (max-width:740px){.peiru-home .hero-visual:before{inset:3% 1% 6%;background-size:25px 25px}.peiru-home .stage-kicker{left:6%;top:5%;font-size:8px}.peiru-home .stage-metric{right:2%;bottom:7%;padding:8px}.peiru-home .stage-metric b{font-size:10px}.peiru-home .stage-sidecode{display:none}.peiru-home .hero-visual:after{height:75%}.peiru-editor-premium .editor-shell{gap:13px}.peiru-editor-premium .preview-scroller{min-height:430px}}
@media (prefers-reduced-motion:reduce){.peiru-home .visual-stack,body.peiru-app .btn-primary,body.peiru-app .top-action{transition:none!important}}
/* Smaller screens: preserve the photo sheet as the visual focus. */
@media (min-width:741px) and (max-width:1450px){.peiru-home .stage-metric,.peiru-home .hero-note{display:none}}
@media (max-width:740px){.peiru-home .stage-metric,.peiru-home .hero-note,.peiru-home .stage-kicker{display:none}.peiru-home .hero-visual .preview-link{bottom:0;right:3%;transform:none}.peiru-home .hero-visual{padding-bottom:14px}}

/* 4.4 photo metadata inputs: date + content */
.peiru-editor-premium .photo-meta-fields{display:grid;grid-template-columns:minmax(110px,0.8fr) minmax(130px,1.6fr);gap:9px;margin:9px 0 10px}
.peiru-editor-premium .photo-meta-fields label{display:flex;flex-direction:column;gap:5px;color:#b9cee9;font-size:11px;font-weight:700;min-width:0}
.peiru-editor-premium .photo-meta-fields input{width:100%;min-width:0;box-sizing:border-box;background:#0c1c31;border:1px solid #45617d;border-radius:8px;color:#ecf3ff;padding:9px 8px;font:inherit;font-size:12px}
.peiru-editor-premium .photo-meta-fields input:focus{outline:2px solid #397dff;outline-offset:1px}
@media(max-width:440px){.peiru-editor-premium .photo-meta-fields{grid-template-columns:1fr}}
/* Compact photo cards still need full-width date pickers and content inputs. */
.peiru-editor-premium .photo-meta-fields{display:flex;flex-direction:column;gap:7px}
.peiru-editor-premium .photo-meta-fields label{width:100%}
.peiru-editor-premium .photo-meta-fields input{width:100%;max-width:100%;box-sizing:border-box}

/* PEIRU 4.4.1: keep photo cards and delete buttons stable with long filenames */
.peiru-editor-premium .photo-unit-document{min-width:0;max-width:100%;isolation:isolate}
.peiru-editor-premium .photo-unit-document .photo-unit-head{display:block;min-width:0;max-width:100%;overflow:hidden;padding:7px 9px}
.peiru-editor-premium .photo-unit-filename{display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.45}
.peiru-editor-premium .photo-unit-delete{position:absolute;top:7px;right:7px;z-index:3;display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid rgba(232,242,255,.3);border-radius:8px;background:rgba(13,25,43,.86);box-shadow:0 2px 9px rgba(0,0,0,.25);color:#fff;font-size:19px;line-height:1;cursor:pointer;opacity:1}
.peiru-editor-premium .photo-unit-delete:hover,.peiru-editor-premium .photo-unit-delete:focus-visible{background:#a52b46;border-color:#f9a4b4;outline-offset:2px}
.peiru-editor-premium .photo-unit-document .photo-tools{min-width:0}
.peiru-editor-premium .photo-unit-document .photo-tools button{min-width:0}

/* PEIRU 4.4.3: compact bulk metadata editing, unobtrusive by default */
.peiru-editor-premium .bulk-panel{margin:12px 0 0;border:1px solid rgba(104,170,244,.38);background:linear-gradient(145deg,#102944,#0c2038);border-radius:12px;overflow:hidden}
.peiru-editor-premium .bulk-panel summary{display:flex;align-items:center;gap:8px;padding:12px 13px;cursor:pointer;color:#dfedff;font-size:13px;font-weight:800;list-style:none}
.peiru-editor-premium .bulk-panel summary::-webkit-details-marker{display:none}
.peiru-editor-premium .bulk-panel summary:hover{background:rgba(39,119,228,.09)}
.peiru-editor-premium .bulk-panel .bulk-arrow{margin-left:auto;font-size:16px;color:#94c7ff;transition:transform .2s}
.peiru-editor-premium .bulk-panel[open] .bulk-arrow{transform:rotate(180deg)}
.peiru-editor-premium .bulk-inner{padding:3px 12px 13px;border-top:1px solid rgba(120,161,217,.14)}
.peiru-editor-premium .bulk-tip{font-size:11px;color:#a9c2df;margin:9px 0}
.peiru-editor-premium .bulk-fields{display:flex;flex-direction:column;gap:9px}
.peiru-editor-premium .bulk-fields label{display:flex;flex-direction:column;gap:5px;min-width:0;color:#c9dbf3;font-weight:700;font-size:11px}
.peiru-editor-premium .bulk-fields input{width:100%;min-width:0;box-sizing:border-box;background:#0a1b30;border:1px solid #406185;border-radius:9px;padding:10px;color:#edf5ff;font-size:12px;color-scheme:dark}
.peiru-editor-premium .bulk-fields input::placeholder{color:#7793b1}
.peiru-editor-premium .bulk-options{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px}
.peiru-editor-premium .bulk-target-label{font-size:11px;font-weight:700;color:#c9dbf3}
.peiru-editor-premium .bulk-options select{flex:1;min-width:112px;padding:9px 7px;border-radius:9px;border:1px solid #42678c;background:#102641;color:#e7f2ff;font-size:12px}
.peiru-editor-premium .bulk-blank{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:11px;color:#b9d0e8}
.peiru-editor-premium .bulk-blank input,.peiru-editor-premium .photo-select-check input{width:15px;height:15px;accent-color:#318aff;margin:0}
.peiru-editor-premium .bulk-selection-tools{align-items:center;justify-content:space-between;gap:8px;margin-top:9px;padding:7px 9px;border:1px dashed #3d638d;border-radius:9px;color:#bdd8f6;font-size:11px}
.peiru-editor-premium .bulk-selection-tools:not([hidden]){display:flex}
.peiru-editor-premium .bulk-selection-tools button{border:0;background:transparent;color:#8dc5ff;font-size:11px;font-weight:750;padding:4px;cursor:pointer}
.peiru-editor-premium .bulk-actions{display:flex;gap:8px;align-items:center;margin-top:12px}
.peiru-editor-premium .bulk-actions .btn-primary{padding:11px 15px;font-size:12px;flex:1}
.peiru-editor-premium .bulk-undo{color:#c1d9f7;background:#1c3454;border:1px solid #45668f;border-radius:9px;padding:10px 12px;font-size:11px;cursor:pointer}
.peiru-editor-premium .bulk-message{margin:8px 0 0;font-size:11px;line-height:1.5;color:#9bb6d4}
.peiru-editor-premium .photo-select-check{position:absolute;top:7px;left:7px;z-index:4;display:none;align-items:center;gap:5px;border:1px solid #729bd0;border-radius:8px;background:rgba(10,27,50,.88);padding:6px 7px;color:white;font-size:11px;cursor:pointer}
.peiru-editor-premium .photo-list.bulk-select-mode .photo-select-check{display:flex}
.peiru-editor-premium .photo-unit.bulk-is-selected{border-color:#65aafc;box-shadow:0 0 0 2px rgba(51,145,255,.25)}
@media(max-width:390px){.peiru-editor-premium .bulk-options{align-items:flex-start}.peiru-editor-premium .bulk-options select{width:100%;flex:auto}}
