:root{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#17152a;background:#f5f4fb;font-synthesis:none;
  --surface:#ffffff;--surface-2:#f5f4fb;--surface-3:#efedf8;--surface-raised:rgba(255,255,255,.92);
  --line:#e4e0ee;--line-strong:#cec7dc;--text:#17152a;--text-soft:#3f3a52;--muted:#746e84;
  --accent:#6d45e8;--accent-dark:#5030bd;--accent-soft:#eee9ff;--accent-faint:#f7f4ff;
  --danger:#b42335;--danger-soft:#fff0f2;--success:#147a51;--success-soft:#eaf8f1;--warning:#956400;--warning-soft:#fff7df;
  --shadow-sm:0 2px 10px rgba(37,28,68,.055);--shadow-md:0 12px 34px rgba(39,28,75,.11);--shadow-lg:0 28px 80px rgba(35,24,69,.2);
  --radius-sm:12px;--radius-md:18px;--radius-lg:26px;--safe-bottom:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box}html{background:var(--surface-2);-webkit-text-size-adjust:100%}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(circle at 100% 0,#eee9ff 0,transparent 34rem),var(--surface-2);color:var(--text);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}::selection{background:#dcd1ff;color:#241755}
.boot-screen{min-height:100vh;min-height:100dvh;display:grid;place-content:center;text-align:center;gap:14px;color:var(--muted);padding:24px}.boot-screen h1{color:var(--text);margin:4px 0 0;font-size:24px}.brand-mark{width:60px;height:60px;border-radius:20px;display:grid;place-items:center;box-shadow:0 14px 34px rgba(91,61,208,.28);margin:auto;position:relative;overflow:hidden;flex:none}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.app-shell{min-height:100vh;min-height:100dvh;padding-bottom:calc(92px + var(--safe-bottom))}.topbar{position:sticky;top:0;z-index:20;background:rgba(245,244,251,.84);backdrop-filter:blur(24px) saturate(1.35);border-bottom:1px solid rgba(220,215,232,.78);padding:calc(11px + env(safe-area-inset-top,0px)) 16px 11px}.topbar-row{max-width:960px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-inline{display:flex;align-items:center;gap:11px;min-width:0}.brand-inline .brand-mark{width:44px;height:44px;border-radius:15px;margin:0;font-size:14px;flex:none}.brand-inline h1{font-size:19px;line-height:1.05;margin:0;letter-spacing:-.35px}.brand-inline small{display:block;color:var(--muted);margin-top:4px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pill{border:1px solid rgba(211,205,224,.95);background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750;color:var(--text-soft);white-space:nowrap}.status-pill:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px;box-shadow:0 0 0 3px rgba(31,157,101,.1);background:#1f9d65}.status-pill.offline:before{background:#d79520;box-shadow:0 0 0 3px rgba(215,149,32,.12)}
.content{max-width:960px;margin:auto;padding:18px 15px 24px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:18px}.search{flex:1;position:relative}.search input{width:100%;padding:14px 15px 14px 45px;background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:16px;min-height:50px;box-shadow:var(--shadow-sm);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.search input::placeholder{color:#9a94a8}.search:before{content:"";position:absolute;left:17px;top:16px;width:15px;height:15px;border:2px solid #81798f;border-radius:50%;z-index:1}.search:after{content:"";position:absolute;left:31px;top:30px;width:7px;height:2px;background:#81798f;transform:rotate(45deg);border-radius:2px}.search input:focus{background:#fff;border-color:#9c86e4;box-shadow:0 0 0 4px rgba(109,69,232,.1),var(--shadow-sm)}
.button{border:1px solid var(--line);background:rgba(255,255,255,.92);color:var(--text-soft);border-radius:14px;min-height:48px;padding:10px 16px;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-sm);transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.button:hover{border-color:var(--line-strong);background:#fff;box-shadow:0 5px 16px rgba(40,30,67,.08)}.button:active{transform:translateY(1px) scale(.985)}.button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(109,69,232,.22);outline-offset:2px}.button.primary{background:linear-gradient(145deg,#7650ec,#6039d4);border-color:#6039d4;color:#fff;box-shadow:0 8px 20px rgba(96,57,212,.23)}.button.primary:hover{background:linear-gradient(145deg,#6b45de,#4f2db9);border-color:#4f2db9;box-shadow:0 10px 24px rgba(96,57,212,.28)}.button.danger{color:var(--danger);background:var(--danger-soft);border-color:#f2cfd5}.button.ghost{border-color:transparent;background:transparent;box-shadow:none}.button.small{min-height:42px;padding:8px 13px;font-size:13px}.button.full{width:100%}.button:disabled{cursor:not-allowed;opacity:.56;transform:none;box-shadow:none}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:20px 1px 13px}.section-heading h2{font-size:19px;margin:0;letter-spacing:-.3px}.muted{color:var(--muted)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.load-more{display:flex;justify-content:center;padding:20px 0 5px}.fine-print{font-size:12px;color:var(--muted);line-height:1.55}
.category-home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:2px 1px 18px}.category-home-head h2{margin:0 0 5px;font-size:22px;letter-spacing:-.45px}.category-home-head p{margin:0}.category-grid{display:grid;gap:13px}.category-card{width:100%;display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#fefeff);border-radius:21px;padding:17px;color:var(--text);box-shadow:var(--shadow-sm);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.category-card:hover{border-color:#d4caef;box-shadow:0 12px 28px rgba(43,30,80,.09);transform:translateY(-1px)}.category-card:active{transform:translateY(1px) scale(.992)}.category-card:focus-visible{outline:3px solid rgba(109,69,232,.22);outline-offset:2px}.category-card-icon{width:50px;height:50px;display:grid;place-items:center;flex:none;border-radius:17px;background:linear-gradient(145deg,#eee9ff,#e3dbff);color:var(--accent-dark);box-shadow:inset 0 0 0 1px rgba(109,69,232,.08)}.category-card-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.category-card-copy strong{font-size:16px;overflow-wrap:anywhere}.category-card-description{font-size:12.5px;line-height:1.4;color:var(--muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.category-card-count{font-size:12px;color:var(--accent-dark);font-weight:800}.category-card-arrow{font-size:29px;line-height:1;color:#9188a2;flex:none}.category-view-head{display:flex;align-items:center;gap:13px;margin:1px 0 13px}.category-view-title{min-width:0}.category-view-title h2{font-size:21px;line-height:1.2;margin:0 0 2px;overflow-wrap:anywhere}.category-back{flex:none}
.prompt-grid{display:grid;gap:13px}.prompt-card{background:linear-gradient(180deg,#fff 0%,#fefeff 100%);border:1px solid var(--line);border-radius:21px;padding:17px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.prompt-card:before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;background:linear-gradient(#8b6bf0,#5d37d0);border-radius:0 4px 4px 0;opacity:.7}.prompt-card:hover{border-color:#d6cdec;box-shadow:0 12px 28px rgba(43,30,80,.09);transform:translateY(-1px)}.prompt-card-head{display:flex;justify-content:space-between;gap:12px}.prompt-card h3{font-size:16px;line-height:1.35;margin:0 0 8px;overflow-wrap:anywhere;letter-spacing:-.1px}.prompt-preview{white-space:pre-wrap;color:#625d70;line-height:1.5;max-height:4.5em;overflow:hidden;margin:0;font-size:13.5px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.chip{border-radius:999px;background:var(--accent-soft);color:#5634c2;border:1px solid #dfd5ff;padding:5px 9px;font-size:10.5px;font-weight:800;letter-spacing:.08px}.chip.neutral{background:#f2f1f6;color:#6b6577;border-color:#e7e4ed}.card-actions{display:flex;align-items:center;gap:8px;margin-top:15px;padding-top:14px;border-top:1px solid #efedf3}.card-actions .button:first-child{flex:1}.star{border:0;background:var(--accent-faint);display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:14px;color:#9d96ab;transition:transform .16s ease,background .16s ease}.star:hover{background:var(--accent-soft)}.star:active{transform:scale(.92)}.star.active{color:#d99a00;background:#fff8df}.empty{background:rgba(255,255,255,.72);border:1px dashed #c9c2d8;border-radius:22px;padding:38px 22px;text-align:center;color:var(--muted);box-shadow:inset 0 0 0 6px rgba(255,255,255,.36)}
.bottom-nav{position:fixed;z-index:30;left:10px;right:10px;bottom:calc(9px + var(--safe-bottom));background:rgba(255,255,255,.91);backdrop-filter:blur(24px) saturate(1.4);border:1px solid rgba(216,210,228,.92);box-shadow:0 14px 42px rgba(37,25,73,.17);padding:6px;display:grid;grid-template-columns:repeat(6,1fr);border-radius:22px}.nav-button{border:0;background:transparent;color:#7b7489;min-height:58px;border-radius:16px;padding:7px 2px 5px;font-size:10.5px;font-weight:780;transition:color .16s ease,background .16s ease,transform .16s ease}.nav-button .ui-icon{display:block;margin:0 auto 4px}.nav-button .nav-label{display:block;line-height:14px}.ui-icon{display:inline-block;flex:none;vertical-align:-.18em;overflow:visible}.nav-button:active{transform:scale(.96)}.nav-button.active{color:var(--accent-dark);background:linear-gradient(180deg,#f1edff,#eae4ff);box-shadow:inset 0 0 0 1px rgba(108,68,228,.09)}
.modal-backdrop{position:fixed;z-index:60;inset:0;background:rgba(20,15,34,.58);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;padding-top:env(safe-area-inset-top,0px)}.modal{background:var(--surface);width:100%;max-width:760px;max-height:94vh;max-height:94dvh;overflow:auto;border-radius:28px 28px 0 0;padding:19px 18px calc(20px + var(--safe-bottom));box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.7)}.modal:before{content:"";display:block;width:42px;height:5px;border-radius:5px;background:#d8d3e1;margin:-7px auto 10px}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;position:sticky;top:-19px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);padding:13px 0 11px;z-index:2;border-bottom:1px solid #f0edf4}.modal-head h2{margin:0;font-size:20px;letter-spacing:-.35px}.close-box{width:44px;height:44px;border:0;background:#f3f1f7;border-radius:14px;font-size:24px;color:#686174;display:grid;place-items:center}.close-box:hover{background:#eae6f0}.form-grid{display:grid;gap:15px;padding-top:3px}label{display:grid;gap:8px;font-size:12px;font-weight:800;color:#484256;letter-spacing:.08px}input,textarea,select{width:100%;border:1px solid var(--line);background:#fcfbfe;color:var(--text);border-radius:14px;padding:12px 13px;min-height:48px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input:focus,textarea:focus,select:focus{background:#fff;border-color:#9f8ae3;box-shadow:0 0 0 4px rgba(109,69,232,.08)}textarea{resize:vertical;line-height:1.5}.prompt-editor-text{min-height:270px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px}.form-actions{display:flex;gap:10px;position:sticky;bottom:-20px;background:linear-gradient(180deg,rgba(255,255,255,.82),#fff 28%);padding:18px 0 3px;margin-top:3px}.form-actions .primary{flex:1}
.panel{background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:21px;padding:18px;margin-bottom:13px;box-shadow:var(--shadow-sm)}.panel h2,.panel h3{margin-top:0;letter-spacing:-.25px}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.row .grow{flex:1}.row.wrap{flex-wrap:wrap}.category-row,.queue-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #efedf3}.category-row:last-child,.queue-row:last-child{border-bottom:0}.category-row .grow,.queue-row .grow{flex:1}.queue-row{align-items:flex-start;flex-wrap:wrap}.queue-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
.notice{border-radius:15px;padding:12px 14px;margin:11px 0;font-size:13px;line-height:1.45;border:1px solid}.notice.error{background:var(--danger-soft);color:#941f31;border-color:#f0c5cd}.notice.success{background:var(--success-soft);color:#146b49;border-color:#bce4d0}.notice.warning{background:var(--warning-soft);color:#815700;border-color:#f4dda2}.notice.compact{margin:7px 0 0;padding:8px 10px}.toast{position:fixed;z-index:100;left:50%;bottom:calc(99px + var(--safe-bottom));transform:translateX(-50%);background:#211b31;color:#fff;padding:12px 17px;border-radius:999px;box-shadow:0 12px 34px rgba(25,19,37,.3);font-size:13px;max-width:90%;text-align:center}
.install-overlay{position:fixed;z-index:90;inset:0;background:radial-gradient(circle at 50% 0,#ddd1ff,transparent 42%),linear-gradient(160deg,#f9f8fd,#efecf9);display:grid;place-items:center;padding:22px}.install-card{width:min(100%,430px);background:rgba(255,255,255,.93);backdrop-filter:blur(18px);border:1px solid rgba(218,210,235,.95);border-radius:30px;padding:30px 23px 23px;text-align:center;box-shadow:var(--shadow-lg);position:relative}.install-card .close-box{position:absolute;right:9px;top:9px}.install-card h2{margin:19px 0 8px;font-size:25px;letter-spacing:-.55px}.install-card p{line-height:1.55}.install-actions{display:grid;gap:9px;margin-top:21px}.manual-steps{text-align:left;background:var(--accent-faint);border:1px solid #e6deff;border-radius:16px;padding:13px 15px;line-height:1.75}
.login-screen{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% -10%,#d9ceff,transparent 38%),linear-gradient(160deg,#faf9fd,#efedf8)}.login-card{width:min(100%,410px);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border:1px solid rgba(219,213,229,.95);border-radius:29px;padding:28px 24px;box-shadow:var(--shadow-lg)}.login-card h1{text-align:center;margin:18px 0 7px;font-size:27px;letter-spacing:-.7px}.login-card .brand-mark{width:68px;height:68px;border-radius:22px}.import-preview{display:grid;gap:11px;margin-top:14px}.import-item{background:#faf9fc;border:1px solid var(--line);border-radius:17px;padding:13px}.import-item textarea{min-height:120px}.installer-body{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 50% 0,#ddd2ff,transparent 42%),linear-gradient(160deg,#faf9fd,#efedf8)}.installer-card{width:min(100%,520px);background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:29px;padding:27px;box-shadow:var(--shadow-lg)}.installer-card h1{text-align:center;margin-bottom:5px;letter-spacing:-.6px}.check-list{margin:18px 0}.check-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.pass{color:var(--success)}.fail{color:var(--danger)}.diagnostics-output{white-space:pre-wrap;overflow-wrap:anywhere;background:#f8f7fb;border:1px solid var(--line);border-radius:14px;padding:11px;max-height:360px;overflow:auto}
@media(min-width:700px){.content{padding:24px 20px 32px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.prompt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.modal-backdrop{align-items:center;padding:24px}.modal{border-radius:29px;max-height:90vh;max-height:90dvh}.modal:before{display:none}.bottom-nav{left:50%;right:auto;width:640px;transform:translateX(-50%);bottom:14px}.prompt-card{padding:19px}}
@media(max-width:520px){.category-home-head{display:block}.category-home-head .button{width:100%;margin-top:13px}.category-view-head{align-items:flex-start}.toolbar{align-items:stretch}.toolbar>.button{padding-inline:14px}.queue-row{display:block}.queue-actions{justify-content:flex-start;margin-top:10px}.queue-actions .button{flex:1 1 auto}.status-pill{max-width:43%;overflow:hidden;text-overflow:ellipsis}.card-actions{flex-wrap:wrap}.card-actions .button:first-child{flex-basis:100%}.prompt-card{padding:16px}.content{padding-inline:13px}.topbar{padding-inline:13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.migration-panel{width:min(100%,620px);margin:0 auto;text-align:left}.migration-panel h1{text-align:center}.migration-panel .form-actions{position:static;flex-wrap:wrap;background:transparent;padding-bottom:0}.scope-code{display:block;max-width:100%;overflow-wrap:anywhere;background:var(--surface-3);border:1px solid var(--line);border-radius:12px;padding:10px 12px;color:var(--text);text-align:center}
