:root{--color-bg-canvas:#f3f5f9;--color-bg-surface:#fff;--color-bg-subtle:#f7f8fb;--color-bg-muted:#eef1f6;--color-fg-default:#16202e;--color-fg-muted:#5f6b7a;--color-fg-faint:#98a2b3;--color-fg-on-accent:#fff;--color-accent-primary:#3b5bdb;--color-accent-primary-hover:#2f4bc0;--color-accent-primary-soft:#e8edfb;--color-accent-primary-ring:#3b5bdb47;--color-success:#1b8a4c;--color-success-soft:#e3f5ea;--color-warning:#b26a00;--color-warning-soft:#fff4dc;--color-critical:#d13b3b;--color-critical-soft:#fdecec;--color-border-subtle:#e3e7ee;--color-border-strong:#c9d0db;--color-border-critical:#e88a8a;--font-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-heading-xl:26px;--text-heading-l:20px;--text-heading-m:16px;--text-body:14.5px;--text-body-small:13px;--text-caption:12px;--leading:1.55;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:56px;--radius-s:8px;--radius-m:12px;--radius-l:16px;--radius-pill:999px;--shadow-s:0 1px 2px #1018280f, 0 1px 3px #1018280a;--shadow-m:0 4px 14px #10182814;--shadow-l:0 18px 50px #1018282e;--control-h:40px;--control-h-sm:32px;--c-primary:var(--color-accent-primary);--c-danger:var(--color-critical);--c-ok:var(--color-success);--c-border:var(--color-border-subtle);--c-text:var(--color-fg-default);--c-text-sub:var(--color-fg-muted);font-family:var(--font-sans);color:var(--color-fg-default);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg-canvas);font-size:var(--text-body);line-height:var(--leading);margin:0}h1{font-size:var(--text-heading-xl);letter-spacing:-.02em;margin:0 0 var(--space-3);font-weight:700}h2{font-size:var(--text-heading-m);letter-spacing:-.01em;margin:0 0 var(--space-3);font-weight:700}h3{font-size:var(--text-body);margin:0 0 var(--space-2);font-weight:700}p{margin:0 0 var(--space-2)}a{color:var(--color-accent-primary);text-decoration:none}a:hover{text-decoration:underline}hr{border:none;border-top:1px solid var(--color-border-subtle);margin:var(--space-4) 0}:focus-visible{outline:3px solid var(--color-accent-primary-ring);outline-offset:2px}.btn{height:var(--control-h);padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-s);background:var(--color-bg-surface);color:var(--color-fg-default);font:inherit;font-size:var(--text-body);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:hover:not(:disabled){background:var(--color-bg-subtle);border-color:var(--color-fg-faint)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-fg-on-accent);box-shadow:var(--shadow-s)}.btn-primary:hover:not(:disabled){background:var(--color-accent-primary-hover);border-color:var(--color-accent-primary-hover)}.btn-danger{background:var(--color-bg-surface);border-color:var(--color-border-critical);color:var(--color-critical)}.btn-danger:hover:not(:disabled){background:var(--color-critical-soft);border-color:var(--color-critical)}.btn-ghost{color:var(--color-fg-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-bg-muted);color:var(--color-fg-default);border-color:#0000}.btn-sm{height:var(--control-h-sm);padding:0 var(--space-3);font-size:var(--text-body-small)}.btn-lg{height:48px;padding:0 var(--space-5);font-size:15px}.btn-block{width:100%}input,select,textarea{font:inherit;font-size:var(--text-body);height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-s);background:var(--color-bg-surface);color:var(--color-fg-default);transition:border-color .15s,box-shadow .15s}textarea{height:auto;padding:var(--space-2) var(--space-3)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235f6b7a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}input:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--color-fg-faint)}input:focus,select:focus,textarea:focus{border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-primary-ring);outline:none}input:disabled,select:disabled,textarea:disabled{background:var(--color-bg-muted);color:var(--color-fg-muted);cursor:not-allowed}input.invalid{border-color:var(--color-critical);background:var(--color-critical-soft)}input::placeholder{color:var(--color-fg-faint)}input[type=number]{font-variant-numeric:tabular-nums}label{font-size:var(--text-body-small);color:var(--color-fg-muted);font-weight:600}.field{margin-bottom:var(--space-3);flex-direction:column;gap:6px;display:flex}.form-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.quant-item-picker{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-m);background:var(--color-accent-primary-soft);flex-wrap:wrap;display:flex}.quant-item-picker-label{color:var(--color-accent-primary);font-weight:700}.quant-item-picker .check-row{height:auto}.quant-item-picker .help-text{flex-basis:100%}.check-row{gap:var(--space-4);height:var(--control-h);flex-wrap:wrap;align-items:center;display:flex}.check{font-size:var(--text-body);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--color-accent-primary);margin:0}.error-text{color:var(--color-critical);font-size:var(--text-body-small);white-space:pre-line}.help-text{color:var(--color-fg-muted);font-size:var(--text-caption)}.admin-header{z-index:50;justify-content:space-between;align-items:center;gap:var(--space-4);height:60px;padding:0 var(--space-5);-webkit-backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--color-border-subtle);background:#ffffffdb;display:flex;position:sticky;top:0}.brand{color:var(--color-fg-default);letter-spacing:-.01em;align-items:center;gap:10px;font-size:15px;font-weight:700;display:inline-flex}.brand:hover{text-decoration:none}.brand-mark{color:#fff;background:linear-gradient(135deg,#4c6fff 0%,#3b5bdb 60%,#2b3fa8 100%);border-radius:9px;place-items:center;width:32px;height:32px;display:inline-grid;box-shadow:0 4px 10px #3b5bdb59}.brand-sub{color:var(--color-fg-muted);font-weight:500;font-size:var(--text-body-small)}.admin-nav{align-items:center;gap:var(--space-1);margin-left:auto;display:flex;overflow-x:auto}.admin-nav a{border-radius:var(--radius-pill);color:var(--color-fg-muted);font-size:var(--text-body-small);white-space:nowrap;padding:6px 12px;font-weight:600}.admin-nav a:hover{background:var(--color-bg-muted);text-decoration:none}.admin-nav a.active{background:var(--color-accent-primary-soft);color:var(--color-accent-primary)}.user-chip .badge{margin-left:2px}.admin-header .meta{gap:var(--space-3);font-size:var(--text-body-small);align-items:center;display:flex}.user-chip{border-radius:var(--radius-pill);background:var(--color-bg-muted);height:34px;color:var(--color-fg-default);align-items:center;gap:8px;padding:0 12px 0 4px;font-weight:600;display:inline-flex}.user-chip .avatar{background:var(--color-accent-primary);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:inline-grid}.page{max-width:1200px;padding:var(--space-6) var(--space-5) var(--space-8);margin:0 auto}.page-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.page-header h1{margin:0}.breadcrumb{font-size:var(--text-body-small);color:var(--color-fg-muted);margin-bottom:var(--space-2);align-items:center;gap:6px;display:flex}.breadcrumb a{color:var(--color-fg-muted)}.card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-m);padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:var(--shadow-s)}.card>h2:first-child{margin-bottom:var(--space-4)}.card-sub{background:var(--color-bg-subtle);box-shadow:none}.card-title{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.card-title h2{margin:0}.toolbar{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.spacer{flex:1}.empty{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-fg-muted);background:var(--color-bg-subtle);border:1px dashed var(--color-border-strong);border-radius:var(--radius-s)}.tabs{margin-bottom:var(--space-5);background:var(--color-bg-muted);border-radius:var(--radius-m);scrollbar-width:none;gap:4px;padding:4px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs a,.tabs button{color:var(--color-fg-muted);font:inherit;font-size:var(--text-body-small);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9px;flex:none;padding:9px 16px;font-weight:600;transition:background-color .15s,color .15s,box-shadow .15s}.tabs a:hover,.tabs button:hover{color:var(--color-fg-default);text-decoration:none}.tabs .active{background:var(--color-bg-surface);color:var(--color-accent-primary);box-shadow:var(--shadow-s)}.table-wrap{border:1px solid var(--color-border-subtle);border-radius:var(--radius-s);overflow-x:auto}table.data{border-collapse:separate;border-spacing:0;background:var(--color-bg-surface);width:100%;font-size:var(--text-body-small);font-variant-numeric:tabular-nums}table.data th,table.data td{text-align:center;vertical-align:middle;border-bottom:1px solid var(--color-border-subtle);border-right:1px solid var(--color-border-subtle);padding:10px 12px}table.data th:last-child,table.data td:last-child{border-right:none}table.data tbody tr:last-child td{border-bottom:none}table.data th{z-index:1;background:var(--color-bg-subtle);color:var(--color-fg-muted);font-weight:700;font-size:var(--text-caption);letter-spacing:.02em;text-transform:none;position:sticky;top:0}table.data tbody tr:hover td{background:#fafbfe}table.data td.left,table.data th.left{text-align:left}table.data tr.subtotal td{background:var(--color-bg-subtle);font-weight:700}table.data td[rowspan]{background:var(--color-bg-subtle);color:var(--color-fg-muted);font-weight:600}td.excluded{color:var(--color-fg-faint);text-decoration:line-through}table.data input,table.data select{height:var(--control-h-sm);font-size:var(--text-body-small)}.modal table.data th{position:static}.badge{border-radius:var(--radius-pill);font-size:var(--text-caption);vertical-align:middle;white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-weight:700;line-height:1.4;display:inline-flex}.badge:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.badge-ok{background:var(--color-success-soft);color:var(--color-success)}.badge-no{background:var(--color-critical-soft);color:var(--color-critical)}.badge-wait{background:var(--color-bg-muted);color:var(--color-fg-muted)}.badge-progress{background:var(--color-accent-primary-soft);color:var(--color-accent-primary)}.badge-warn{background:var(--color-warning-soft);color:var(--color-warning)}.notice{background:var(--color-warning-soft);border-radius:var(--radius-s);padding:var(--space-3) var(--space-4);font-size:var(--text-body-small);color:#6b4d00;border:1px solid #f1dfae;align-items:flex-start;gap:10px;display:flex}.notice-info{background:var(--color-accent-primary-soft);color:#24397e;border-color:#cdd8f7}.auth-shell{min-height:100vh;padding:var(--space-5);background:radial-gradient(900px 500px at 10% -10%, #4c6fff29, transparent 60%), radial-gradient(700px 400px at 100% 100%, #1b8a4c1a, transparent 60%), var(--color-bg-canvas);place-items:center;display:grid}.auth-card{width:100%;max-width:440px;padding:var(--space-6);border-radius:var(--radius-l);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-m)}.auth-card.wide{max-width:520px}.auth-brand{margin-bottom:var(--space-5);align-items:center;gap:12px;display:flex}.auth-brand .brand-mark{border-radius:11px;width:40px;height:40px}.auth-brand-title{font-size:var(--text-heading-m);letter-spacing:-.01em;font-weight:700}.auth-brand-sub{font-size:var(--text-body-small);color:var(--color-fg-muted)}.auth-card h1{margin-bottom:var(--space-1);font-size:22px}.auth-lead{color:var(--color-fg-muted);margin-bottom:var(--space-5)}.auth-card .btn-primary{margin-top:var(--space-2)}.guide{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.guide h3{font-size:var(--text-body-small);color:var(--color-fg-muted);margin-bottom:var(--space-2)}.guide ul{font-size:var(--text-body-small);color:var(--color-fg-muted);gap:4px;margin:0;padding-left:18px;display:grid}.pin-input{letter-spacing:.5em;text-align:center;height:56px;font-size:28px;font-weight:700;font-family:var(--font-mono)}.login-shell{min-height:100vh;padding:var(--space-5);background:radial-gradient(1000px 600px at 0% -20%, #4c6fff2e, transparent 60%), radial-gradient(800px 500px at 100% 120%, #1b8a4c1f, transparent 60%), var(--color-bg-canvas);place-items:center;display:grid}.login-frame{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);width:100%;max-width:1040px;box-shadow:var(--shadow-l);border-radius:24px;grid-template-columns:1.15fr .85fr;display:grid;overflow:hidden}.login-hero{gap:var(--space-5);color:#fff;background:radial-gradient(600px 300px at 110% -10%,#ffffff2e,#0000 60%),radial-gradient(500px 300px at -10% 110%,#38d9a947,#0000 60%),linear-gradient(135deg,#1b2a6b 0%,#2b3fa8 45%,#3b5bdb 100%);flex-direction:column;padding:48px 44px;display:flex;position:relative;overflow:hidden}.login-hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 90%);mask-image:linear-gradient(#000000e6,#0000 90%)}.login-hero>*{position:relative}.login-hero-top{flex-wrap:wrap;gap:8px;display:flex}.login-tag{border-radius:var(--radius-pill);color:#2b3fa8;letter-spacing:.02em;background:#ffffffeb;align-items:center;height:28px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.login-tag.ghost{color:#ffffffd9;background:#ffffff1f;border:1px solid #ffffff40;font-weight:500}.login-headline{letter-spacing:-.02em;margin:0;font-size:38px;font-weight:800;line-height:1.2}.login-headline em{background:linear-gradient(90deg,#a5f3d6,#fff);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.login-sub{color:#ffffffd1;max-width:440px;margin:0;font-size:15px;line-height:1.65}.login-features{gap:10px;margin:0;padding:0;list-style:none;display:grid}.login-features li{border-radius:var(--radius-m);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff29;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.login-feature-icon{color:#2b3fa8;background:#ffffffeb;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:16px;font-weight:700;display:inline-grid}.login-features strong{font-size:14px;font-weight:700;display:block}.login-features span:not(.login-feature-icon){color:#ffffffc7;margin-top:2px;font-size:12.5px;display:block}.login-trust{color:#ffffffb3;flex-wrap:wrap;gap:6px 14px;margin-top:auto;font-size:12px;display:flex}.login-trust span:before{content:"✓ ";color:#a5f3d6}.login-panel{flex-direction:column;padding:48px 44px;display:flex}.login-panel h1{letter-spacing:-.01em;margin:0 0 4px;font-size:26px}.login-panel .auth-brand{margin-bottom:var(--space-6)}.login-panel .auth-brand .brand-mark{border-radius:12px;width:44px;height:44px}.login-panel .field input{height:46px}.login-panel .btn-primary{margin-top:var(--space-2);height:48px;font-size:15px}.login-help{margin:var(--space-4) 0 0;font-size:var(--text-caption);color:var(--color-fg-muted);line-height:1.6}.login-footer{padding-top:var(--space-5);color:var(--color-fg-faint);gap:8px;margin-top:auto;font-size:12px;display:flex}@media (width<=860px){.login-shell{padding:var(--space-3);place-items:start center}.login-frame{border-radius:18px;grid-template-columns:1fr}.login-hero{gap:var(--space-4);padding:28px 22px}.login-headline{font-size:26px}.login-sub{font-size:14px}.login-features{display:none}.login-trust{margin-top:0}.eval-frame .login-headline{font-size:24px}.eval-project{padding:14px 16px}.eval-project-name{font-size:17px}.login-panel{padding:28px 22px 24px}.login-panel .auth-brand{margin-bottom:var(--space-4)}}.eval-frame .login-hero{gap:var(--space-4)}.eval-frame .login-headline{font-size:32px}.eval-project{border-radius:var(--radius-m);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1f;border:1px solid #ffffff38;padding:16px 18px}.eval-project-label{letter-spacing:.04em;color:#ffffffbf;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.eval-live{border-radius:var(--radius-pill);color:#fff;background:#ffffff29;align-items:center;gap:6px;height:22px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.eval-live:before{content:"";background:#ffffffb3;border-radius:50%;width:6px;height:6px}.eval-live.live:before{background:#a5f3d6;box-shadow:0 0 0 3px #a5f3d64d}.eval-live.closed{color:#ffffffbf}.eval-project-name{letter-spacing:-.01em;word-break:keep-all;margin-top:6px;font-size:19px;font-weight:800;line-height:1.35}.eval-project-meta{flex-wrap:wrap;gap:6px 22px;margin:12px 0 0;display:flex}.eval-project-meta div{align-items:baseline;gap:8px;display:flex}.eval-project-meta dt{color:#ffffffa6;font-size:12px}.eval-project-meta dd{font-variant-numeric:tabular-nums;margin:0;font-size:13.5px;font-weight:600}.eval-steps .login-feature-icon{border-radius:50%;font-size:15px}.login-panel .pin-input{width:100%;min-width:0;height:58px}.eval-page{background:radial-gradient(900px 420px at 0% -10%, #4c6fff24, transparent 60%), radial-gradient(700px 380px at 100% 0%, #1b8a4c14, transparent 60%), var(--color-bg-canvas);min-height:100vh}.eval-topbar{z-index:50;justify-content:space-between;align-items:center;gap:var(--space-3);min-height:60px;padding:0 var(--space-5);-webkit-backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--color-border-subtle);background:#ffffffdb;display:flex;position:sticky;top:0}.eval-topbar-meta{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.eval-shell{max-width:1080px;padding:var(--space-5) var(--space-4) var(--space-8);margin:0 auto}.eval-hero{gap:var(--space-5);margin-bottom:var(--space-5);color:#fff;background:radial-gradient(600px 260px at 110% -10%,#ffffff2e,#0000 60%),radial-gradient(500px 260px at -10% 110%,#38d9a942,#0000 60%),linear-gradient(135deg,#1b2a6b 0%,#2b3fa8 45%,#3b5bdb 100%);border-radius:20px;grid-template-columns:1.25fr .75fr;padding:32px 36px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 40px #2b3fa847}.eval-hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 95%);mask-image:linear-gradient(#000000e6,#0000 95%)}.eval-hero>*{position:relative}.eval-hero-main{flex-direction:column;gap:12px;min-width:0;display:flex}.eval-hero h1{letter-spacing:-.02em;word-break:keep-all;margin:0;font-size:28px;font-weight:800;line-height:1.25}.eval-hero-sub{color:#fffc;max-width:520px;margin:0;font-size:14px;line-height:1.6}.eval-hero-stats{grid-template-columns:1fr 1fr;align-content:start;gap:10px;display:grid}.eval-stat{border-radius:var(--radius-m);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1c;border:1px solid #ffffff2e;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.eval-stat-wide{grid-column:1/-1}.eval-stat-label{color:#ffffffb8;letter-spacing:.02em;font-size:12px;font-weight:600}.eval-stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.eval-stat-value small{color:#ffffffb8;margin-left:3px;font-size:13px;font-weight:600}.eval-stat-sub{color:#ffffffb8;font-variant-numeric:tabular-nums;font-size:12px}.eval-progress{border-radius:var(--radius-pill);background:#ffffff2e;height:8px;margin:6px 0 2px;overflow:hidden}.eval-progress span{border-radius:var(--radius-pill);background:linear-gradient(90deg,#a5f3d6,#fff);height:100%;transition:width .3s;display:block}.save-status{font-size:var(--text-caption);color:var(--color-fg-muted);align-items:center;gap:6px;display:inline-flex}.save-status.saving:before,.save-status.saved:before,.save-status.error:before{content:"";background:var(--color-fg-faint);border-radius:50%;width:7px;height:7px}.save-status.saved:before{background:var(--color-success)}.save-status.error{color:var(--color-critical)}.save-status.error:before{background:var(--color-critical)}.company-tabs{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.company-tabs button{border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-bg-surface);height:40px;color:var(--color-fg-default);font:inherit;font-size:var(--text-body-small);cursor:pointer;box-shadow:var(--shadow-s);align-items:center;gap:8px;padding:0 14px 0 6px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.company-tabs button:hover{border-color:var(--color-accent-primary)}.company-tabs .order{background:var(--color-bg-muted);width:26px;height:26px;color:var(--color-fg-muted);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.company-tabs button.done .order{background:var(--color-success-soft);color:var(--color-success)}.company-tabs button.active{border-color:var(--color-accent-primary);color:var(--color-fg-on-accent);background:linear-gradient(135deg,#4c6fff 0%,#3b5bdb 60%,#2b3fa8 100%);box-shadow:0 6px 16px #3b5bdb4d}.company-tabs button.active .order{color:#2b3fa8;background:#ffffffeb}.company-tabs .count{border-radius:var(--radius-pill);background:var(--color-bg-muted);height:20px;color:var(--color-fg-muted);font-variant-numeric:tabular-nums;align-items:center;padding:0 8px;font-size:11px;display:inline-flex}.company-tabs button.active .count{color:#fff;background:#ffffff38}.company-tabs button.done .count{background:var(--color-success-soft);color:var(--color-success)}.company-tabs button.done.active .count{color:#fff;background:#ffffff38}.score-input{width:100%;min-width:128px;font-weight:600}select.score-input.invalid{border-color:var(--color-critical);background-color:var(--color-critical-soft)}.score-total{border-radius:var(--radius-s);background:var(--color-accent-primary-soft);color:var(--color-accent-primary);font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;padding:6px 14px;font-weight:700;display:inline-flex}.score-total small{color:var(--color-fg-muted);font-weight:600}.score-card{border-radius:var(--radius-l);box-shadow:var(--shadow-m)}.score-card-heading{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.score-card-heading h2{font-size:var(--text-heading-l);margin:0}.score-card-order{border-radius:var(--radius-pill);background:var(--color-accent-primary-soft);height:24px;color:var(--color-accent-primary);font-size:var(--text-caption);align-items:center;padding:0 9px;font-weight:700;display:inline-flex}.score-table tbody td{padding-top:12px;padding-bottom:12px}.score-table tr.quant-row td{background:var(--color-bg-subtle);color:var(--color-fg-muted)}.quant-value{min-width:56px;height:var(--control-h-sm);border-radius:var(--radius-s);background:var(--color-bg-muted);color:var(--color-fg-default);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 12px;font-weight:700;display:inline-flex}.score-nav{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle);display:flex}.done-frame{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);width:100%;max-width:520px;box-shadow:var(--shadow-l);border-radius:24px;overflow:hidden}.done-hero{text-align:center;color:#fff;background:radial-gradient(500px 240px at 110% -10%,#ffffff2e,#0000 60%),radial-gradient(400px 240px at -10% 110%,#38d9a94d,#0000 60%),linear-gradient(135deg,#1b2a6b 0%,#2b3fa8 45%,#3b5bdb 100%);flex-direction:column;align-items:center;gap:10px;padding:40px 32px 32px;display:flex;position:relative}.done-hero h1{color:#fff;margin:4px 0 0;font-size:24px}.done-hero p{color:#ffffffd1;margin:0}.done-mark{color:#1b8a4c;background:#fffffff0;border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:6px;font-size:36px;font-weight:800;display:inline-grid;box-shadow:0 10px 28px #0000002e}.done-body{padding:28px 32px 32px}.done-meta{margin:0 0 var(--space-4);gap:10px;display:grid}.done-meta div{justify-content:space-between;gap:var(--space-3);border-radius:var(--radius-s);background:var(--color-bg-subtle);padding:10px 14px;display:flex}.done-meta dt{color:var(--color-fg-muted);font-size:var(--text-body-small);white-space:nowrap}.done-meta dd{text-align:right;word-break:keep-all;margin:0;font-weight:700}.done-body .login-help{margin:0 0 var(--space-4)}.spinner-screen{justify-content:center;align-items:center;min-height:60vh;display:flex}.spinner{border:3px solid var(--color-border-subtle);border-top-color:var(--color-accent-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-screen{text-align:center;color:var(--color-fg-muted);padding:15vh 20px}.modal-backdrop{z-index:100;padding:10vh var(--space-4);-webkit-backdrop-filter:blur(4px);background:#0e141e80;justify-content:center;align-items:flex-start;animation:.15s fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--color-bg-surface);border-radius:var(--radius-l);width:100%;max-width:640px;max-height:80vh;box-shadow:var(--shadow-l);flex-direction:column;animation:.18s rise-in;display:flex}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.modal-header h2{margin:0}.modal-close{cursor:pointer;width:32px;height:32px;color:var(--color-fg-muted);background:0 0;border:none;border-radius:50%;place-items:center;font-size:22px;line-height:1;display:grid}.modal-close:hover{background:var(--color-bg-muted);color:var(--color-fg-default)}.modal-body{padding:var(--space-5);overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);border-radius:0 0 var(--radius-l) var(--radius-l);display:flex}.pin-display{margin:var(--space-3) 0;padding:var(--space-4);border-radius:var(--radius-m);background:var(--color-accent-primary-soft);color:var(--color-accent-primary);font-family:var(--font-mono);letter-spacing:.35em;text-align:center;font-size:36px;font-weight:700}@keyframes fade-in{0%{opacity:0}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}}@media (width<=720px){.page{padding:var(--space-4) var(--space-3) var(--space-7)}.admin-header{gap:var(--space-2) var(--space-3);height:auto;min-height:52px;padding:var(--space-2) var(--space-3);flex-wrap:wrap}.brand{min-width:0;font-size:14px}.brand>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brand-sub{display:none}.admin-header .meta{gap:var(--space-2);margin-left:auto}.user-chip{white-space:nowrap;text-overflow:ellipsis;max-width:44vw;height:30px;padding-right:8px;overflow:hidden}.user-chip .badge{display:none}.admin-nav{scrollbar-width:none;flex:100%;order:3;margin-left:0;padding-bottom:2px}.admin-nav::-webkit-scrollbar{display:none}.admin-nav a{padding:5px 10px}.card{padding:var(--space-4)}.card p a{word-break:break-all}.form-row .field{flex:100%;min-width:0!important}.form-row .field input,.form-row .field select{width:100%!important}h1{font-size:22px}.page-header h1{font-size:20px}.breadcrumb span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.modal-backdrop{padding:var(--space-3);align-items:flex-end}.modal{width:100%;max-width:none}.eval-shell{padding:var(--space-4) var(--space-3) var(--space-7)}.eval-topbar{gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);flex-wrap:wrap}.eval-topbar .brand .brand-sub{display:inline}.eval-topbar-meta{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;flex:100%;margin-left:0}.eval-topbar-meta .save-status{flex:100%;order:5;justify-content:flex-end}.eval-topbar-meta .user-chip{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:44vw;margin-right:auto;overflow:hidden}.score-table thead{display:none}.score-table,.score-table tbody{display:block}.score-table tr{align-items:center;column-gap:var(--space-3);border-bottom:1px solid var(--color-border-subtle);grid-template-columns:auto 1fr;padding:10px 12px 12px;display:grid}.score-table tbody tr:last-child{border-bottom:none}.score-table td{text-align:left;border:none!important;padding:0!important}.score-table td[rowspan]{font-size:var(--text-caption);text-align:left;background:var(--color-bg-subtle);grid-column:1/-1;margin:-10px -12px 10px;font-weight:700;padding:6px 12px!important}.score-table td[rowspan] br{display:none}.score-table td.left{grid-column:1/-1;margin-bottom:8px;font-weight:600}.score-table td.left .help-text{font-weight:400}.score-table td:nth-last-child(2){font-size:var(--text-body-small);color:var(--color-fg-muted);white-space:nowrap}.score-table td:nth-last-child(2):before{content:"배점 "}.score-table td:last-child{justify-self:end;width:100%;max-width:240px}.score-table tr.quant-row td.left{color:var(--color-fg-muted)}.score-table .quant-value{width:100%}.score-table .score-input{min-width:0}.eval-hero{gap:var(--space-4);border-radius:16px;grid-template-columns:1fr;padding:22px 18px}.eval-hero h1{font-size:21px}.eval-hero-sub{font-size:13px}.eval-stat{padding:12px 14px}.eval-stat-value{font-size:22px}.score-card-heading h2{font-size:17px}.score-nav{flex-wrap:wrap}.score-nav .help-text{text-align:center;flex:100%;order:3}.done-hero{padding:32px 20px 26px}.done-body{padding:22px 20px 24px}.company-tabs button{height:36px;padding:0 10px 0 5px}.company-tabs .order{width:24px;height:24px}.score-input{min-width:112px}table.data th,table.data td{padding:8px}table.data th,.toolbar .btn{white-space:nowrap}}@media (width<=420px){.admin-header .meta .btn{padding:0 8px}.user-chip{max-width:38vw}.company-tabs{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.company-tabs::-webkit-scrollbar{display:none}.company-tabs button{flex:none}}.print-root{background:#888;min-height:100vh;padding-bottom:40px}.print-toolbar{z-index:10;background:#333;gap:8px;padding:10px 16px;display:flex;position:sticky;top:0}.print-page{color:#000;background:#fff;width:277mm;margin:16px auto;padding:14mm 10mm;font-family:Malgun Gothic,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-size:11pt}.print-page.portrait{width:190mm}.print-title{text-align:center;margin-bottom:6mm;font-size:17pt;font-weight:700}.print-meta{justify-content:space-between;margin-bottom:3mm;font-size:10pt;display:flex}table.print{border-collapse:collapse;width:100%;font-size:10pt}table.print th,table.print td{text-align:center;vertical-align:middle;border:1px solid #000;padding:4px 6px}table.print th{background:#efefef}table.print td.left{text-align:left}.sign-area{margin-top:8mm;font-size:11pt}.sign-line{justify-content:flex-end;align-items:baseline;gap:10mm;margin-top:6mm;display:flex}.print-footnote{margin-top:2mm;font-size:9pt}@media print{body{background:#fff}.no-print{display:none!important}.print-root{background:#fff;padding:0}.print-page{width:auto;margin:0;padding:0}@page{size:A4 landscape;margin:12mm}}
