@import url('https://cdn.jsdelivr.net/npm/pretendard@1.3.9/dist/web/static/pretendard.css');
:root{font-family:'Pretendard',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color-scheme:light;--bg:#f7f9fc;--paper:#fff;--paper-2:#f8faff;--surface:#f2f5f9;--hover:#edf3fb;--stroke:#e8edf4;--text:#182338;--muted:#8893a6;--sub:#64748b;--blue:#1683f7;--blue-2:#0870e8;--shadow:0 18px 60px rgba(23,40,75,.07);--modal-shadow:0 28px 90px rgba(21,37,70,.22);--danger:#ec5252;--appwindow:#fff}
html[data-theme='dark']{color-scheme:dark;--bg:#0e1522;--paper:#172233;--paper-2:#1c293b;--surface:#223047;--hover:#283956;--stroke:#314158;--text:#eaf1fa;--muted:#899ab1;--sub:#a7b5c7;--blue:#439cff;--blue-2:#1683f7;--shadow:0 18px 60px rgba(0,0,0,.16);--modal-shadow:0 28px 90px rgba(0,0,0,.5);--appwindow:#111a28}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button,select,input,textarea{outline-color:var(--blue)}a{color:inherit;text-decoration:none}.hidden{display:none!important}svg{width:20px;height:20px;flex-shrink:0}::selection{background:#1683f733}
.primary-btn,.secondary-btn,.danger-btn{min-height:46px;border:0;border-radius:14px;padding:0 19px;font-size:14px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-btn{background:var(--blue);color:#fff}.primary-btn:hover:not(:disabled){background:var(--blue-2);transform:translateY(-1px)}.secondary-btn{background:var(--surface);color:var(--text)}.secondary-btn:hover{background:var(--hover)}.danger-btn{background:#faeeee;color:#e34b4b}.danger-btn:hover{background:#f8dada}.text-btn{border:0;background:none;color:var(--sub);font-size:13px;padding:9px}.text-btn:hover{color:var(--blue)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border:0;border-radius:13px;background:transparent;color:var(--sub)}.icon-btn:hover,.subtle-btn:hover{background:var(--surface);color:var(--text)}.subtle-btn{background:var(--paper);border:1px solid var(--stroke)}
.field-label{display:block;font-size:13px;font-weight:700;margin-bottom:9px}.field-input,.field-select,.field-textarea{width:100%;min-height:48px;background:var(--paper);color:var(--text);border:1px solid var(--stroke);border-radius:14px;padding:12px 15px;outline:none;transition:border-color .15s,box-shadow .15s;font-size:14px}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1683f71b}.field-input::placeholder,.field-textarea::placeholder{color:var(--muted)}.field-help{font-size:12px;color:var(--muted);line-height:1.6;margin:8px 0 0}.form-group{margin:0 0 21px}.field-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238893a6' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:42px}.input-with-action{display:flex;align-items:center;gap:8px;position:relative}.input-with-action input{padding-right:52px}.input-with-action .icon-btn{position:absolute;right:5px;top:5px}.form-row{display:flex;align-items:center;gap:10px}.form-row>*{min-width:0;flex:1}
/* First-run setup */
.setup-screen{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(320px,.88fr) minmax(420px,1.12fr);background:var(--paper)}.setup-aside{background:radial-gradient(circle at 15% 25%,#287ff6 0,transparent 43%),radial-gradient(circle at 85% 72%,#0b326c 0,transparent 53%),linear-gradient(148deg,#145dcc,#081d45);color:#fff;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:56px clamp(28px,5vw,78px);position:relative;overflow:hidden}.setup-aside:before{content:'✦';position:absolute;right:-85px;top:23%;font-size:460px;line-height:1;color:#ffffff09;transform:rotate(-18deg)}.setup-logo{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:800;letter-spacing:-.9px;position:relative}.setup-logo span{font-size:37px;line-height:1}.setup-aside-bottom{position:relative}.setup-aside h2{font-size:clamp(32px,4vw,57px);letter-spacing:-2.8px;line-height:1.25;margin:0 0 20px;font-weight:760}.setup-aside p{max-width:340px;font-size:15px;line-height:1.8;color:#dbe9ff}.setup-aside-small{font-size:12px;color:#c0d7ff}.setup-content{display:flex;align-items:center;justify-content:center;padding:56px 48px;min-height:100vh;min-height:100dvh}.setup-card{width:min(100%,440px)}.step-indicator{font-size:12px;letter-spacing:1.7px;font-weight:800;color:var(--blue);margin-bottom:19px}.setup-card h1{font-size:33px;letter-spacing:-1.5px;line-height:1.28;margin:0 0 10px}.setup-card .description{font-size:14px;color:var(--sub);line-height:1.8;margin:0 0 37px}.setup-progress{display:flex;gap:5px;margin-bottom:32px}.setup-progress span{height:4px;border-radius:9px;background:var(--stroke);flex:1}.setup-progress span.active{background:var(--blue)}.setup-buttons{display:flex;gap:10px;margin-top:30px}.setup-buttons .primary-btn{flex:1}.setup-bottom{margin-top:28px;font-size:12px;color:var(--muted);line-height:1.7}.setup-illustration{width:47px;height:47px;display:grid;place-items:center;color:var(--blue);background:#1683f714;border-radius:15px;margin-bottom:21px}
/* Splash */
.splash{position:fixed;z-index:200;inset:0;background:linear-gradient(170deg,#fff,#f5faff 72%,#ecf4ff);display:grid;place-items:center;overflow:hidden}.splash-center{text-align:center;transform:translateY(-4%)}.splash-brand{display:flex;align-items:center;justify-content:center;gap:12px;font-weight:800;letter-spacing:-2.1px;font-size:clamp(52px,10vw,91px);animation:splashShrink .68s .18s both cubic-bezier(.2,.8,.2,1)}.splash-star{color:#1683f7;font-size:1em;font-weight:400;line-height:1}.splash-polaris{color:#17233b}.splash-subtitle{font-size:18px;color:#64738e;letter-spacing:.9px;font-weight:600;opacity:0;animation:subtitleIn .34s .71s forwards}.splash.leave{animation:splashLeave .35s forwards}@keyframes splashShrink{from{transform:scale(1.2);opacity:0}to{transform:scale(.55);opacity:1}}@keyframes subtitleIn{to{opacity:1;transform:translateY(-12px)}}@keyframes splashLeave{to{opacity:0;visibility:hidden}}
/* Home */
.shell{min-height:100vh;min-height:100dvh;position:relative}.home{min-height:100vh;min-height:100dvh;max-width:1260px;margin:0 auto;padding:31px clamp(22px,6vw,72px) 20px;display:flex;flex-direction:column}.home-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:11px}.brand-star{background:linear-gradient(145deg,#4ea5ff,#1478ee);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:35px;line-height:1}.brand-copy{display:flex;flex-direction:column;line-height:1.12}.brand-copy strong{font-size:20px;letter-spacing:-.65px}.brand-copy small{font-size:10px;letter-spacing:.8px;color:var(--sub);margin-top:4px}.home-header-right{display:flex;align-items:center;gap:18px}.header-date{font-size:13px;color:var(--muted);font-weight:600}.home-main{flex:1;width:100%;display:flex;flex-direction:column;padding-top:clamp(30px,6vh,72px)}.welcome-block{margin-bottom:33px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:1.6px;color:var(--blue)}.alive-dot{width:7px;height:7px;background:#1683f7;border-radius:50%;box-shadow:0 0 0 5px #1683f716}.welcome-block h1{font-size:clamp(37px,5vw,57px);font-weight:780;line-height:1.2;letter-spacing:-2.2px;margin:13px 0 10px}.welcome-block p{font-size:16px;color:var(--sub);margin:0;letter-spacing:-.35px}.app-drawer{background:var(--paper);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:29px;padding:25px clamp(18px,3vw,36px) 16px;flex:1;min-height:450px}.drawer-header{display:flex;align-items:baseline;gap:13px;margin-bottom:27px}.drawer-header h2{font-size:20px;letter-spacing:-.5px;margin:0}.app-count{font-size:12px;color:var(--muted)}.app-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(6,minmax(67px,1fr));gap:10px 18px;min-height:410px}.app-slot{display:flex;justify-content:center;align-items:flex-start;min-width:0;position:relative;transition:transform .15s}.app-tile{appearance:none;border:0;touch-action:none;user-select:none;display:flex;align-items:center;flex-direction:column;gap:9px;width:100%;max-width:120px;padding:5px 2px 10px;border-radius:17px;background:transparent;color:var(--text);transition:background .15s,transform .15s;outline-offset:2px}.app-tile:hover{background:var(--paper-2);transform:translateY(-2px)}.app-tile:focus-visible{outline:2px solid var(--blue)}.app-tile.dragging{opacity:.19}.app-icon{display:flex;justify-content:center;align-items:center;width:61px;height:61px;border-radius:17px;overflow:hidden;background:#e9f1fc;box-shadow:0 7px 20px #1e3f7b17;flex-shrink:0}.app-icon svg{width:30px;height:30px;color:#fff}.app-icon img{width:100%;height:100%;object-fit:cover}.app-icon.ai-icon{background:linear-gradient(138deg,#3299ff,#146de1)}.app-icon.settings-icon{background:linear-gradient(145deg,#8897af,#536781)}.app-name{font-size:12.5px;line-height:1.35;text-align:center;word-break:break-word;max-width:110px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.2px;font-weight:600}.page-controls{display:flex;gap:14px;align-items:center;justify-content:center;min-height:40px;margin-top:4px}.page-arrow{border:0;background:transparent;font-size:24px;color:var(--muted);width:30px;height:30px;border-radius:50%}.page-arrow:hover:not(:disabled){background:var(--surface);color:var(--text)}.page-dots{display:flex;align-items:center;gap:7px}.page-dots button{background:var(--stroke);border:0;width:7px;height:7px;border-radius:99px;padding:0;transition:.2s}.page-dots button.active{width:19px;background:var(--blue)}.home-tip{text-align:center;font-size:12px;color:var(--muted);margin:19px 0 24px}.home-footer{border-top:1px solid var(--stroke);display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--muted);padding-top:15px}.trash-zone{position:fixed;bottom:27px;left:50%;transform:translateX(-50%);z-index:80;background:#25354b;color:#fff;border:2px dashed #64748b;box-shadow:0 14px 40px #11182733;border-radius:18px;display:flex;gap:9px;align-items:center;justify-content:center;min-width:280px;padding:17px 24px;font-weight:700;font-size:14px;pointer-events:none}.trash-zone.active{background:#d94343;border-color:#ffc5c5;transform:translateX(-50%) scale(1.08)}.drag-ghost{pointer-events:none;position:fixed;z-index:90;display:flex;flex-direction:column;align-items:center;gap:8px;width:100px;transform:translate(-50%,-50%) scale(1.07);filter:drop-shadow(0 18px 15px #1f354833)}.drag-ghost .app-name{background:var(--paper);padding:4px 8px;border-radius:8px}
/* App window */
.app-window{position:fixed;inset:0;z-index:50;background:var(--appwindow);display:flex;flex-direction:column;animation:windowReveal .3s both}.app-window.closing{animation:windowHide .23s forwards}.window-topbar{min-height:65px;padding:9px clamp(14px,3vw,32px);display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--stroke);background:var(--paper);z-index:5}.window-close{width:41px;height:41px;display:grid;place-items:center;border:0;border-radius:13px;background:var(--surface);color:var(--text)}.window-close:hover{background:var(--hover)}.window-close svg{width:18px;height:18px}.window-identity{display:flex;gap:9px;align-items:center;font-weight:750;font-size:15px;letter-spacing:-.4px;overflow:hidden;white-space:nowrap}.tiny-icon{height:25px;width:25px;display:flex;align-items:center;justify-content:center;border-radius:7px;overflow:hidden;background:var(--surface);font-size:12px}.tiny-icon .app-icon{width:25px;height:25px;border-radius:7px;box-shadow:none}.tiny-icon .app-icon svg{width:16px;height:16px}.window-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.window-body{flex:1;min-height:0;position:relative;background:var(--appwindow)}.app-iframe{display:block;width:100%;height:100%;border:0;background:#fff}.window-loading,.window-error{position:absolute;inset:0;display:grid;place-content:center;gap:13px;text-align:center;padding:20px;background:var(--appwindow);z-index:3;color:var(--sub)}.window-loading strong{color:var(--text)}.window-error .primary-btn{margin:0 auto}.inline-spinner{height:28px;width:28px;border-radius:50%;border:3px solid var(--stroke);border-top-color:var(--blue);animation:spin .8s linear infinite;margin:0 auto}.launch-overlay{position:fixed;z-index:98;inset:0;pointer-events:none;background:var(--appwindow);display:flex;justify-content:center;align-items:center;flex-direction:column;gap:28px;opacity:1}.launch-icon .app-icon{width:120px;height:120px;border-radius:30px;box-shadow:0 24px 70px #174b951f}.launch-icon .app-icon svg{width:56px;height:56px}.launch-icon{animation:iconOpen .5s cubic-bezier(.15,.9,.25,1) both}.launch-spinner{height:23px;width:23px;border:2px solid var(--stroke);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}.launch-overlay.finished{animation:overlayFade .25s forwards}.launch-overlay.finished .launch-icon{animation:iconDismiss .25s forwards}@keyframes windowReveal{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes windowHide{to{opacity:0;transform:scale(.985)}}@keyframes iconOpen{from{opacity:.6;transform:scale(.34)}to{opacity:1;transform:scale(1)}}@keyframes iconDismiss{to{opacity:0;transform:scale(1.35)}}@keyframes overlayFade{to{opacity:0;visibility:hidden}}@keyframes spin{to{transform:rotate(360deg)}}
/* Chat */
.chat-layout{display:flex;width:100%;height:100%;background:var(--paper);position:relative}.chat-sidebar{width:278px;flex:0 0 278px;background:var(--paper-2);border-right:1px solid var(--stroke);padding:18px 12px;display:flex;flex-direction:column;z-index:4;min-height:0}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:7px 10px 22px;font-size:15px;font-weight:800}.sidebar-brand svg{color:var(--blue)}.new-chat-btn{display:flex;align-items:center;gap:11px;border:1px solid var(--stroke);border-radius:13px;padding:12px 15px;background:var(--paper);color:var(--text);font-weight:750;letter-spacing:-.3px}.new-chat-btn:hover{border-color:#1683f755;background:var(--hover)}.new-chat-btn svg{width:18px}.sidebar-label{font-size:11px;color:var(--muted);letter-spacing:.2px;font-weight:750;padding:25px 12px 9px}.chat-list{flex:1;overflow:auto;min-height:0}.chat-list-item{display:flex;width:100%;align-items:center;gap:7px;padding:11px 12px;text-align:left;border:0;border-radius:11px;background:transparent;color:var(--sub);font-size:13px;cursor:pointer;min-width:0}.chat-list-item>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item.active{background:var(--hover);color:var(--text);font-weight:700}.chat-list-item:hover{background:var(--hover)}.chat-list-item .chat-linked{color:var(--blue);width:13px;height:13px}.sidebar-bottom{border-top:1px solid var(--stroke);padding:15px 8px 0;color:var(--muted);font-size:11px;display:flex;gap:8px;align-items:center;justify-content:space-between}.sidebar-backdrop{display:none}.chat-main{display:flex;flex-direction:column;min-height:0;min-width:0;flex:1;background:var(--paper)}.chat-header{min-height:66px;border-bottom:1px solid var(--stroke);display:flex;align-items:center;padding:0 25px;gap:11px}.chat-title{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:14px}.chat-model{font-size:11px;color:var(--muted);padding:5px 10px;border-radius:9px;background:var(--surface);white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis}.chat-header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.chat-messages{flex:1;overflow-y:auto;min-height:0;padding:28px 24px 24px;scroll-behavior:smooth}.messages-inner{max-width:790px;margin:0 auto;display:flex;flex-direction:column;gap:27px;min-height:100%}.chat-empty{margin:auto;display:flex;align-items:center;flex-direction:column;text-align:center;max-width:470px;padding-bottom:10vh}.chat-empty-logo{width:65px;height:65px;border-radius:22px;background:linear-gradient(145deg,#2e9fff,#146de2);color:#fff;display:grid;place-items:center;font-size:42px;margin-bottom:25px;box-shadow:0 13px 35px #1683f730}.chat-empty h2{font-size:29px;letter-spacing:-1px;margin:0 0 11px}.chat-empty p{color:var(--sub);line-height:1.75;margin:0;font-size:14px}.prompt-chips{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin-top:27px}.prompt-chip{font-size:12px;border-radius:12px;background:var(--paper-2);color:var(--sub);border:1px solid var(--stroke);padding:11px 13px}.prompt-chip:hover{color:var(--blue);border-color:var(--blue)}.msg-row{display:flex;gap:13px;max-width:100%;align-items:flex-start}.msg-row.user{justify-content:flex-end}.msg-avatar{width:30px;height:30px;display:grid;place-items:center;background:linear-gradient(145deg,#489fff,#1577ea);color:#fff;font-size:20px;border-radius:10px;flex-shrink:0}.msg-content{font-size:14px;line-height:1.85;overflow-wrap:anywhere;max-width:min(100%,690px)}.msg-row.user .msg-content{background:var(--surface);padding:12px 17px;border-radius:18px 18px 5px 18px;max-width:80%;line-height:1.75}.msg-content p{margin:0 0 12px}.msg-content p:last-child{margin:0}.msg-content h3,.msg-content h4{margin:13px 0 8px;line-height:1.4}.msg-content ul,.msg-content ol{padding-left:23px}.msg-content li{margin:4px 0}.msg-content pre{overflow:auto;padding:15px;background:var(--surface);border:1px solid var(--stroke);border-radius:12px;font-size:12px;line-height:1.65}.msg-content code{font-size:.91em;background:var(--surface);padding:2px 4px;border-radius:4px}.msg-content pre code{background:none;padding:0}.msg-content a{color:var(--blue);text-decoration:underline}.msg-content strong{font-weight:750}.msg-status{color:var(--sub);font-size:13px;display:flex;align-items:center;gap:8px}.msg-status .inline-spinner{width:15px;height:15px;border-width:2px;margin:0}.msg-app-card{display:flex;align-items:center;gap:12px;border:1px solid var(--stroke);border-radius:16px;padding:12px 15px;margin-top:13px;max-width:320px;background:var(--paper-2)}.msg-app-card .app-icon{width:43px;height:43px;border-radius:12px}.msg-app-card .app-icon svg{width:23px;height:23px}.msg-app-card-info{flex:1;min-width:0}.msg-app-card-info strong{font-size:13px;display:block}.msg-app-card-info small{font-size:11px;color:var(--muted)}.msg-app-card button{border:0;background:var(--blue);color:#fff;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700}.composer-wrap{width:100%;padding:13px 22px 24px;background:linear-gradient(to top,var(--paper) 85%,transparent)}.composer-inner{max-width:800px;margin:auto}.composer{border:1px solid var(--stroke);background:var(--paper);box-shadow:0 4px 26px #1c42780c;border-radius:21px;padding:12px 14px 10px}.composer:focus-within{border-color:#1683f777;box-shadow:0 0 0 3px #1683f70c}.composer textarea{width:100%;height:55px;min-height:45px;max-height:180px;resize:none;border:0;outline:none;line-height:1.6;background:transparent;color:var(--text);padding:7px 4px;font-size:14px}.composer textarea::placeholder{color:var(--muted)}.composer-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.composer-left,.composer-right{display:flex;align-items:center;gap:7px}.composer-action{border:0;background:var(--surface);color:var(--sub);font-size:12px;font-weight:700;border-radius:10px;padding:9px 11px;display:flex;gap:6px;align-items:center}.composer-action:hover{background:var(--hover);color:var(--blue)}.composer-action svg{width:15px;height:15px}.send-btn{background:var(--blue);border:0;color:#fff;width:34px;height:34px;display:grid;place-items:center;border-radius:11px}.send-btn svg{width:18px;height:18px}.composer-disclaimer{text-align:center;color:var(--muted);font-size:10.5px;margin:11px 0 0}.mobile-only{display:none}
/* Settings */
.settings-scroll{height:100%;overflow:auto;background:var(--bg);padding:42px 24px 80px}.settings-container{max-width:800px;margin:0 auto}.settings-heading{font-size:31px;font-weight:800;letter-spacing:-1px;margin:0 0 9px}.settings-lead{font-size:14px;color:var(--sub);margin:0 0 33px}.settings-card{background:var(--paper);border:1px solid var(--stroke);border-radius:22px;padding:27px 29px;margin-bottom:20px;box-shadow:0 7px 34px #1c427808}.settings-section-title{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;margin:0 0 25px}.settings-section-title svg{color:var(--blue)}.settings-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}.settings-sub{font-size:12px;color:var(--sub);line-height:1.65;margin:-6px 0 17px}.settings-row{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-bottom:17px}.settings-row p{margin:5px 0 0;color:var(--muted);font-size:12px}.settings-row strong{font-size:14px}.danger-outline{background:transparent;color:var(--danger);border:1px solid #ed555548}.danger-outline:hover{background:#ed555512}.settings-divider{height:1px;background:var(--stroke);margin:21px 0}.settings-note{background:var(--surface);border-radius:13px;padding:14px 16px;color:var(--sub);font-size:12px;line-height:1.7}
/* Modal */
.modal-root:not(:empty){position:fixed;z-index:120;inset:0;background:rgba(12,24,44,.5);display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(9px)}.modal-card{background:var(--paper);color:var(--text);border-radius:25px;box-shadow:var(--modal-shadow);padding:28px;width:min(100%,470px);max-height:min(88dvh,800px);overflow:auto;animation:modalEnter .2s both}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.modal-head h3{font-size:23px;letter-spacing:-.8px;margin:0}.modal-description{font-size:13px;color:var(--sub);line-height:1.7;margin:0 0 25px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:26px}.modal-footer .primary-btn{min-width:115px}.icon-upload{display:flex;align-items:center;gap:17px;border:1px dashed #b6c5db;border-radius:17px;padding:17px;background:var(--paper-2);cursor:pointer}.icon-upload:hover{border-color:var(--blue);background:var(--hover)}.upload-preview{width:76px;height:76px;border-radius:21px;background:var(--surface);display:grid;place-items:center;overflow:hidden;color:var(--muted);flex-shrink:0}.upload-preview img{width:100%;height:100%;object-fit:cover}.icon-upload strong{display:block;font-size:13px;margin-bottom:6px}.icon-upload small{font-size:12px;color:var(--muted);line-height:1.55}.icon-upload input{display:none}.build-log{background:var(--surface);border-radius:14px;padding:14px;font-size:13px;color:var(--sub);display:flex;gap:12px;align-items:center;margin:16px 0}.restore-list{display:flex;flex-direction:column;gap:9px}.restore-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;background:var(--surface);border-radius:11px}.restore-item strong{font-size:13px}.restore-item small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.restore-item button{font-size:12px;border:0;border-radius:9px;background:var(--paper);color:var(--text);padding:8px 11px}.toast-stack{position:fixed;z-index:250;bottom:25px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:7px;align-items:center;pointer-events:none;max-width:92vw}.toast{background:#202c41;color:white;padding:12px 17px;border-radius:13px;box-shadow:0 14px 40px #08182e2c;font-size:13px;line-height:1.5;animation:toastIn .2s both;max-width:100%;text-align:center}.toast.error{background:#b73838}@keyframes modalEnter{from{opacity:0;transform:translateY(13px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.setup-screen{grid-template-columns:1fr}.setup-aside{min-height:180px;padding:26px 34px}.setup-aside-bottom{display:none}.setup-aside-small{display:none}.setup-content{min-height:calc(100dvh - 180px);padding:35px 24px}.home{padding:25px 24px 17px}.app-grid{gap:8px}.chat-sidebar{width:238px;flex-basis:238px}.settings-scroll{padding-top:30px}}
@media(max-width:767px){.home{padding:20px 17px 15px}.header-date{display:none}.home-main{padding-top:37px}.welcome-block{margin-bottom:25px}.welcome-block h1{font-size:39px}.welcome-block p{font-size:14px}.app-drawer{min-height:450px;padding:23px 12px 12px;border-radius:25px}.drawer-header{padding:0 10px;margin-bottom:24px}.app-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,minmax(84px,1fr));min-height:420px;gap:8px 4px}.app-tile{padding:4px 1px;max-width:112px}.app-icon{width:62px;height:62px;border-radius:18px}.app-name{font-size:12px}.home-tip{line-height:1.5;max-width:290px;margin:16px auto 20px}.home-footer{font-size:9px}.chat-sidebar{position:absolute;inset:0 auto 0 0;transform:translateX(-104%);transition:transform .23s ease;width:min(82vw,290px);box-shadow:10px 0 60px #0818271a}.chat-sidebar.open{transform:translateX(0)}.sidebar-backdrop{display:block;position:absolute;inset:0;background:#0a1c354a;z-index:3}.mobile-only{display:inline-flex}.chat-header{min-height:60px;padding:0 13px}.chat-model{max-width:100px}.chat-messages{padding:21px 17px}.messages-inner{gap:22px}.composer-wrap{padding:10px 12px 16px}.chat-empty h2{font-size:24px}.chat-empty{padding:0 8px 4vh}.chat-empty-logo{width:58px;height:58px}.prompt-chips{gap:7px}.prompt-chip{padding:9px;font-size:11px}.window-topbar{min-height:59px;gap:11px;padding:8px 12px}.window-identity{font-size:13px}.window-actions{gap:1px}.window-actions .icon-btn{width:34px;height:34px}.settings-scroll{padding:24px 14px 50px}.settings-card{padding:21px 18px}.settings-heading{font-size:28px}.settings-row{align-items:flex-start}.settings-row .secondary-btn{font-size:12px;padding:0 10px}.modal-card{padding:22px}.app-count{font-size:11px}}
@media(max-width:360px){.app-icon{width:55px;height:55px}.welcome-block h1{font-size:33px}.brand-copy strong{font-size:18px}.settings-row{flex-wrap:wrap}.composer-action{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
