:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#242424;background:#fff;font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid #e3e3e3;background:white;border-radius:9px;padding:10px 15px;color:inherit}button:hover{background:#f5f5f5}button:disabled{opacity:.45;cursor:wait}.primary{background:#202020;color:white;border-color:#202020}.primary:hover{background:#404040}.quiet{border:0;background:transparent}.danger{color:#a44343}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;border-right:1px solid #e8e8e8;padding:27px 18px;display:flex;flex-direction:column;background:#fcfcfc}.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:20px;margin:0 8px 34px}.brand small{font-size:10px;border:1px solid #ddd;border-radius:5px;padding:3px;color:#777}.brand-mark{width:29px;height:29px;background:#242424;color:white;border-radius:50%;font-size:26px;text-align:center;line-height:25px}.nav-label{font-size:10px;letter-spacing:1px;font-weight:600;color:#909090;margin:28px 12px 10px}nav a{display:flex;align-items:center;gap:14px;padding:12px;border-radius:8px;color:#777}nav a:hover,nav a.active{background:#efefed;color:#252525}.sidebar-bottom{margin-top:auto;display:grid;gap:20px;padding:12px;color:#747474;font-size:12px}.local-indicator{font-size:11px;color:#6e8970}.shell{margin-left:245px}header{height:65px;border-bottom:1px solid #e8e8e8;display:flex;align-items:center;justify-content:space-between;padding:0 30px;color:#777}header>div{display:flex;gap:20px;align-items:center}.version{font-size:11px;border:1px solid #eee;padding:5px 8px;border-radius:6px}main{padding:45px;max-width:1550px;margin:auto}.welcome{max-width:790px;margin:55px auto}.eyebrow{color:#888;font-size:12px;margin-bottom:15px}h1{font-size:34px;font-weight:550;letter-spacing:-1px;margin:12px 0}h2{font-weight:550;font-size:19px}p{line-height:1.65}.muted{color:#868686}.composer{margin:30px 0;border:1px solid #dedede;border-radius:18px;box-shadow:0 2px 4px #00000005;background:white;padding:15px}.composer textarea{resize:vertical;min-height:95px;border:0;width:100%;padding:8px;line-height:1.6;background:transparent}.composer-foot{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.composer select{max-width:230px;border:0;background:transparent;padding:7px;color:#777}.send{margin-left:auto;border-radius:50%;font-size:20px;width:40px;height:40px;padding:0;background:#242424;color:white}.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{border:1px solid #e7e7e7;border-radius:14px;padding:25px}.card p{font-size:13px;color:#828282}.card a{font-size:12px}.empty{text-align:center;border:1px dashed #ddd;border-radius:14px;padding:70px 30px;color:#888}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:20px}.toolbar input{width:280px}.filters{display:flex;gap:8px;margin:24px 0}.filters button.active{background:#f0f0ed}.table-wrap{overflow:auto;border:1px solid #e7e7e7;border-radius:12px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;font-weight:500;color:#888;background:#fafafa;padding:15px 18px}td{padding:20px 18px;border-top:1px solid #efefef}td small{display:block;color:#999;font-size:11px;margin-top:7px;max-width:310px;overflow:hidden;text-overflow:ellipsis}tr[data-id]{cursor:pointer}tr[data-id]:hover{background:#fafafa}.badge{display:inline-block;border-radius:20px;padding:5px 9px;font-size:11px;white-space:nowrap;background:#f0f0f0;color:#777}.badge.active,.badge.running,.badge.starting,.badge.dispatching{background:#edf4fd;color:#4075b6}.badge.completed{background:#edf6ee;color:#3c8049}.badge.failed{background:#fff0ec;color:#b34b3f}.badge.paused{background:#fff6e2;color:#9b7327}input,select,textarea{border:1px solid #ddd;border-radius:8px;padding:11px;background:#fff;max-width:100%}label{display:grid;gap:8px;color:#666;font-size:12px}form.settings{max-width:660px;display:grid;gap:20px;margin-top:35px}.row{display:flex;gap:20px}.row>*{flex:1}.switch{display:flex;align-items:center;gap:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stat strong{display:block;font-size:32px;font-weight:500;margin-top:20px}.error{color:#b34237;white-space:pre-wrap}dialog{border:1px solid #ddd;border-radius:18px;padding:30px;max-width:450px}dialog::backdrop{background:#ffffffd9;backdrop-filter:blur(5px)}dialog input{width:100%}#toast{position:fixed;bottom:25px;right:25px;background:#252525;color:white;border-radius:12px;padding:15px 20px;max-width:480px;z-index:5}main.workspace{padding:0;max-width:none}.work-head{padding:20px 28px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between}.work-head h2{margin:0 0 7px;max-width:650px}.work-head small{color:#999}.split{display:grid;grid-template-columns:minmax(320px,42%) minmax(400px,58%);height:calc(100vh - 150px)}.chat{display:flex;flex-direction:column;min-height:0;border-right:1px solid #eee;padding:20px 25px}.timeline{overflow:auto;flex:1;min-height:100px;padding:0 3px}.bubble{background:#f5f5f5;border-radius:16px 16px 3px 16px;padding:16px 20px;white-space:pre-wrap;margin:15px 0 25px 35px;line-height:1.65}.event{border-left:1px solid #e5e5e5;padding:8px 15px;margin-left:10px;line-height:1.5;color:#6f6f6f;font-size:13px}.event strong{font-weight:500;color:#333}.event small{display:block;color:#999;margin-top:6px}.chat .composer{margin:18px 0 0}.chat textarea{min-height:65px}.preview{padding:20px;background:#fafafa;overflow:auto}.preview-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.browser-frame{border:1px solid #ddd;border-radius:13px;background:white;overflow:hidden;box-shadow:0 6px 15px #00000008}.browser-bar{padding:10px;background:#eee;display:flex;gap:7px}.browser-bar input{padding:8px;flex:1;min-width:0;font-size:12px}.browser-frame img{width:100%;display:block;cursor:crosshair}.preview-empty{padding:90px 30px;text-align:center;color:#888}.token-line{font-size:11px;color:#999;padding:10px 5px 0}.file-chip{font-size:11px;color:#777}.code{white-space:pre-wrap;word-break:break-word;border-radius:12px;background:#f6f6f6;padding:25px;font:12px/1.7 ui-monospace,monospace}@media(max-width:1000px){.sidebar{width:190px}.shell{margin-left:190px}main{padding:25px}.split{grid-template-columns:1fr;height:auto}.chat{min-height:550px}.preview{min-height:450px}}@media(max-width:650px){.sidebar{width:64px;padding:20px 6px}.brand{font-size:0;margin:0 8px 20px}.brand small,.nav-label,nav span,.sidebar-bottom{display:none}.shell{margin-left:64px}header{padding:0 12px}.version{display:none}.cards,.stats{grid-template-columns:1fr}.welcome{margin:20px auto}h1{font-size:27px}.toolbar{flex-wrap:wrap}}

