:root{--bg:#070b12;--panel:#0d131e;--panel-2:#111a28;--line:#202c3e;--muted:#8290a6;--text:#e9eef7;--green:#20c997;--red:#ff5b6e;--blue:#5595ff;--amber:#ffbd59}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,Pretendard,Noto Sans KR,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.login-screen,.setup-screen,.center-screen{background:radial-gradient(circle at 20% 15%, #5595ff21, transparent 30%), radial-gradient(circle at 80% 75%, #20c99714, transparent 28%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.center-screen{color:var(--muted);align-content:center}.login-card,.setup-card{border:1px solid var(--line);background:#0d131ef5;border-radius:18px;width:min(430px,100%);padding:36px;box-shadow:0 28px 80px #00000073}.login-card h1,.setup-card h1{letter-spacing:-.04em;margin:8px 0;font-size:30px}.login-card>p,.setup-card>p{color:var(--muted);margin:0 0 28px;line-height:1.6}.eyebrow{color:var(--blue);letter-spacing:.17em;font-size:11px;font-weight:800}.login-card label{color:#b7c1d1;gap:8px;margin-top:17px;font-size:13px;font-weight:650;display:grid}.login-card input,.form-row input,.form-row select{border:1px solid var(--line);width:100%;color:var(--text);background:#080d15;border-radius:9px;outline:none;padding:11px 12px}.login-card input:focus,.form-row input:focus,.form-row select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #5595ff1f}.primary-button{background:var(--blue);color:#fff;border:0;border-radius:10px;margin-top:24px;padding:12px 18px;font-weight:800}.primary-button.full{width:100%;margin-top:10px}.form-error{color:#ff8492;margin-top:14px;font-size:13px}.setup-card code{color:var(--green);background:#080d15;border-radius:8px;padding:14px;display:block}.spinner{border:3px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.workstation{grid-template-rows:52px minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.topbar{border-bottom:1px solid var(--line);background:#090e16;align-items:center;gap:24px;padding:0 18px;display:flex}.brand{align-items:center;gap:11px;min-width:280px;display:flex}.brand-mark{background:linear-gradient(135deg,#5b9cff,#746bff);border-radius:8px;place-items:center;width:31px;height:31px;font-size:12px;font-weight:900;display:grid}.brand div{gap:2px;display:grid}.brand b{font-size:14px}.brand small{color:var(--muted);letter-spacing:.11em;font-size:9px}.progress-strip{color:var(--muted);flex:1;justify-content:center;align-items:center;gap:clamp(12px,2.2vw,34px);font-size:11px;display:flex}.progress-strip span{white-space:nowrap}.progress-strip b{color:#dce4ef;margin-right:3px}.userbox{justify-content:flex-end;align-items:center;gap:12px;min-width:170px;font-size:12px;display:flex}.userbox button{color:var(--muted);background:0 0;border:0;padding:5px}.userbox a{color:#a8c7ff;padding:5px;text-decoration:none}.userbox button:hover,.userbox a:hover{color:#fff}.workspace-grid{grid-template-columns:minmax(540px,1fr) minmax(340px,370px);min-height:0;display:grid}.chart-column{border-right:1px solid var(--line);grid-template-rows:38px minmax(0,1fr);min-width:0;min-height:0;display:grid}.chart-context-bar{border-bottom:1px solid var(--line);color:var(--muted);background:#0b111b;align-items:center;gap:9px;padding:0 14px;font-size:11px;display:flex}.chart-context-bar b{color:var(--text)}.live-dot{background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #20c9971a}.sealed-label{border-left:1px solid var(--line);color:var(--amber);padding-left:9px}.manual-replay-label{color:#79a9ff;letter-spacing:.04em;background:#5595ff12;border:1px solid #5595ff3d;border-radius:5px;padding:3px 7px;font-size:9px}.sequence{font-variant-numeric:tabular-nums;margin-left:auto}.chart-shell{background:#0b1019;min-height:0;position:relative;overflow:hidden}.chart-container{width:100%;height:100%}.chart-loading{z-index:2;color:var(--muted);background:#0b1019;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.decision-panel{background:var(--panel);min-height:0;padding:0 11px 8px;position:relative;overflow:hidden}.panel-section{border-bottom:1px solid var(--line);padding:15px 0}.panel-section h2{letter-spacing:.02em;color:#dce4f0;justify-content:space-between;align-items:baseline;margin:0 0 11px;font-size:12px;display:flex}.panel-section h2 small{color:var(--muted);font-size:10px;font-weight:500}.position-card{z-index:4;background:linear-gradient(180deg, #101824 0%, var(--panel) 100%);padding-top:13px;position:sticky;top:0}.position-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.position-heading>div{gap:2px;display:grid}.position-heading small{color:var(--muted);font-size:9px}.position-heading strong{font-size:13px}.position-badge{border:1px solid var(--line);color:#aab6c8;background:#0a1019;border-radius:5px;padding:5px 8px;font-size:10px;font-weight:850}.position-badge.long{color:#9ef0d7;background:#20c99717;border-color:#20c99761}.position-badge.short{color:#ffc0c8;background:#ff5b6e17;border-color:#ff5b6e61}.upnl-block{border:1px solid var(--line);background:#080d15;border-radius:9px;grid-template-columns:1fr auto;align-items:end;margin-bottom:11px;padding:10px 11px;display:grid}.upnl-block small{color:var(--muted);grid-column:1/-1;margin-bottom:4px;font-size:9px}.upnl-block strong{letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:20px}.upnl-block span{font-variant-numeric:tabular-nums;padding-bottom:2px;font-size:11px;font-weight:750}.position-metrics{grid-template-columns:1fr 1fr;gap:9px 15px;display:grid}.position-metrics div{gap:3px;min-width:0;display:grid}.position-metrics small{color:var(--muted);font-size:9px}.position-metrics b{color:#dce4ef;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:10px;overflow:hidden}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.neutral{color:#c6d0df!important}.mark-note{color:#647289;margin:10px 0 0;font-size:8px;line-height:1.4}.position-actions button,.setting-slots button{border:1px solid var(--line);color:#aab6c8;background:#0a1019;border-radius:7px;padding:8px 5px;font-size:10px}.position-actions button:hover,.setting-slots button:hover{color:#fff;border-color:#3a4b64}.form-row{grid-template-columns:1.25fr .75fr;gap:8px;display:grid}.form-row label{color:var(--muted);gap:5px;font-size:10px;display:grid}.form-row input,.form-row select{padding:9px;font-size:12px}.entry-info{color:var(--muted);margin-top:9px;font-size:10px}.entry-info b{float:right;color:#dce4ef}.hold-button{color:#dce4ef;background:#141e2c;border:1px solid #38475d;border-radius:9px;width:100%;padding:11px;font-size:12px}.hold-button b{color:var(--amber);margin-left:4px}.direction-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.direction-grid button{color:#fff;border:0;border-radius:9px;padding:12px;font-size:12px;font-weight:850}.long-button{background:#087d68}.short-button{background:#a22b42}.position-actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:8px;display:grid}.position-actions .exit-button{color:#ffd8dc;border-color:#ff5b6e6b}.action-section p{color:var(--muted);text-align:center;margin:9px 0 0;font-size:9px}.action-section p b{color:#bac5d5}.setting-slots{gap:6px;display:grid}.setting-slot{border:1px solid var(--line);background:#0a1019;border-radius:7px;grid-template-columns:minmax(72px,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.setting-slot>div:first-child{gap:2px;display:grid}.setting-slot b{font-size:11px}.setting-slot small,.slot-note{color:var(--muted);font-size:9px}.slot-actions{gap:4px;display:flex}.setting-slots button{padding:6px 7px;font-size:9px}.setting-slots button.slot-save{color:#dce9ff;background:#182844;border-color:#334c72}.slot-note{margin:7px 0 0;line-height:1.45}.memo-section textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:75px;color:var(--text);background:#080d15;border-radius:8px;outline:none;padding:9px;font-size:11px;line-height:1.5}.panel-alert{z-index:30;border-radius:7px;width:min(320px,100vw - 400px);margin:0;padding:8px 9px;font-size:10px;line-height:1.45;position:fixed;top:94px;right:380px;box-shadow:0 10px 30px #00000059}.panel-alert.error{color:#ffc3ca;background:#ff5b6e1a;border:1px solid #ff5b6e40}.panel-alert.success{color:#b8f2e1;background:#20c99714;border:1px solid #20c99733}.commit-row{grid-template-columns:1fr 1fr;gap:8px;padding-top:13px;display:grid}.commit-row button{border-radius:9px;padding:11px 5px;font-size:11px;font-weight:750}.pass-button{color:#b9c3d2;background:0 0;border:1px solid #39465a}.pass-button b{color:var(--amber)}.save-button{background:var(--blue);color:#fff;border:0}.open-warning{color:#ffabb4;text-align:center;margin:8px 0 0;font-size:9px;line-height:1.4}@media (max-width:1000px){.progress-strip span:nth-child(n+4){display:none}.workspace-grid{grid-template-columns:minmax(440px,1fr) 350px}.brand{min-width:220px}.panel-alert{width:min(300px,100vw - 380px);right:360px}}@media (min-width:761px) and (max-height:1100px){.topbar{gap:16px;padding-inline:14px}.panel-section{padding:8px 0}.panel-section h2{margin-bottom:6px}.position-card{padding-top:7px}.position-heading{margin-bottom:6px}.position-badge{padding:3px 7px}.upnl-block{margin-bottom:6px;padding:6px 8px}.upnl-block strong{font-size:17px}.position-metrics{gap:4px 12px}.position-metrics div{gap:1px}.mark-note{margin-top:5px;line-height:1.25}.form-row label{gap:3px}.form-row input,.form-row select{padding:6px 8px}.entry-info{margin-top:4px}.hold-button{padding:8px}.direction-grid,.position-actions{gap:5px;margin-top:5px}.direction-grid button{padding:9px}.position-actions button{padding:6px 4px}.action-section p{display:none}.setting-slots{gap:3px}.setting-slot{gap:5px;padding:4px 6px}.setting-slots button{padding:4px 6px}.slot-note{display:none}.memo-section textarea{resize:none;height:44px;min-height:44px;padding:6px 8px}.commit-row{gap:6px;padding-top:7px}.commit-row button{padding:8px 4px}.open-warning{margin-top:4px}}@media (min-width:761px) and (max-height:780px){.workstation{grid-template-rows:46px minmax(0,1fr)}.brand-mark{width:27px;height:27px}.position-metrics{grid-template-columns:repeat(3,1fr);gap:4px 7px}.mark-note,.entry-info{display:none}.panel-section{padding:6px 0}.position-card{padding-top:5px}.upnl-block{grid-template-columns:1fr auto auto;align-items:center;column-gap:8px;padding-block:4px}.upnl-block small{grid-column:auto;margin:0}.upnl-block strong{font-size:15px}.upnl-block span{font-size:9px}.memo-section textarea{height:36px;min-height:36px}.panel-alert{top:88px}}@media (max-width:760px){.workstation{height:100dvh;display:block;overflow:auto}.topbar{z-index:10;height:58px;position:sticky;top:0}.progress-strip{display:none}.userbox{min-width:0;margin-left:auto}.workspace-grid{display:block}.chart-column{border-right:0;border-bottom:1px solid var(--line);height:64vh}.decision-panel{overflow:visible}.panel-alert{width:auto;margin-top:8px;position:static}}.admin-shell{background:var(--bg);min-height:100dvh}.admin-topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#090e16f5;align-items:center;gap:24px;height:58px;padding:0 24px;display:flex;position:sticky;top:0}.admin-brand{min-width:250px;color:var(--text);text-decoration:none}.admin-topbar nav{flex:1;gap:8px;display:flex}.admin-topbar nav a,.admin-topbar nav button{color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;padding:7px 10px;font-size:12px;text-decoration:none}.admin-topbar nav a:hover,.admin-topbar nav button:hover{color:#fff;border-color:var(--line)}.admin-content{width:min(1500px,100% - 40px);margin:0 auto;padding:34px 0 60px}.admin-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.admin-heading h1{letter-spacing:-.04em;margin:6px 0 4px;font-size:30px}.admin-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.admin-live{color:#9de8d0;white-space:nowrap;background:#20c99712;border:1px solid #20c99740;border-radius:999px;align-items:center;gap:8px;padding:7px 11px;font-size:11px;display:flex}.admin-live i{background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #20c9971a}.admin-alert{border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:12px}.admin-alert.error{color:#ffc3ca;background:#ff5b6e17;border:1px solid #ff5b6e40}.admin-alert.success{color:#b8f2e1;background:#20c99712;border:1px solid #20c99738}.admin-metrics{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px;display:grid}.admin-metrics article{border:1px solid var(--line);background:linear-gradient(145deg,#111a28,#0c121c);border-radius:11px;gap:4px;min-width:0;padding:17px 18px;display:grid}.admin-metrics small{color:var(--muted);font-size:10px}.admin-metrics strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:25px}.admin-metrics strong em{color:var(--muted);font-size:13px;font-style:normal}.admin-metrics span{color:#93a0b3;font-size:10px}.admin-grid{grid-template-columns:minmax(360px,.75fr) minmax(480px,1.25fr);gap:14px;margin-bottom:14px;display:grid}.admin-panel{border:1px solid var(--line);background:var(--panel);border-radius:12px;min-width:0;padding:18px}.admin-panel-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.admin-panel-title h2{margin:0 0 4px;font-size:14px}.admin-panel-title p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.admin-panel-title>b,.admin-panel-title>span{color:#c9d5e7;font-size:12px}.account-form{grid-template-columns:1fr 1fr;gap:10px;display:grid}.account-form label,.admin-modal label{color:#9ca9bc;gap:6px;font-size:10px;display:grid}.account-form input,.admin-modal input{border:1px solid var(--line);width:100%;color:var(--text);background:#080d15;border-radius:8px;outline:none;padding:9px 10px;font-size:11px}.account-form input:focus,.admin-modal input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #5595ff1a}.account-form .password-field{grid-column:1/-1}.password-field span{grid-template-columns:1fr auto;gap:6px;display:grid}.password-field button,.row-actions button,.credential-card button,.modal-actions button{border:1px solid var(--line);color:#afbbcc;background:#0a1019;border-radius:7px;padding:7px 9px;font-size:10px}.account-form .primary-button{grid-column:1/-1;margin:2px 0 0;padding:10px}.credential-card{background:#5595ff12;border:1px solid #5595ff40;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:11px;display:flex}.credential-card>div{grid-template-columns:auto 1fr;align-items:center;gap:3px 9px;min-width:0;display:grid}.credential-card small{color:#93a9c9;grid-column:1/-1;font-size:9px}.credential-card b{font-size:11px}.credential-card code{color:#a8c7ff;text-overflow:ellipsis;font-size:11px;overflow:hidden}.choice-bars{gap:9px;display:grid}.choice-bars>div{grid-template-columns:92px minmax(80px,1fr) 48px;align-items:center;gap:10px;font-size:10px;display:grid}.choice-bars span{color:#aab6c8}.choice-bars i{background:#070b12;border-radius:99px;height:5px;overflow:hidden}.choice-bars i b{border-radius:inherit;background:linear-gradient(90deg,#447fe8,#6ca6ff);min-width:1px;height:100%;display:block}.choice-bars strong{text-align:right;font-variant-numeric:tabular-nums}.user-panel{margin-bottom:14px}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:10px}.admin-table th{border-bottom:1px solid var(--line);color:#7f8da2;text-align:left;padding:8px 9px;font-weight:650}.admin-table td{color:#c3cedd;font-variant-numeric:tabular-nums;border-bottom:1px solid #202c3eb3;padding:10px 9px}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table td>b,.admin-table td>small{display:block}.admin-table td>small{color:#758298;margin-top:3px;font-size:8px}.inactive-row{opacity:.55}.status-pill,.action-pill{border:1px solid var(--line);border-radius:99px;padding:4px 7px;font-size:8px;display:inline-flex}.status-pill.active{color:#a5ecd7;background:#20c99712;border-color:#20c9974d}.status-pill.inactive{color:#ffb7c0;background:#ff5b6e12;border-color:#ff5b6e4d}.row-actions{gap:4px;display:flex}.row-actions button{padding:5px 6px}.row-actions button.danger{color:#ff9daa}.lower-grid{grid-template-columns:minmax(650px,1.45fr) minmax(300px,.55fr);margin-bottom:0}.recent-table-wrap{max-height:390px}.action-pill{color:#c5d7f7;background:#111c2e}.action-hold{color:#ffd37d;background:#ffbd5912;border-color:#ffbd594d}.action-enter_long,.action-add,.action-reverse_long{color:#9be8d1;background:#20c99712;border-color:#20c99747}.action-enter_short,.action-reduce,.action-exit,.action-reverse_short{color:#ffabb5;background:#ff5b6e12;border-color:#ff5b6e47}.audit-list{display:grid}.audit-list>div{border-bottom:1px solid #202c3ea6;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:10px 2px;display:grid}.audit-list>div:last-child{border-bottom:0}.audit-list i{background:var(--blue);border-radius:50%;width:6px;height:6px}.audit-list span{gap:2px;display:grid}.audit-list b{font-size:10px}.audit-list small,.audit-list time,.audit-list>p{color:var(--muted);font-size:8px}.admin-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020509c2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-modal{border:1px solid var(--line);background:#0d141f;border-radius:14px;width:min(430px,100%);padding:25px;box-shadow:0 30px 100px #0000008c}.admin-modal h2{margin:6px 0}.admin-modal>p{color:var(--muted);margin:0 0 18px;font-size:11px;line-height:1.5}.modal-actions{justify-content:flex-end;gap:7px;margin-top:16px;display:flex}.modal-actions .primary-button{margin:0;padding:8px 12px}@media (max-width:1050px){.admin-metrics{grid-template-columns:1fr 1fr}.admin-grid,.lower-grid{grid-template-columns:1fr}}@media (max-width:700px){.admin-topbar{gap:8px;padding:0 12px}.admin-brand{min-width:0}.admin-brand div,.admin-topbar nav button,.admin-topbar .userbox span{display:none}.admin-content{width:min(100% - 22px,1500px);padding-top:22px}.admin-heading{align-items:flex-start}.admin-heading p,.admin-live{display:none}.admin-metrics{grid-template-columns:1fr 1fr;gap:8px}.admin-metrics article{padding:13px}.admin-metrics strong{font-size:20px}.account-form{grid-template-columns:1fr}.account-form .password-field,.account-form .primary-button{grid-column:auto}.admin-panel{padding:13px}}
