:root{color-scheme:light;--bg:#f5f7fc;--surface:#fff;--surface-alt:#f8f9fd;--input:#fcfdff;--ink:#17213b;--muted:#728096;--line:#e4e8f1;--brand:#635bff;--brand-soft:#efedff;--green:#1b9977;--green-soft:#e6f8ef;--red:#d25461;--red-soft:#fff0f1;--amber:#ba7c27;--amber-soft:#fff7e6;--shadow:0 10px 30px rgba(34,47,82,.035);--radius:13px}
html[data-theme=dark]{color-scheme:dark;--bg:#0d1424;--surface:#161f32;--surface-alt:#1b263b;--input:#121a2c;--ink:#edf1ff;--muted:#a0acc2;--line:#2a3852;--brand:#8b80ff;--brand-soft:#282448;--green:#49d4ab;--green-soft:#193b37;--red:#fc8990;--red-soft:#4e2734;--amber:#ffd183;--amber-soft:#463726;--shadow:none}
*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;font:14px/1.48 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.52;cursor:not-allowed}a{text-decoration:none;color:inherit}p{color:var(--muted);margin:6px 0 0}h1,h2,h3{line-height:1.17;letter-spacing:-.035em;margin:0}h1{font-size:clamp(25px,2.5vw,34px);font-weight:760}h2{font-size:18px}strong{font-weight:700}input,select,textarea{background:var(--input);color:var(--ink);border:1px solid var(--line);border-radius:8px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}input[type=checkbox]{accent-color:var(--brand);vertical-align:middle}input[type=file]{max-width:100%}.hidden{display:none!important}.tiny,.hint,.helper-text{font-size:12px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{height:68px;display:flex;gap:32px;align-items:center;padding:0 clamp(18px,2.5vw,44px);background:var(--surface);border-bottom:1px solid var(--line);position:relative;z-index:80}.brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:800;letter-spacing:-.045em;white-space:nowrap}.brand-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:var(--brand);color:white;font-weight:800;font-size:16px;letter-spacing:-.15em}.brand-accent{color:var(--brand)}.site-nav{display:flex;gap:2px;align-items:center;margin:auto}.site-nav a{padding:10px 13px;border-radius:7px;color:var(--muted);font-size:13px;font-weight:550;white-space:nowrap}.site-nav a:hover,.site-nav a.active{color:var(--brand);background:var(--brand-soft)}.header-tools{display:flex;gap:10px}.theme-select{border:1px solid var(--line);padding:8px 9px;border-radius:8px;min-width:100px}.mobile-menu{display:none!important}.workspace-main{width:min(1500px,95%);margin:0 auto;padding:24px 0 30px;min-height:calc(100vh - 116px)}.workspace-main.compact{display:flex;flex-direction:column;height:calc(100vh - 108px);min-height:590px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.page-heading p{font-size:13px}.eyebrow{display: none;color:var(--brand);font-size:10px;font-weight:850;letter-spacing:.16em;margin-bottom:8px}.heading-tag{white-space:nowrap;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:99px;padding:7px 12px;font-size:11px;font-weight:700}.site-footer{padding:9px 20px 14px;text-align:center;color:var(--muted);font-size:11px}.site-footer span{color:var(--brand);padding:0 3px}.split-workspace{display:grid;grid-template-columns:1fr 1fr;gap:17px;min-height:0;flex:1}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;overflow:hidden;display:flex;flex-direction:column}.panel-head{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 15px;border-bottom:1px solid var(--line)}.panel-title,.panel-actions,.toolbar-group{display:flex;align-items:center;gap:8px}.panel-title{white-space:nowrap}.panel-dot{width:8px;height:8px;border-radius:100%;display:inline-block}.purple{background:var(--brand)}.green{background:var(--green)}.amber{background:var(--amber)}.panel-actions select,.panel-actions input{height:30px;padding:4px 8px}.btn,.icon-btn,.floating-copy{border:1px solid transparent;border-radius:8px;display:inline-flex;gap:5px;align-items:center;justify-content:center;white-space:nowrap;font-weight:650;transition:background .16s,transform .12s}.btn{padding:8px 12px;font-size:12px;min-height:32px}.btn:active,.icon-btn:active{transform:scale(.98)}.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover{filter:brightness(1.10)}.btn.subtle{background:var(--surface-alt);border-color:var(--line);color:var(--ink)}.btn.subtle:hover,.icon-btn:hover{background:var(--brand-soft);color:var(--brand)}.icon-btn,.floating-copy{width:32px;height:32px;background:var(--surface-alt);border-color:var(--line);font-size:18px;color:var(--muted)}.code-input{flex:1;resize:none;padding:19px;line-height:1.65;background:var(--input);border:0;border-radius:0;box-shadow:none!important;min-height:160px;font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;tab-size:2}.code-input:focus{outline:none;box-shadow:none}.panel-foot{min-height:33px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:6px 15px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.tabs{display:flex;gap:6px;padding:7px 11px 0;border-bottom:1px solid var(--line)}.tab{position:relative;border:0;border-radius:6px 6px 0 0;background:transparent;color:var(--muted);font-weight:650;padding:8px 14px;font-size:12px}.tab.active{color:var(--brand);background:var(--brand-soft)}.tab.active:after{content:"";position:absolute;height:2px;background:var(--brand);bottom:-1px;left:7px;right:7px}.result-wrap{position:relative;flex:1;min-height:0;background:var(--input)}.floating-copy{position:absolute;right:17px;top:15px;z-index:3;background:var(--surface)}.code-output{height:100%;overflow:auto;padding:17px 18px 20px;white-space:normal;font:12.5px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace}.empty-state{height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:Inter,system-ui,sans-serif;text-align:center}.empty-state span{width:46px;height:46px;border-radius:12px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-size:24px;margin-bottom:12px}.empty-state strong{font-size:14px}.empty-state p{font-size:12px}.code-output pre{margin:0;padding-right:18px;white-space:pre;tab-size:2}.json-tree{padding:0 16px 0 0}.json-tree details{padding-left:16px}.json-tree summary{cursor:pointer;list-style:none}.json-tree summary::-webkit-details-marker{display:none}.json-tree summary:before{content:'▾';display:inline-block;color:var(--muted);margin-left:-13px;margin-right:5px}.json-tree details:not([open])>summary:before{content:'▸'}.json-tree .tree-leaf{padding-left:16px}.json-tree .key{color:#af56b1}.json-tree .string,.syntax-string{color:var(--green)}.json-tree .number,.syntax-number{color:#c78a3c}.json-tree .boolean,.syntax-bool{color:var(--brand)}.json-tree .null{color:var(--red)}.syntax-tag{color:var(--brand)}.syntax-key{color:#a956af}.folded-preview{max-height:2.1em;overflow:hidden}.output-panel.is-fullscreen{position:fixed;z-index:150;top:68px;left:0;right:0;bottom:0;border-radius:0}.output-panel.is-fullscreen .result-wrap{min-height:0}.toast{display:none;position:fixed;z-index:200;right:24px;bottom:24px;max-width:420px;background:#253453;color:white;border-radius:9px;box-shadow:0 10px 30px #0004;padding:11px 17px;font-weight:650}.toast.show{display:block}.toast.error{background:#9b3545}
/* Compare */
.options{font-size:11px;color:var(--muted);gap:12px}.options label{white-space:nowrap}.compare-inputs{max-height:460px;min-height:310px}.diff-section{margin-top:20px;flex:1;min-height:290px;scroll-margin-top:18px}.diff-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.stat-chips{display:flex;gap:8px}.chip{border-radius:99px;padding:5px 10px;font-size:11px;font-weight:800}.chip.green{background:var(--green-soft);color:var(--green)}.chip.amber{background:var(--amber-soft);color:var(--amber)}.chip.red{background:var(--red-soft);color:var(--red)}.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.diff-rows{height:380px;overflow:auto;font:12px/1.65 ui-monospace,monospace}.diff-row{display:flex;white-space:pre;min-height:23px}.diff-row .line-no{flex:0 0 42px;text-align:right;padding:2px 9px;color:var(--muted);border-right:1px solid var(--line);user-select:none}.diff-row .line-content{padding:2px 10px;white-space:pre;overflow-x:auto;min-width:0;flex:1}.diff-row.added{background:var(--green-soft)}.diff-row.deleted{background:var(--red-soft)}.diff-row.modified{background:var(--amber-soft)}
/* API playground */
.playground-main{width:min(1550px,96%)}.api-shell{display:grid;grid-template-columns:265px minmax(0,1fr);gap:14px;min-height:650px}.api-sidebar{min-height:650px}.sidebar-head{padding:17px 15px 10px;display:flex;align-items:center;justify-content:space-between}.sidebar-actions{display:flex;gap:6px;flex-wrap:wrap;padding:0 12px 13px;border-bottom:1px solid var(--line)}.sidebar-actions .btn{padding:6px 8px;font-size:11px}.folder-tree{padding:12px 8px;overflow:auto;max-height:650px}.folder-heading{display:flex;align-items:center;justify-content:space-between;padding:9px 8px;font-size:12px;font-weight:750}.folder-heading button{padding:0 5px;border:0;color:var(--muted);background:transparent}.folder-api{display:flex;gap:7px;align-items:center;text-align:left;width:100%;border:0;background:transparent;color:var(--muted);padding:8px 7px 8px 15px;border-radius:7px;font-size:11px;min-width:0}.folder-api span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-api.selected,.folder-api:hover{background:var(--brand-soft);color:var(--brand)}.method-badge{font:800 10px monospace;color:var(--green)}.method-POST{color:var(--amber)}.method-DELETE{color:var(--red)}.method-PUT,.method-PATCH{color:var(--brand)}.api-main{display:flex;flex-direction:column;gap:14px;min-width:0}.request-panel{min-height:400px}.request-name{font-weight:750;font-size:14px;border:0;min-width:0;flex:1;background:transparent}.api-request-bar{display:flex;gap:7px;padding:14px 16px}.api-request-bar select{padding:10px;font-weight:700}.api-request-bar input{flex:1;min-width:0;padding:10px;font:13px monospace}.api-request-bar .btn{padding:10px 22px}.panel-inner{padding:0 16px 15px}.panel-inner .tabs{padding-left:0}.api-tab{padding:14px 0 10px}.api-tab label{display:block;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:650}.compact-textarea{display:block;width:100%;min-height:132px;padding:12px;resize:vertical;font:12px/1.6 ui-monospace,monospace}.compact-textarea.large{min-height:240px;margin:12px 0}.mock-controls{display:flex;gap:24px;margin-bottom:10px;align-items:center}.mock-controls label{margin:0;display:flex;align-items:center;gap:8px}.mock-controls input[type=number]{max-width:88px;padding:6px}.field-row{display:flex;align-items:center;gap:12px;margin:9px 0 2px;color:var(--muted);font-size:12px}.field-row select{padding:7px}.response-panel{flex:1;min-height:220px}.response-code{padding:16px;overflow:auto;max-height:360px;font:12px/1.65 ui-monospace,monospace;margin:0;background:var(--input);white-space:pre-wrap;overflow-wrap:anywhere;flex:1}.modal-backdrop{position:fixed;inset:0;background:#0d1326ab;z-index:150;display:grid;place-items:center;padding:15px}.modal{width:min(600px,100%);background:var(--surface);padding:24px;border-radius:13px;box-shadow:0 18px 60px #05081e5c}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.modal select{padding:10px;margin-top:15px}.file-input-inline{font-size:12px;color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;margin-top:17px}
/* analytics */
.auth-card{width:min(430px,100%);padding:28px;margin:28px auto;display:block}.auth-icon{font-size:32px;color:var(--brand);margin-bottom:9px}.auth-card p{margin:9px 0 20px}.auth-card form{display:flex;flex-direction:column;gap:9px}.auth-card label{font-weight:700;font-size:12px;margin-top:7px}.auth-card input{padding:11px}.auth-card .full{margin-top:12px;justify-content:center}.auth-card .hint{margin-top:16px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:17px 0}.metric-card{background:var(--surface);padding:19px;border:1px solid var(--line);border-radius:12px}.metric-card span{font-size:12px;color:var(--muted)}.metric-card strong{display:block;font-size:30px;letter-spacing:-.04em;margin-top:5px}.analytics-chart-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;margin-bottom:14px}.chart-panel{min-height:300px}.chart-holder{padding:20px;height:290px;position:relative}.chart-holder canvas{max-height:100%;max-width:100%}.analytics-table table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.analytics-table th,.analytics-table td{padding:15px 20px;border-top:1px solid var(--line)}.analytics-table th{color:var(--muted);background:var(--surface-alt)}.table-scroll{overflow:auto}
@media(max-width:1100px){.site-header{gap:12px}.site-nav a{padding:9px 7px;font-size:12px}.brand{font-size:15px}.brand-icon{width:30px;height:30px}.workspace-main.compact{height:auto;min-height:650px}.split-workspace{min-height:540px}.heading-tag{display:none}.panel-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:760px){.site-header{height:60px;justify-content:space-between}.site-nav{display:none;position:absolute;top:60px;left:0;right:0;background:var(--surface);padding:12px 20px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.mobile-menu{display:inline-flex!important}.workspace-main{width:94%;padding-top:20px}.page-heading{margin-bottom:17px}.page-heading h1{font-size:26px}.split-workspace,.diff-grid,.analytics-chart-grid{grid-template-columns:1fr}.workspace-main.compact{height:auto}.split-workspace{min-height:0}.split-workspace>.panel{min-height:360px}.split-workspace>.panel.output-panel{min-height:450px}.options{gap:5px;flex-wrap:wrap}.diff-rows{height:250px}.panel-head{flex-wrap:wrap}.api-shell{grid-template-columns:1fr}.api-sidebar{min-height:0}.folder-tree{max-height:250px}.api-request-bar{flex-wrap:wrap}.api-request-bar input{flex-basis:100%}.api-request-bar select{flex:1}.metric-grid{grid-template-columns:repeat(2,1fr)}.chart-holder{height:260px}.output-panel.is-fullscreen{top:60px}}
/* Compare Text v1.1: matched input/output pane order, synchronized rows,
   subtle line backgrounds and distinct darker/bold edited tokens. */
.compare-inputs,.diff-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px;}
.diff-section{flex:none;min-height:0;}
.diff-grid{min-height:370px;}
.diff-grid .panel{min-height:340px;}
.diff-rows{height:420px;overflow:auto;overscroll-behavior:contain;}
.diff-row{min-width:max-content;min-height:24px;white-space:pre;}
.diff-row .line-content{overflow:visible;min-width:max-content;}
.diff-row.empty{background:var(--surface-alt);opacity:.65;}
.diff-row.added{background:var(--green-soft);}
.diff-row.deleted{background:var(--red-soft);}
.diff-row.modified{background:var(--amber-soft);}
.diff-token-changed{font-weight:800;border-radius:3px;padding:1px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.diff-row.added .diff-token-changed{background:rgba(27,153,119,.22);color:var(--green);}
.diff-row.deleted .diff-token-changed{background:rgba(210,84,97,.22);color:var(--red);text-decoration:line-through;text-decoration-thickness:1px;}
.diff-row.modified .diff-token-changed{background:rgba(192,127,35,.27);color:var(--ink);}
#valueNote{margin-top:5px;font-size:11px;}
@media(max-width:760px){.compare-inputs,.diff-grid{grid-template-columns:1fr;}.diff-rows{height:260px;}.diff-grid .panel{min-height:260px;}}
/* API Playground: visible workspace key and generated cURL. */
.workspace-id-wrap{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.workspace-id-wrap .heading-tag{display:inline-flex;max-width:280px}
.curl-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.curl-heading label{margin:0!important}
.curl-text{min-height:135px;word-break:break-all;white-space:pre-wrap}
.api-tab .hint{margin-top:8px}
.invalid-field{border-color:var(--red)!important}
@media(max-width:760px){.workspace-id-wrap .heading-tag{display:inline-flex}.workspace-id-wrap{justify-content:flex-start}}
/* API Mock Studio v1.3: focused, developer-first two-column workbench */
.playground-heading{margin-bottom:17px}.playground-main{max-width:1600px}.playground-heading h1{font-size:30px}
.api-shell{grid-template-columns:270px minmax(0,1fr);gap:12px;min-height:650px}
.api-sidebar{min-height:650px}.sidebar-head{padding:16px;align-items:flex-start}.sidebar-head>div{display:flex;flex-direction:column;gap:2px}.api-count{color:var(--muted);font-size:11px}
.sidebar-actions{padding:0 13px 13px}.api-search{padding:12px 13px 8px}.api-search input{width:100%;height:35px;padding:7px 10px;font-size:12px}
.folder-tree{padding:4px 8px;max-height:540px}.folder-api{gap:11px;padding:9px 10px 9px 13px}.folder-heading{font-size:11px;text-transform:uppercase;letter-spacing:.05em}.api-sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:13px;font-size:11px;line-height:1.6;color:var(--muted)}
.api-main{gap:12px}.request-panel{min-height:460px}.api-title-wrap{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.api-section-icon{width:27px;height:27px;border-radius:7px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:850}.request-name{max-width:470px;font-size:16px}.api-save-indicator{font-size:11px;color:var(--muted);white-space:nowrap}.api-request-bar{padding:17px 17px 8px;gap:8px}.api-request-bar select{min-width:108px;border-radius:8px}.api-uri-control{display:flex;align-items:stretch;min-width:0;flex:1;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--input)}.api-uri-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.api-uri-control span{display:grid;place-items:center;padding:0 12px;font:750 11px ui-monospace,monospace;color:var(--muted);background:var(--surface-alt);border-right:1px solid var(--line)}.api-uri-control input{flex:1;min-width:0;border:0;border-radius:0;font:13px ui-monospace,monospace;padding:9px 12px;box-shadow:none!important}.api-request-bar .btn{min-width:100px}.uri-description{padding:0 17px 10px;color:var(--muted);font-size:11px}.panel-inner{padding:0 17px 15px}.api-tabs{margin-top:6px;overflow:auto;gap:4px}.api-tab{min-height:188px;padding:15px 0}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:35px;margin-bottom:12px}.editor-toolbar strong{font-size:12px}.editor-toolbar p{font-size:11px;line-height:1.45;margin-top:3px}.editor-modes{display:flex;border:1px solid var(--line);border-radius:8px;padding:2px;background:var(--surface-alt);flex-shrink:0}.mode-btn{font-size:11px;padding:6px 11px;border:0;background:transparent;border-radius:6px;color:var(--muted);font-weight:750}.mode-btn.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px #0001}
.kv-editor{max-width:100%;overflow:auto}.kv-columns,.kv-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(110px,1.45fr) 32px;gap:6px;align-items:center}.kv-columns{color:var(--muted);font:800 10px ui-monospace,monospace;letter-spacing:.07em;margin:0 0 6px}.kv-rows{display:flex;flex-direction:column;gap:6px}.kv-row input{padding:8px 10px;width:100%;height:36px;font:12px ui-monospace,monospace}.kv-row button{height:32px;width:32px;border:1px solid var(--line);background:var(--surface-alt);color:var(--muted);border-radius:7px;font-size:17px}.kv-row button:hover{background:var(--red-soft);color:var(--red)}.kv-add{margin-top:10px}.api-code-area{min-height:154px}.api-lower-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-size:11px;color:var(--muted)}.api-lower-bar select{height:32px;min-width:125px;padding:5px 9px}.api-lower-bar .hint{margin-left:auto}.api-tab .compact-textarea{min-height:150px}.api-tab .curl-text{min-height:190px;white-space:pre;word-break:normal;overflow:auto}.api-toggle{font-weight:700;white-space:nowrap;margin-bottom:0!important;color:var(--ink)!important}.mock-controls{align-items:center;flex-wrap:wrap}.mock-controls label{gap:8px}.response-panel{min-height:245px}.response-heading{display:flex;gap:12px;align-items:center}.api-response-status{font:750 11px ui-monospace,monospace;color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:3px 7px}.api-response-status.ok{color:var(--green);background:var(--green-soft);border-color:transparent}.api-response-status.bad{color:var(--red);background:var(--red-soft);border-color:transparent}.response-code{min-height:185px;white-space:pre-wrap;tab-size:2}
@media(max-width:1000px){.api-shell{grid-template-columns:230px minmax(0,1fr)}.api-lower-bar .hint{margin-left:0}.api-save-indicator{display:none}}
@media(max-width:760px){.api-shell{grid-template-columns:1fr}.api-sidebar{min-height:0}.folder-tree{max-height:220px}.api-request-bar .api-uri-control{flex-basis:100%;order:3}.api-request-bar select{flex:1;order:1}.api-request-bar .btn{order:2}.api-sidebar-foot{display:none}.api-tabs .tab{white-space:nowrap}.editor-toolbar{align-items:flex-start;flex-wrap:wrap}}
