:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#26332c;background:#f6f7f4;font-synthesis:none;--green:#d8fe91;--ink:#26332c;--muted:#7b837c;--border:#e4e7e1;--paper:#fff}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,label.upload-btn{touch-action:manipulation}button{cursor:pointer;transition:background .15s,transform .15s;color:var(--ink);background:white;border:1px solid var(--border);border-radius:9px;padding:10px 14px;font-size:13px;font-weight:550}button:hover{background:#f1f4ed}button:disabled{opacity:.45;cursor:not-allowed}button:active{transform:translateY(1px)}input,textarea,select{outline:none;color:var(--ink)}input:focus,textarea:focus,select:focus{border-color:#91b95e;box-shadow:0 0 0 3px #cfe6af40}button:focus-visible,a:focus-visible,.phone:focus-visible{outline:2px solid #87ad53;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}h1{font-size:21px;font-weight:600;letter-spacing:-.7px}h2{font-size:17px;letter-spacing:-.4px;font-weight:600}.muted{color:var(--muted);font-size:12px;line-height:1.65}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:650;color:#858e81;margin-bottom:10px}.brand{display:flex;align-items:center;gap:9px;font-size:18px;font-weight:650;letter-spacing:-.6px;white-space:nowrap}.badge{background:#edf0e9;color:#7a8275;border:1px solid #e3e7dc;font-size:8px;font-weight:650;letter-spacing:1px;padding:4px 6px;border-radius:5px;margin-left:4px}.dot{display:inline-block;width:6px;height:6px;background:#77a746;border-radius:50%;flex-shrink:0}.topbar{height:75px;border-bottom:1px solid var(--border);background:#fff;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.top-actions{display:flex;align-items:center;gap:16px}.workspace-label{font-size:11px;color:#90978e;margin-right:8px}.subtle{background:#f8f9f6;border:1px solid #e6e9df}.icon-btn{border:0;background:transparent;font-size:20px;padding:7px 9px}.workspace{max-width:1680px;margin:0 auto;display:grid;grid-template-columns:minmax(490px,1.15fr) minmax(380px,1fr);height:calc(100dvh - 75px);min-height:700px}.device-panel{padding:27px 32px 23px;border-right:1px solid var(--border);display:flex;flex-direction:column;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.pill{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;font-size:10px;font-weight:500;letter-spacing:0;color:#65745b;border:1px solid #dee6d7;border-radius:20px;padding:4px 7px;margin-left:6px;white-space:nowrap}.pill.offline{color:#a78242}.pill.offline .dot{background:#be9145}.upload-btn{white-space:nowrap;border:1px solid #dce0d5;border-radius:8px;background:white;padding:10px 12px;font-size:11px;cursor:pointer}.upload-btn:hover{background:#f0f3eb}.device-stage{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:17px 0 12px;background-image:radial-gradient(#d6ddcd 1px,transparent 1px);background-size:20px 20px;background-position:10px 10px;margin:18px 0 16px;border:1px solid #e7eade;border-radius:14px;background-color:#eff2e9}.device-meta{display:flex;gap:13px;align-items:center;color:#89937f;font-size:8px;letter-spacing:1.2px;font-weight:550}.device-meta span+span:before{content:'·';margin-right:13px}.phone-wrap{position:relative;max-height:calc(100% - 70px)}.phone{height:min(62dvh,690px);max-height:100%;aspect-ratio:9/20;border:6px solid #2b312c;border-radius:21px;background:#111;box-shadow:0 20px 40px -14px #24371a45,0 3px 7px #0003;overflow:hidden;position:relative;touch-action:none;cursor:crosshair;user-select:none;outline:none}.phone img,.phone canvas{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none}.screen-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#1d251eef;color:#d8dfcf;padding:35px;text-align:center;font-size:13px;line-height:1.7}.screen-overlay[hidden]{display:none}#touch-indicator{position:absolute;display:none;width:22px;height:22px;border:2px solid #e2ffa5;border-radius:50%;background:#d8fe9140;transform:translate(-50%,-50%);pointer-events:none}.device-tools{position:absolute;left:calc(100% + 19px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;padding:5px;border:1px solid #e0e5d8;border-radius:12px;background:#ffffffc9;box-shadow:0 5px 12px #24371a06}.device-tools button{background:transparent;border:0;font-size:23px;width:33px;height:40px;padding:0;color:#6c7664;font-weight:400}.device-tools button:hover{background:#e8eedf}.tool-divider{height:1px;background:var(--border);margin:3px}.device-hint{font-size:10px;color:#909a87;display:flex;align-items:center;gap:6px}.device-hint .dot{width:4px;height:4px;background:#9fab91}.device-bottom{display:flex;flex-direction:column;gap:9px}.text-control{display:flex;gap:8px}.text-control input{width:0;flex:1;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:white;font-size:12px}.text-control button{font-size:11px}.app-control{display:flex;gap:8px}.app-control select{width:0;flex:1;border:1px solid var(--border);border-radius:8px;padding:9px;background:#f8f9f6;font-size:11px}.app-control button{font-size:11px;background:transparent}.agent-panel{background:#fff;display:flex;flex-direction:column;min-height:0;padding:0 27px}.agent-heading{display:flex;align-items:center;justify-content:space-between;padding:25px 0 23px;border-bottom:1px solid var(--border)}.agent-title{display:flex;align-items:center;gap:12px}.agent-title h2{margin-bottom:4px}.agent-title .muted{font-size:10px}.agent-icon{display:grid;place-items:center;font-size:26px;width:43px;height:43px;border:1px solid #e5e9dd;border-radius:13px;background:#f5f8f0;color:#6d854e}.setup-banner{display:flex;gap:11px;align-items:center;padding:13px 12px;margin-top:20px;border:1px solid #e1e9d6;border-radius:10px;background:#f7faef}.setup-banner[hidden]{display:none}.setup-icon{display:grid;place-items:center;background:#e8f1d8;width:27px;height:27px;border-radius:7px;flex-shrink:0}.setup-banner strong{font-size:11px;font-weight:600}.setup-banner p{font-size:10px;line-height:1.5;color:#879179;margin-top:3px}.setup-banner button{border:0;background:transparent;margin-left:auto;padding:4px}.chat{flex:1;min-height:120px;overflow-y:auto;padding:22px 0;scrollbar-width:thin;scrollbar-color:#dae0d4 transparent}.welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(10px,6dvh,70px) 12px 10px}.welcome-mark{font-size:44px;color:#8fa276;margin-bottom:17px;font-weight:300}.welcome h2{font-size:22px;letter-spacing:-.65px}.welcome>p{font-size:12px;line-height:1.8;color:#8c9387;max-width:290px;margin-top:13px}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:425px;margin-top:27px}.suggestions button{font-size:11px;text-align:left;padding:14px 11px;line-height:1.8;font-weight:550;background:#fcfdfb;border-color:#e5e9df}.suggestions span{display:block;font-size:17px;margin-bottom:6px;color:#7c8d66}.suggestions small{display:block;font-size:9px;color:#959d8e;font-weight:400;line-height:1.6}.welcome .account-note{font-size:10px;margin-top:22px;color:#8b9880;max-width:100%}.composer{border:1px solid #dfe5d7;border-radius:13px;background:#fcfdfb;padding:13px 14px;box-shadow:0 4px 10px #28371e04;margin-top:10px}.composer textarea{border:0;background:transparent;resize:vertical;width:100%;min-height:65px;max-height:200px;padding:0;font-size:12px;line-height:1.7}.composer textarea:focus{box-shadow:none}.composer textarea::placeholder{color:#a0a698}.composer-bottom{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:5px}#composer-note{font-size:9px;color:#9aa18f}.step-label select{font-size:10px;border:0;background:#eff3e8;color:#7b866d;border-radius:5px;padding:5px;max-width:100px}.send-btn{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:var(--green);border-color:#c5e88b;font-size:21px;padding:0}.send-btn:hover,.primary:hover{background:#c5f17b}.agent-footer{padding:14px 0 19px;color:#9aa291;font-size:9px;display:flex;align-items:center;justify-content:center;gap:5px}.agent-footer .dot{width:4px;height:4px}.run-toolbar{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:10px;margin:7px 0}.run-toolbar[hidden]{display:none}.danger{font-size:10px;padding:8px;color:#9a4635;border-color:#edd9d0;background:#fff9f5}.small-link{font-size:10px;text-decoration:underline;text-underline-offset:3px}.message{font-size:12px;line-height:1.7;margin:0 0 17px;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{background:#eef5e3;border:1px solid #e1ebd2;padding:13px 15px;border-radius:12px 12px 3px 12px;margin-left:35px}.message .message-label{font-size:9px;font-weight:650;letter-spacing:.6px;color:#8a937f;display:block;margin-bottom:5px}.action-card{border-left:2px solid #dce7cb;padding:1px 0 12px 15px;margin-left:4px;margin-bottom:8px;font-size:11px;line-height:1.7;color:#626f57}.action-header{font-size:9px;color:#94a087;margin-bottom:3px;display:flex;gap:10px;align-items:center}.action-card a{color:#7c8e68;font-size:9px;text-decoration:underline}.result-card{border:1px solid #dce8d0;background:#f8fbf3;padding:14px;border-radius:10px;margin-top:12px;white-space:pre-wrap;font-size:12px;line-height:1.8}.result-card.error{background:#fff7f2;border-color:#efddd0}.thinking{font-size:11px;color:#7d8b6e;padding:10px 0}.primary{background:var(--green);border:1px solid #c5e88b}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:10;padding:13px 19px;background:#26332c;color:white;border-radius:10px;box-shadow:0 5px 30px #0002;font-size:12px;max-width:min(90vw,600px)}.toast[hidden]{display:none}dialog{width:min(490px,calc(100vw - 30px));border:1px solid #e2e7d9;border-radius:17px;padding:25px;box-shadow:0 25px 100px #15220d30;color:var(--ink)}dialog::backdrop{background:#17231450;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.dialog-heading h2{font-size:22px}.dialog-heading .eyebrow{font-size:9px}dialog label:not(.checkbox-label){display:block;font-size:11px;font-weight:600;margin:17px 0 7px}dialog input:not([type=checkbox]){width:100%;border:1px solid #dfe4d7;border-radius:8px;padding:11px;font-size:12px;background:#fcfdfa}.field-hint{font-size:10px;line-height:1.6;color:#929b87;margin-top:5px}.checkbox-label{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:20px}.checkbox-label input{accent-color:#8ab650}.dialog-actions{display:flex;gap:9px;margin-top:23px;justify-content:space-between}.dialog-actions button{font-size:11px}#settings-message{font-size:11px;color:#6e804f;margin-top:13px}.history-item{display:block;width:100%;text-align:left;margin-top:10px;padding:13px}.history-item small{display:block;color:#87937a;font-size:10px;margin-top:5px}.login-page{min-height:100dvh;display:grid;place-items:center;background-color:#eff3e8;background-image:radial-gradient(#d4ddc9 1px,transparent 1px);background-size:22px 22px;padding:25px}.login-card{width:420px;max-width:100%;background:#fff;border:1px solid #e0e7d5;border-radius:21px;padding:36px;box-shadow:0 20px 80px #3445220b}.login-card .brand{font-size:18px;margin-bottom:42px}.login-card .eyebrow{margin-bottom:15px}.login-card h1{font-size:36px;line-height:1.17;letter-spacing:-1.6px;margin-bottom:15px}.login-card .muted{font-size:13px;line-height:1.8}.login-card form{margin-top:30px}.login-card label{display:block;font-size:11px;font-weight:600;margin-bottom:8px}.login-card input{width:100%;border:1px solid #dce3d4;border-radius:9px;font-size:13px;padding:13px;background:#fcfdfa}.login-card .primary{margin-top:12px;width:100%;display:flex;justify-content:space-between;align-items:center;padding:13px;font-size:12px}.login-footer{font-size:10px;color:#9aa38e;display:flex;align-items:center;gap:7px;border-top:1px solid var(--border);margin-top:27px;padding-top:20px}#login-error{color:#aa5641;font-size:12px;line-height:1.6;margin-top:12px}
@media(min-height:950px){.phone{height:min(66dvh,790px)}}
@media(max-width:1100px){.topbar{padding:0 20px}.device-panel{padding:23px 20px}.agent-panel{padding:0 20px}.workspace{grid-template-columns:minmax(400px,1fr) minmax(360px,1fr)}h1{font-size:17px}.workspace-label{display:none}.panel-heading .pill{font-size:9px;margin-left:3px}.upload-btn{font-size:10px;padding:9px}.suggestions{grid-template-columns:1fr}.suggestions span{float:left;margin:0 10px 0 0}.welcome{padding-top:20px}.welcome>p{font-size:11px}.phone{height:min(59dvh,610px)}.device-tools{left:calc(100% + 12px)}}
@media(max-width:760px){.topbar{height:64px;padding:0 15px}.brand{font-size:16px;gap:7px}.brand .badge{display:none}.top-actions{gap:4px}.subtle{font-size:11px}.workspace{display:flex;flex-direction:column;height:auto;min-height:0}.device-panel{border-right:0;border-bottom:1px solid var(--border);padding:22px 17px}.device-stage{min-height:480px;padding:18px 0;margin:17px 0}.phone{height:520px;max-height:67dvh}.device-tools{left:calc(100% + 13px)}.device-hint{font-size:9px}.agent-panel{padding:0 18px;min-height:650px}.agent-heading{padding:23px 0 17px}.chat{min-height:270px;max-height:520px}.welcome{padding:28px 0 10px}.suggestions{grid-template-columns:1fr 1fr;margin-top:19px}.suggestions span{float:none;margin-bottom:6px}.agent-footer{padding-bottom:20px}.composer-bottom{gap:6px}.workspace .panel-heading h1{font-size:17px}.pill{font-size:9px}#composer-note{font-size:8px}.login-card{padding:28px}.login-card .brand{margin-bottom:35px}}
@media(max-width:760px){.device-tools{position:static;transform:none;flex-direction:row;width:max-content;margin:14px auto 0;padding:3px 8px}.device-tools button{height:30px;width:43px}.tool-divider{width:1px;height:22px;margin:4px}.phone-wrap{max-height:none}.phone{height:min(520px,67dvh,calc((100vw - 60px)*20/9))}.device-stage{gap:14px}.panel-heading h1 .pill{margin-left:0}.composer-bottom{flex-wrap:wrap}}
@media(max-width:760px){#composer-note{display:none}.composer-bottom{flex-wrap:nowrap}.composer-bottom .send-btn{margin-left:auto}}

.phone [hidden]{display:none}.phone{border-radius:34px;border-width:5px}.phone-wrap{max-height:none}.phone canvas{background:#111}.device-meta{font-size:8px;letter-spacing:.7px}#stream-label{min-width:70px}
