@font-face{font-family:Pretendard Variable;src:url(./PretendardVariable-CJuje-Rk.woff2) format("woff2-variations"),url(./PretendardVariable-CJuje-Rk.woff2) format("woff2");font-weight:45 920;font-style:normal;font-display:swap}:root{--bg: #f6f7f9;--panel: #ffffff;--panel-2: #f9fafb;--text: #1d2330;--muted: #6b7280;--border: #e3e6eb;--primary: #2f6fed;--primary-text: #ffffff;--primary-soft: #eaf1ff;--danger: #d93a3a;--danger-bg: #fbe4e4;--warn-bg: #fff6e0;--warn-text: #8a5a00;--ok-bg: #e3f6ea;--ok-text: #157a44;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 16px rgba(16, 24, 40, .06);--font: "Pretendard Variable", Pretendard, -apple-system, "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif;color-scheme:light;font-size:14px}@media (prefers-color-scheme: dark){:root{--bg: #15181e;--panel: #1d2129;--panel-2: #22272f;--text: #e6e8ec;--muted: #9aa3b2;--border: #2d333e;--primary: #5b8cff;--primary-text: #0f1420;--primary-soft: #22304d;--danger: #ff6b6b;--danger-bg: #3a1c1c;--warn-bg: #3a2f14;--warn-text: #f3c969;--ok-bg: #163327;--ok-text: #5fd996;--shadow: 0 1px 2px rgba(0, 0, 0, .3);color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:1rem/1.5 var(--font);-webkit-font-smoothing:antialiased}h1{font-size:1.5rem;margin:0;letter-spacing:-.01em}h2{font-size:1.143rem;margin:0 0 10px;display:flex;align-items:center;gap:6px}h3{font-size:1.071rem;margin:0}p{margin:0 0 8px}a{color:var(--primary);text-decoration:none}input,select,textarea,button,.btn{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:7px 12px}input,select,textarea{width:100%}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--primary) 40%,transparent);outline-offset:-1px;border-color:var(--primary)}textarea{resize:vertical}button,.btn{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}button:hover:not(:disabled),.btn:hover{background:var(--panel-2)}button:disabled{opacity:.5;cursor:default}button.primary,.btn.primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary);font-weight:600}button.primary:hover:not(:disabled),.btn.primary:hover{background:color-mix(in srgb,var(--primary) 88%,black)}button.primary-outline{color:var(--primary);border-color:var(--primary)}button.danger{color:var(--danger);border-color:var(--danger)}button.danger.solid{background:var(--danger);color:#fff}button.ghost{border-color:transparent;background:transparent}button.ghost:hover:not(:disabled){background:var(--panel-2)}button.icon{padding:6px;border-color:transparent;background:transparent}button.small{padding:3px 9px;font-size:.857rem;border-radius:6px}button.big{padding:10px;font-size:1.071rem}button.link{border:none;background:none;color:var(--primary);padding:4px 0}.muted{color:var(--muted)}.small{font-size:.857rem}.error{color:var(--danger)}.ok-text{color:var(--ok-text)}.warn-text{color:var(--warn-text)}.danger-text{color:var(--danger)}.pre{white-space:pre-wrap;word-break:break-word}.center{min-height:100vh;display:grid;place-items:center}.center-text{text-align:center}.spacer{flex:1}.stack{display:flex;flex-direction:column;gap:12px}.row-end{display:flex;justify-content:flex-end;gap:8px}.pad{padding:10px 14px;margin:0}.empty{color:var(--muted);padding:28px;text-align:center}.count{font-size:.857rem;color:var(--muted);font-weight:500}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.929rem;font-weight:600}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px 20px;box-shadow:var(--shadow)}.field{display:flex;flex-direction:column;gap:5px;font-size:.929rem}.field>span{font-weight:500}.field em{font-style:normal;font-weight:400;color:var(--muted)}.field em.req{color:var(--danger)}.badge{display:inline-flex;align-items:center;gap:3px;font-size:.786rem;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.badge.muted{color:var(--muted);border-color:var(--border);background:var(--panel)}.badge.info{color:var(--primary);background:var(--primary-soft)}.badge.brand{color:var(--primary-text);background:var(--primary)}.badge.warn{color:var(--warn-text);background:var(--warn-bg)}.badge.ok{color:var(--ok-text);background:var(--ok-bg)}.badge.danger{color:var(--danger);background:var(--danger-bg)}.callout{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:10px;margin:0 0 14px;border:1px solid transparent}.callout>svg{flex-shrink:0;margin-top:2px}.callout.warn{background:var(--warn-bg);color:var(--warn-text)}.callout.ok{background:var(--ok-bg);color:var(--ok-text)}.callout.info{background:var(--primary-soft);color:var(--text)}.callout.plain{background:var(--panel);border-color:var(--border)}.callout.big{padding:16px 18px;font-size:1.036rem;border:1px solid color-mix(in srgb,var(--warn-text) 30%,transparent)}.callout.big b{display:block;margin-bottom:4px}.callout.small{padding:8px 10px;font-size:.857rem;margin:8px 0}.bar{height:6px;background:var(--border);border-radius:99px;overflow:hidden}.bar>div{height:100%;background:var(--primary);transition:width .3s}.bar.thin{height:4px;margin-top:4px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at top,var(--primary-soft),var(--bg) 60%)}.login{width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px;padding:28px}.login-brand{display:flex;gap:12px;align-items:center;margin-bottom:6px}.login-brand .brand-name{font-size:1.286rem;font-weight:700}.logo{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--primary);color:#fff;flex-shrink:0}.logo.sm{width:28px;height:28px;border-radius:8px}.topbar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--panel) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.topbar-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:8px 16px;height:56px}.brand{display:flex;align-items:center;gap:8px;color:var(--text);font-weight:700}.tabs{display:flex;gap:2px;margin-left:12px}.tabs a{padding:6px 12px;border-radius:8px;color:var(--muted);font-weight:500}.tabs a:hover{background:var(--panel-2);color:var(--text)}.tabs a.on{color:var(--primary);background:var(--primary-soft)}.menu-wrap{position:relative}.acct{gap:4px}.bell{position:relative}.bell .dot{position:absolute;top:0;right:-2px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--danger);color:#fff;font-size:.714rem;font-weight:700;display:grid;place-items:center}.dropdown{position:absolute;top:calc(100% + 6px);min-width:200px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 30px #00000026;z-index:30;overflow:hidden}.dropdown.right{right:0}.dropdown-head{padding:10px 14px;border-bottom:1px solid var(--border)}.menu-item{width:100%;justify-content:flex-start;border:none;border-radius:0;padding:10px 14px;gap:8px;background:none}.notif{width:360px;max-width:calc(100vw - 24px)}.notif-list{max-height:420px;overflow-y:auto}.notif-item{width:100%;display:block;text-align:left;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:10px 14px;background:none;white-space:normal}.notif-item.unread{background:var(--primary-soft)}.notif-item.unread .notif-title:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--primary);margin-right:6px;vertical-align:middle}.notif-item.lv-warn .notif-title,.notif-item.lv-urgent .notif-title{color:var(--warn-text)}.notif-title{font-weight:600}.notif-body{font-size:.857rem;color:var(--muted);white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.main{max-width:1200px;margin:0 auto;padding:20px 16px 120px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{margin:22px 0 10px}.back{display:inline-flex;align-items:center;gap:4px;color:var(--muted);margin-bottom:12px}.back:hover{color:var(--text)}.group{margin-bottom:22px}.group-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.group-head h2{margin:0}.req-list{display:flex;flex-direction:column;gap:8px}.req-row{display:flex;align-items:center;gap:16px;padding:14px 16px;color:var(--text);transition:border-color .15s}.req-row:hover{border-color:var(--primary)}.req-main{flex:1;min-width:0}.req-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:3px}.req-product{font-size:1.036rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-side{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:2px;font-size:.929rem}.req-meta{display:flex;align-items:center;gap:5px}.chev{color:var(--muted);flex-shrink:0}.due.over{color:var(--danger);font-weight:700}.due.soon{color:var(--warn-text);font-weight:700}.show-done{margin-top:4px;color:var(--muted)}.head-card{margin-bottom:14px}.head-top{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.product-title{font-size:1.429rem;margin:2px 0}.pcode{color:var(--primary)}.head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px 20px;margin:16px 0 0}.facts.compact{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));margin:12px 0;gap:8px 16px}.facts dt{font-size:.786rem;color:var(--muted)}.facts dd{margin:0;font-weight:500;word-break:break-word}.note-box{margin-top:14px;padding:12px 14px;background:var(--panel-2);border-radius:8px;border:1px solid var(--border)}.note-label{font-size:.786rem;color:var(--muted);font-weight:600;margin-right:4px}.events{margin-bottom:14px}.events ul{list-style:none;padding:0;margin:0 0 4px}.events li{display:flex;gap:14px;padding:6px 0;border-bottom:1px dashed var(--border)}.events li:last-child{border-bottom:none}.ev-time{width:120px;flex-shrink:0}.ev-body{display:flex;flex-direction:column}.ev-note{color:var(--muted);font-size:.929rem}.refs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.small-refs{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));margin:10px 0}.ref{display:flex;flex-direction:column;align-items:stretch;padding:0;border-radius:8px;overflow:hidden;white-space:normal}.ref-name{font-size:.786rem;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.shot{margin-bottom:12px}.shot.full{border-color:color-mix(in srgb,var(--ok-text) 35%,var(--border))}.shot-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.shot-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.seq{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--panel-2);border:1px solid var(--border);font-size:.857rem;font-weight:700}.shot-counts{font-size:.929rem;display:flex;align-items:center;gap:2px}.shot-counts svg{vertical-align:-2px}.shot-spec{font-size:.929rem;background:var(--panel-2);border-radius:8px;padding:8px 12px;margin-bottom:10px;display:flex;flex-direction:column;gap:3px}.unsorted{border-style:dashed}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:12px}.tile{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--panel);display:flex;flex-direction:column}.tile.s-rejected{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.tile.s-approved{border-color:color-mix(in srgb,var(--ok-text) 40%,var(--border))}.tile.dim{opacity:.6}.tile-img{position:relative;padding:0;border:none;border-radius:0;display:block;width:100%;background:var(--panel-2)}.tile-img:hover:not(:disabled){background:var(--panel-2);filter:brightness(.96)}.tile-img:disabled{opacity:1}.on-img{position:absolute;top:6px;left:6px;box-shadow:0 1px 3px #00000026}.badge.muted.on-img{background:var(--panel)}.round-tag{position:absolute;top:6px;right:6px;font-size:.714rem;padding:1px 6px;border-radius:6px;background:#0000008c;color:#fff}.thumb{aspect-ratio:1 / 1;width:100%;display:grid;place-items:center;overflow:hidden;background:var(--panel-2)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.ext-tile{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-weight:700;font-size:.929rem}.ext-tile .sub{font-weight:400;font-size:.786rem}.tile-info{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;font-size:.929rem;min-width:0}.tile-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-warn{color:var(--warn-text);background:var(--warn-bg);border-radius:6px;padding:4px 6px;font-size:.786rem}.tile-warn svg{vertical-align:-2px}.tile-reject{color:var(--danger);background:var(--danger-bg);border-radius:6px;padding:5px 7px;font-size:.857rem}.tile-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.tile-actions:empty{display:none}select.move{padding:4px 8px;font-size:.857rem}select.move.small{width:auto;max-width:100%}.dropzone{border:2px dashed var(--border);border-radius:10px;padding:22px 16px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);text-align:center;transition:all .15s}.dropzone.compact{flex-direction:row;justify-content:center;flex-wrap:wrap;padding:12px}.dropzone.over{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.dropzone.off{background:var(--panel-2);border-style:solid;font-size:.929rem}.dz-buttons{display:inline-flex;gap:6px}.overlay{position:fixed;inset:0;background:#0a0e168c;z-index:50;display:grid;place-items:center;padding:16px}.modal{background:var(--panel);border-radius:14px;width:100%;max-width:480px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal.wide{max-width:min(1100px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--border)}.modal-head h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-body{padding:16px 18px;overflow:auto}.modal-foot{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:12px 18px;border-top:1px solid var(--border);flex-wrap:wrap}.dialog-desc{margin-bottom:12px}.viewer{display:grid;place-items:center;min-height:200px}.viewer img,.viewer video{max-width:100%;max-height:calc(100vh - 220px);object-fit:contain;border-radius:6px;background:#000}.no-preview{display:flex;flex-direction:column;align-items:center;gap:12px}.no-preview .thumb{width:240px;border-radius:8px}.upload-panel{position:fixed;right:16px;bottom:16px;width:380px;max-width:calc(100vw - 32px);background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 40px #0000002e;z-index:40;overflow:hidden}.up-head{display:flex;align-items:center;gap:8px;padding:10px 12px}.up-title{flex:1;font-weight:600;font-size:.929rem;min-width:0}.upload-panel>.bar{border-radius:0;height:3px}.up-list{max-height:320px;overflow-y:auto;border-top:1px solid var(--border)}.up-row{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border)}.up-row:last-child{border-bottom:none}.up-icon{width:38px;flex-shrink:0;display:grid;place-items:center;font-size:.786rem;color:var(--muted)}.up-row.s-done .up-icon{color:var(--ok-text)}.up-row.s-error .up-icon{color:var(--danger)}.up-row.s-skipped .up-icon{color:var(--warn-text)}.up-main{flex:1;min-width:0}.up-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.929rem}.settle-grid{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}.settle-main>.card{margin-bottom:12px}.settle-side{position:sticky;top:72px}.settle-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.settle-net{text-align:right}.amount{font-size:1.357rem;font-weight:700}.settle.s-paid{border-color:var(--primary)}.settle.s-disputed{border-color:var(--danger)}.settle-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.table{width:100%;border-collapse:collapse;font-size:.929rem;margin-top:6px}.table th{text-align:left;font-weight:500;color:var(--muted);font-size:.857rem}.table th,.table td{padding:7px 6px;border-bottom:1px solid var(--border)}.table tfoot td{font-weight:700;border-bottom:none}.num{text-align:right;white-space:nowrap}.payee h2 svg{color:var(--primary)}.tax-help{background:var(--panel-2);border-radius:8px;padding:10px 12px;margin-bottom:14px;display:flex;flex-direction:column;gap:4px}.payee-view{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.payee-row{display:flex;gap:10px;align-items:flex-start}.payee-row svg{margin-top:3px;color:var(--muted)}.seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.seg button{border:none;border-radius:0;flex:1}.seg button.on{background:var(--primary);color:var(--primary-text);font-weight:600}@media (max-width: 860px){.settle-grid{grid-template-columns:1fr}.settle-side{position:static;order:-1}}@media (max-width: 640px){.topbar-in{gap:6px;padding:8px 12px}.brand-name{display:none}.login-brand .brand-name{display:block}.tabs{margin-left:4px}.tabs a{padding:6px 8px}.acct-name{max-width:70px;overflow:hidden;text-overflow:ellipsis}.main{padding:14px 16px 140px}.card{padding:14px 16px}.req-row{flex-direction:column;align-items:stretch;gap:8px}.req-side{width:auto}.chev{display:none}.head-actions{width:100%}.head-actions button.primary,.head-actions button.danger{flex:1}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.events li{flex-direction:column;gap:0}.upload-panel{right:8px;left:8px;bottom:8px;width:auto;max-width:none}.dz-buttons{width:100%;justify-content:center}}.sync-banner{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.sync-banner .sync-links{display:flex;gap:14px;margin:6px 0;font-weight:600}.sync-banner .small{font-size:12px}.mark-stage{position:relative;display:inline-block;max-width:100%;line-height:0}.mark-stage img{max-width:100%;max-height:calc(100vh - 260px);display:block;border-radius:6px}.mark-box{position:absolute;border:2px solid var(--danger);box-shadow:0 0 0 1px #ffffffbf;background:#d93a3a14;line-height:normal}.mark-box .mark-num{position:absolute;left:-9px;top:-9px}.mark-num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border-radius:50%;background:var(--danger);color:#fff;font-size:11px;font-weight:700;line-height:1}.mark-notes{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;justify-self:stretch}.mark-notes li{display:flex;align-items:center;gap:6px}.mark-notes.compact{margin-top:4px;font-size:.857rem}.mark-notes.compact .mark-num{width:15px;height:15px;font-size:10px}
