:root{color-scheme:light;--canvas:#edf2f7;--surface:#ffffff;--surface-muted:#f4f7fb;--surface-tint:#fbfcff;--deep:#07111f;--deep-2:#0b1a2d;--ink:#111827;--text:#111827;--secondary:#3d4b5f;--muted:#6b7789;--hairline:#d6dee9;--hairline-strong:#aeb9c8;--primary:#214fcb;--primary-hover:#183ea5;--teal:#00a68d;--teal-hover:#008773;--success:#15803d;--warning:#9a6700;--danger:#b42318;--info:#2563eb;--violet:#7657ea;--shadow:0 1px 2px rgba(15,23,42,0.06);--floating-shadow:0 8px 24px rgba(7,17,31,0.14)}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;overflow-x:hidden;background:linear-gradient(180deg,#f7f9fc 0,var(--canvas) 58%,#e8eef6 100%);font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Segoe UI,Noto Sans KR,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:0}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(37,86,216,.18);outline-offset:2px}.login-screen{display:grid;min-height:100svh;place-items:center;padding:24px}.login-panel{width:min(100%,460px);border:1px solid var(--hairline);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,251,255,.98)),#ffffff;box-shadow:var(--shadow);padding:28px}.app-title,.dialog-header,.drawer-header,.login-brand,.panel-heading,.session-bar{display:flex;align-items:flex-start;gap:16px}.login-brand{margin-bottom:24px}.auth-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 0 18px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-muted);padding:5px}.auth-mode-switch button{min-height:38px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.auth-mode-switch button.active{background:#ffffff;color:var(--text);box-shadow:0 1px 6px rgba(7,21,40,.08)}.brand-mark{display:inline-flex;width:44px;height:44px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(255,255,255,.22);background:#0b1a2d;color:#ffffff;box-shadow:inset 0 1px 0 rgba(255,255,255,.16);font-size:13px;letter-spacing:0}.brand-mark.small{width:40px;height:40px}h1,h2,h3,p{margin-top:0}.app-title h1,.login-brand h1{margin:0;font-size:clamp(24px,2.8vw,34px);line-height:1.12;word-break:keep-all}.app-title p,.dialog-header p,.drawer-header p,.login-brand p,.panel-heading p{margin:6px 0 0;font-size:14px;line-height:1.55;word-break:keep-all}.admin-form,.login-form{display:grid;gap:14px}.field,.login-form label{display:grid;min-width:0;gap:8px}.field span,.login-form label span{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:0;text-transform:none}.field-example{color:var(--muted);font-size:12px;line-height:1.35;word-break:keep-all}input,select,textarea{width:100%;min-height:46px;border:1px solid var(--hairline);border-radius:8px;color:var(--text);padding:0 12px;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}input:hover,select:hover,textarea:hover{border-color:var(--hairline-strong)}input:focus,select:focus,textarea:focus{border-color:rgba(37,86,216,.55);box-shadow:0 0 0 4px rgba(37,86,216,.1)}textarea{min-height:96px;padding:12px;resize:vertical}select{cursor:pointer}input::-moz-placeholder{color:#9aa8ba}input::placeholder{color:#9aa8ba}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;cursor:pointer;padding:0 16px;color:inherit;font-size:14px;line-height:1;text-decoration:none;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.button:hover{filter:brightness(.98)}.button:active{filter:brightness(.96)}.button.primary{background:var(--primary);color:#ffffff;box-shadow:none}.button.primary:hover{background:var(--primary-hover)}.button.generate,.button.send{background:var(--teal);color:#ffffff;box-shadow:none}.button.generate:hover,.button.send:hover{background:var(--teal-hover)}.button.secondary{color:var(--text)}.button.secondary:hover{border-color:var(--hairline-strong)}.button.small{min-height:36px;padding:0 12px;font-size:13px}.button.disabled,.button:disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.icon-button{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--hairline);border-radius:8px;background:#ffffff;color:var(--secondary);cursor:pointer;font-size:20px;font-weight:700;line-height:1;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.icon-button:hover{border-color:var(--hairline-strong);background:#f7faff;color:var(--text)}.app-shell{width:min(1360px,calc(100% - 40px));padding:22px 0 44px}.app-header{position:sticky;z-index:10;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:12px;border:1px solid rgba(214,222,233,.86);background:rgba(255,255,255,.88);backdrop-filter:blur(14px);padding:18px 20px;color:var(--text)}.app-header:after,.app-header:before{display:none}.app-title{position:relative;min-width:0}.app-title p,.session-bar span{color:var(--secondary)}.session-bar{position:relative;align-items:center;justify-content:flex-end;gap:10px}.session-bar .button.secondary{border-color:var(--hairline);background:#ffffff;color:var(--text)}.user-block{display:grid;min-width:0;gap:4px;border-right:1px solid var(--hairline);padding-right:14px;text-align:right}.user-block span,.user-block strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-block strong{font-size:14px}.user-block span{font-size:12px;font-weight:700}.workbench-grid{display:grid;grid-template-columns:minmax(390px,440px) minmax(0,1fr);gap:20px;align-items:start}.workbench-left{display:grid;min-width:0;gap:18px}.panel{min-width:0;border:1px solid var(--hairline);border-radius:8px;background:#ffffff;box-shadow:var(--shadow);padding:20px;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.panel:hover{border-color:#c8d5e5}.panel-heading{justify-content:space-between;margin-bottom:16px}.dialog-header h2,.drawer-header h2,.panel-heading h2{margin:0;font-size:21px;line-height:1.25;letter-spacing:0}.batch-builder .panel-heading h2:before,.preview-panel .panel-heading h2:before,.progress-panel .panel-heading h2:before{display:inline-flex;min-width:34px;height:24px;align-items:center;justify-content:center;margin-right:10px;border:1px solid rgba(33,79,203,.18);border-radius:7px;background:#eff4ff;color:var(--primary);font-size:12px;font-weight:700;vertical-align:2px}.batch-builder .panel-heading h2:before{content:"01"}.progress-panel .panel-heading h2:before{content:"02"}.preview-panel .panel-heading h2:before{content:"03"}.builder-form{display:grid;grid-template-columns:112px minmax(0,1fr) 76px;gap:12px;align-items:end}.instrument-field{position:relative}.suggestion-menu{position:absolute;z-index:20;top:calc(100% + 8px);right:0;left:0;max-height:min(420px,56vh);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--hairline);border-radius:8px;background:var(--surface)}.suggestion-menu::-webkit-scrollbar{width:10px}.suggestion-menu::-webkit-scrollbar-thumb{border:3px solid var(--surface);border-radius:999px;background:#bcc8d8}.suggestion-menu::-webkit-scrollbar-track{background:var(--surface)}.suggestion-option{display:grid;width:100%;border:0;border-bottom:1px solid var(--hairline);background:transparent;gap:3px;padding:12px 13px;color:var(--text);text-align:left;cursor:pointer}.suggestion-option:last-child{border-bottom:0}.suggestion-option.active,.suggestion-option:focus-visible,.suggestion-option:hover,.suggestion-option[aria-selected=true]{background:#f3f7ff;outline:none}.suggestion-main{display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:start;gap:8px 12px}.suggestion-main strong{font-size:14px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.suggestion-main span{color:var(--primary);font-size:13px;font-weight:700;white-space:nowrap}.suggestion-hint,.suggestion-meta{color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.suggestion-hint{position:absolute;top:calc(100% + 6px);left:0;border:1px solid var(--hairline);border-radius:8px;background:var(--surface);padding:9px 11px;box-shadow:var(--shadow)}.admin-users,.builder-list,.job-list{display:grid;gap:10px;margin-top:14px}.builder-row{display:grid;grid-template-columns:34px 54px minmax(0,1fr) auto 36px;min-height:52px;align-items:center;gap:8px;border:1px solid var(--hairline);border-radius:8px;padding:6px 8px;transition:border-color .16s ease,background-color .16s ease}.builder-row:hover{border-color:#bfd0e4;background:#fbfdff}.builder-row.duplicate{border-color:rgba(154,103,0,.45);background:#fffaf0}.row-index{color:var(--muted);font-size:12px;font-weight:700;text-align:center}.duplicate-label,.email-chip,.kind-chip,.status-chip{display:inline-flex;min-height:26px;align-items:center;justify-content:center;padding:0 9px;background:var(--surface-muted);color:var(--secondary);white-space:nowrap}.kind-chip{background:#eaf7f4}.duplicate-label{background:#fff7df;color:var(--warning)}.builder-query{overflow:hidden;color:var(--text);font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.builder-actions{display:grid;margin-top:14px}.notice{margin:12px 0 0;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-muted);color:var(--secondary);padding:12px 14px;font-size:14px;font-weight:700;line-height:1.45;word-break:keep-all}.notice.danger{border-color:rgba(180,35,24,.3);background:#fff1f0;color:var(--danger)}.notice.success{border-color:rgba(21,128,61,.24);background:#ecfdf3;color:var(--success)}.notice.warning{border-color:rgba(154,103,0,.3);background:#fff7df;color:var(--warning)}.empty-state{border:1px dashed var(--hairline);border-radius:8px;background:var(--surface-muted);color:var(--muted);padding:22px;font-size:14px;line-height:1.55;text-align:center;word-break:keep-all}.progress-rail{overflow:hidden;border-radius:999px;background:#e7edf5}.progress-rail span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--primary));transition:width .22s ease}.progress-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.bulk-action-bar{display:grid;gap:12px;margin-top:14px;border:1px solid var(--hairline);border-radius:8px;background:#ffffff;padding:12px}.artifact-toggle-group,.bulk-actions,.bulk-selection{display:flex;align-items:center;gap:8px}.bulk-actions,.bulk-selection{flex-wrap:wrap}.artifact-toggle-group{flex-wrap:nowrap;gap:6px}.bulk-selection{justify-content:space-between}.bulk-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.check-control,.check-pill{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:13px;font-weight:700}.check-control input,.check-pill input,.job-check input{accent-color:var(--teal);width:16px;height:16px;min-height:16px;flex:0 0 auto;padding:0}.check-pill{min-height:30px;border:1px solid var(--hairline);border-radius:7px;background:#ffffff;padding:5px 10px;line-height:1}.artifact-toggle-group .check-pill{width:auto;min-width:74px;justify-content:center}.artifact-toggle-group .check-pill input{width:14px;height:14px;min-height:14px}.check-control{min-height:30px}.text-button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:13px;font-weight:700;padding:0}.text-button:hover{color:var(--text)}.bulk-count{margin-left:auto;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:700}.metric{min-width:0;border:1px solid var(--hairline);border-radius:8px;padding:11px 10px}.metric span{display:block;color:var(--muted);font-size:12px;font-weight:700}.metric strong{display:block;margin-top:4px;color:var(--text);font-size:18px;line-height:1;white-space:nowrap}.metric.active{border-color:rgba(15,118,110,.35);background:#eefaf7}.metric.danger strong{color:var(--danger)}.running-indicator{width:12px;height:12px;flex:0 0 auto;border-radius:999px;background:var(--teal);box-shadow:0 0 0 0 rgba(15,118,110,.28);animation:pulse 1.7s ease-out infinite}.job-row{border:1px solid var(--hairline);border-radius:8px;color:inherit;transition:border-color .16s ease,background-color .16s ease}.job-row,.job-summary{width:100%;text-align:left}.job-summary{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:68px;padding:12px}.job-main-button{min-width:0;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.job-check{display:grid;place-items:center}.job-check input{width:16px;height:16px}.job-row.selected,.job-row:hover{border-color:var(--hairline-strong)}.job-row.selected{border-color:rgba(33,79,203,.36);background:#f3f7ff}.status-dot{width:9px;height:42px;border-radius:999px;background:var(--hairline-strong)}.status-dot.running{background:var(--teal);animation:pulse 1.7s ease-out infinite}.status-dot.queued{background:var(--warning)}.status-dot.completed,.status-dot.succeeded{background:var(--teal)}.status-dot.failed{background:var(--danger)}.job-main{display:grid;min-width:0;gap:4px}.job-main span,.job-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-main strong{color:var(--text);font-size:15px;font-weight:700}.job-main span{color:var(--muted);font-size:13px}.job-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border-top:1px solid var(--hairline);padding:10px 12px 12px 34px}.job-actions .button{min-height:34px;justify-content:center;padding-inline:10px}.status-chip.queued{background:#fff7df;color:var(--warning)}.status-chip.running{background:#ecfdf9;color:var(--teal)}.status-chip.completed,.status-chip.succeeded{background:#e8f7ee;color:var(--success)}.email-chip.failed,.email-chip.not_configured,.status-chip.failed{background:#fff1f0;color:var(--danger)}.email-chip.sent{background:#e8f7ee;color:var(--success)}.email-chip.sending{background:#ecfdf9;color:var(--teal)}.preview-panel{position:sticky;overflow:hidden}.preview-panel .panel-heading{align-items:center}.pdf-frame{display:grid;width:100%;min-height:688px;overflow:hidden;border:1px solid var(--hairline);border-radius:8px;background:#f8fafc;box-shadow:none;aspect-ratio:4/5}.pdf-frame iframe{width:100%;height:100%;border:0;background:#ffffff}.preview-empty{display:grid;place-content:center;gap:8px;padding:32px;color:var(--muted);font-size:14px;line-height:1.55;text-align:center;word-break:keep-all}.preview-empty strong{color:var(--text);font-size:18px}.preview-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:16px}.download-group{display:flex;flex-wrap:wrap;gap:8px}.message-box{margin-top:14px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-muted);color:var(--secondary);padding:12px;font-size:14px;line-height:1.55;word-break:keep-all}.message-box.error{border-color:rgba(180,35,24,.3);background:#fff1f0;color:var(--danger);font-weight:700}.admin-drawer{z-index:20;width:min(480px,100%);overflow-y:auto;background:#ffffff;box-shadow:var(--floating-shadow);padding:20px;transform:translateX(110%);transition:transform .2s ease}.admin-drawer,.settings-drawer{position:fixed;top:0;right:0;height:100svh;border-left:1px solid var(--hairline)}.settings-drawer{z-index:19;width:min(720px,100%);overflow:auto;background:#f8f9fa;box-shadow:0 30px 80px rgba(15,23,42,.18);padding:18px}.settings-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:16px 0}.settings-tabs button{min-height:38px;border:1px solid var(--hairline);border-radius:7px;background:#ffffff;color:var(--secondary);cursor:pointer;font-weight:700}.settings-tabs button.active{border-color:var(--deep);background:var(--deep)}.settings-section{display:grid;gap:14px}.settings-toolbar{display:flex;justify-content:flex-end}.settings-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-list,.settings-metrics{display:grid;gap:8px}.feedback-row,.history-row{display:grid;gap:8px;border:1px solid var(--hairline);border-radius:7px;background:#ffffff;padding:12px}.history-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.history-row>div{min-width:0}.feedback-row span,.feedback-row strong,.history-row span,.history-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedback-row p,.feedback-row span,.history-row span{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.feedback-form{display:grid;gap:12px}.failure-log{grid-column:1/-1;border-top:1px solid var(--hairline);padding-top:8px}.failure-log summary{color:var(--danger);cursor:pointer;font-size:13px;font-weight:700}.failure-log p{margin:8px 0;color:var(--text);font-size:13px}.failure-log pre{max-height:180px;overflow:auto;border:1px solid var(--hairline);border-radius:7px;background:#0e1116;color:#f8f9fa;padding:10px;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.admin-drawer.open{transform:translateX(0)}.drawer-header{justify-content:space-between;margin-bottom:16px}.admin-form{border-bottom:1px solid var(--hairline);padding-bottom:16px}.admin-user-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid var(--hairline);border-radius:8px;background:var(--surface);padding:12px}.admin-user-main{display:grid;min-width:0;gap:4px}.admin-user-main span,.admin-user-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-main strong{font-size:14px}.admin-user-main span{color:var(--muted);font-size:13px}.admin-user-actions,.admin-user-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.dialog-backdrop{position:fixed;z-index:30;inset:0;display:grid;place-items:center;background:rgba(7,21,40,.42);padding:20px}.confirm-dialog{width:min(100%,500px);border:1px solid var(--hairline);border-radius:8px;background:#ffffff;box-shadow:var(--floating-shadow);padding:20px}.confirm-meta{display:grid;gap:8px;margin:16px 0 0}.confirm-meta div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-muted);padding:10px}.confirm-meta dt{color:var(--muted);font-size:12px;font-weight:700}.confirm-meta dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--text);font-size:14px;font-weight:700}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(15,118,110,.28)}70%{box-shadow:0 0 0 8px rgba(15,118,110,0)}to{box-shadow:0 0 0 0 rgba(15,118,110,0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:1099px){.workbench-grid{grid-template-columns:1fr}.preview-panel{position:static}.pdf-frame{min-height:520px}}@media (max-width:767px){.login-screen{padding:14px}.app-shell{width:min(100% - 20px,560px);padding:14px 0 28px}.app-title,.dialog-header,.drawer-header,.login-brand,.panel-heading{gap:12px}.app-title h1,.login-brand h1{font-size:clamp(23px,7vw,28px);line-height:1.12}.app-title p,.dialog-header p,.drawer-header p,.login-brand p,.panel-heading p{font-size:13px}.brand-mark{width:38px;height:38px}.brand-mark.small{width:34px;height:34px}.admin-user-row,.app-header,.builder-form,.preview-actions,.session-bar{grid-template-columns:1fr}.app-header,.session-bar{display:grid}.app-header{gap:16px;padding:16px}.session-bar,.user-block{justify-content:stretch;text-align:left}.user-block{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding-right:0;padding-bottom:12px}.builder-add,.dialog-actions .button,.preview-actions .button,.session-bar .button{width:100%}.login-panel,.panel{padding:16px}.dialog-header h2,.drawer-header h2,.panel-heading h2{font-size:18px}.builder-row{grid-template-columns:30px 54px minmax(0,1fr) 36px}.builder-row .duplicate-label{grid-column:3;justify-self:start}.progress-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-actions{grid-template-columns:1fr}.metric{padding:9px}.metric strong{font-size:17px}.job-row{min-height:auto}.job-summary{grid-template-columns:18px minmax(0,1fr)}.job-summary .status-chip{grid-column:2;justify-self:start}.job-actions{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:12px}.pdf-frame{min-height:auto;aspect-ratio:3/4}.dialog-actions,.download-group{display:grid}.admin-drawer{border-left:0;padding:16px}.settings-drawer{border-left:0;padding:14px}.settings-metrics,.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-chips{justify-content:flex-start}}:root{--canvas:#eef0f2;--surface:#f8f9fa;--surface-muted:#f2f4f5;--surface-tint:#ffffff;--deep:#0e1116;--deep-2:#171b22;--ink:#0e1116;--text:#0e1116;--secondary:#5b6370;--muted:#7b8490;--hairline:rgba(14,17,22,0.08);--hairline-strong:rgba(14,17,22,0.18);--primary:#0e1116;--primary-hover:#262b34;--teal:#1f6f52;--teal-hover:#17583f;--success:#1f6f52;--warning:#8a5b10;--danger:#a33a32;--info:#3b5f8a;--shadow:0 1px 2px rgba(14,17,22,0.04);--floating-shadow:0 8px 24px rgba(14,17,22,0.12)}body{background:linear-gradient(90deg,rgba(14,17,22,.035) 1px,transparent 0),linear-gradient(180deg,#f7f8f9,#eef0f2);background-size:72px 72px,100% 100%;color:var(--text);font-family:IBM Plex Sans,Apple SD Gothic Neo,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell{display:grid;width:min(1500px,calc(100% - 32px));grid-template-columns:248px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:18px;margin:0 auto;padding:18px 0 36px}.app-shell>.app-header{grid-column:1/-1}.app-sidebar{position:sticky;top:114px;display:grid;min-height:calc(100svh - 36px);align-content:start;gap:22px;border:1px solid var(--hairline);border-radius:8px;background:rgba(248,249,250,.9);box-shadow:var(--shadow);backdrop-filter:blur(12px);padding:18px}.sidebar-brand{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--hairline)}.sidebar-brand div{display:grid;min-width:0;gap:3px}.sidebar-brand span,.sidebar-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-brand strong{font-size:14px;line-height:1.2}.sidebar-brand span,.sidebar-meta span{color:var(--muted);font-size:12px;line-height:1.3}.sidebar-nav{display:grid;gap:4px}.sidebar-nav-item{width:100%;border:0;background:transparent;border-radius:7px;color:var(--secondary);padding:10px 11px;font-size:14px;font-weight:600;text-align:left}.sidebar-nav-item.active{background:var(--deep);color:#f8f9fa}.sidebar-nav-button{cursor:pointer}.sidebar-nav-button:hover{background:rgba(14,17,22,.06);color:var(--text)}.sidebar-meta{display:grid;gap:5px;margin-top:auto;border-top:1px solid var(--hairline);padding-top:16px}.sidebar-meta strong{font-size:13px;font-weight:700}.app-main{min-width:0}.brand-mark{border:1px solid rgba(14,17,22,.12);border-radius:7px;background:var(--deep);box-shadow:none;color:#f8f9fa;font-family:IBM Plex Mono,monospace;font-weight:700}.app-header{top:18px;grid-column:1/-1;margin-bottom:14px;border-color:var(--hairline);border-radius:8px;background:rgba(248,249,250,.92);box-shadow:var(--shadow);padding:18px}.app-shell>.app-header{margin-bottom:0}.app-title h1,.login-brand h1{font-size:clamp(25px,2.2vw,32px);font-weight:700;letter-spacing:0}.app-title p,.dialog-header p,.drawer-header p,.login-brand p,.panel-heading p{color:var(--secondary)}.user-block{border-right-color:var(--hairline)}.workbench-grid{grid-template-columns:minmax(390px,460px) minmax(0,1fr);gap:18px}.admin-drawer,.confirm-dialog,.login-panel,.panel{border-color:var(--hairline);border-radius:8px;background:rgba(248,249,250,.96);box-shadow:var(--shadow)}.panel:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow)}.panel-heading{align-items:flex-start;margin-bottom:14px}.dialog-header h2,.drawer-header h2,.panel-heading h2{font-size:19px;font-weight:700}.batch-builder .panel-heading h2:before,.preview-panel .panel-heading h2:before,.progress-panel .panel-heading h2:before{border-color:var(--hairline);border-radius:6px;background:#ffffff;color:var(--secondary);font-family:IBM Plex Mono,monospace}input,select,textarea{min-height:44px;border-color:var(--hairline);border-radius:7px;background:#ffffff}input:focus,select:focus,textarea:focus{border-color:rgba(31,111,82,.48);box-shadow:0 0 0 4px rgba(31,111,82,.08)}.button{min-height:42px;padding:0 14px;font-weight:700}.button.generate,.button.primary,.button.send{background:var(--deep);color:#f8f9fa}.button.generate:hover,.button.primary:hover,.button.send:hover{background:var(--primary-hover)}.button.secondary{border-color:var(--hairline);background:#ffffff}.button.ghost{border-color:transparent;color:var(--secondary)}.button.ghost:hover{background:rgba(14,17,22,.05);color:var(--text)}.builder-form{grid-template-columns:100px minmax(0,1fr) 72px;gap:10px}.suggestion-menu{border-color:var(--hairline-strong);background:#ffffff;box-shadow:var(--floating-shadow)}.suggestion-option.active,.suggestion-option:focus-visible,.suggestion-option:hover,.suggestion-option[aria-selected=true]{background:rgba(31,111,82,.07)}.suggestion-option.active{box-shadow:inset 3px 0 0 var(--teal)}.suggestion-main span{color:var(--deep);font-family:IBM Plex Mono,monospace;font-size:12px}.builder-row{grid-template-columns:30px 50px minmax(0,1fr) auto auto;border-color:var(--hairline);background:#ffffff}.builder-row:hover,.job-row:hover{border-color:var(--hairline-strong);background:#fcfcfb}.duplicate-label,.email-chip,.kind-chip,.status-chip{border-radius:999px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700}.kind-chip{background:rgba(31,111,82,.1);color:var(--teal-hover)}.progress-rail{height:7px;background:rgba(14,17,22,.08)}.progress-rail span{background:var(--teal)}.metric{border-color:var(--hairline);border-radius:7px;background:#ffffff}.email-chip,.metric strong,.row-index,.status-chip{font-family:IBM Plex Mono,monospace}.metric.active{border-color:rgba(31,111,82,.25);background:rgba(31,111,82,.07)}.job-row{min-height:66px;border-color:var(--hairline);background:#ffffff}.job-row.selected{border-color:rgba(31,111,82,.42);background:rgba(31,111,82,.07)}.job-summary{min-height:64px}.job-actions{border-top-color:var(--hairline)}.status-dot{background:rgba(14,17,22,.22)}.running-indicator,.status-dot.completed,.status-dot.running,.status-dot.succeeded{background:var(--teal)}.email-chip.sending,.status-chip.running{background:rgba(31,111,82,.1);color:var(--teal-hover)}.email-chip.sent,.status-chip.completed,.status-chip.succeeded{background:rgba(31,111,82,.1);color:var(--success)}.preview-panel{top:18px}.pdf-frame{min-height:690px;border-color:var(--hairline);border-radius:7px;background:#ffffff}.preview-actions{align-items:start}.confirm-meta div,.empty-state,.message-box,.notice{border-color:var(--hairline);border-radius:7px;background:var(--surface-muted)}.admin-drawer{background:#f8f9fa}@media (max-width:1180px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;min-height:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center}.sidebar-brand{border-bottom:0;padding-bottom:0}.sidebar-nav{display:none}.sidebar-meta{margin-top:0;border-top:0;padding-top:0;text-align:right}}@media (max-width:767px){.app-shell{width:min(100% - 20px,620px);gap:12px;padding:12px 0 26px}.app-sidebar{grid-template-columns:1fr;gap:12px;padding:14px}.sidebar-meta{display:none}.app-header{top:10px;gap:14px;padding:15px}.session-bar,.user-block{text-align:left}.user-block{border-bottom-color:var(--hairline)}.workbench-grid{grid-template-columns:1fr}.builder-row{grid-template-columns:28px 50px minmax(0,1fr) auto}.builder-row .button.ghost{grid-column:4}.preview-panel{position:static}}:root{--deck-page:#e7e9ec;--deck-surface:#f1f2f4;--deck-surface-top:#f7f8fa;--deck-surface-bottom:#e2e4e8;--deck-pressed:#d6d9de;--deck-dark:#1c1f24;--deck-dark-2:#2a2d33;--deck-ink:#1c1f24;--deck-muted:#6c727a;--deck-line:rgba(28,31,36,0.1);--deck-line-strong:rgba(28,31,36,0.2);--deck-line-soft:rgba(28,31,36,0.06);--deck-led:#f0a000;--deck-led-soft:rgba(240,160,0,0.16);--deck-success:#1f7a4d;--deck-danger:#a3331f;--deck-warning:#b3801f;--deck-shadow:inset 0 1px 0 rgba(255,255,255,0.76),0 1px 2px rgba(28,31,36,0.06);--deck-floating:0 34px 90px rgba(28,31,36,0.28);--canvas:var(--deck-page);--surface:var(--deck-surface);--surface-muted:#eaedf0;--surface-tint:var(--deck-surface-top);--deep:var(--deck-dark);--text:var(--deck-ink);--secondary:var(--deck-muted);--muted:var(--deck-muted);--hairline:var(--deck-line);--hairline-strong:var(--deck-line-strong);--teal:var(--deck-led);--teal-hover:#b87500;--success:var(--deck-success);--danger:var(--deck-danger);--warning:var(--deck-warning);--primary-hover:#111318;--shadow:var(--deck-shadow);--floating-shadow:var(--deck-floating)}body,html{background:radial-gradient(circle at 76% 0,rgba(240,160,0,.13),transparent 28rem),radial-gradient(circle at 6% 10%,rgba(28,31,36,.16),transparent 24rem),linear-gradient(180deg,#f0f2f4 0,var(--deck-page) 42%,#dfe2e6 100%)}body{color:var(--deck-ink);font-family:Space Grotesk,Noto Sans KR,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Segoe UI,sans-serif}body:before{background:linear-gradient(90deg,rgba(28,31,36,.055) 1px,transparent 0),linear-gradient(180deg,rgba(255,255,255,.44) 1px,transparent 0);background-size:88px 88px;opacity:.72}.app-shell{width:min(1560px,calc(100% - 32px));grid-template-columns:246px minmax(0,1fr);gap:16px}.app-header{position:relative;top:auto;overflow:hidden;border-color:rgba(28,31,36,.32);background:linear-gradient(180deg,rgba(42,45,51,.98),rgba(28,31,36,.98)),var(--deck-dark);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 42px rgba(28,31,36,.16);color:#f6f7f8;padding:22px 24px}.app-header:before{inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 22px);pointer-events:none}.app-header:after,.app-header:before{display:block;position:absolute;content:""}.app-header:after{right:24px;bottom:16px;width:7px;height:7px;border-radius:999px;background:var(--deck-led);box-shadow:0 0 0 5px rgba(240,160,0,.12),0 0 22px rgba(240,160,0,.58)}.app-title,.session-bar{position:relative;z-index:1}.app-title h1,.login-brand h1{color:inherit;font-family:Space Grotesk,Noto Sans KR,sans-serif;font-size:clamp(27px,2.5vw,40px);font-weight:600;letter-spacing:-.025em}.app-title p{color:rgba(246,247,248,.66);font-family:IBM Plex Mono,monospace;font-size:12px}.user-block{border-color:rgba(255,255,255,.14)}.user-block strong{color:#ffffff}.app-header .session-bar span,.user-block span{color:rgba(246,247,248,.58)}.admin-drawer,.app-sidebar,.confirm-dialog,.login-panel,.panel,.settings-drawer{border-color:var(--deck-line);background:linear-gradient(180deg,var(--deck-surface-top),var(--deck-surface-bottom)),var(--deck-surface);box-shadow:var(--deck-shadow)}.app-sidebar{top:118px;min-height:calc(100svh - 136px)}.sidebar-brand{border-bottom-color:var(--deck-line)}.brand-mark{border-color:rgba(0,0,0,.36);background:linear-gradient(180deg,var(--deck-dark-2),var(--deck-dark));box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 1px 2px rgba(28,31,36,.18);color:#f6f7f8}.sidebar-nav-item{position:relative;color:var(--deck-muted);font-family:IBM Plex Mono,monospace;font-size:12px}.sidebar-nav-item.active{background:linear-gradient(180deg,var(--deck-dark-2),var(--deck-dark));box-shadow:inset 0 1px 0 rgba(255,255,255,.12);color:#f6f7f8}.sidebar-nav-item.active:after{position:absolute;top:50%;right:11px;width:6px;height:6px;border-radius:999px;background:var(--deck-led);box-shadow:0 0 12px rgba(240,160,0,.72);content:"";transform:translateY(-50%)}.sidebar-meta{border-top-color:var(--deck-line)}.dialog-header p,.drawer-header p,.login-brand p,.panel-heading p,.sidebar-meta span{color:var(--deck-muted)}.dialog-header h2,.drawer-header h2,.panel-heading h2{color:var(--deck-ink);font-family:Space Grotesk,Noto Sans KR,sans-serif;font-weight:600;letter-spacing:-.015em}.batch-builder .panel-heading h2:before,.preview-panel .panel-heading h2:before,.progress-panel .panel-heading h2:before{border-color:var(--deck-line);background:linear-gradient(180deg,#ffffff,#e8ebef);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);color:var(--deck-muted)}input,select,textarea{border-color:rgba(28,31,36,.14);background:linear-gradient(180deg,#ffffff,#eef1f4);box-shadow:inset 0 1px 0 rgba(255,255,255,.86);color:var(--deck-ink);font-family:Space Grotesk,Noto Sans KR,sans-serif}input:focus,select:focus,textarea:focus{border-color:rgba(240,160,0,.62);box-shadow:0 0 0 4px rgba(240,160,0,.13),inset 0 1px 0 rgba(255,255,255,.86)}.button{border-radius:7px;font-family:Space Grotesk,Noto Sans KR,sans-serif;font-weight:600}.button.generate,.button.primary,.button.send{border-color:rgba(0,0,0,.42);background:linear-gradient(180deg,var(--deck-dark-2),var(--deck-dark));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 1px 2px rgba(0,0,0,.18);color:#f6f7f8}.button.secondary,.button.small.secondary{border-color:rgba(28,31,36,.18);background:linear-gradient(180deg,#f8f9fa,#e2e4e8);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);color:var(--deck-ink)}.button.ghost{background:transparent;color:var(--deck-muted)}.button.disabled,.button:disabled{opacity:.54}.builder-form{grid-template-columns:96px minmax(0,1fr) 76px}.builder-row,.bulk-action-bar,.confirm-meta div,.empty-state,.feedback-row,.history-row,.job-row,.message-box,.metric,.notice,.suggestion-menu{border-color:var(--deck-line);background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(236,239,243,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}.builder-row,.job-row{border-radius:8px}.builder-row:hover,.job-row:hover{border-color:var(--deck-line-strong);background:linear-gradient(180deg,#ffffff,#e9edf1)}.bulk-count,.duplicate-label,.email-chip,.kind-chip,.metric span,.metric strong,.row-index,.status-chip,.suggestion-main span{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.email-chip,.kind-chip,.status-chip{border:1px solid rgba(28,31,36,.08);background:rgba(28,31,36,.06);color:var(--deck-muted)}.email-chip.sent,.status-chip.completed,.status-chip.succeeded{border-color:rgba(31,122,77,.16);background:rgba(31,122,77,.1);color:var(--deck-success)}.email-chip.failed,.email-chip.not_configured,.status-chip.failed{border-color:rgba(163,51,31,.18);background:rgba(163,51,31,.1);color:var(--deck-danger)}.email-chip.sending,.status-chip.running{border-color:rgba(240,160,0,.22);background:rgba(240,160,0,.13);color:#8a5b00}.progress-rail{height:8px;border:1px solid rgba(28,31,36,.08);background:linear-gradient(180deg,#d7dbe0,#c9cdd3);box-shadow:inset 0 1px 2px rgba(28,31,36,.13)}.progress-rail span{background:linear-gradient(90deg,#d58d00,var(--deck-led));box-shadow:0 0 18px rgba(240,160,0,.32)}.running-indicator,.status-dot.completed,.status-dot.running,.status-dot.succeeded{background:var(--deck-led);box-shadow:0 0 0 4px rgba(240,160,0,.12),0 0 14px rgba(240,160,0,.62)}.job-row.selected{border-color:rgba(240,160,0,.38);background:linear-gradient(180deg,rgba(255,251,241,.92),rgba(237,229,210,.88))}.check-control input,.check-pill input,.job-check input{accent-color:var(--deck-led)}.check-pill{border-color:var(--deck-line);background:linear-gradient(180deg,#f8f9fa,#e2e4e8);box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}.pdf-frame{border-color:rgba(28,31,36,.22);background:linear-gradient(180deg,rgba(42,45,51,.08),rgba(28,31,36,.02)),#f8f9fa;box-shadow:inset 0 1px 0 rgba(255,255,255,.82),inset 0 0 0 8px rgba(28,31,36,.025)}.preview-empty{color:var(--deck-muted)}.failure-log pre{border-color:rgba(255,255,255,.08);background:linear-gradient(180deg,#20242a,#111318);color:#f6f7f8}.admin-drawer,.settings-drawer{background:linear-gradient(180deg,#f7f8fa,#e0e3e7),var(--deck-page)}.settings-tabs button{border-color:var(--deck-line);background:linear-gradient(180deg,#f8f9fa,#e2e4e8);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);color:var(--deck-muted)}.settings-tabs button.active{border-color:rgba(0,0,0,.42);background:linear-gradient(180deg,var(--deck-dark-2),var(--deck-dark));color:#ffffff}.login-screen{background:radial-gradient(circle at 50% 0,rgba(240,160,0,.13),transparent 24rem),linear-gradient(180deg,#f0f2f4,#dfe2e6)}.login-panel{width:min(480px,calc(100% - 32px))}@media (max-width:1180px){.app-shell{grid-template-columns:1fr}.app-sidebar{top:auto}.sidebar-nav{display:flex;flex-wrap:wrap}.sidebar-nav-item{width:auto}}@media (max-width:767px){.app-shell{width:min(100% - 18px,620px);grid-template-columns:1fr}.app-header{background:linear-gradient(180deg,rgba(42,45,51,.98),rgba(28,31,36,.98))}.app-title h1,.login-brand h1{font-size:clamp(24px,7vw,30px)}.builder-form{grid-template-columns:88px minmax(0,1fr)}.builder-form .builder-add{grid-column:1/-1}.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-header{justify-content:flex-start}.sidebar-brand{align-items:flex-start}.sidebar-brand strong{max-width:160px;white-space:normal;overflow-wrap:anywhere}.sidebar-account-actions{display:grid;gap:10px;margin-top:8px;border-top:1px solid var(--deck-line);padding-top:16px}.sidebar-account-actions .button{width:100%}.sidebar-nav{gap:8px}.sidebar-nav-item{cursor:pointer}.history-page{display:grid;gap:18px;min-width:0}.history-hero .panel-heading{align-items:center}.history-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.history-filter-panel{padding:16px 18px}.history-filter-grid{display:grid;grid-template-columns:minmax(220px,1.4fr) 130px 130px 150px 150px minmax(170px,.8fr);gap:12px;align-items:end}.history-filter-grid label{display:grid;min-width:0;gap:7px}.history-filter-grid label span{color:var(--deck-muted);font-size:12px;font-weight:800}.history-filter-grid input,.history-filter-grid select{width:100%;min-width:0}.history-filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.history-table-panel{padding:0;overflow:hidden}.history-table{display:grid;min-width:0}.history-table-head,.history-table-row{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(118px,.7fr) minmax(90px,.5fr) minmax(82px,.45fr) minmax(290px,1fr);gap:14px;align-items:center}.history-table-head{background:linear-gradient(180deg,#f8f9fa,#e7e9ed);color:var(--deck-muted);font-size:12px;font-weight:800;letter-spacing:.01em}.history-table-head,.history-table-row{border-bottom:1px solid var(--deck-line);padding:14px 18px}.history-table-row:last-child{border-bottom:0}.history-target{display:grid;min-width:0;gap:4px}.history-target span,.history-target strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-target strong{color:var(--deck-ink);font-size:15px}.history-table-row>span,.history-target span{color:var(--deck-muted);font-size:13px}.history-target em{color:var(--deck-danger);font-size:12px;font-style:normal;line-height:1.4}.history-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:8px}.history-actions .button{min-height:36px;padding:0 10px;font-size:12px}.history-failure-detail{grid-column:1/-1;display:grid;gap:8px;border:1px solid rgba(163,51,31,.16);border-radius:8px;background:rgba(163,51,31,.06);padding:12px}.history-failure-detail strong{color:var(--deck-danger);font-size:13px}.history-failure-detail p{margin:0;color:var(--deck-ink);font-size:13px;line-height:1.55}.history-failure-detail pre{max-height:220px;overflow:auto;border:1px solid rgba(28,31,36,.1);border-radius:8px;background:#16191f;color:#f6f7f8;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.55;margin:0;padding:12px;white-space:pre-wrap;word-break:break-word}.master-cache-panel,.system-health-panel{background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(232,235,240,.72))}.admin-analytics-panel,.master-cache-panel,.system-health-panel{display:grid;gap:14px;border:1px solid var(--deck-line);border-radius:8px;padding:16px}.admin-analytics-panel{background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(239,243,248,.78)),radial-gradient(circle at 0 0,rgba(37,99,235,.08),transparent 38%)}.admin-analytics-panel h3{margin:0;color:var(--deck-ink);font-size:18px}.analytics-filter-grid{display:grid;grid-template-columns:minmax(180px,1fr) 92px repeat(2,minmax(104px,116px)) auto;gap:10px;align-items:end}.analytics-filter-grid .field,.analytics-filter-grid input,.analytics-filter-grid select{min-width:0}.analytics-filter-grid input[type=date]{width:100%;min-inline-size:0;letter-spacing:-.01em}.analytics-submit-button{width:100%;min-width:92px;white-space:nowrap}.analytics-section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:2px}.analytics-section-title strong{color:var(--deck-ink);font-size:14px}.analytics-section-title span{color:var(--deck-muted);font-size:12px}.trend-bars{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:8px;min-height:150px;border:1px solid var(--deck-line);border-radius:8px;background:linear-gradient(180deg,transparent,transparent calc(50% - 1px),rgba(15,23,42,.06) calc(50% - 1px),rgba(15,23,42,.06) 50%,transparent 0),rgba(255,255,255,.62);padding:16px 12px 10px}.trend-bar,.trend-bars{display:grid;align-items:end}.trend-bar{grid-template-rows:minmax(76px,1fr) auto auto;justify-items:center;gap:4px;min-width:0}.trend-bar span{width:min(24px,70%);min-height:8px;border-radius:999px 999px 3px 3px;background:linear-gradient(180deg,var(--deck-blue),var(--deck-dark));box-shadow:0 8px 18px rgba(37,99,235,.18)}.trend-bar strong{color:var(--deck-ink);font-size:12px;line-height:1}.trend-bar em{max-width:100%;overflow:hidden;color:var(--deck-muted);font-size:10px;font-style:normal;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.target-chart,.target-ranking-list{display:grid;gap:8px}.target-chart{border:1px solid var(--deck-line);border-radius:8px;background:rgba(255,255,255,.62);padding:10px}.target-chart-row{display:grid;grid-template-columns:30px minmax(120px,1fr) minmax(140px,2.2fr) 46px;align-items:center;gap:10px;min-width:0;width:100%;border:0;background:transparent;cursor:pointer;padding:0;text-align:left}.target-chart-row>strong{overflow:hidden;color:var(--deck-ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.target-ranking-row{display:grid;grid-template-columns:30px minmax(0,1fr) 52px;align-items:center;gap:10px;border:1px solid var(--deck-line);border-radius:8px;background:rgba(255,255,255,.72);padding:10px}.ranking-index{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--deck-dark);color:#ffffff;font-size:12px;font-weight:800}.ranking-main{display:grid;gap:8px;min-width:0}.ranking-main div:first-child{display:grid;gap:2px;min-width:0}.ranking-main span,.ranking-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-main span{color:var(--deck-muted);font-size:12px}.target-chart-row.active .ranking-index,.text-button.active{color:var(--deck-blue)}.target-chart-row.active .ranking-bar{background:rgba(37,99,235,.14)}.ranking-bar{height:5px;overflow:hidden;border-radius:999px;background:rgba(15,23,42,.08)}.ranking-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--deck-blue),#0f172a)}.analytics-table{display:grid;overflow:hidden;border:1px solid var(--deck-line);border-radius:8px;background:rgba(255,255,255,.74)}.analytics-table-head,.analytics-table-row{display:grid;grid-template-columns:minmax(180px,1.6fr) 72px 70px 70px 70px 64px;align-items:center;gap:10px;padding:9px 12px}.analytics-table.compact .analytics-table-head,.analytics-table.compact .analytics-table-row{grid-template-columns:minmax(190px,1.8fr) 70px 70px 70px 70px 64px}.analytics-table-head{background:rgba(15,23,42,.05);color:var(--deck-muted);font-size:11px;font-weight:800;text-transform:uppercase}.analytics-table-row{border-top:1px solid var(--deck-line);color:var(--deck-ink);font-size:12px}.analytics-table-row>span,.analytics-table-row>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-name-cell{display:grid;gap:2px;min-width:0}.analytics-name-cell .text-button,.analytics-name-cell span,.analytics-name-cell strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-name-cell .text-button{justify-self:start;max-width:100%;padding:0;color:var(--deck-ink);font-size:12px;font-weight:800}.analytics-name-cell span{color:var(--deck-muted);font-size:11px}.analytics-detail-panel{display:grid;gap:8px;border:1px solid rgba(37,99,235,.18);border-radius:8px;background:rgba(239,246,255,.72);padding:12px}.analytics-detail-list{display:grid;gap:6px;max-height:260px;overflow:auto}.analytics-detail-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--deck-line);border-radius:7px;background:rgba(255,255,255,.78);padding:9px 10px}.analytics-detail-row div{display:grid;gap:2px;min-width:0}.analytics-detail-row small,.analytics-detail-row span,.analytics-detail-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-detail-row small,.analytics-detail-row span{color:var(--deck-muted);font-size:11px}.master-cache-panel h3,.system-health-panel h3{margin:0;color:var(--deck-ink);font-size:18px}.system-health-grid{display:grid;gap:8px}.system-health-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--deck-line);border-radius:8px;background:rgba(255,255,255,.72);padding:10px 12px}.system-health-row div{display:grid;gap:2px;min-width:0}.system-health-row span[title],.system-health-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.system-health-row span[title]{color:var(--deck-muted);font-family:IBM Plex Mono,monospace;font-size:11px}.master-cache-actions{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr) minmax(140px,.7fr);gap:10px;align-items:end}.master-cache-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.master-cache-grid .metric{min-height:88px}.master-cache-grid small{color:var(--deck-muted);font-size:11px;line-height:1.4}.master-update-row{border:1px solid var(--deck-line);border-radius:8px;background:rgba(255,255,255,.55);padding:12px}.master-update-row summary{display:flex;cursor:pointer;align-items:center;justify-content:space-between;gap:12px}.master-update-row summary span{color:var(--deck-muted);font-size:12px}.master-update-detail{display:grid;gap:8px;border-top:1px solid var(--deck-line);margin-top:10px;padding-top:10px}.master-update-detail ul{display:grid;gap:4px;padding-left:18px}.master-update-detail p,.master-update-detail ul{margin:0;color:var(--deck-muted);font-size:12px}@media (max-width:1180px){.app-sidebar{min-height:auto}.sidebar-account-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.history-table-head{display:none}.history-table{gap:10px;padding:12px}.history-table-row{grid-template-columns:1fr;gap:10px;border:1px solid var(--deck-line);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(236,239,243,.72));padding:14px}.history-actions,.history-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-filter-grid,.master-cache-actions,.master-cache-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.sidebar-brand strong{max-width:none}.sidebar-account-actions{grid-template-columns:1fr}.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-filter-grid,.history-actions,.history-filter-actions,.history-filter-grid,.master-cache-actions,.master-cache-grid{grid-template-columns:1fr}.analytics-submit-button{min-width:0}}