:root{--bg:#0f1419;--bg-elevated:#1a222c;--bg-soft:#243040;--text:#e8eef5;--muted:#9aabbc;--accent:#3db8a0;--accent-strong:#2a9d85;--danger:#e36a6a;--border:#314050;--shadow:0 18px 50px #00000059;--radius:14px;--font:"Segoe UI", "IBM Plex Sans", "Helvetica Neue", sans-serif;--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{background:radial-gradient(1200px 600px at 10% -10%, #1d3a36 0%, transparent 55%), radial-gradient(900px 500px at 100% 0%, #24324a 0%, transparent 50%), var(--bg);min-height:100%;color:var(--text);font-family:var(--font);margin:0;padding:0}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{max-width:720px;padding:16px 16px calc(24px + var(--safe-bottom));margin:0 auto}.app-shell.wide{max-width:1100px}.nav{z-index:20;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex;position:relative}.brand{letter-spacing:.02em;font-size:1.1rem;font-weight:700}.user-menu{position:relative}.user-menu-trigger{background:var(--bg-soft);color:var(--text);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:inline-flex}.user-menu-trigger.open{border-color:var(--accent)}.user-menu-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.user-menu-caret{color:var(--muted);font-size:.75rem}.user-menu-panel{background:var(--bg-elevated);border:1px solid var(--border);width:min(280px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;gap:4px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.user-menu-section{gap:4px;padding:6px 0;display:grid}.user-menu-section+.user-menu-section{border-top:1px solid var(--border)}.user-menu-panel button,.user-menu-panel a{text-align:left;width:100%;color:var(--text);background:0 0;border:0;border-radius:10px;padding:10px 12px;font-weight:550;display:block}.user-menu-panel a.active,.user-menu-panel button:hover,.user-menu-panel a:hover{background:var(--bg-soft)}.user-menu-panel .danger-text{color:var(--danger)}.user-menu-panel label{padding:4px 8px 8px}.toast-banner{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 14%, var(--bg-elevated));box-shadow:var(--shadow);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.toast-banner p{color:var(--text);margin:0;font-size:.92rem;line-height:1.4}.toast-banner button{flex:none;padding:8px 12px}.toast-banner.success{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 18%, var(--bg-elevated))}.modal-root{z-index:80;place-items:end center;padding:12px;display:grid;position:fixed;inset:0}.modal-backdrop{background:#04080c8c;border:0;border-radius:0;padding:0;position:absolute;inset:0}.modal-sheet{z-index:1;background:var(--bg-elevated);border:1px solid var(--border);width:min(520px,100%);max-height:min(88vh,720px);box-shadow:var(--shadow);border-radius:18px 18px 14px 14px;gap:14px;padding:18px;display:grid;position:relative;overflow:auto}@media (width>=720px){.modal-root{place-items:center}.modal-sheet{border-radius:16px}}.panel{background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.stack{gap:14px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}label{color:var(--muted);gap:6px;font-size:.92rem;display:grid}input,select,textarea{border:1px solid var(--border);background:var(--bg-soft);width:100%;color:var(--text);border-radius:10px;padding:10px 12px}textarea{resize:vertical;min-height:120px}button{background:var(--accent);color:#06221c;cursor:pointer;border:0;border-radius:999px;padding:10px 16px;font-weight:650}button.secondary{color:var(--text);border:1px solid var(--border);background:0 0}button.danger{background:var(--danger);color:#fff}button:disabled{opacity:.55;cursor:not-allowed}.muted{color:var(--muted)}.error{color:var(--danger)}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 8px}.badge{background:var(--bg-soft);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:.8rem;display:inline-block}.grid-2,.capture-page{gap:16px;display:grid}.segmented{background:var(--bg-soft);border:1px solid var(--border);border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:10px 12px;font-weight:600}.segmented button.active{background:color-mix(in srgb, var(--accent) 85%, #fff);color:#06221c}.mic-stage{place-items:center;gap:14px;padding:12px 0 4px;display:grid}.mic-button{cursor:pointer;color:#fff;letter-spacing:.02em;isolation:isolate;background:0 0;border:0;border-radius:50%;width:min(46vw,168px);height:min(46vw,168px);padding:0;font-size:.95rem;font-weight:700;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000059,inset 0 0 0 1px #ffffff1f}.mic-button:disabled{opacity:.5}.mic-fluid{z-index:-1;filter:saturate(1.15)blur(.2px);background:radial-gradient(circle at 20% 30%,#ff6bcb 0%,#0000 42%),radial-gradient(circle at 80% 25%,#6b8cff 0%,#0000 45%),radial-gradient(circle at 30% 80%,#45e0a8 0%,#0000 42%),radial-gradient(circle at 75% 75%,#ffc857 0%,#0000 40%),linear-gradient(135deg,#3a1c71,#d76d77 50%,#ffaf7b);animation:8s ease-in-out infinite fluid-shift;position:absolute;inset:-35%}.mic-button.listening .mic-fluid{filter:saturate(1.35)blur(.2px)brightness(1.08);animation-duration:3.2s}.mic-button.listening{box-shadow:0 0 0 10px #ff6bcb1f,0 0 0 22px #6b8cff14,0 18px 44px #0006}.mic-label{z-index:1;text-shadow:0 1px 8px #00000059;pointer-events:none;position:relative}@keyframes fluid-shift{0%{transform:translate(-4%,-2%)rotate(0)scale(1)}33%{transform:translate(5%,3%)rotate(40deg)scale(1.08)}66%{transform:translate(-3%,5%)rotate(80deg)scale(1.04)}to{transform:translate(-4%,-2%)rotate(120deg)scale(1)}}@media (prefers-reduced-motion:reduce){.mic-fluid{animation:none}}.send-btn{border-radius:14px;width:100%;min-height:48px;font-size:1rem}.transcript-box{min-height:110px}.collapse{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);overflow:hidden}.collapse-trigger{width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.collapse-trigger .chevron{color:var(--muted);transition:transform .18s}.collapse.open .collapse-trigger .chevron{transform:rotate(180deg)}.collapse-body{border-top:1px solid var(--border);padding:0 14px 14px;display:none}.collapse.open .collapse-body{gap:10px;padding-top:12px;display:grid}.job-pre{white-space:pre-wrap;background:var(--bg-soft);border-radius:10px;max-height:240px;margin:0;padding:12px;font-size:.82rem;overflow:auto}.meta-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width>=900px){.app-shell{padding:24px}.grid-2{grid-template-columns:1.2fr .8fr}.mic-button{width:180px;height:180px}}.home-shell{width:100%;max-width:720px;overflow:hidden}.pane-dots{justify-content:center;gap:8px;margin-bottom:4px;display:flex}.pane-dots .dot{background:var(--border);border:0;border-radius:50%;width:8px;height:8px;min-height:0;padding:0}.pane-dots .dot.active{background:var(--accent);transform:scale(1.15)}.swipe-hint{text-align:center;margin:0 0 10px;font-size:.82rem}.home-scroller{--pane-width:100%;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;width:100%;max-width:100%;display:flex;overflow:auto hidden}.home-scroller::-webkit-scrollbar{display:none}.home-scroller.locked{overflow-x:hidden}.home-pane{flex:0 0 var(--pane-width);width:var(--pane-width);max-width:var(--pane-width);min-width:var(--pane-width);scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box;overflow-x:hidden}.history-panel,.help-panel{min-height:40vh}.help-panel h3{font-size:1.05rem}.help-list{color:var(--text);gap:8px;margin:0;padding-left:1.15rem;line-height:1.45;display:grid}.help-list strong{color:var(--accent);font-weight:650}
