:root{--bg:#f5f7fa;--surface:#fff;--ink:#18263a;--muted:#637086;--border:#e2e7ef;--green:#157755;--green-light:#e8f6ef;--blue:#4269de;--red:#b94242;--orange:#a86711}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,a,input{font:inherit}button{cursor:pointer}a{color:var(--blue);text-underline-offset:3px}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}button{transition:background .15s}button:hover{filter:brightness(.96)}[hidden]{display:none!important}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;padding:12px;z-index:9}
.topbar{height:78px;background:white;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 32px;gap:16px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:750;font-size:22px;letter-spacing:-.8px;color:var(--ink)}.logo{width:34px;height:34px;border-radius:10px;background:var(--green);color:white;display:grid;place-items:center;font-size:19px}.top-actions{display:flex;align-items:center;gap:24px;font-size:13px}.top-actions a{text-decoration:none;color:var(--muted)}.pill{display:inline-flex;border:1px solid var(--border);background:#f8fafc;border-radius:20px;padding:4px 11px;font-size:12px;font-weight:600}.pill.demo{color:var(--orange);background:#fff8e8;border-color:#f4e5bf}
.layout{display:grid;grid-template-columns:216px minmax(0,1fr);max-width:1720px;margin:auto;min-height:calc(100vh - 78px)}.sidebar{background:white;border-right:1px solid var(--border);padding:30px 18px;display:flex;flex-direction:column}.nav-label,.eyebrow,.step{font-size:11px;font-weight:750;letter-spacing:1.6px;color:var(--muted)}.nav-label{padding:0 12px;margin:0 0 14px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{display:flex;gap:10px;align-items:center;border:0;background:transparent;padding:12px;border-radius:8px;color:var(--muted);text-align:left;font-size:14px;white-space:nowrap}.sidebar nav button[aria-current=page]{background:var(--green-light);color:var(--green);font-weight:650}.count{margin-left:auto;font-size:11px}.sidebar-note{margin-top:50px;padding:18px 12px;border-top:1px solid var(--border)}.sidebar-note strong{font-size:18px;line-height:1.4}.sidebar-note p,.sidebar-note a{font-size:12px}.sidebar-note p,.sidebar-foot{color:var(--muted)}.sidebar-foot{margin-top:auto;padding:60px 12px 0;font-size:10px;line-height:1.9}
main{padding:34px 38px 36px;min-width:0;max-width:1400px;width:100%;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}.eyebrow{margin:0 0 8px;color:var(--green)}h1{font-size:clamp(26px,2.6vw,37px);letter-spacing:-1.2px;line-height:1.18;margin:0}h2{font-size:17px;letter-spacing:-.25px;margin:0 0 4px}p{margin:9px 0;color:var(--muted)}.page-heading p:not(.eyebrow){font-size:14px;margin:10px 0 0}.secondary,.primary{border:1px solid var(--border);background:white;padding:11px 17px;border-radius:8px;color:var(--ink);font-size:13px;font-weight:650;white-space:nowrap}.primary{background:var(--green);border-color:var(--green);color:white}.text-button{border:0;background:transparent;color:var(--blue);font-weight:600;font-size:12px;padding:6px 0}.link-button{display:inline-flex;text-decoration:none;margin-top:16px}.demo-banner{display:flex;justify-content:space-between;align-items:center;background:#fff8e8;border:1px solid #efe0ba;color:#805f1d;padding:10px 15px;border-radius:9px;margin-bottom:20px;font-size:12px;gap:12px}.demo-banner .text-button{color:#805f1d;white-space:nowrap}.notice:empty{display:none}.notice{background:#eaf2ff;border:1px solid #ccdcfa;color:#264578;padding:13px 17px;border-radius:9px;font-size:14px;margin-bottom:20px}.notice.error{background:#fff1f1;border-color:#edc3c3;color:#943b3b}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.metric{background:white;border:1px solid var(--border);padding:19px 21px;border-radius:12px}.metric-label{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:6px}.metric strong{font-size:30px;letter-spacing:-1px;font-weight:700;display:block;line-height:1.3;margin:8px 0}.metric small{font-size:11px;color:var(--muted);display:block}.metric .good{color:var(--green)}.chart-grid{display:grid;grid-template-columns:1.75fr 1fr;gap:20px}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:23px;min-width:0}.panel-heading{display:flex;justify-content:space-between;gap:10px;align-items:start}.panel-heading p{font-size:11px;margin:3px 0 0}.unit{font-size:10px;white-space:nowrap;color:var(--muted);background:var(--bg);padding:4px 7px;border-radius:4px}.chart{margin:13px -5px 0}.chart svg{display:block;width:100%;height:auto;min-height:180px;overflow:visible}.chart svg text{font:11px system-ui;fill:var(--muted)}.chart svg .grid{stroke:#e9edf3;stroke-width:1}.chart svg .line{stroke:var(--green);stroke-width:3;fill:none;stroke-linejoin:round}.chart svg .point{stroke:white;stroke-width:3}.chart svg .point-label{fill:var(--ink);font-size:11px;font-weight:650}.legend{display:flex;flex-wrap:wrap;gap:16px;font-size:10px;color:var(--muted);margin:8px 0 0}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.green{background:var(--green)}.blue{background:var(--blue)}.red{background:var(--red)}.chart-data{font-size:11px;margin-top:13px}.chart-data summary{color:var(--muted)}summary{cursor:pointer}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;padding:9px;border-bottom:1px solid var(--border)}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:15px;margin:19px 0}.donut{width:142px;height:142px;transform:rotate(-90deg);flex-shrink:0}.token-total strong{display:block;font-size:27px;letter-spacing:-1px}.token-total small{font-size:11px;color:var(--muted)}.token-row{display:flex;justify-content:space-between;padding:6px 0;font-size:12px}.token-row>span:first-child{color:var(--muted)}.token-row strong{font-weight:650}.token-note{font-size:10px;margin-top:10px;line-height:1.5}
.action-card{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid #c9e3d7;background:#edf7f1;padding:22px 24px;border-radius:12px;margin-top:20px}.action-copy{display:flex;gap:16px;align-items:start}.action-icon{background:white;color:var(--green);width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:22px;flex-shrink:0}.action-card h2{font-size:18px}.action-card p{max-width:620px;font-size:12px;margin:5px 0 0}.action-buttons{display:flex;gap:9px;flex-shrink:0;align-items:center;flex-wrap:wrap}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:27px 0 12px}.history-row{display:flex;align-items:center;gap:15px;background:white;border:1px solid var(--border);border-radius:9px;padding:14px 18px;margin-bottom:8px}.event-icon{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;color:var(--green);background:var(--green-light);font-weight:700}.event-icon.rejected,.event-icon.error{color:var(--red);background:#fff0f0}.event-icon.rolled_back,.event-icon.resumed{color:var(--blue);background:#edf2ff}.event-body{flex:1;min-width:0}.event-body strong{font-size:13px;font-weight:650}.event-body p{font-size:11px;margin:1px 0 0}.event-cost{font-size:13px;white-space:nowrap;text-align:right}.event-cost small{font-size:10px;color:var(--muted);display:block}.event-badge{font-size:10px;color:var(--muted)}.footnote{font-size:10px;line-height:1.7;margin-top:20px;max-width:980px}.history-detail{margin-bottom:13px;background:white;border:1px solid var(--border);border-radius:10px;padding:18px 22px}.history-detail .history-row{border:0;padding:0;margin:0}.history-detail details{margin:14px 0 0;font-size:12px;color:var(--muted)}.history-detail pre{white-space:pre-wrap;overflow-wrap:anywhere}.history-detail a{font-size:12px}.history-summary{font-size:14px;padding:15px 0 25px;color:var(--muted)}.empty{padding:35px 16px;text-align:center;color:var(--muted);font-size:13px}
.connect-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.connect-grid h2{font-size:23px;margin:13px 0}.connect-grid p,.connect-footer p{font-size:13px}.upload{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #cbd5e1;background:#f8fafc;border-radius:10px;padding:24px 12px;margin:22px 0 12px;cursor:pointer}.upload>span{font-size:28px;color:var(--green)}.upload strong{font-size:14px}.upload small{font-size:11px;color:var(--muted)}#report-file{max-width:100%;font-size:12px}.connect-grid details{margin-top:20px;font-size:12px}.connect-grid pre{padding:15px;background:var(--bg);border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.providers{display:flex;gap:6px;margin:22px 0 16px;flex-wrap:wrap}.provider{padding:8px 12px;border:1px solid var(--border);background:white;color:var(--muted);border-radius:7px;font-size:12px}.provider[aria-pressed=true]{background:var(--green-light);color:var(--green);border-color:#b9d9c9}.connect-footer{margin-top:20px}.connect-footer a{font-size:13px}dialog{border:1px solid var(--border);border-radius:14px;padding:30px;max-width:490px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 80px #10203a33}dialog::backdrop{background:#14223866}dialog h2{font-size:24px;margin-top:10px}dialog p{font-size:14px}.close{float:right;border:0;background:transparent;font-size:24px;color:var(--muted)}.dialog-actions{display:flex;gap:10px;justify-content:end;margin-top:25px}
@media(min-width:1500px){main{padding-top:44px}.chart svg{max-height:300px}.metric strong{font-size:36px}}
@media(max-width:1100px){main{padding:26px 24px}.layout{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:25px 10px}.metric{padding:16px}.metric strong{font-size:25px}.chart-grid{grid-template-columns:1.5fr 1fr}.panel{padding:19px}.action-card{flex-wrap:wrap}.donut{width:110px;height:110px}.donut-wrap{gap:10px}.token-total strong{font-size:23px}}
@media(max-width:820px){.layout{display:block}.sidebar{padding:8px 16px;border-right:0;border-bottom:1px solid var(--border)}.sidebar nav{display:flex;justify-content:space-between}.sidebar nav button{padding:8px;font-size:12px}.sidebar-note,.sidebar-foot,.nav-label{display:none}.topbar{height:65px;padding:0 20px}.brand{font-size:20px}.top-actions{gap:12px}.metrics{grid-template-columns:repeat(2,1fr)}.chart-grid{grid-template-columns:1fr 1fr}.panel-heading{flex-wrap:wrap}.chart svg{min-height:170px}.connect-grid{grid-template-columns:1fr}}
@media(max-width:580px){main{padding:23px 16px}.topbar{padding:0 16px}.top-actions a{font-size:11px}.pill{font-size:10px;padding:3px 8px}.page-heading{align-items:start}.page-heading>.secondary{display:none}h1{font-size:28px}.demo-banner{align-items:start;font-size:11px}.metrics{gap:10px}.metric{padding:15px}.metric strong{font-size:27px}.chart-grid{grid-template-columns:1fr;gap:14px}.panel{padding:19px}.chart svg{min-height:190px}.donut{width:130px;height:130px}.donut-wrap{justify-content:start;margin:12px 0;gap:30px}.token-panel #tokens{max-width:360px;margin:auto}.action-card{padding:19px;gap:16px}.action-icon{display:none}.action-buttons{width:100%}.action-buttons button{flex:1}.history-row{gap:10px;padding:12px}.event-body strong{font-size:12px}.event-cost{font-size:11px}.event-badge{display:none}.dialog-actions{flex-direction:column-reverse}.sidebar nav button{gap:5px}.count{margin-left:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:580px){.page-heading{flex-wrap:wrap}#quick-action{width:100%}#quick-action button{width:100%}.chart{overflow-x:auto}.chart svg{min-width:320px}}
/* Shared language control and aggregate inspection; no external fonts. */
.language-picker{display:flex;align-items:center;gap:6px;font-size:12px}
.language-picker select{max-width:110px;padding:7px;border:1px solid #d8dfe9;border-radius:8px;background:#fff;color:#243550}
.session-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}
.session-search input,.alias-form input{border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px;min-width:200px;font:inherit;max-width:100%}
.session-search input{flex:1}
.alias-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.alias-form input{width:320px}
.inspector-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:22px 0}
.inspector-stats>div{background:#f4f7fb;padding:14px;border-radius:10px;display:flex;flex-direction:column;gap:8px;font-size:12px}
.inspector-stats strong{font-size:20px}
.price-group{border-top:1px solid #e4e9f0;margin:20px 0;padding-top:12px}
#session-inspector code{overflow-wrap:anywhere}
#session-inspector select{max-width:100%;padding:10px;margin:10px}
html[lang=ko] body{word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:760px){.language-picker>span{display:none}.inspector-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.alias-form input{width:100%}.top-actions{flex-wrap:wrap}}
.input-flow{display:flex;gap:14px;align-items:center;margin:18px 0}
.input-flow>div{flex:1;padding:16px;background:#f3f6fb;border-radius:10px}
.input-flow p{font-size:13px}
@media(max-width:760px){.input-flow{flex-direction:column}.input-flow>span{transform:rotate(90deg)}}
