:root{--bg: #f8fafc;--card: #ffffff;--border: #e2e8f0;--muted: #64748b;--text: #0f172a;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eef2ff;--tag-bg: #f1f5f9;--success: #166534;--success-bg: #dcfce7;--warn: #b45309;--warn-bg: #fef3c7;--danger: #991b1b;--danger-bg: #fee2e2}@media(prefers-color-scheme:dark){:root{--bg: #0b1120;--card: #151e31;--border: #2b3852;--muted: #94a3b8;--text: #e2e8f0;--accent: #818cf8;--accent-hover: #a5b4fc;--accent-soft: #27275e;--tag-bg: #1e293b;--success: #4ade80;--success-bg: #14351f;--warn: #fbbf24;--warn-bg: #3a2b10;--danger: #f87171;--danger-bg: #3d1515}}*{box-sizing:border-box}::selection{background:var(--accent);color:#fff}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--tag-bg);border-top-color:var(--accent);animation:spin .8s linear infinite;margin:0 auto}.spinner-inline{display:inline-block;width:14px;height:14px;border-width:2px;vertical-align:-2px;margin:0 4px 0 0}@keyframes spin{to{transform:rotate(360deg)}}.searching{text-align:center;padding:40px 20px;color:var(--muted);animation:fadeIn .3s ease}.searching p{margin-top:16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px 20px;margin-bottom:16px;max-height:1400px;overflow:hidden;animation:cardIn .35s ease both;transition:box-shadow .2s,transform .2s,border-color .2s,opacity .45s ease,max-height .45s ease,margin-bottom .45s ease,padding-top .45s ease,padding-bottom .45s ease}.card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 6px 24px -12px #4f46e559}.card.leaving{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translate(24px) scale(.98);border-width:0;pointer-events:none}h1,h2,h3{line-height:1.2}a{color:var(--accent)}.container{max-width:1080px;margin:0 auto;padding:0 24px}.container-narrow{max-width:860px;margin:0 auto;padding:0 24px}.btn{display:inline-block;padding:11px 20px;font-size:15px;font-weight:600;border:1px solid transparent;border-radius:8px;cursor:pointer;text-decoration:none;text-align:center;font-family:inherit;transition:background .15s,border-color .15s,transform .1s,box-shadow .15s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 2px 10px -4px color-mix(in srgb,var(--accent) 70%,transparent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:6px 12px;font-size:13px;font-weight:500}.btn:disabled{opacity:.5;cursor:default}.btn-lg{padding:14px 28px;font-size:16px}.field{margin-bottom:16px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--muted)}.field input,.field textarea,.field select{width:100%;padding:11px 14px;font-size:15px;font-family:inherit;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text)}.field input:focus,.field textarea:focus{outline:2px solid var(--accent);border-color:transparent}.alert-error{background:var(--danger-bg);color:var(--danger);padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.alert-ok{background:var(--success-bg);color:var(--success);padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.site-header{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.site-header nav{display:flex;gap:22px;align-items:center}.site-header nav a{color:var(--text);text-decoration:none;font-size:14px;font-weight:500}.site-header nav a:hover{color:var(--accent)}.brand{font-size:22px;font-weight:800;color:var(--text);text-decoration:none;letter-spacing:-.5px}.brand span{color:var(--accent)}.hero{padding:90px 0 70px;text-align:center;position:relative}.hero:before{content:"";position:absolute;inset:-40px 0 auto;height:420px;background:radial-gradient(ellipse 60% 55% at 50% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%);pointer-events:none}.hero>.container{position:relative}.hero h1{font-size:46px;margin:0 0 18px;letter-spacing:-1.5px}.hero h1 em{font-style:normal;color:var(--accent)}.hero .sub{font-size:19px;color:var(--muted);max-width:640px;margin:0 auto 30px}.hero .cta-row{display:flex;gap:12px;justify-content:center;margin-bottom:22px}.hero .stat-line{color:var(--muted);font-size:14px}.hero .stat-line strong{color:var(--text)}.section{padding:55px 0}.section h2{font-size:30px;text-align:center;margin:0 0 40px;letter-spacing:-.5px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.step{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:24px}.step .num{width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:14px}.step h3{margin:0 0 8px;font-size:17px}.step p{margin:0;color:var(--muted);font-size:14px}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.feature{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:24px}.feature .icon{font-size:26px;margin-bottom:12px}.feature h3{margin:0 0 8px;font-size:16px}.feature p{margin:0;color:var(--muted);font-size:14px}.cta-banner{background:var(--accent);color:#fff;border-radius:18px;padding:46px 30px;text-align:center;margin:30px 0 60px}.cta-banner h2{margin:0 0 10px;font-size:28px}.cta-banner p{margin:0 0 24px;opacity:.9}.cta-banner .btn{background:#fff;color:var(--accent)}.site-footer{border-top:1px solid var(--border);padding:28px 0 40px;color:var(--muted);font-size:13px}.site-footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.site-footer a{color:var(--muted);text-decoration:none;margin-left:18px}.site-footer a:hover{color:var(--accent)}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;align-items:stretch}.plan{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:28px;display:flex;flex-direction:column}.plan{position:relative;transition:transform .2s,box-shadow .2s}.plan:hover{transform:translateY(-3px);box-shadow:0 12px 30px -18px #0006}.plan.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.plan .badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;font-size:12px;font-weight:600;padding:3px 12px;border-radius:999px;white-space:nowrap}.plan.coming{opacity:.6}.plan.coming:hover{transform:none;box-shadow:none}.plan.coming.featured{box-shadow:0 0 0 1px var(--accent)}.plan.coming .badge{background:var(--warn)}.plan.coming ul,.plan.coming .price,.plan.coming .desc{filter:grayscale(.4)}.plan h3{margin:0 0 4px;font-size:18px}.plan .price{font-size:34px;font-weight:800;margin:10px 0 2px}.plan .price small{font-size:14px;font-weight:500;color:var(--muted)}.plan .desc{color:var(--muted);font-size:14px;margin-bottom:18px}.plan ul{list-style:none;padding:0;margin:0 0 24px;flex:1}.plan li{padding:6px 0;font-size:14px}.plan li:before{content:"\2713  ";color:var(--accent);font-weight:700}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:34px}.auth-card .brand{display:block;text-align:center;margin-bottom:26px}.auth-card h1{font-size:22px;margin:0 0 22px;text-align:center}.auth-switch{text-align:center;font-size:14px;color:var(--muted);margin-top:18px}.dash{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--border);padding:22px 16px;display:flex;flex-direction:column;gap:4px;background:var(--card);position:sticky;top:0;height:100vh}.sidebar .brand{margin-bottom:22px;padding:0 10px}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{padding:9px 12px;border-radius:8px;text-decoration:none;color:var(--text);font-size:14px;font-weight:500;transition:background .15s}.sidebar nav a:hover{background:var(--tag-bg)}.sidebar nav a.active{background:var(--accent-soft);color:var(--accent)}.sidebar .history{flex:1;overflow-y:auto;margin-top:16px;min-height:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.history-head{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);padding:0 12px 6px;font-weight:600}.history-item{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;transition:background .15s,color .15s}.history-item:hover{background:var(--tag-bg);color:var(--text)}.history-item .history-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item .count{flex-shrink:0;font-size:11px;background:var(--tag-bg);border-radius:999px;padding:1px 7px}.history-item .history-spinner{flex-shrink:0;margin:0}.sidebar .corpus-stats{font-size:12px;padding:10px 12px 0;border-top:1px solid var(--border);margin:8px 0 0}.sidebar .user-block{border-top:1px solid var(--border);padding-top:12px;margin-top:8px;font-size:13px}.sidebar .user-block .email{color:var(--muted);overflow:hidden;text-overflow:ellipsis;margin-bottom:8px}.dash-content{padding:28px 34px;max-width:1000px}.dash-content:has(.kanban){max-width:none}.code-input{text-align:center;font-size:26px!important;letter-spacing:10px;font-variant-numeric:tabular-nums}.tag{display:inline-block;font-size:13px;padding:3px 10px;border-radius:999px;background:var(--tag-bg);border:1px solid var(--border)}.tag.required{background:var(--accent-soft);border-color:var(--accent)}.muted{color:var(--muted)}.kanban{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:stretch}.kanban-col{background:var(--tag-bg);border:1px dashed transparent;border-radius:14px;padding:10px;min-height:62vh;transition:border-color .15s,background .15s}.kanban-col.drag-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--tag-bg))}.kanban-col h3{font-size:12px;margin:4px 6px 10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.kanban-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:8px;font-size:13px;cursor:grab;transition:box-shadow .15s,transform .15s,opacity .15s}.kanban-card:hover{box-shadow:0 4px 14px -8px #0006;border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{opacity:.4;transform:scale(.97)}.kanban-card .who{display:flex;align-items:center;gap:8px;margin-bottom:6px}.kanban-card img{width:26px;height:26px;border-radius:50%}.kanban-card a{color:var(--text);text-decoration:none;font-weight:600}.kanban-card a:hover{color:var(--accent)}@media(max-width:1100px){.kanban{grid-template-columns:repeat(3,1fr)}.kanban-col{min-height:30vh}}@media(max-width:900px){.dash{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;border-right:none;border-bottom:1px solid var(--border);position:static;height:auto}.sidebar nav{flex-direction:row}.sidebar .history,.sidebar .corpus-stats{display:none}.sidebar .user-block{border:none;padding:0;margin:0 0 0 auto}.hero h1{font-size:32px}.kanban{grid-template-columns:repeat(2,1fr)}}
