@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/dm-sans-CwMReqGs.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/manrope-C46ZzDBF.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#233d34;background:#f6f7f3;font-synthesis:none;--forest: #194b3f;--forest-dark: #123d33;--green-soft: #edf3e8;--text: #253d34;--muted: #78837d;--line: #e4e8df}*{box-sizing:border-box}body{margin:0;min-width:360px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button,a,input,textarea,select,summary{outline-offset:4px}:focus-visible{outline:2px solid #488567}button{color:inherit}button,input,textarea,select{border-radius:0}button{border:0;background:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,DM Sans,sans-serif}svg{flex-shrink:0}::selection{background:#cce1af;color:#163e30}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand{display:flex;align-items:center;gap:9px;width:fit-content;flex-shrink:0}.brand-mark{width:27px;height:27px;position:relative;display:block}.brand-mark span{position:absolute;display:block;background:var(--forest);width:8px;height:23px;transform:rotate(28deg);border-radius:2px}.brand-mark span:nth-child(1){left:1px;top:3px}.brand-mark span:nth-child(2){left:10px;top:0;height:18px}.brand-mark span:nth-child(3){left:18px;top:0;height:10px}.brand-word{font-family:Manrope,sans-serif;font-size:29px;font-weight:800;letter-spacing:-1.7px}.brand-dot{color:#89a464}.brand-description{padding-left:14px;margin-left:5px;border-left:1px solid #d9dfd3;font-size:11px;line-height:1.45;text-transform:uppercase;letter-spacing:1.5px;color:#7a857d;font-weight:600}.brand-light{color:#fff}.brand-light .brand-mark span{background:#d6e8c2}.brand-light .brand-dot{color:#c5dcab}.brand-light .brand-description{border-color:#ffffff30;color:#b3c7b8}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:11px 17px;border-radius:7px;font-size:14px;font-weight:600;line-height:1.25;transition:background .15s,box-shadow .15s,transform .15s;border:1px solid transparent}.button:hover:not(:disabled):not(.disabled){transform:translateY(-1px)}.button-primary{background:var(--forest);color:#fff;box-shadow:0 1px 2px #183c3315}.button-primary:hover:not(:disabled){background:#103c30}.button-primary:disabled{color:#7c8e80;background:#e3eade;box-shadow:none}.button-secondary{background:#fff;color:#365747;border-color:#dce3d7}.button-secondary:hover:not(:disabled){background:#f0f5eb}.button-secondary:disabled{opacity:.6}.disabled{pointer-events:none;opacity:.5}.icon-button{display:inline-flex;width:31px;height:31px;align-items:center;justify-content:center;border-radius:6px;color:#6c7a70;flex-shrink:0}.icon-button:hover{background:#eaf0e4;color:#244638}.text-button,.text-link{display:inline-flex;align-items:center;gap:5px;padding:0;font-size:14px;font-weight:600;color:#386c50}.text-button:hover,.text-link:hover{text-decoration:underline;text-underline-offset:3px}.text-button:disabled{opacity:.5}.eyebrow{display:flex;gap:9px;align-items:center;font-size:11px;font-weight:600;letter-spacing:1.7px}.eyebrow.muted{color:#80917d}.status-dot{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:#829c56;display:inline-block}.floating-field{position:relative;width:100%}.floating-field input,.floating-field select{width:100%;height:55px;background:#fff;border:1px solid #dce2d5;border-radius:7px;color:#2b4434;padding:21px 13px 7px;font-size:15px;outline:none}.floating-field label{position:absolute;left:13px;top:18px;color:#7d897d;pointer-events:none;transition:top .15s,font-size .15s;font-size:15px}.floating-field input:focus,.floating-field select:focus{border-color:#75987a;box-shadow:0 0 0 3px #73996b14}.floating-field input:focus+label,.floating-field input:not(:placeholder-shown)+label,.select-field label{top:7px;font-size:12px;color:#5d7860}.floating-field input:disabled{background:#f4f5f1}.floating-field select{appearance:auto}.notice{display:flex;align-items:flex-start;gap:9px;border:1px solid;padding:12px 14px;border-radius:7px;font-size:14px;line-height:1.6}.notice>svg{margin-top:2px}.notice>span{flex:1}.notice-error{color:#874839;background:#fff5f1;border-color:#f0d5ca}.notice-success{color:#37613f;background:#f0f6ea;border-color:#d4e4c6}.notice-info{color:#4b6157;background:#eef3ef;border-color:#d5e3d9}.notice .icon-button{width:21px;height:21px;color:inherit}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;min-height:300px;font-size:15px;color:#768571}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{min-height:100vh;padding:40px;display:flex;align-items:center;justify-content:center;flex-direction:column}.boot-screen .loading-state{min-height:150px}.boot-screen .notice{margin-top:35px}.form-help{color:#7b887c;font-size:13px;line-height:1.7}.app-header{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 38px;border-bottom:1px solid var(--line);background:#fcfdf9}.app-header .brand-word{font-size:27px}.app-header .brand-description{font-size:10px;letter-spacing:1.3px}.app-nav{display:flex;align-items:center;gap:5px;margin-left:auto;margin-right:24px}.nav-button{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:550;padding:10px 13px;color:#83907e;border-radius:6px}.nav-button.active{background:#ebf0e5;color:#33553e}.nav-button:hover{color:#294f37}.header-account{display:flex;align-items:center;gap:10px}.avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #d7dfcf;border-radius:50%;font-size:12px;font-weight:600;letter-spacing:-.3px;background:#ecf1e4;color:#506547;flex-shrink:0}.account-name{font-size:13px;color:#56664e;max-width:145px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header-account>.icon-button{margin-left:10px}.page-notice{padding:20px 38px}@media(max-width:850px){.app-header{padding:0 20px;height:68px;gap:10px}.app-nav{margin-right:5px;gap:0}.app-header .brand-description{display:none}.header-account{gap:6px}.header-account>.icon-button{margin-left:0}}@media(max-width:570px){.app-header{padding:0 16px}.app-header .brand-word{font-size:25px}.app-nav{gap:2px;margin-right:auto;margin-left:auto}.nav-button{padding:9px}.nav-button span,.account-name{display:none}.page-notice{padding:16px}.header-account>.avatar{width:27px;height:27px}.button{min-height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-story{padding:45px 62px 32px;background:#143f35;color:#f4f8ee;position:relative;display:flex;flex-direction:column;overflow:hidden}.login-story:before{content:"";position:absolute;pointer-events:none;width:680px;height:680px;border:1px solid #d9e6c410;border-radius:50%;right:-420px;bottom:-350px;box-shadow:0 0 0 70px #d9e6c406,0 0 0 140px #d9e6c405,0 0 0 210px #d9e6c404}.login-copy{max-width:480px;margin:auto 0;padding:72px 0 75px;z-index:1}.login-copy .eyebrow{color:#bcceb1;margin-bottom:27px;font-size:11px}.login-copy .status-dot{background:#c3dc9d;box-shadow:0 0 0 4px #b7cf9d0c}.login-copy h1{font-weight:500;font-size:clamp(43px,4.7vw,66px);line-height:1.13;letter-spacing:-3px}.login-copy h1 em{font-style:normal;color:#c2d6a6;font-weight:400}.login-copy>p{color:#afc4b7;font-size:15px;line-height:1.9;max-width:365px;margin-top:27px}.login-principles{display:flex;flex-wrap:wrap;gap:17px;margin-top:31px}.login-principles span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#b9ceb8}.login-principles svg{color:#b4ce91;width:12px}.login-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;color:#7e9f8d;border-top:1px solid #ffffff14;padding-top:22px;z-index:1}.login-bottom svg{color:#b9d19d}.login-access{background:#f8f8f1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 60px 35px}.login-card{width:100%;max-width:362px;margin:auto 0;padding:55px 0}.access-icon{display:flex;align-items:center;justify-content:center;width:55px;height:55px;background:#e9eedf;color:#58714b;border:1px solid #dfe7d4;border-radius:15px;margin-bottom:28px}.login-card>.eyebrow{font-size:11px;letter-spacing:1.6px;margin-bottom:15px}.login-card h2{font-size:30px;line-height:1.26;letter-spacing:-1px;max-width:340px;font-weight:650}.login-card>p{font-size:14px;line-height:1.85;color:#82907d;margin-top:16px;margin-bottom:28px}.login-card>.notice{margin-bottom:20px}.github-login{width:100%;justify-content:flex-start;padding:15px 18px;min-height:50px;font-size:14px;gap:12px}.github-login>svg:last-child{margin-left:auto}.login-card>p.form-help{font-size:13px;margin-top:12px;margin-bottom:0}.demo-button{width:100%;margin-top:12px;font-size:14px}.access-divider{margin:29px 0 23px;height:1px;background:#e0e6d6}.access-toggle{font-size:13px;color:#7f8c75;justify-content:space-between;width:100%;font-weight:400}.login-form{display:grid;gap:14px}.login-form .button{min-height:48px}.login-footer{font-size:11px;display:flex;gap:7px;align-items:center;color:#9aa38d;text-align:center}@media(min-width:1500px){.login-story{padding-left:max(62px,calc((100vw - 1300px)/2))}.login-copy h1{font-size:71px}}@media(max-width:950px){.login-story{padding:36px 35px 28px}.login-access{padding:45px 35px 28px}.login-story .brand-description{display:none}.login-copy h1{font-size:50px}.login-principles{gap:11px}}@media(max-width:700px){.login-layout{grid-template-columns:1fr}.login-story{padding:25px 25px 28px}.login-copy{padding:38px 0 0;max-width:100%}.login-copy .eyebrow{margin-bottom:16px}.login-copy h1{font-size:43px;letter-spacing:-2px}.login-copy h1>br:nth-child(2){display:none}.login-copy h1 em{padding-left:8px}.login-copy h1 em br{display:none}.login-copy>p{max-width:420px;margin-top:18px;font-size:14px}.login-principles{margin-top:20px;gap:16px}.login-bottom{display:none}.login-access{padding:15px 25px 26px}.login-card{max-width:450px;padding:30px 0}.access-icon{display:none}.login-card h2{font-size:27px;max-width:360px}.login-card>.eyebrow{margin-bottom:10px}.login-card>p{margin-top:12px;margin-bottom:20px}.access-divider{margin:22px 0 20px}}.laboratory-layout{display:grid;grid-template-columns:241px minmax(0,1fr);max-width:1600px;margin:0 auto}.laboratory-sidebar{border-right:1px solid var(--line);min-height:calc(100vh - 78px);background:#f5f6ef;padding:32px 23px}.challenge-label{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:1.5px;color:#69755c;font-weight:650}.challenge-label>span{margin-left:auto;color:#6e7366;font-size:12px;letter-spacing:0}.challenge-brief h2{font-size:18px;line-height:1.45;letter-spacing:-.5px;margin-top:19px;font-weight:650}.challenge-brief>p{margin-top:13px;color:#6b7464;font-size:13px;line-height:1.9}.brief-rule{height:1px;background:#e0e5d6;margin:24px 0}.challenge-brief h3{font-size:12px;font-weight:700;margin-bottom:18px}.challenge-steps{padding:0;list-style:none;display:grid;gap:24px;margin:0}.challenge-steps li{display:flex;gap:10px}.challenge-steps li>span{width:20px;height:20px;border:1px solid #d9e1cc;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#677653;flex-shrink:0;margin-top:0}.challenge-steps strong{font-size:12px;line-height:1.6;font-weight:600;display:block}.challenge-steps p{font-size:12px;color:#6c7464;line-height:1.8;margin-top:4px}.brief-note{display:flex;gap:9px;border-radius:7px;background:#e9efde;padding:13px 11px;margin-top:26px;color:#66774e}.brief-note>svg{margin-top:1px}.brief-note p{font-size:11px;line-height:1.9}.brief-note strong{font-weight:500;color:#52693f}.challenge-details{margin-top:18px}.challenge-details summary{list-style:none;display:flex;align-items:center;gap:6px;cursor:pointer;color:#6a745f;font-size:11px}.challenge-details summary::-webkit-details-marker{display:none}.challenge-details summary>svg:last-child{margin-left:auto;transition:transform .15s}.challenge-details[open] summary>svg:last-child{transform:rotate(90deg)}.challenge-details p{color:#6a7463;font-size:12px;line-height:1.8;margin-top:12px}.workspace-summary{margin-top:35px;padding-top:24px;border-top:1px solid #e0e5d6}.workspace-summary-label{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:1.4px;color:#67755b;font-weight:600}.usage-count{display:flex;align-items:center;gap:12px;margin:14px 0 17px}.usage-count strong{font-family:Manrope,sans-serif;font-size:35px;line-height:1.2;font-weight:500;letter-spacing:-1.5px}.usage-count>span{font-size:11px;line-height:1.5;color:#6b7463}.summary-meta{display:flex;justify-content:space-between;gap:5px;margin-top:10px;font-size:11px}.summary-meta>span{color:#6c7463}.summary-meta strong{font-size:11px;font-weight:500;color:#627356}.public-path{display:flex;align-items:center;gap:5px;margin-top:18px;background:#eef1e7;border:1px solid #e2e8d7;border-radius:5px;padding:9px;font-size:12px;color:#677658}.public-path span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-summary>p{display:flex;align-items:center;gap:4px;font-size:10px;color:#6d7364;margin-top:10px}.summary-public-link{display:flex;align-items:center;gap:6px;font-size:12px;color:#466c44;margin-top:13px}.laboratory-main{padding:30px 34px 0;min-width:0}.workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.breadcrumb{display:flex;align-items:center;gap:7px;font-size:11px;color:#6d7367;margin-bottom:13px}.breadcrumb>span{color:#677659}.workspace-heading h1{font-size:25px;line-height:1.25;font-weight:650;letter-spacing:-.8px}.workspace-heading p{font-size:13px;color:#6b7463;margin-top:8px;line-height:1.6}.publish-control{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px}.publish-control .button{font-size:13px;min-height:39px;padding:10px 15px}.publish-control .text-link{font-size:11px}.publish-control .text-link svg{width:12px}.publish-hint{font-size:10px;color:#6c7363}.laboratory-main>.notice{margin-bottom:16px}.preview-section{border:1px solid #dfe5d5;border-radius:10px;background:#fcfdf9;overflow:hidden;box-shadow:0 3px 12px #274c3910}.preview-toolbar{padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #e6ebdf}.segmented-control{display:flex;gap:2px;padding:3px;border-radius:6px;background:#f0f3e9}.segmented-control button{display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;font-size:12px;border-radius:4px;color:#6b7461}.segmented-control button.selected{background:#fff;box-shadow:0 1px 3px #35522c12;color:#415d32;font-weight:550}.preview-tools{display:flex;align-items:center;gap:11px}.version-select select{color:#6b7461;font-size:12px;padding:5px 3px;background:transparent;border:0;max-width:90px}.version-select select:disabled{opacity:.5}.device-switch{display:flex;gap:3px;border-left:1px solid #e2e8d9;padding-left:10px}.device-switch button{color:#6c7364;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:4px}.device-switch button.selected{background:#edf2e5;color:#5c7950}.expand-preview{width:25px;height:28px}.preview-stage{background:#e8ede1;padding:14px;display:flex;justify-content:center;align-items:stretch}.preview-browser{width:100%;border:1px solid #d9e1ce;border-radius:6px;overflow:hidden;box-shadow:0 3px 7px #344b3012;background:#fff;transition:max-width .2s}.preview-desktop .preview-browser{max-width:100%}.preview-mobile .preview-browser{max-width:390px}.browser-bar{display:flex;align-items:center;gap:14px;background:#f7f9f3;border-bottom:1px solid #e5eada;padding:8px 10px;min-height:32px}.browser-dots{display:inline-flex;align-items:center;gap:4px}.browser-dots i{width:5px;height:5px;border-radius:50%;background:#d6ddce}.browser-dots i:first-child{background:#d9b9a8}.browser-dots i:nth-child(2){background:#d5cbad}.browser-dots i:nth-child(3){background:#b6c7a6}.browser-address{font-size:10px;color:#6c7463;display:flex;align-items:center;gap:5px;flex:1}.browser-environment{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:#6d7365}.browser-bar>svg{color:#6d7365}.tiny-lock{display:inline-block;border:1px solid #aab89b;width:6px;height:5px;border-radius:1px;position:relative;margin-top:3px;margin-right:2px}.tiny-lock:before{content:"";width:4px;height:4px;border:1px solid #aab89b;border-radius:3px;position:absolute;top:-5px;left:0}.preview-viewport{height:485px;position:relative}.preview-viewport iframe{border:0;width:100%;height:100%;display:block;background:#fff}.iframe-loading{position:absolute;inset:0;background:#f6f8f2;color:#6a7461;font-size:13px;display:flex;align-items:center;justify-content:center;pointer-events:none}.preview-caption{display:flex;justify-content:space-between;gap:10px;padding:9px 15px;background:#fafcf6;border-top:1px solid #e1e7d6}.preview-caption>span{display:inline-flex;gap:5px;align-items:center;font-size:10px;color:#6b745e}.preview-caption .status-dot{width:4px;height:4px}.historical-banner{padding:10px 15px;display:flex;align-items:center;gap:13px;background:#fcf6e9;font-size:12px;color:#866d3a;flex-wrap:wrap}.historical-banner .text-button{font-size:12px;color:#846e3c}.composer-section{margin-top:23px}.composer-heading{display:flex;align-items:center;gap:9px;margin-bottom:13px}.assistant-symbol{width:32px;height:32px;border:1px solid #dce5d1;background:#edf2e6;color:#5f7948;border-radius:9px;display:flex;justify-content:center;align-items:center}.composer-heading h2{font-size:15px;letter-spacing:-.2px;font-weight:650}.composer-heading p{color:#6c7464;font-size:11px;margin-top:4px}.model-badge{display:inline-flex;margin-left:auto;padding:4px 6px;border:1px solid #e3e8da;color:#6b7460;border-radius:4px;font-size:9px;letter-spacing:.8px}.prompt-field{border:1px solid #dce4d3;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s;position:relative}.prompt-field:focus-within{border-color:#93ac7d;box-shadow:0 0 0 3px #9bb47f10}.prompt-field textarea{width:100%;height:105px;padding:33px 16px 10px;display:block;border:0;resize:vertical;min-height:90px;max-height:280px;font-size:14px;line-height:1.7;color:#36513d;border-radius:8px;outline:0;background:transparent}.prompt-field label{position:absolute;top:18px;left:16px;pointer-events:none;color:#6c7364;font-size:13px;transition:font-size .15s,top .15s}.prompt-field textarea:focus+label,.prompt-field textarea:not(:placeholder-shown)+label{top:10px;font-size:11px;color:#627750}.prompt-field textarea:disabled{background:#f8faf4;color:#6c7463}.prompt-field:has(textarea:disabled){background:#f8faf4}.prompt-bottom{padding:0 11px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.prompt-bottom>span{font-size:10px;color:#6e7366}.send-prompt{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#23533e;color:#f7faf0;border-radius:6px}.send-prompt:disabled{color:#6c7461;background:#eaf0e0}.send-prompt:hover:not(:disabled){background:#153d29}.composer-footnote{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:8px 1px 0;font-size:10px;color:#6c7363;line-height:1.5}.composer-footnote>span:first-child{display:inline-flex;gap:4px;align-items:center}.composer-footnote .text-button{font-size:11px}.keyboard-hint{font-size:10px;flex-shrink:0;color:#6e7368}.composer-footnote .running-message{color:#5e794b}.is-running{border-color:#bbcd9e}.activity-section{margin-top:25px;border-top:1px solid #e2e7d8}.activity-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e7ecdf;min-height:46px}.activity-tabs{display:flex;align-items:center;gap:22px;align-self:stretch}.activity-tabs button{display:flex;align-items:center;gap:6px;padding:0;border-bottom:2px solid transparent;font-size:12px;color:#6c7364}.activity-tabs button.active{border-bottom-color:#57784b;color:#4f6c43}.activity-tabs button>span{font-size:10px;padding:2px 5px;background:#ecf0e5;color:#687559;border-radius:4px}.activity-toolbar>.text-button{font-size:11px;font-weight:400;color:#69745e}.conversation-empty{display:flex;align-items:center;justify-content:center;gap:12px;padding:27px 0;color:#6c7361}.conversation-empty p{font-size:12px;color:#6c7461}.conversation-empty p>span{display:block;font-size:11px;margin-top:5px;color:#6d7366}.conversation-list{display:grid;gap:20px;padding:22px 0}.conversation-message{display:flex;align-items:flex-start;gap:10px}.message-avatar{display:flex;align-items:center;justify-content:center;background:#e9efde;border:1px solid #dde5d1;border-radius:7px;width:28px;height:28px;color:#62774d;flex-shrink:0}.message-user .message-avatar{background:#f1f3ec;color:#6a745c}.conversation-message>div{min-width:0;flex:1;padding-top:2px}.message-meta{display:flex;align-items:center;gap:8px}.message-meta strong{font-size:12px;font-weight:550;color:#647753}.message-meta time{font-size:10px;color:#6d7365;margin-left:auto}.message-meta>span{font-size:10px;color:#976555}.conversation-message p{font-size:13px;color:#68755e;line-height:1.8;margin-top:7px;white-space:pre-wrap;overflow-wrap:anywhere}.message-error p{color:#876c52}.revision-list{padding:6px 0}.revision-row{display:flex;width:100%;text-align:left;align-items:center;gap:11px;padding:12px 5px;border-bottom:1px solid #e8ecdf}.revision-row:last-child{border-bottom:0}.revision-row:hover{background:#f0f4e7}.revision-number{display:inline-flex;padding:6px 7px;background:#eaf0de;border-radius:5px;font-size:11px;color:#627750;flex-shrink:0}.revision-row>span:nth-child(2){flex:1;font-size:13px;color:#64765a;line-height:1.5}.revision-row small{display:block;margin-top:4px;font-size:10px;color:#6c7461}.revision-row time{font-size:11px;color:#6c7364}.workspace-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e4e9da;padding:17px 0 22px;color:#6e7367;font-size:10px}.workspace-footer>span:last-child{font-family:Manrope,sans-serif;font-size:15px;font-weight:800;letter-spacing:-.8px}@media(min-width:1550px){.laboratory-main{padding:36px 48px 0}.laboratory-sidebar{padding-top:36px}.preview-viewport{height:550px}}@media(max-width:1200px){.laboratory-layout{grid-template-columns:212px minmax(0,1fr)}.laboratory-sidebar{padding:28px 19px}.laboratory-main{padding:28px 24px 0}.workspace-heading h1{font-size:23px}.workspace-heading p{font-size:12px}.preview-viewport{height:460px}}@media(max-width:1000px){.laboratory-layout{grid-template-columns:minmax(0,1fr)}.laboratory-sidebar{min-height:auto;border-right:0;border-bottom:1px solid var(--line);padding:18px 24px;display:flex;align-items:flex-start;gap:30px}.challenge-brief{flex:1}.challenge-label{font-size:10px}.challenge-label>span{display:none}.challenge-brief h2{font-size:14px;margin-top:8px}.challenge-brief>p{font-size:12px;margin-top:7px}.brief-rule,.challenge-brief>h3,.challenge-steps,.brief-note{display:none}.challenge-details{margin-top:10px}.workspace-summary{flex-shrink:0;width:180px;margin:0;padding:0 0 0 22px;border-top:0;border-left:1px solid #e0e5d6}.usage-count{margin:7px 0;gap:10px}.usage-count strong{font-size:25px}.usage-count>span{font-size:10px}.summary-meta{margin-top:6px;font-size:10px}.summary-meta strong{font-size:10px}.workspace-summary>p,.public-path,.summary-public-link{display:none}}@media(max-width:620px){.laboratory-sidebar{padding:16px;gap:18px}.challenge-brief h2{font-size:15px;line-height:1.4}.challenge-brief>p{font-size:11px;line-height:1.7}.workspace-summary{width:120px;padding-left:15px}.workspace-summary-label{font-size:8px;letter-spacing:.5px}.usage-count{gap:6px}.usage-count strong{font-size:25px}.summary-meta{font-size:9px;gap:4px;flex-wrap:wrap}.summary-meta strong{font-size:9px}.challenge-details summary{font-size:10px;gap:4px}.laboratory-main{padding:22px 16px 0}.workspace-heading{align-items:flex-start;gap:13px;flex-wrap:wrap;margin-bottom:17px}.workspace-heading h1{font-size:23px}.workspace-heading p{font-size:12px}.publish-control{flex-direction:row;gap:14px}.publish-control .button{font-size:12px;min-height:36px}.publish-hint{font-size:10px}.preview-toolbar{padding:9px;flex-wrap:wrap}.segmented-control button{font-size:10px;padding:6px 7px;gap:5px}.segmented-control button svg{width:12px}.preview-tools{gap:5px}.version-select select{max-width:69px;font-size:10px}.device-switch{gap:0;padding-left:5px}.device-switch button{padding:5px}.device-switch svg{width:14px}.expand-preview{display:none}.preview-stage{padding:8px}.preview-viewport{height:470px}.browser-environment{display:none}.preview-caption{padding:8px 10px;gap:6px}.preview-caption>span{font-size:8px;gap:4px}.preview-caption svg{width:10px}.composer-section{margin-top:23px}.composer-heading h2{font-size:14px}.composer-heading p{font-size:10px;line-height:1.5}.prompt-field label{font-size:12px}.prompt-bottom>span{font-size:9px}.composer-footnote{font-size:9px}.keyboard-hint{display:none}.conversation-empty{padding:25px 8px}.conversation-empty p{font-size:11px}.conversation-empty p>span{font-size:10px;line-height:1.7}.activity-tabs{gap:19px}.activity-tabs button{font-size:11px}.workspace-footer{font-size:9px}}.expanded-preview{position:fixed;inset:0;display:grid;grid-template-rows:minmax(0,1fr) auto;height:100dvh;background:#f6f7f3}.expanded-preview-frame{width:100%;height:100%;min-height:0;border:0;display:block;background:#fff}.expanded-preview-dock{border-top:1px solid #dce4d3;background:#fcfdf9;padding:12px 20px max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #233d340a;max-height:65dvh;overflow:auto}.expanded-preview-content{max-width:1080px;margin:0 auto}.expanded-preview-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:10px}.expanded-preview-heading h1{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:650}.expanded-preview-heading>span{color:#6c7464;font-size:11px}.expanded-preview-heading>a{margin-left:auto;font-size:11px}.expanded-preview-dock .composer-section{margin:0}.expanded-preview-dock .composer-heading{display:none}.expanded-preview-dock .prompt-field textarea{height:78px;min-height:78px;max-height:78px;resize:none}.expanded-preview-dock .prompt-bottom{padding-bottom:8px}.expanded-preview-dock .notice{margin-bottom:10px;font-size:12px}.expanded-preview-locked{color:#6c7464;font-size:13px;padding:6px 0}@media(max-width:570px){.expanded-preview-dock{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.expanded-preview-heading{gap:6px 10px}.expanded-preview-heading h1{font-size:12px}.expanded-preview-heading>a{font-size:10px}.expanded-preview-dock .prompt-field textarea{font-size:16px}.expanded-preview-dock .prompt-field label{max-width:calc(100% - 24px);font-size:12px}.expanded-preview-dock .keyboard-hint{display:none}}.admin-page{max-width:1160px;padding:40px 35px 60px;margin:0 auto}.admin-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.admin-page-heading h1{font-size:29px;letter-spacing:-.8px;margin-top:12px;font-weight:650}.admin-page-heading p{font-size:14px;color:#697561;line-height:1.7;margin-top:8px}.admin-page-heading .button{font-size:13px}.admin-page>.notice{margin-bottom:20px}.admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:28px}.admin-metrics>div{display:flex;align-items:center;gap:15px;padding:21px 23px;background:#fcfdf8;border:1px solid #e0e7d7;border-radius:8px}.metric-icon{color:#607848;background:#edf3e5;width:42px;height:42px;border:1px solid #e0e9d4;border-radius:10px;display:flex;align-items:center;justify-content:center}.admin-metrics small{display:block;font-size:12px;color:#69745f}.admin-metrics strong{display:block;font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-.8px;margin-top:4px;font-weight:600}.admin-config-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;margin-bottom:27px;align-items:start}.admin-card{border:1px solid #e0e7d7;background:#fcfdf9;border-radius:9px;padding:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-icon{color:#62784b;background:#eef3e6;border:1px solid #e1e9d7;border-radius:8px;width:35px;height:35px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.section-heading h2{font-size:17px;letter-spacing:-.4px;font-weight:650}.section-heading p{font-size:13px;line-height:1.7;color:#69745e;margin-top:6px}.integration-form,.invite-form{display:grid;gap:12px;margin-top:24px}.integration-form .button,.invite-form .button{margin-top:5px;min-height:44px;font-size:13px}.integration-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:1px}.integration-label>span:first-child{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#60784e}.integration-status{display:inline-flex;align-items:center;gap:4px;color:#7c7056;background:#f5f1e5;padding:4px 6px;font-size:9px;border-radius:4px}.integration-status.configured{background:#eaf2df;color:#617847}.github-integration-label{margin-top:13px}.callback-info{padding:12px;border:1px solid #e5ebdc;border-radius:6px;background:#f5f8f0}.callback-info strong{display:block;font-size:11px;font-weight:600;color:#66765b}.callback-info code{display:block;color:#5f7949;font-size:12px;margin-top:7px;overflow-wrap:anywhere}.callback-info p{font-size:11px;line-height:1.7;margin-top:8px;color:#6b7462}.integration-form>.form-help{font-size:11px}.admin-card .floating-field input,.admin-card .floating-field select{font-size:14px;height:53px}.admin-card .floating-field label{font-size:14px}.admin-card .floating-field input:focus+label,.admin-card .floating-field input:not(:placeholder-shown)+label,.admin-card .select-field label{font-size:11px}.invite-explanation{background:#edf3e5;border:1px solid #e0e9d4;padding:22px;border-radius:7px;margin-top:26px;color:#62784e}.invite-explanation h3{color:#587748;font-size:15px;margin-top:14px;letter-spacing:-.2px}.invite-explanation p{font-size:12px;line-height:1.9;margin-top:11px;color:#68755b}.invite-explanation p strong{font-weight:600;color:#627750}.invite-flow{display:flex;align-items:center;gap:7px;margin:18px 0}.invite-flow>span{font-size:10px;padding:5px 8px;background:#f9fcf4;border:1px solid #dfe8d2;color:#657753;border-radius:4px}.invite-flow>svg{color:#6a745f}.candidate-section{border:1px solid #e0e7d7;background:#fcfdf9;border-radius:9px;overflow:hidden}.candidate-section>.section-heading{padding:23px 24px}.count-badge{background:#edf3e5;color:#657751;border:1px solid #e1e9d6;padding:6px 10px;font-size:13px;border-radius:5px}.candidate-empty{padding:45px 25px 55px;text-align:center;color:#6a755d;border-top:1px solid #e7ecdf}.candidate-empty>svg{margin-bottom:15px}.candidate-empty h3{font-size:14px;font-weight:500;color:#657656}.candidate-empty p{font-size:13px;color:#6c7463;margin-top:9px}.table-scroll{overflow-x:auto}.candidate-section table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.candidate-section th{font-weight:500;font-size:11px;color:#6b7460;padding:12px 20px;border-top:1px solid #e7ecdf;border-bottom:1px solid #e7ecdf;background:#f7f9f1}.candidate-section td{font-size:13px;color:#68755c;padding:17px 20px;border-bottom:1px solid #eaf0e2}.candidate-section tr:last-child td{border-bottom:0}.candidate-identity{display:flex;align-items:center;gap:9px}.candidate-identity strong{display:block;font-size:13px;color:#60784e;font-weight:500}.candidate-identity small{display:block;font-size:11px;color:#6c7462;margin-top:4px}.candidate-status{display:inline-flex;gap:5px;align-items:center;font-size:10px;padding:5px 7px;border-radius:4px;background:#f1f3eb;color:#6c7461}.candidate-status.published{background:#eaf3e0;color:#5f7945}.candidate-section .text-link{font-size:11px;font-weight:500}.table-muted{color:#6d7366}.candidate-row{cursor:pointer}.candidate-row:hover,.candidate-row:focus-within{background:#f2f6eb}.candidate-details-trigger{padding:0;text-align:left;border-radius:6px}.candidate-details-trigger:hover strong{text-decoration:underline;text-underline-offset:3px}.candidate-details{width:min(1100px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;color:var(--text);background:#f5f7f1;border:1px solid #dce4d3;border-radius:14px;box-shadow:0 24px 90px #173b3138}.candidate-details::backdrop{background:#20362cd0}.candidate-details-heading{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px;background:#fcfdf9;border-bottom:1px solid #e0e7d7}.candidate-details-heading h2{font-size:25px;margin-top:10px;letter-spacing:-.6px;overflow-wrap:anywhere}.candidate-details-heading p{margin-top:6px;color:#69745e;font-size:14px;overflow-wrap:anywhere}.candidate-details-heading .icon-button{width:40px;height:40px}.candidate-details-content{padding:24px;display:grid;gap:20px}.candidate-details-content>*{min-width:0}.candidate-overview{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:22px;font-size:13px}.candidate-overview dl{display:flex;flex-wrap:wrap;gap:20px 40px}.candidate-overview dt{color:#69745e;font-size:12px}.candidate-overview dd{margin:6px 0 0;font-weight:600}.candidate-details .logic-evaluation details,.candidate-details .logic-evaluation>p{padding:20px 24px}.candidate-details .logic-evaluation summary{cursor:pointer;line-height:1.7;overflow-wrap:anywhere}.candidate-details .logic-evaluation h3{font-size:14px;margin:20px 0 12px}.candidate-details .logic-evaluation pre{line-height:1.7;font-size:13px}.candidate-details .section-heading .button{flex-shrink:0}.candidate-progress{display:grid;gap:6px;font-size:11px}.progress-running{padding:10px 12px;color:#355f46;background:#eaf3e0;border:1px solid #d1e2bd;border-radius:7px}.progress-label{display:inline-flex;align-items:center;gap:6px;font-weight:600}.progress-test{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.progress-test strong{font-weight:500}.progress-test>span{font-variant-numeric:tabular-nums}.progress-unavailable{color:#8b6336}.candidate-details-content>.candidate-progress{font-size:13px;padding:14px 18px}@media(max-width:600px){.candidate-details{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.candidate-details-heading{padding:20px}.candidate-details-heading h2{font-size:22px}.candidate-details-content{padding:14px}.candidate-details .section-heading{align-items:flex-start;flex-direction:column}.candidate-overview{padding:6px}.candidate-overview dl{gap:16px 24px}}@media(max-width:900px){.admin-page{padding:30px 24px 50px}.admin-metrics>div{gap:10px;padding:17px}.admin-metrics small{font-size:11px}.admin-config-grid{gap:16px}.admin-card{padding:20px}}@media(max-width:700px){.admin-config-grid{grid-template-columns:1fr}.admin-metrics{gap:10px}.admin-metrics>div{display:block;padding:14px}.metric-icon{width:30px;height:30px;border-radius:7px;margin-bottom:10px}.metric-icon svg{width:15px}.admin-metrics small{font-size:10px;line-height:1.6}.admin-metrics strong{font-size:24px}}@media(max-width:500px){.admin-page{padding:26px 16px 40px}.admin-page-heading{gap:12px;align-items:flex-start;flex-direction:column}.admin-page-heading h1{font-size:26px}.admin-page-heading p{font-size:13px}.admin-page-heading .button{min-height:36px;padding:8px 12px}.admin-metrics{gap:8px}.admin-metrics>div{padding:12px}.admin-card{padding:20px}.candidate-section>.section-heading{padding:20px}.candidate-empty{padding:35px 20px 40px}.candidate-empty h3{font-size:14px;line-height:1.7}.candidate-empty p{font-size:12px;line-height:1.7}}.challenge-selector{padding:24px 36px 0;max-width:520px}.challenge-selector select:disabled{opacity:1;color:var(--ink, #293f34);background-color:#eef1e8;cursor:not-allowed}.challenge-switch-lock{margin:10px 0 0;color:#53634b;font-size:13px;line-height:1.5}.logic-page{max-width:1000px;padding:36px;margin:0 auto}.logic-page h1{margin:12px 0}.logic-page p{line-height:1.7}.logic-brief ol{padding-left:22px}.logic-brief li{line-height:1.7;margin-bottom:12px}.logic-scenario{max-width:100%;min-width:0;padding:18px;border:1px solid #dde3d6;border-radius:10px;background:#f5f7f1;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6;tab-size:2}.logic-scenario code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.logic-brief,.logic-answer{background:var(--surface, #fff);border:1px solid #dde3d6;padding:24px;border-radius:14px;margin:24px 0}.logic-answer .floating-field{margin:24px 0}.logic-answer textarea{min-height:180px;width:100%;padding:30px 14px 14px;border:1px solid #cbd5c4;border-radius:8px;background:transparent;color:inherit;font:inherit;resize:vertical}.logic-answer textarea:focus~label,.logic-answer textarea:not(:placeholder-shown)~label{top:8px;transform:none;font-size:11px}.logic-actions{display:flex;gap:12px;flex-wrap:wrap}.logic-evaluation pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.logic-evaluation details{border-top:1px solid #dde3d6;padding:18px 0}@media(max-width:600px){.challenge-selector{padding:20px 16px 0}.logic-page{padding:24px 16px}.logic-brief,.logic-answer{padding:18px}}.challenge-gate{position:relative;min-height:65vh}.challenge-locked{filter:blur(7px);-webkit-user-select:none;user-select:none;pointer-events:none}.challenge-start-overlay{position:absolute;inset:0;background:#f5f7f18a;display:flex;align-items:flex-start;justify-content:center;padding:min(15vh,120px) 20px 20px}.challenge-start-card{position:sticky;top:30vh;background:#fff;border:1px solid #dde3d6;padding:32px;border-radius:18px;box-shadow:0 20px 60px #183f3020;max-width:480px;text-align:center}.challenge-start-card p{line-height:1.7;margin:20px 0}.challenge-clock{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:20px 36px;border-bottom:1px solid #dde3d6}.challenge-clock strong{font-variant-numeric:tabular-nums;font-size:24px}.challenge-clock small{color:#687461}.test-finish{padding:24px;border:1px solid #dde3d6;border-radius:14px}@media(max-width:600px){.challenge-clock{padding:20px 16px}.challenge-start-card{padding:24px}}
