:root{color-scheme:dark;--bg:#090b12;--panel:#11131e;--panel2:#171a28;--panel3:#1c2030;--line:#303446;--ink:#f2f2f8;--muted:#9398ae;--muted2:#666e86;--accent:#aa92ff;--teal:#75ddcb;--warning:#f0be72;--radius:16px;--shadow:0 22px 65px #0009}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #d2c6ff;outline-offset:2px}a{color:var(--teal)}
.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}
.sidebar{background:#0e101a;border-right:1px solid #25283a;padding:29px 17px 24px;display:flex;flex-direction:column;gap:26px;height:100vh;position:sticky;top:0;overflow:auto;z-index:20}
.brand{display:flex;gap:12px;align-items:center;padding:0 8px}.brand-mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,#b99bff,#6dd9c3);display:grid;place-items:center;color:#10111a;font-weight:900;font-size:26px;box-shadow:0 0 35px #977dff33}
.brand strong{font-size:16px;letter-spacing:.02em}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.side-label{font-size:10px;letter-spacing:.17em;color:#747b96;text-transform:uppercase;font-weight:800;padding:0 12px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}
.nav-stack{display:flex;flex-direction:column;gap:5px}.nav-button,.category-row,.session-mini{border:0;background:none;color:#a9afc2;text-align:left;border-radius:11px;display:flex;align-items:center;gap:11px;width:100%;padding:11px 13px}
.nav-button:hover,.category-row:hover,.session-mini:hover{background:#1b1e2d;color:var(--ink)}.nav-button.active,.category-row.active{background:#25253b;color:#eee7ff}.nav-symbol{font-size:17px;width:20px;text-align:center}.nav-button.active .nav-symbol{color:#c8b7ff}
.category-row{padding:9px 11px;font-size:12px}.category-dot{width:9px;height:9px;border-radius:100%;flex-shrink:0}.count{margin-left:auto;color:#838ba5;font-size:11px;font-variant-numeric:tabular-nums}
.side-add{border:0;color:#d8cfff;background:none;font-size:18px;line-height:1;padding:0 3px}.session-mini{padding:8px 12px;display:block;font-size:12px}.session-mini small{display:block;color:var(--muted2);margin-top:3px}.session-mini.selected{background:#232537;color:white}
.side-foot{margin-top:auto;padding:13px 11px;border-top:1px solid #272c3d;color:#7d849c;font-size:11px}
.work-area{min-width:0}.topbar{height:77px;border-bottom:1px solid #27293b;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3.5vw,54px);gap:12px}
.breadcrumbs{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.13em;color:#747c92;font-weight:700}.breadcrumbs strong{color:#e7e6ee;font-weight:650;letter-spacing:.02em;font-size:13px}.crumb-separator{color:#424657}.top-actions,.action-bar,.inline-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.icon-button{background:#1a1c2a;border:1px solid #303345;color:#b7bed2;min-width:35px;height:35px;border-radius:10px;font-weight:800}.icon-button:hover{border-color:#7d739e;color:white}.local-status{display:flex;align-items:center;gap:7px;color:#999fb6;font-size:11px;margin-right:8px}.local-dot{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 10px #75ddcb55}.mobile-menu{display:none}
.main-inner{max-width:1380px;margin:0 auto;padding:clamp(22px,3vw,42px) clamp(18px,3.5vw,54px) 70px}
.eyebrow{color:#c4afff;letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:800}.page-heading{font-size:clamp(29px,3vw,40px);margin:6px 0 9px;letter-spacing:-.055em;line-height:1.15;font-weight:720}.subtitle{color:#9ba1b7;line-height:1.7;max-width:760px;margin:0}.headline-row{display:flex;gap:20px;align-items:end;justify-content:space-between;margin-bottom:27px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#23263a;color:#eeeef7;border:1px solid #3d4057;padding:11px 15px;border-radius:11px;font-weight:650;font-size:12px;white-space:nowrap}.button:hover{background:#2b2d44}.button.primary{background:#b6a3ff;color:#171128;border-color:#b6a3ff}.button.primary:hover{background:#c6b7ff}.button.soft{background:#282238;border-color:#51416e;color:#d9c8ff}.button.danger{color:#ffc5ce;border-color:#7e4355;background:#3b2230}.button.sm{padding:7px 11px;font-size:11px}.button.ghost{background:transparent;border-color:transparent;color:#afa6d7}.button[hidden]{display:none}
.layout-two{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.panel{background:linear-gradient(152deg,#151724,#10131e);border:1px solid #2b2f43;border-radius:19px;box-shadow:0 12px 55px #05061133;overflow:hidden}.panel-pad{padding:23px}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.panel-title{font-size:15px;font-weight:700;letter-spacing:-.012em}.panel-kicker{color:#959cb2;font-size:12px}
.capture-panel{position:relative}.capture-panel:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,#ad90ff,#6bd6c1,transparent);opacity:.65}.textarea-wrap{background:#0d1019;border:1px solid #35374c;border-radius:14px;overflow:hidden}.capture-input{width:100%;height:270px;min-height:160px;background:transparent;border:0;color:#edeaf6;outline:none;resize:vertical;padding:22px;font-size:16px;line-height:1.7}.capture-input::placeholder{color:#777d96}.capture-input:focus{outline:none}.textarea-info{padding:10px 16px;display:flex;justify-content:space-between;gap:12px;border-top:1px solid #24283a;color:#788197;font-size:11px}.interim{min-height:23px;color:#c4b5fd;font-style:italic;padding:8px 0 0;font-size:12px}
.listen-card{background:radial-gradient(ellipse at 50% 3%,#23213b,transparent 67%),#161724;border:1px solid #39364e;border-radius:17px;padding:21px;margin-bottom:16px;text-align:center}.listen-eyebrow{font-size:11px;letter-spacing:.17em;color:#998cbf;font-weight:750}.listen-time{font-size:39px;font-weight:650;letter-spacing:-.07em;font-variant-numeric:tabular-nums;margin:8px 0 4px}.listen-detail{font-size:11px;color:#a5a9bb;min-height:19px}.wave{display:flex;height:58px;justify-content:center;align-items:center;gap:4px;margin:11px 0 15px}.wave i{width:3px;background:#9383ce;border-radius:99px;opacity:.9}.wave.live i{animation:bounce 650ms ease-in-out infinite alternate}.wave.live i:nth-child(3n){animation-delay:-420ms}.wave.live i:nth-child(4n){animation-delay:-220ms}@keyframes bounce{to{height:5px}}
.timer-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:15px}.timer-choices button{border:1px solid #343448;border-radius:9px;color:#a3a1b6;background:#191a29;padding:9px 3px;font-size:11px}.timer-choices button.active{color:#f1eaff;background:#302b48;border-color:#8b76cc}.timer-choices button:disabled{opacity:.5}
.listen-start{width:100%;padding:13px}.capture-tips{margin-top:12px;color:#80879c;font-size:11px;line-height:1.65}.capture-tips strong{color:#bdc5d6}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0 0}.stat{border:1px solid #2b2f42;border-radius:14px;padding:16px 19px;background:#141723}.stat .num{font-size:23px;font-weight:730;letter-spacing:-.045em}.stat label{display:block;color:#8790a6;font-size:11px;margin-top:3px}
.section-gap{margin-top:26px}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.section-header h3{margin:0;font-size:14px}.pill{border:1px solid #49415e;background:#292239;color:#d3c7eb;padding:5px 9px;border-radius:99px;font-size:11px}.hint{color:#80889f;font-size:12px;line-height:1.6}.empty{border:1px dashed #42435a;border-radius:15px;padding:29px;text-align:center;color:#8f96ae}.empty .empty-icon{font-size:28px;display:block;margin-bottom:8px}
.idea-card{display:flex;gap:13px;align-items:start;padding:15px 16px;border-bottom:1px solid #292b3e}.idea-card:last-child{border:0}.idea-body{min-width:0;flex:1}.idea-title{font-size:13px;font-weight:660;margin-bottom:7px;line-height:1.5;overflow-wrap:anywhere}.idea-meta{display:flex;align-items:center;gap:8px;color:#9398ac;font-size:11px;flex-wrap:wrap}.idea-actions{display:flex;align-items:center;gap:5px}.idea-actions button{border:0;background:transparent;color:#8e93af;font-size:15px;padding:5px}.idea-actions button:hover{color:white}.mini-dot{display:inline-block;width:7px;height:7px;border-radius:50%;vertical-align:middle;margin-right:4px}.uncertain{font-size:10px;color:#e6c08a}.selection-strip{color:#9da4bb;font-size:11px}
.map-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 13px}.map-board{height:min(69vh,730px);min-height:440px;overflow:auto;background-color:#0d1019;background-image:radial-gradient(#35374c 1px,transparent 1px);background-size:22px 22px;border:1px solid #303246;border-radius:16px;position:relative}.map-board svg{display:block;touch-action:pan-x pan-y}.map-node{cursor:grab}.map-node:active{cursor:grabbing}.map-node text{pointer-events:none;user-select:none}.map-note{font-size:11px;color:#9aa1b6;margin:10px 0 0}.map-stat{color:#a7abc0;font-size:11px}
.outline-tools{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.outline-group{border:1px solid #33354a;border-radius:14px;margin-bottom:14px;overflow:hidden;background:#151725}.outline-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:11px;padding:16px 18px;font-size:14px;font-weight:730}.outline-group>summary::-webkit-details-marker{display:none}.outline-group>summary:after{content:'⌄';margin-left:auto;color:#9d9cb5}.topic-section{padding:0 19px 16px 30px}.topic-title{color:#b5abc9;margin:6px 0 10px;font-size:12px;font-weight:700}.outline-idea{display:flex;gap:11px;align-items:flex-start;padding:9px 0;border-top:1px solid #26293a}.outline-idea input[type=checkbox]{accent-color:#b19bff;margin-top:4px}.outline-idea .idea-body{font-size:12px}.outline-idea .detail{font-size:11px;color:#858da5;margin-top:3px;white-space:pre-line}.outline-idea button{border:0;background:none;color:#bdb0dc;font-size:11px}.outline-idea button:hover{text-decoration:underline}
.session-card{padding:19px 20px;border-bottom:1px solid #2b2e42}.session-card:last-child{border:0}.session-card strong{font-size:13px}.session-card .info{color:#929ab0;font-size:11px;margin-top:4px}.session-card p{color:#a5abc0;font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.session-open{margin-top:9px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:11px;font-weight:700;color:#bfc5da}.field input,.field textarea,.field select{background:#0e101a;border:1px solid #36394e;color:#eeeff6;border-radius:10px;padding:11px 12px;min-width:0;width:100%}.field textarea{resize:vertical;min-height:85px}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;flex-wrap:wrap}
.modal-backdrop{position:fixed;inset:0;background:#02030acb;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(8px)}.modal{width:min(100%,570px);max-height:min(92vh,900px);overflow:auto;border:1px solid #514b66;border-radius:19px;background:linear-gradient(145deg,#202131,#111521);box-shadow:var(--shadow);padding:25px}.modal h2{margin:0 0 7px;letter-spacing:-.025em;font-size:21px}.modal p{color:#a6abc0;font-size:12px;line-height:1.65;margin:0 0 20px}.modal pre{background:#0d0f19;border:1px solid #39374c;border-radius:10px;padding:14px;max-height:250px;overflow:auto;white-space:pre-wrap;font-size:12px;color:#ccd0e0}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);pointer-events:none;opacity:0;transition:.2s;background:#e6ddff;color:#1a1730;border-radius:12px;z-index:150;padding:11px 16px;font-weight:650;font-size:12px;box-shadow:var(--shadow);text-align:center;max-width:calc(100vw - 35px)}.toast.show{opacity:1;transform:translate(-50%,0)}
#printSheet{display:none}
@media(max-width:1080px){.layout-two{grid-template-columns:1fr}.capture-side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.capture-side .stat-row{margin:0;grid-template-columns:1fr}.sidebar{width:230px}.app-shell{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;width:265px;left:0;top:0;bottom:0;height:100dvh;transform:translateX(-100%);transition:transform .2s;box-shadow:20px 0 60px #000a}.sidebar.open{transform:translateX(0)}.mobile-menu{display:inline-block}.topbar{height:64px;padding:0 14px}.breadcrumbs{gap:6px}.breadcrumbs>span:first-child{display:none}.breadcrumbs .crumb-separator{display:none}.local-status{display:none}.main-inner{padding:23px 14px 90px}.headline-row{align-items:start;flex-direction:column}.capture-side{display:block}.capture-side .stat-row{grid-template-columns:repeat(3,1fr);margin:16px 0}.panel-pad{padding:17px}.capture-input{height:255px}.page-heading{font-size:32px}.map-board{height:62vh;min-height:350px}.outline-tools .button{flex:1}.stat{padding:12px}.stat .num{font-size:19px}}
@media(max-width:380px){.stat label{font-size:10px}.timer-choices{gap:4px}.button{padding:10px 11px}.grid-two{grid-template-columns:1fr}}
@media print{html,body{background:#fff!important;color:#111!important;font:11pt/1.4 Georgia,serif!important}.app-shell,#modalHost,#toast{display:none!important}#printSheet{display:block!important;padding:18mm;color:#111}#printSheet h1{font-size:23pt}#printSheet h2{font-size:16pt;border-bottom:1px solid #888;margin-top:25px}#printSheet h3{font-size:12pt;margin-top:18px}#printSheet p,#printSheet li{overflow-wrap:anywhere;break-inside:avoid}#printSheet .print-meta{color:#555;font:9pt sans-serif}}

/* v0.3 voice diagnostics */
.voice-feedback[hidden]{display:none}.voice-feedback{margin-top:12px;padding:12px;text-align:left;background:#252438;border:1px solid #4d4666;border-radius:12px;font-size:12px;line-height:1.55;color:#e8e4f6;overflow-wrap:anywhere}.voice-feedback strong{display:block;font-size:12px;margin-bottom:5px}.voice-feedback #voiceDetail{color:#bdc4d5}.voice-feedback[data-kind="error"]{background:#3a242e;border-color:#a96278}.voice-feedback[data-kind="error"] strong{color:#ffc7cf}.voice-feedback[data-kind="ok"]{background:#172e2b;border-color:#528a79}.voice-feedback[data-kind="ok"] strong{color:#a5efda}.voice-assist{display:flex;gap:7px;justify-content:center;margin-top:11px;flex-wrap:wrap}.voice-assist .button{font-size:11px;padding:8px 10px;flex:1;min-width:115px}.listen-start:disabled{opacity:.55;cursor:wait}

/* v0.4: Windows dictation needs a visible, focused and verifiable text destination. */
.dictation-modal{max-width:100%}.dictation-modal .eyebrow{margin-bottom:9px}.dictation-steps{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.dictation-steps span{padding:8px 11px;background:#28243f;border:1px solid #645588;border-radius:9px;font-size:12px;color:#e5deff}.dictation-label{display:block;font-size:12px;font-weight:700;color:#efeaff;margin-bottom:9px}.dictation-input{display:block;width:100%;min-height:220px;max-height:48vh;resize:vertical;background:#0c1020;color:#fbf8ff;border:2px solid #8d7ed2;box-shadow:0 0 0 3px #987bea20;border-radius:13px;padding:16px;font:16px/1.65 system-ui,sans-serif}.dictation-input:focus{outline:2px solid #c4b5fd;outline-offset:3px}.dictation-input::placeholder{color:#9d9eb4}.dictation-meta{display:flex;justify-content:space-between;gap:10px;color:#b6a9e5;font-size:11px;margin:10px 0 12px}.dictation-status{padding:11px 13px;background:#27243f;color:#e2d8fa;border-radius:10px;border:1px solid #695a96;font-size:12px;line-height:1.6}.dictation-status[data-kind=ok]{background:#18342e;border-color:#589b84;color:#b9f3e0}.dictation-status[data-kind=warn]{background:#40272e;border-color:#b36b7b;color:#ffd0dc}.dictation-help{margin-top:14px;font-size:12px;color:#b5b9cd}.dictation-help summary{cursor:pointer;color:#cbbdff;font-weight:600}.dictation-help p{margin:9px 0;line-height:1.55}.dictation-modal .form-foot{gap:10px;flex-wrap:wrap}.dictation-modal .form-foot button{flex:1;min-width:150px}@media(max-width:560px){.modal:has(.dictation-modal){padding:16px}.dictation-meta{flex-direction:column}.dictation-input{min-height:180px}}

/* v0.6 — local memory and teaching */
.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.memory-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #33354a}.memory-row:last-child{border:0}.memory-row strong{display:block;font-size:13px;color:#f1eafb;overflow-wrap:anywhere}.memory-row small{display:block;color:#9ea5b9;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.memory-row .button{flex-shrink:0}.memory-preview{margin-top:14px;font-size:14px;line-height:1.7}.person-link{color:#b9e5cf}.secondary-cat{color:#d9bfef}.editor-details{margin:12px 0 16px;padding:13px;border:1px solid #4b445d;border-radius:12px}.editor-details summary{color:#d4c5ff;font-size:12px;font-weight:700;cursor:pointer}.editor-details .hint{margin:9px 0}.chip-checks{display:flex;gap:8px;flex-wrap:wrap}.chip-checks label{display:flex;align-items:center;gap:6px;cursor:pointer;border:1px solid #4a4562;border-radius:8px;background:#211f34;padding:7px 9px;font-size:11px;font-weight:500}.chip-checks label small{color:#99a0b9}.chip-checks input{accent-color:#bba6fa}.teaching-box{border:1px solid #5e4b83;border-radius:12px;background:#262139;padding:12px;margin-top:12px}.teach-toggle{display:flex;align-items:center;gap:8px;color:#ddcffb;font-size:12px;cursor:pointer;margin:9px 0}.teach-toggle input{accent-color:#b9a6fc}.teaching-box p{margin:8px 0 10px}.teaching-box .field[hidden]{display:none}@media(max-width:880px){.memory-grid{grid-template-columns:1fr}}

/* v0.7 Life App visual alignment: atmospheric glass, calm lavender accents, mobile dock. */
:root{--bg:#090b13;--panel:#151928;--panel2:#1c2134;--panel3:#262b43;--line:rgba(178,193,251,.16);--ink:#f3f3fc;--muted:#a1a4bd;--accent:#a2a1ff;--teal:#91cbe4;--shadow:0 18px 55px rgba(0,0,0,.32)}
html,body{background:#090b13;background-image:radial-gradient(ellipse at 78% 3%,rgba(104,84,220,.15),transparent 37%),radial-gradient(ellipse at 2% 80%,rgba(45,136,167,.09),transparent 42%);background-attachment:fixed}
.sidebar{background:linear-gradient(155deg,rgba(23,28,48,.97),rgba(10,13,25,.98));border-right:1px solid var(--line)}
.topbar{background:rgba(12,16,28,.75);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.panel,.listen-card,.stat,.outline-group{background:linear-gradient(135deg,rgba(25,30,50,.86),rgba(15,20,34,.95));border-color:var(--line);box-shadow:0 10px 38px rgba(1,4,18,.15)}
.brand-mark{background:linear-gradient(135deg,#a9a4ff,#7ccae5);box-shadow:0 0 26px rgba(127,120,251,.19)}
.button.primary,.listen-start{background:linear-gradient(135deg,#a9a6ff,#938af3);color:#101329;border-color:transparent}
.button.soft{background:rgba(133,124,244,.17);border:1px solid rgba(165,156,255,.3);color:#e1dcff}
.nav-button.active,.category-row.active{background:rgba(140,135,245,.16);border:1px solid rgba(155,151,255,.18)}
.nav-button,.category-row{border:1px solid transparent}
.sidebar-category-tools{display:flex;gap:6px;flex-wrap:wrap}.sidebar-category-tools .button{flex:1;font-size:11px}
.modal{background:linear-gradient(146deg,#22283d,#12192b);border-color:rgba(154,159,224,.26)}
.field input,.field textarea,.field select{background:#101629;border-color:rgba(159,164,216,.25)}
.rule-save-status{border-radius:9px;border:1px solid rgba(152,161,214,.25);padding:10px 12px;margin:8px 0 12px;color:#c9cce7;font-size:12px}
.color-list{display:grid;gap:7px;max-height:55vh;overflow:auto}.color-row{display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.035);padding:10px;border:1px solid var(--line);border-radius:12px}.color-row input{height:37px;width:53px;background:none;border:0;padding:0;cursor:pointer}.color-row span{font-weight:600;font-size:13px;flex:1}.color-row small{font-size:10px;color:#b8bfdb}
.quick-menu{display:grid;gap:9px;margin:14px 0}.quick-menu .button{width:100%;text-align:left;justify-content:flex-start}
.review-date{color:#94d8c9;font-size:11px}
.swipe-shell{position:relative;overflow:hidden;touch-action:pan-y;background:rgba(20,26,43,.7)}
.swipe-content{position:relative;z-index:1;background:linear-gradient(125deg,#191f32,#131b2d);will-change:transform;transition:transform .16s ease;touch-action:pan-y}
.swipe-actions{position:absolute;right:0;top:0;bottom:0;display:flex;width:220px;z-index:0}
.swipe-actions button{width:33.333%;border:0;border-left:1px solid #ffffff18;color:#f4f2ff;background:#34395a;font-weight:750;font-size:11px;padding:4px;overflow-wrap:anywhere}
.swipe-actions button:nth-child(2){background:#40576d}.swipe-actions button.danger-action{background:#874353;color:#fff}
.outline-idea{margin:0;padding:13px 15px;border-top:1px solid var(--line);align-items:center;gap:10px;min-height:68px}
.outline-idea .idea-body{flex:1}.outline-idea .idea-body strong{font-size:12.5px;overflow-wrap:anywhere}.outline-right{display:flex;align-items:center;gap:3px}.outline-right button{min-width:32px;min-height:36px;border-radius:8px;padding:6px}
.outline-right .drag-handle{font-size:23px;color:#bdb9eb;cursor:grab;touch-action:none;user-select:none}
.outline-right .drag-handle:active{cursor:grabbing}.outline-right .more-action{font-size:22px;line-height:1}
.swipe-shell.reorder-active{z-index:5;box-shadow:0 0 0 2px #aca5ff,0 20px 45px #0007;opacity:.86}
.swipe-shell.drag-target{box-shadow:inset 0 -3px #99d7ec}
.idea-card{background:transparent}.idea-actions button{min-width:32px;min-height:32px}
.phone-nav{display:none}
@media(max-width:760px){
 .main-inner{padding-bottom:125px}.phone-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:29;height:calc(66px + env(safe-area-inset-bottom));padding:7px 6px max(6px,env(safe-area-inset-bottom));border-top:1px solid rgba(160,162,231,.24);background:rgba(15,19,33,.96);backdrop-filter:blur(20px);align-items:stretch;justify-content:space-around;box-shadow:0 -10px 40px #0007}
 .phone-nav-btn{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:0;border-radius:12px;color:#9199b1;font-size:10px;font-weight:650;min-width:0;padding:5px 0}.phone-nav-btn.active{color:#dcd7ff;background:rgba(137,132,238,.17)}.phone-nav-icon{font-size:22px;line-height:1.15}.toast{bottom:calc(75px + env(safe-area-inset-bottom))}.sidebar{z-index:40}
 .outline-idea{padding:12px 9px}.outline-right button[data-action="edit-idea"]{display:none}.outline-right .drag-handle{min-width:44px;min-height:44px}.outline-right .more-action{min-width:39px;min-height:39px}.outline-idea .idea-body strong{font-size:12px}.topic-section{padding:0 8px 10px 8px}.outline-group>summary{padding:14px 13px}.swipe-actions{width:220px}
 .modal{max-height:calc(100dvh - 40px)}.outline-tools{display:grid;grid-template-columns:1fr 1fr}.outline-tools .button{font-size:11px;line-height:1.2;min-height:43px;padding:8px}
}
@media print{.phone-nav{display:none!important}}


/* v0.7.1: Voice controls above the live transcript on ALL screen sizes. */
.capture-stack{display:flex;flex-direction:column;gap:16px}
.listen-card.listen-card-top{margin:0;text-align:left;padding:18px 20px}
.listen-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.listen-card-top .listen-eyebrow{margin-bottom:5px;color:#b4a7f3}
.listen-card-top .listen-time{font-size:27px;line-height:1.1;letter-spacing:-.04em;margin:0;color:#ece6ff;white-space:nowrap}
.listen-card-top .listen-start{min-height:50px;font-size:14px}
.listen-card-top .listen-detail{text-align:center;margin:9px 0 12px;min-height:15px}
.listen-settings{display:flex;align-items:center;justify-content:space-between;gap:16px}
.listen-card-top .timer-choices{width:min(390px,100%);margin:0}
.listen-card-top .wave{height:35px;margin:0;flex:1;justify-content:flex-end;gap:3px;overflow:hidden}
.listen-card-top .wave i{flex:0 0 3px}
.listen-card-top .voice-assist{justify-content:flex-start;margin-top:12px}
.listen-card-top .voice-assist .button{flex:0 1 auto}
.listen-help{font-size:11px;color:#9c9eb7;margin-top:9px}
.listen-help summary{cursor:pointer;display:inline-block;color:#a7b8cf}
.listen-help p{max-width:680px;line-height:1.55;margin:8px 0 0}
.capture-panel .panel-header{align-items:flex-start}
.capture-panel .capture-input{height:220px}
.capture-lower{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}
.capture-lower .stat-row{margin-top:0}
.capture-lower>.panel{align-self:start}
@media(max-width:1080px){.capture-lower{grid-template-columns:1fr}.capture-lower>.panel{margin-top:0}}
@media(max-width:760px){
 .capture-stack{gap:12px}
 .listen-card.listen-card-top{padding:15px;border-radius:16px}
 .listen-card-top .listen-start{min-height:52px}
 .listen-settings{display:block}
 .listen-card-top .timer-choices{width:100%}
 .listen-card-top .wave{display:none}
 .listen-card-top .voice-assist{display:flex;gap:6px}
 .listen-card-top .voice-assist .button{flex:1;min-width:0;font-size:11px;white-space:normal}
 .capture-panel .panel-header{flex-wrap:wrap;gap:6px}
 .capture-panel .panel-header .pill{font-size:10px}
 .capture-panel .capture-input{height:190px;min-height:150px;padding:15px}
 .capture-panel .textarea-info{font-size:10px;padding:9px}
 .capture-lower .stat-row{margin:4px 0 0}
}
@media(max-width:360px){.listen-card-top .voice-assist .button{font-size:10px;padding:8px 5px}}

/* v0.7.2: One-thought recut and per-piece destination review. */
.split-editor{max-width:100%}.split-editor .field{margin-bottom:10px}.split-editor textarea{width:100%;resize:vertical;min-height:92px;line-height:1.65;font-size:15px}.split-editor .split-tools{margin:0 0 12px}.split-editor .split-help{font-size:12px;color:#a7b0c9;line-height:1.65;margin:8px 0 14px}.split-pieces{display:grid;gap:13px;margin:14px 0;max-height:55vh;overflow:auto;padding-right:4px}.split-piece{border:1px solid rgba(152,154,221,.25);background:rgba(12,18,35,.7);border-radius:13px;padding:13px}.split-piece-head{display:flex;gap:9px;align-items:center;margin-bottom:12px;font-size:12px}.split-index{background:#45406a;border-radius:8px;padding:4px 8px;color:#e9e1ff;font-weight:800}.split-suggested{margin-left:auto;color:#a8b3cb;font-size:10px;text-align:right}.split-piece textarea{min-height:65px}.split-piece .grid-two{gap:8px}.split-editor .form-foot{flex-wrap:wrap;gap:12px}@media(max-width:560px){.split-editor .split-pieces{max-height:57vh}.split-editor .split-piece{padding:11px}.split-editor .split-piece .grid-two{grid-template-columns:1fr}.split-editor .form-foot button{flex:1;white-space:normal}.split-suggested{max-width:110px}}

/* v0.8 staging prep: explicit, nonwriting schedule preview */
.bridge-result{margin:16px 0}.bridge-preview-card{border:1px solid rgba(154,159,224,.32);border-radius:14px;background:linear-gradient(135deg,#22273e,#151a2e);padding:16px}.bridge-preview-card strong{display:block;font-size:17px;margin:8px 0;overflow-wrap:anywhere}.bridge-preview-date{font-size:14px;color:#b5e5d6;margin:9px 0}.bridge-warning{padding:9px 11px;background:#342b37;border-left:3px solid #d7af88;font-size:12px;line-height:1.5;color:#f4d6b9;border-radius:7px}.bridge-preview-card .inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bridge-preview-card .button{flex:1;min-height:42px}

/* v0.9 — staging bridge */
.bridge-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bridge-candidate{display:flex;gap:10px;align-items:flex-start;padding:11px;margin:7px 0;background:rgba(131,130,191,.075);border:1px solid rgba(159,155,224,.19);border-radius:12px;cursor:pointer}.bridge-candidate input{margin-top:4px;flex:none}.bridge-candidate span{display:flex;flex-direction:column;gap:4px;min-width:0}.bridge-candidate small{color:var(--muted);font-size:12px}.bridge-candidate:has(input:checked){border-color:var(--accent);background:rgba(139,125,255,.12)}.bridge-result .field input{width:100%}.bridge-result .bridge-warning{color:#f2a8a8}.bridge-result #lifeCommitFeedback{padding:8px 0;line-height:1.6;overflow-wrap:anywhere}.bridge-result #lifeCommitFeedback a{color:var(--accent3)}@media(max-width:420px){.bridge-fields{grid-template-columns:1fr}.bridge-result .inline-actions{flex-wrap:wrap}}


/* v0.9.1: Always-visible release version, including installed phone PWA. */
.app-version{flex:0 0 auto;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;
 border:1px solid rgba(159,156,250,.34);border-radius:8px;padding:5px 9px;
 background:rgba(143,139,244,.12);color:#d7d2ff;font-size:11px;font-weight:800;
 letter-spacing:.025em;font-variant-numeric:tabular-nums}
.top-actions{flex-wrap:nowrap;min-width:0}
@media(max-width:760px){
 .app-version{padding:5px 6px;font-size:10px;border-radius:7px}
 .breadcrumbs{min-width:0;flex:1;overflow:hidden;white-space:nowrap}
 .breadcrumbs strong{overflow:hidden;text-overflow:ellipsis}
 .topbar{gap:8px}
 .top-actions{gap:6px}
}
@media(max-width:360px){
 .topbar{padding-left:9px;padding-right:9px;gap:6px}
 .top-actions{gap:4px}
 .icon-button{min-width:33px;width:33px;height:34px}
 .app-version{padding:4px 5px;font-size:10px}
}
@media print{.app-version{display:none!important}}

/* v0.9.2 Smart Send: one approval, automatic match preview, quick access from Capture. */
.smart-send-inline{border:1px solid rgba(164,157,249,.35)!important;border-radius:9px!important;padding:7px 8px!important;color:#dbd5ff!important;background:rgba(143,129,241,.17)!important;font-size:11px!important;white-space:nowrap}
.smart-send-modal .smart-auth{padding:10px 12px;margin:12px 0 15px;border-radius:11px;border:1px solid rgba(160,166,230,.19);background:rgba(12,17,30,.45)}
.smart-auth-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#aad7c9;font-size:12px;flex-wrap:wrap}
.smart-login summary{cursor:pointer;color:#d4ccff;font-weight:650;font-size:12px}
.smart-login form{margin-top:12px;display:grid;gap:10px}.smart-login form .field{margin:0}.smart-login form input{width:100%}
.smart-matches{margin:12px 0 6px}.smart-match-header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.smart-match-header strong{font-size:14px}.smart-match-header .button{flex:0 0 auto;font-size:11px;min-height:34px;padding:7px 10px}
.smart-match-caption{font-size:11px;color:#b5d4c9;margin:7px 0 10px}
.smart-commit{margin-top:14px;display:flex;flex-direction:column;align-items:stretch;gap:6px}.smart-commit .button{min-height:52px;font-size:13px}.smart-commit .hint{text-align:center;font-size:10px}
.smart-success{padding:12px;border:1px solid rgba(127,205,174,.42);background:rgba(53,131,95,.15);border-radius:12px;color:#cff7df;line-height:1.6}
.smart-success strong{font-size:14px}.smart-success-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.smart-success-actions .button{flex:1;text-decoration:none;display:inline-flex;justify-content:center;align-items:center}
.smart-batch-list{max-height:55vh;overflow-y:auto;display:grid;gap:9px;margin:12px 0}
.smart-batch-row{border:1px solid rgba(148,156,215,.25);background:#161e32;border-radius:12px;padding:12px;display:grid;gap:6px;font-size:12px}
.smart-batch-row strong{font-size:13px;overflow-wrap:anywhere}.smart-batch-row small{color:#b6c5dd}.smart-batch-row label{display:grid;gap:6px}.smart-batch-row select{width:100%;min-height:42px;background:#11172a;color:#f4f3ff;border:1px solid rgba(159,164,216,.25);border-radius:9px;padding:7px}
.smart-batch .form-foot .button{flex:1}
@media(max-width:500px){.smart-send-modal .bridge-preview-card{padding:12px}.smart-send-modal .bridge-candidate{padding:9px}.smart-send-modal .smart-auth{padding:9px}.capture-panel .action-bar{flex-wrap:wrap}.capture-panel .action-bar .button{flex:1;min-width:130px}.smart-match-header{flex-wrap:wrap}.smart-footer{flex-wrap:wrap}}

.smart-send-dock{position:sticky;bottom:-25px;z-index:13;background:linear-gradient(180deg,rgba(19,23,41,.96),rgba(20,25,42,1));border-top:1px solid rgba(159,164,236,.35);padding:11px 4px 10px;margin:12px -7px -16px;box-shadow:0 -15px 26px rgba(5,7,18,.64);display:flex;flex-direction:column;gap:6px;text-align:center}
.smart-send-dock>.button{min-height:51px;width:100%;font-weight:800}
.smart-send-dock>div{font-size:10px;color:#bcc4df}
@media(max-width:500px){.smart-send-dock{bottom:-17px;margin:12px -5px -12px;padding-bottom:max(9px,env(safe-area-inset-bottom));}}