.workspace-tabs{display:flex;gap:4px}.workspace-tabs button{border:0;background:transparent}.workspace-tabs button.active{background:#efefed}.file-list{border:1px solid #e4e4e4;border-radius:12px;overflow:hidden;background:#fff}.file-row{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid #eee}.file-row:last-child{border-bottom:0}.file-row:hover{background:#f6f6f6}.file-row small{display:block;color:#999;font-size:11px;margin-top:7px}.file-row>span:last-child{font-size:11px;color:#888;white-space:nowrap}

.browser-tabs{display:flex;overflow:auto;background:#eaeaea;padding:8px 8px 0;gap:4px}.browser-tab{display:flex;flex:0 1 190px;min-width:80px;align-items:center;border-radius:9px 9px 0 0}.browser-tab.selected{background:white}.browser-tab button{border:0;background:transparent;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;padding:9px}.browser-tab button:first-child{flex:1;text-align:left}.browser-tabs>button{border:0;background:transparent;padding:5px 10px}#screen img:focus-visible{outline:2px solid #6485a6;outline-offset:-2px}#screen{overscroll-behavior:contain}.browser-bar button{padding:6px 10px}

.composer-foot .model-choice{width:210px;min-width:130px;max-width:100%;border:0;background:transparent;padding:7px;font:inherit;color:inherit}.composer-foot .model-choice:focus{outline:1px solid #d4d4d8;border-radius:6px}

.file-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:60vh;overflow:auto;padding:16px;border:1px solid #e4e4e7;border-radius:10px;background:#fafafa;font:13px/1.6 ui-monospace,monospace}#file-preview{margin-top:20px}.file-row>span:last-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

.usage-chart{display:flex;align-items:end;gap:8px;overflow:auto;padding:20px 0;margin-bottom:20px;min-height:180px}.usage-column{flex:1;min-width:34px;display:flex;flex-direction:column;justify-content:end;align-items:center;height:165px;gap:8px}.usage-bar{width:70%;background:#27272a;border-radius:4px 4px 0 0}.usage-column small{font-size:10px;color:#71717a;white-space:nowrap}

.recent-sessions{min-height:0;overflow:auto;margin:8px 0 14px}.recent-sessions .nav-label{margin-top:12px}#recent-sessions a{display:flex;align-items:center;gap:6px;padding:10px 8px;border-radius:8px;font-size:12px}#recent-sessions a:hover,#recent-sessions a.active{background:#efefed}.recent-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.recent-sessions .badge{padding:3px 5px;font-size:9px}.recent-empty{padding:0 12px;font-size:12px}.sidebar-bottom{flex-shrink:0}.sidebar-collapsed .sidebar{width:64px;padding:20px 6px}.sidebar-collapsed .shell{margin-left:64px}.sidebar-collapsed .brand{font-size:0;margin:0 8px 24px}.sidebar-collapsed .brand small,.sidebar-collapsed .nav-label,.sidebar-collapsed nav a span,.sidebar-collapsed .sidebar-bottom,.sidebar-collapsed .recent-sessions{display:none}.sidebar-collapsed nav a{justify-content:center;padding:12px 5px}.sidebar-collapsed .brand-mark{flex-shrink:0}@media(max-width:650px){.recent-sessions{display:none}#toggle-sidebar{display:none}}

.previous-run{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #eee}.previous-run p{white-space:pre-wrap;overflow-wrap:anywhere}.previous-run-status{margin:12px 0;color:#777;font-size:12px}.older-runs{margin-bottom:20px}
@media(max-width:1000px){.workspace .chat{height:max(550px,calc(100dvh - 180px));min-height:0}.workspace .chat .composer{flex-shrink:0}.work-head small{overflow-wrap:anywhere}}

#login{width:min(480px,calc(100vw - 32px));max-width:480px}#login label{display:block;margin:20px 0 8px}.login-help{margin-top:18px;color:#777;font-size:13px}.login-help summary{cursor:pointer;color:#333}.login-help code{display:block;overflow-wrap:anywhere;background:#f5f5f5;padding:12px;border-radius:8px}

.past-run-steps{margin:16px 0}.past-run-steps summary{cursor:pointer;color:#777;padding:8px 0}.past-events{margin:12px 0}.past-events small{display:block}.more-events{margin-top:10px}

.filters{flex-wrap:wrap}.filters label{display:flex;align-items:center;gap:6px;font-size:12px;color:#777}.filters input[type=date]{width:150px;padding:8px}

.report{line-height:1.65;font-size:14px;color:#292929;overflow-wrap:anywhere}.report p{margin:14px 0}.report ul,.report ol{padding-left:24px}.report li{margin:7px 0}.report h3,.report h4,.report h5{margin:18px 0 10px}.report pre{overflow:auto;background:#f5f5f5;padding:14px;border-radius:10px;white-space:pre-wrap}.report code{background:#f5f5f5;border-radius:4px;padding:2px 4px;font-size:12px}.result-file-cards{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 22px}.result-file{display:grid;gap:7px;border:1px solid #e6e6e6;border-radius:12px;padding:12px 16px;max-width:100%;text-decoration:none}.result-file span{overflow-wrap:anywhere}.result-file small,#result-files>small{color:#888;font-size:11px}

.session-tags{display:flex;flex-wrap:wrap;gap:4px;max-width:320px;margin-top:6px}.session-tags span{font-size:11px;border:1px solid #e4e4e7;border-radius:5px;padding:3px 6px;overflow-wrap:anywhere;background:#fafafa}.tag-dialog{width:min(480px,90vw);border:1px solid #e4e4e7;border-radius:16px;padding:24px}.tag-dialog::backdrop{background:#0004}.tag-dialog textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #ddd;border-radius:8px;padding:12px;font:inherit}.tag-actions{display:flex;justify-content:flex-end;gap:8px}.tag-dialog h2{margin-top:0}

.home-tools .card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.home-tools .card p,.home-tools .card h2{margin:0}.home-tools small{line-height:1.5;color:#71717a}.home-usage{margin-top:32px;text-align:left}.home-usage .toolbar h2{margin:0}.home-usage .stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){.home-usage .stats{grid-template-columns:1fr}}
.home-tools{margin-top:18px}

.usage-value{font-size:10px;color:#52525b;white-space:nowrap}.usage-column{height:190px;min-width:54px}.usage-chart{min-height:200px;max-width:100%}

.viewport-option{display:flex!important;flex-direction:row!important;align-items:center;gap:10px}.viewport-option input{width:auto!important}

.recording-preview{display:block;width:100%;max-height:65vh;background:#111;border-radius:12px}
.jev-option{display:flex;align-items:center;gap:8px;cursor:pointer}.jev-option input[type=checkbox]{width:16px;height:16px;margin:0;flex:none}
.model-picker{position:relative;display:flex;align-items:center;min-width:190px;max-width:360px;flex:1}.model-picker .model-choice{width:100%;min-width:0;padding-right:30px}.model-toggle{position:absolute;right:2px;background:transparent!important;padding:4px 8px!important;border:0!important}.model-menu{position:absolute;bottom:100%;left:0;z-index:50;width:min(460px,75vw);max-height:340px;overflow:auto;background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 6px 24px #0002;padding:6px}.model-menu[hidden]{display:none}.model-menu button{display:block;width:100%;text-align:left;background:#fff;color:#222;border:0;padding:10px;font-size:13px;white-space:normal}.model-menu button:hover,.model-menu button:focus{background:#f2f3f5}.model-menu button[aria-selected=true]{font-weight:600;background:#f2f3f5}

.mailbox-page{max-width:960px;margin-top:20px}.mailbox-page .dialog-heading,.mail-reader .dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.mailbox-page .fine,.mail-reader .fine{color:#777;font-size:12px;line-height:1.6}.mailbox-page .panel{padding:16px;margin:10px 0;border:1px solid #e6e6e6;border-radius:12px;overflow-wrap:anywhere}.mailbox-page .panel button{margin:4px}.mailbox-page form{display:grid;gap:12px;margin:18px 0}.mailbox-page label{display:grid;gap:7px}.mailbox-page input,.mailbox-page textarea{padding:10px;border:1px solid #ddd;border-radius:8px;width:100%}.mailbox-page details{margin:16px 0}.mailbox-page summary{cursor:pointer;padding:8px}.mail-reader{width:min(1100px,95vw);max-height:90vh;border:1px solid #ddd;border-radius:16px;padding:24px}.mail-reader::backdrop{background:#0004}.mail-reader .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mail-reader-layout{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2fr);gap:20px}.mail-message-item{display:block;text-align:left;width:100%;white-space:pre-wrap;margin:8px 0;overflow-wrap:anywhere}.mail-reader pre{white-space:pre-wrap;overflow-wrap:anywhere}.mail-reader #mail-message-list,.mail-reader #mail-message-detail{max-height:55vh;overflow:auto}@media(max-width:700px){.mail-reader-layout{grid-template-columns:1fr}}

.badge.payment_succeeded{color:#237b45;background:#edf8ef}.badge.payment_declined,.badge.payment_failed{color:#a44343;background:#fff0ed}.badge.payment_unknown{color:#8a6500;background:#fff6db}

.preview-top{flex-wrap:wrap;gap:8px}.preview-top>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.preview #teaching-panel{width:100%;max-height:260px;overflow:auto;margin:0 0 16px;padding:16px;background:#fff;border:1px solid #e5e5e5;border-radius:12px}#teaching-panel details{margin-top:10px}#teaching-panel li{margin:6px 0;line-height:1.5}

.badge.payment_3ds_failed{color:#a44343;background:#fff0ed}.badge.payment_3ds_required{color:#8a6500;background:#fff6db}

/* Dedicated browser tab keeps the same session and manual controls. */
body.browser-only .sidebar,body.browser-only .shell>header,body.browser-only .work-head,body.browser-only .chat{display:none!important}
body.browser-only .shell{margin-left:0}
body.browser-only main.workspace{height:100dvh;width:100%;padding:0}
body.browser-only .split{display:block;height:100dvh}
body.browser-only .preview{height:100dvh;padding:8px;display:flex;flex-direction:column;overflow:hidden}
body.browser-only .preview-top{margin-bottom:8px;flex-shrink:0}
body.browser-only #browser-panel{flex:1;min-height:0;display:flex;flex-direction:column}
body.browser-only .browser-frame{flex:1;min-height:0;display:flex;flex-direction:column}
body.browser-only #screen{flex:1;min-height:0;display:flex;justify-content:center;align-items:center;overflow:hidden}
body.browser-only #screen img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
body.browser-only #browser-hint{margin:4px;font-size:12px}
body.browser-only #open-browser-tab{display:none}
