:root{color:#1c2b28;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#1c2b28;--muted:#6c7d78;--line:#dbe6de;--paper:#fff;--accent:#1f8a63;--accent-soft:#e4f4ec;--sun:#f4a637;--sun-soft:#fdf1de;--shadow:0 18px 36px -22px #1f8a6359;background:#f4f8f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent}#root{min-height:100svh}.app-shell{box-sizing:border-box;flex-direction:column;width:min(100%,720px);min-height:100svh;margin:0 auto;padding:0 28px;display:flex}.topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:14px 0;display:flex}.topbar-actions{align-items:center;gap:14px;display:flex}.menu-container{align-items:center;display:flex;position:relative}.menu-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:5px 8px;font-size:1.15rem;line-height:1;transition:background-color .15s,border-color .15s;display:flex}.menu-button:hover,.menu-button[aria-expanded=true]{border-color:var(--muted);background:#6c7d781f}.menu-dropdown{background:var(--paper,#fff);border:1px solid var(--line);z-index:100;border-radius:8px;flex-direction:column;gap:2px;min-width:170px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000001f}.menu-item{text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;padding:8px 12px;font-size:.85rem;font-weight:600;transition:background-color .12s;display:flex}.menu-item:hover{color:var(--accent);background:#6c7d781f}.menu-item.sign-out-item{color:var(--muted);border-top:1px solid var(--line);border-radius:0 0 4px 4px;margin-top:4px;padding-top:10px}.menu-item.sign-out-item:hover{color:#c93b2b;background:#c93b2b14}.wordmark,.entry-badge,.eyebrow,.recorder-meta{letter-spacing:.14em;font-size:.68rem;font-weight:700}.wordmark{color:var(--ink);white-space:nowrap;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.seasonal-brand-icon{flex:none;width:22px;height:22px}.seasonal-header-ghost{flex:none;width:20px;height:24px}.entry-badge{max-width:160px;color:var(--accent);background:var(--accent-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:5px 12px;overflow:hidden}@media (width<=480px){.entry-badge{display:none}}.language-toggle{background:var(--accent-soft);border-radius:999px;gap:4px;padding:3px;display:flex}.language-toggle button{color:var(--accent);font:inherit;cursor:pointer;opacity:.55;background:0 0;border:0;border-radius:999px;align-items:center;padding:4px;line-height:1;display:flex}.language-toggle button.active{opacity:1;color:#fff;background:var(--accent)}.flag-icon{border-radius:3px;width:22px;height:auto;display:block;box-shadow:0 0 0 1px #0000001f}.entry{flex:1;padding:48px 0 60px}.eyebrow{color:var(--accent);margin:0 0 14px}h1,h2,p{margin-top:0}h1{max-width:560px;color:var(--ink);letter-spacing:-.055em;margin-bottom:12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,8vw,4.7rem);font-weight:400;line-height:.98}.date-heading{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;max-width:none;font-size:clamp(1.6rem,4.4vw,2.3rem);font-weight:700;line-height:1.2;overflow:hidden}.entry-intro{max-width:420px;color:var(--muted);margin-bottom:42px;font-size:1.02rem}.landing-shell .topbar{border-bottom:0}.access-denied-shell{text-align:center;justify-content:center;align-items:center;min-height:70vh;display:flex}.access-denied-card{max-width:440px;padding:32px}.access-denied-card h1{margin:8px 0 12px;font-size:1.6rem}.access-denied-card p{color:var(--muted);margin:0 0 20px;line-height:1.5}.landing-hero{text-align:center;flex-direction:column;align-items:center;padding:40px 0 32px;display:flex;position:relative}.landing-ghost-decor{pointer-events:none;width:42px;height:48px;position:absolute;top:28px;right:34px}.landing-hero-intro{max-width:480px;margin-left:auto;margin-right:auto}.landing-hero-photo{text-align:center;max-width:380px;margin:0 auto 32px;padding:0 0 8px;position:relative}.landing-hero-photo img{border-radius:16px;width:100%;height:auto;display:block;box-shadow:0 12px 28px -18px #1c2b2859}.landing-hero-photo figcaption{color:var(--muted);margin-top:8px;font-size:.72rem}.landing-features{grid-template-columns:repeat(2,1fr);gap:16px;padding:8px 0 40px;display:grid}@media (width<=560px){.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}}.landing-feature-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:20px}.landing-feature-icon{margin-bottom:10px;font-size:1.6rem;display:inline-block}.landing-feature-title{color:var(--ink);margin:0 0 6px;font-size:1.02rem}.landing-feature-body{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.landing-preview{text-align:center;padding:8px 0 40px}.landing-preview-label{letter-spacing:.14em;color:var(--accent);text-transform:uppercase;margin:0 0 16px;font-size:.68rem;font-weight:700}.landing-mockup{border:1px solid var(--line);background:var(--accent-soft);border-radius:20px;max-width:420px;margin:0 auto;overflow:hidden;box-shadow:0 20px 40px -24px #1c2b2859}.landing-mockup-bar{background:var(--paper);border-bottom:1px solid var(--line);gap:6px;padding:12px 16px;display:flex}.landing-mockup-dot{background:var(--line);border-radius:50%;width:9px;height:9px}.landing-mockup-body{text-align:left;flex-direction:column;gap:12px;padding:18px;display:flex}.landing-mockup-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.landing-mockup-eyebrow{letter-spacing:.12em;color:var(--accent);margin:0 0 8px;font-size:.62rem;font-weight:700}.landing-mockup-line{background:var(--line);border-radius:999px;width:65%;height:8px;margin:6px 0 0}.landing-mockup-line-wide{width:90%}.landing-mockup-line-short{width:40%}.landing-mockup-weather{color:var(--ink);margin:0;font-size:.9rem}.landing-mockup-note{align-items:center;gap:10px;display:flex}.landing-mockup-play{width:26px;height:26px;color:var(--accent);background:var(--accent-soft);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;display:flex}.landing-mockup-note-lines{flex:1}.landing-mockup-duration{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem}.landing-privacy{background:var(--accent-soft);text-align:center;border-radius:14px;max-width:480px;margin:0 auto 40px;padding:16px 20px}.landing-privacy p{color:var(--ink);margin:0;font-size:.9rem;line-height:1.5}.landing-footer{text-align:center;padding:8px 0 48px}.landing-footer-cta{color:var(--muted);margin-bottom:16px;font-size:1rem}.admin-dashboard{width:100%}.admin-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.admin-title{font-size:clamp(2.1rem,7vw,3.8rem)}.admin-intro{color:var(--muted);margin:0}.admin-range{background:var(--accent-soft);border-radius:999px;gap:4px;padding:3px;display:flex}.admin-range button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 12px;font-weight:700}.admin-range button.active{color:#fff;background:var(--accent)}.admin-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.admin-metric-card,.admin-panel{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:16px}.admin-metric-card{flex-direction:column;gap:8px;padding:16px;display:flex}.admin-metric-card span{color:var(--muted);font-size:.78rem;font-weight:700}.admin-metric-card strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:2rem}.admin-panel{padding:18px}.admin-panel h2{color:var(--ink);margin-bottom:14px}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.8rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:8px}.admin-table th:first-child,.admin-table td:first-child{text-align:left}.admin-table th{color:var(--accent)}@media (width<=620px){.admin-heading{flex-direction:column;align-items:flex-start}.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.date-nav{align-items:center;gap:10px;margin-bottom:18px;display:flex}.date-nav-button{border:1px solid var(--line);background:var(--paper);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:999px;font-size:1.1rem;transition:border-color .15s,color .15s}.date-nav-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.date-nav-button:disabled{opacity:.5;cursor:not-allowed}.date-input{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;border-radius:999px;padding:8px 12px;font-size:.9rem}.calendar-picker{position:relative}.calendar-trigger{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.9rem;transition:border-color .15s,color .15s}.calendar-trigger:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.calendar-trigger:disabled{opacity:.5;cursor:not-allowed}.calendar-panel{z-index:15;border:1px solid var(--line);background:var(--paper);width:280px;box-shadow:var(--shadow);border-radius:16px;padding:16px;position:absolute;top:calc(100% + 8px);left:0}.calendar-panel-header{color:var(--ink);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.9rem;display:flex}.calendar-month-nav{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;color:var(--ink);cursor:pointer;border-radius:999px;transition:border-color .15s,color .15s}.calendar-month-nav:hover{border-color:var(--accent);color:var(--accent)}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekdays{color:var(--muted);text-align:center;text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:700}.calendar-cell{aspect-ratio:1;justify-content:center;align-items:center;display:flex}.calendar-day{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;font-size:.85rem;transition:background .15s,border-color .15s,color .15s}.calendar-day:hover{border-color:var(--accent)}.calendar-day.has-activity{background:var(--accent-soft);color:var(--accent);font-weight:700}.calendar-day.is-today{border-color:var(--sun)}.calendar-day.selected{background:var(--accent);border-color:var(--accent);color:#fff}.calendar-legend{border-top:1px dashed var(--line);color:var(--muted);align-items:center;gap:8px;margin-top:12px;padding-top:10px;font-size:.75rem;display:flex}.calendar-legend-dot{background:var(--accent-soft);border:1px solid var(--accent);border-radius:999px;width:10px;height:10px}.recorder-card{border:1px solid var(--line);background:var(--accent-soft);box-shadow:none;cursor:default;border-radius:14px;margin:18px 0 22px;padding:18px;transition:border-color .18s,box-shadow .18s}.note-mode-toggle{background:#fff;border-radius:999px;gap:4px;margin-bottom:14px;padding:3px;display:inline-flex}.note-mode-toggle button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:700}.note-mode-toggle button.active{color:#fff;background:var(--accent)}.text-note-composer{flex-direction:column;gap:10px;display:flex}.plan-composer-textarea{min-height:180px;padding:12px;font-size:.92rem;line-height:1.55}.text-note-composer .transcript-save{align-self:flex-start}.text-note-icon{cursor:default;background:0 0;justify-content:center;align-items:center;display:flex}.recorder-card.is-recording{border-color:var(--sun);box-shadow:0 20px 44px -18px #f4a63773}.recorder-meta{color:var(--muted);justify-content:space-between;display:flex}.prompt-header{align-items:flex-start;gap:14px;margin:28px 0 34px;display:flex}.prompt-number,.section-number{color:var(--accent);letter-spacing:.1em;font-size:.72rem;font-weight:700}.prompt-header h2{margin-bottom:7px}.prompt-header p,.daily-section-heading p{color:var(--muted);margin:0;font-size:.83rem;line-height:1.45}.is-recording .recorder-meta{color:var(--sun)}.recorder-action{align-items:center;gap:18px;margin:18px 0 16px;display:flex}.mic-mark{background:var(--accent-soft);width:58px;height:58px;color:var(--accent);border-radius:50%;place-items:center;transition:background .18s;display:grid}.mic-mark span{border:2px solid var(--accent);border-radius:10px;width:14px;height:22px;position:relative}.mic-mark span:after{content:"";border:2px solid var(--accent);border-top:0;border-radius:0 0 12px 12px;width:22px;height:12px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.is-recording .mic-mark{background:var(--sun-soft);color:var(--sun)}.is-recording .mic-mark span,.is-recording .mic-mark span:after{border-color:var(--sun)}.pulse{animation:1.5s ease-in-out infinite pulse}.record-button{color:#fff;background:var(--accent);font:inherit;letter-spacing:.08em;cursor:pointer;border:0;border-radius:999px;padding:12px 22px;font-size:1rem;font-weight:700;transition:background .18s,box-shadow .18s,transform .12s;box-shadow:0 12px 24px -10px #1f8a638c}.record-button:hover{transform:translateY(-1px)}.is-recording .record-button{background:var(--sun);box-shadow:0 12px 24px -10px #f4a6378c}.recorder-hint,.recording-details span{color:var(--muted)}.recorder-hint{margin:0;font-size:.85rem}.mic-error{color:#9a4a1f;background:#fdece0;border-radius:12px;margin:14px 0 34px;padding:10px 14px;font-size:.83rem;line-height:1.4}.modal-backdrop{z-index:20;background:#141e1873;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:var(--paper);width:min(100%,460px);max-height:85vh;box-shadow:var(--shadow);border-radius:20px;padding:28px;overflow-y:auto}.disciplines-list{flex-direction:column;gap:18px;margin:18px 0;display:flex}.discipline-category{flex-direction:column;gap:10px;display:flex}.discipline-category h4,.discipline-catalog-section>h3{color:var(--ink);margin:0;font-size:1rem}.discipline-category h4{color:var(--muted);margin:0;font-size:.9rem}.discipline-catalog-section{flex-direction:column;gap:14px;display:flex}.discipline-option{color:var(--ink);cursor:pointer;align-items:center;gap:10px;font-size:.95rem;display:flex}.discipline-option input{width:18px;height:18px;accent-color:var(--accent)}.custom-discipline-option span,.custom-discipline-option small{display:block}.custom-discipline-option small{color:var(--muted);margin-top:3px;font-size:.85rem;font-weight:400}.handedness-setting{flex-direction:column;align-items:flex-start;margin:18px 0}.handedness-setting select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:40px;color:var(--ink);font:inherit;border-radius:6px;padding:8px 10px}.modal-actions{justify-content:flex-end;gap:14px;margin-top:20px;display:flex}.privacy-card{width:min(100%,520px)}.privacy-points{color:var(--ink);flex-direction:column;gap:12px;margin:18px 0;padding:0 0 0 20px;font-size:.92rem;line-height:1.5;display:flex}.privacy-checkbox{border-top:1px dashed var(--line);margin-top:6px;padding-top:14px;font-weight:600}.scratchpad-card{flex-direction:column;width:min(100%,680px);max-height:90vh;display:flex}.scratchpad-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.scratchpad-status-badge{flex-shrink:0;margin-top:4px}.suggested-plan-preview{border-left:3px solid var(--accent);color:var(--ink);white-space:pre-wrap;margin:12px 4px 0;padding:12px 14px;font-size:.84rem;line-height:1.5}.recorder-cancel{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:4px 0;font-size:.78rem;font-weight:700}.recorder-cancel:disabled{opacity:.6;cursor:not-allowed}.scratchpad-status{letter-spacing:.04em;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:700}.scratchpad-status.saving{color:var(--muted);background:#6c7d781f}.scratchpad-status.saved{color:var(--accent);background:var(--accent-soft)}.scratchpad-status.error{color:#c93b2b;background:#c93b2b1a}.scratchpad-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 10px;padding-bottom:10px;display:flex}.scratchpad-format-buttons{align-items:center;gap:6px;display:flex}.toolbar-button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:4px 10px;font-size:.82rem;transition:background-color .15s,border-color .15s;display:inline-flex}.toolbar-button:hover:not(:disabled){border-color:var(--muted);background:#6c7d781f}.toolbar-button:disabled{opacity:.4;cursor:not-allowed}.scratchpad-mode-toggle{background:#6c7d781f;border-radius:6px;padding:2px;display:flex}.mode-toggle-button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px 12px;font-size:.78rem;font-weight:700;transition:all .15s}.mode-toggle-button.active{background:var(--paper,#fff);color:var(--ink);box-shadow:0 1px 3px #0000001a}.scratchpad-editor-area{flex-direction:column;flex:1;min-height:280px;display:flex}.scratchpad-textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:280px;max-height:55vh;color:var(--ink);resize:vertical;background:#fff;border-radius:10px;flex:1;padding:14px;font-family:inherit;font-size:.95rem;line-height:1.6}.scratchpad-textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.scratchpad-preview-box{box-sizing:border-box;border:1px solid var(--line);min-height:280px;max-height:55vh;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:14px;font-size:.95rem;line-height:1.6;overflow-y:auto}.scratchpad-preview-box:hover{border-color:var(--muted)}.scratchpad-rendered-paragraph{margin:0 0 10px}.scratchpad-rendered-list{margin:0 0 12px 20px;padding:0}.scratchpad-rendered-list li{margin-bottom:4px}.scratchpad-empty-line{height:12px}.scratchpad-empty-placeholder{color:var(--muted);margin:0;font-style:italic}.daily-sections{flex-direction:column;gap:12px;display:flex}.weather-card{background:var(--paper);border:1px solid #1f8a632e;border-radius:18px;flex-direction:column;gap:10px;margin-bottom:14px;padding:14px 16px;display:flex}.weekly-summary-card{background:var(--paper);border:1px solid #1f8a632e;border-radius:18px;flex-direction:column;gap:8px;margin-bottom:14px;padding:14px 16px;display:flex}.weekly-summary-title{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.85rem;font-weight:700}.weekly-summary-intro,.weekly-summary-range{color:var(--ink-soft,#666);margin:0;font-size:.85rem}.weekly-summary-excerpt{white-space:pre-wrap;margin:0;font-size:.92rem;line-height:1.4}.weekly-summary-actions{flex-wrap:wrap;gap:12px;display:flex}.weekly-summary-overlay{z-index:50;background:#00000073;justify-content:center;align-items:flex-start;padding:24px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.weekly-summary-overlay-content{background:var(--paper);border-radius:18px;flex-direction:column;gap:10px;width:100%;max-width:560px;padding:20px;display:flex}.weekly-summary-overlay-close{align-self:flex-end}.weekly-summary-full-text{white-space:pre-wrap;margin:0;line-height:1.5}.weather-card-header{justify-content:space-between;align-items:center;display:flex}.weather-header-actions{align-items:center;gap:6px;display:flex}.weather-card-title{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:.85rem;font-weight:700}.weather-source-tag{background:var(--accent-soft);border-radius:999px;padding:3px 10px;font-size:.7rem;font-weight:700}.weather-summary{flex-wrap:wrap;align-items:center;gap:12px;font-size:.95rem;display:flex}.weather-emoji{font-size:1.4rem}.weather-location{color:var(--muted);margin:-4px 0 0;font-size:.78rem}.weather-form-actions{flex-wrap:wrap;gap:8px;display:flex}.weather-manual-form{flex-wrap:wrap;gap:10px;display:flex}.weather-manual-form label{color:var(--accent);flex-direction:column;flex:140px;gap:4px;font-size:.75rem;font-weight:600;display:flex}.weather-manual-form input,.weather-manual-form select{border:1px solid #1f8a6347;border-radius:10px;padding:8px 10px;font-size:.9rem}.weather-manual-form .weather-form-actions{flex-basis:100%}.photo-gallery{flex-direction:column;gap:8px;margin-top:4px;display:flex}.photo-gallery-title{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:.8rem;font-weight:700}.photo-thumbnails{flex-wrap:wrap;gap:8px;display:flex}.photo-thumbnail{background:var(--paper);cursor:pointer;border:1px solid #1f8a6347;border-radius:12px;width:72px;height:72px;padding:0;overflow:hidden}.photo-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.photo-add-button{background:var(--accent-soft);width:72px;height:72px;color:var(--accent);text-align:center;cursor:pointer;border:1px dashed #1f8a6366;border-radius:12px;justify-content:center;align-items:center;padding:4px;font-size:.7rem;font-weight:700;display:flex}.photo-file-input{display:none}.photo-lightbox{background:var(--paper);width:min(100%,520px);max-height:85vh;box-shadow:var(--shadow);border-radius:20px;flex-direction:column;gap:14px;padding:20px;display:flex}.photo-lightbox img{object-fit:contain;border-radius:12px;width:100%;max-height:65vh}.discipline-group{background:var(--accent-soft);border:1px solid #1f8a6338;border-radius:20px;flex-direction:column;gap:10px;padding:16px;display:flex}.target-sessions{flex-direction:column;gap:8px;margin-top:4px;display:flex}.target-sessions-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.target-sessions-title{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:.8rem;font-weight:700}.target-trends-button{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:6px 10px;font-size:.78rem;font-weight:700}.target-import-button{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:1px dashed #1f8a6366;border-radius:10px;padding:6px 12px;font-size:.78rem;font-weight:700}.target-session-list{flex-direction:column;gap:8px;display:flex}.target-session-card{background:var(--paper);border:1px solid #1f8a6338;border-radius:14px;overflow:hidden}.target-session-summary{align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.target-plot-button{cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:0;line-height:0}.target-plot-button:hover .target-plot,.target-plot-button:focus-visible .target-plot{box-shadow:0 0 0 2px var(--accent)}.target-session-summary-text{text-align:center;min-width:0;color:var(--text-strong,inherit);background:0 0;border:none;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:12px;padding:0;font-size:.85rem;display:grid}.target-session-heading,.target-session-source-details{flex-direction:column;align-items:center;gap:2px;display:flex}.target-session-summary-text span{color:var(--text-muted,#6b7a70);font-size:.75rem}.target-session-summary-text .target-session-source{color:var(--accent);font-weight:700}.target-session-file{overflow-wrap:anywhere;max-width:100%;font-size:.68rem}.target-session-file-download{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.target-session-file-download:hover:not(:disabled){text-decoration:underline}.target-session-file-download:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.target-session-file-download:disabled{cursor:wait}@media (width<=620px){.target-session-summary-text{grid-template-columns:1fr;gap:4px}.target-session-heading,.target-session-source-details{text-align:left;align-items:flex-start}}.target-plot{background:#f4ede1;border-radius:50%;flex:none;width:56px;height:56px}.target-plot-full{aspect-ratio:1;background:#f4ede1;border-radius:4px;width:100%;height:auto;max-height:70vh}.target-plot-card{fill:#fdf9f2;stroke:#1f8a6333;stroke-width:.6px}.target-plot-black{fill:#1a1a1a}.target-plot-ring{fill:none;stroke:#1a1a1aa6;stroke-width:.3px}.target-plot-ring-on-black{fill:none;stroke:#ffffff8c;stroke-width:.3px}.target-shot-score{fill:#fff;paint-order:stroke;stroke:#000c;stroke-width:.45px;stroke-linejoin:round;font:700 1.7px system-ui,sans-serif}.target-plot-lightbox{background:var(--paper);width:min(94vw,680px);max-height:92vh;box-shadow:var(--shadow);border-radius:20px;flex-direction:column;gap:14px;padding:20px;display:flex;position:relative}.target-plot-lightbox-title{color:var(--text-strong);text-align:center}.target-series-navigation{color:var(--muted);justify-content:center;align-items:center;gap:18px;font-size:.82rem;display:flex}.target-series-navigation button{min-width:34px;font-size:1.45rem!important}.target-plot-frame-controls{background:var(--accent-soft);border:1px solid #1f8a6340;border-radius:999px;align-self:center;padding:3px;display:inline-flex}.target-plot-frame-controls button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.78rem;font-weight:700}.target-plot-frame-controls button.is-active{background:var(--paper);color:var(--accent);box-shadow:0 1px 4px #19372b29}.target-plot-canvas-stage{aspect-ratio:1;width:min(100%,86vh - 200px,520px);box-shadow:inset 0 0 0 1px var(--line);border-radius:12px;margin:0 auto;position:relative;overflow:hidden}.target-plot-zoom-viewport{overscroll-behavior:contain;background:#f4ede1;width:100%;height:100%;overflow:auto}.target-plot-zoom-content{min-width:100%;line-height:0}.target-plot-zoom-content .target-plot-full{max-height:none}.target-plot-zoom-controls{align-items:center;gap:12px;display:flex}.target-shot-score-list{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);max-height:calc(100% - 20px);color:var(--text-strong);background:#fdf9f2eb;border:1px solid #1f8a6340;border-radius:8px;flex-direction:column;gap:2px;margin:0;padding:6px 8px 6px 22px;font-size:.74rem;font-weight:700;line-height:1.25;display:flex;position:absolute;top:10px;right:10px;overflow-y:auto;box-shadow:0 2px 8px #0000001f}.target-plot-zoom-controls .text-button{min-width:32px;font-size:1rem}.target-plot-zoom-controls input[type=range]{width:min(34vw,180px);accent-color:var(--accent)}.target-session-details{flex-direction:column;gap:10px;padding:0 12px 12px;display:flex}.target-series-table{border-collapse:collapse;width:100%;font-size:.8rem}.target-series-table th,.target-series-table td{text-align:center;border-bottom:1px solid #1f8a6326;padding:4px 6px}.target-series-table th{color:var(--accent);font-weight:700}.target-series-plot-button{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;line-height:0}.target-series-plot-button .target-plot{width:40px;height:40px}.target-series-plot-button:hover .target-plot,.target-series-plot-button:focus-visible .target-plot{box-shadow:0 0 0 2px var(--accent)}.discipline-group-header{border-bottom:2px solid #1f8a6347;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;margin:0 2px 2px;padding-bottom:10px;display:grid}.discipline-header-main{align-items:center;gap:10px;min-width:0;display:flex}.discipline-header-main strong{letter-spacing:.03em;text-transform:uppercase;min-width:0;color:var(--accent);font-size:1rem}.discipline-mode-badge{color:var(--muted);white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;padding:0 3px;font-size:.66rem;font-weight:700}.discipline-group-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:8px;display:flex}.session-classification-control{min-width:0;color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:.72rem;font-weight:700;display:inline-flex}.session-classification-control select{min-width:0;max-width:170px;color:var(--accent);background:var(--paper);font:inherit;cursor:pointer;border:1px solid #1f8a633d;border-radius:999px;padding:5px 9px}.session-card-button{color:var(--accent);background:var(--paper);font:inherit;cursor:pointer;border:1px solid #1f8a633d;border-radius:999px;padding:6px 11px;font-size:.72rem;font-weight:800}.session-card-button:hover{border-color:var(--accent);background:#fff}.delete-discipline-button{cursor:pointer;opacity:.55;background:0 0;border:none;flex:none;justify-self:end;padding:4px 6px;font-size:.85rem;line-height:1}.delete-discipline-button:hover{opacity:1}.delete-discipline-button:disabled{opacity:.3;cursor:default}.free-speech-note{color:var(--accent)!important;margin:4px 0 0!important;font-size:.75rem!important}.discipline-picker-wrap{margin-top:20px}.discipline-picker-hint{color:var(--accent);margin:0 0 8px 2px;font-size:.78rem;font-weight:600}.discipline-picker{border:1px dashed var(--line);border-radius:14px;flex-wrap:nowrap;align-items:center;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.discipline-picker select{border:1px solid var(--line);background:var(--paper);width:148px;min-width:100px;color:var(--ink);font:inherit;border-radius:999px;flex:0 auto;padding:8px 10px;font-size:.8rem}.discipline-picker .language-toggle{flex-shrink:0;gap:2px}.discipline-picker .language-toggle button{letter-spacing:.02em;white-space:nowrap;padding:5px 8px;font-size:.68rem}.discipline-picker .text-button{white-space:nowrap;flex-shrink:0}.add-discipline-button{color:#fff;background:var(--accent);font:inherit;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;flex-shrink:0;margin:0;padding:7px 14px;font-size:.78rem;font-weight:700}.add-discipline-button:disabled{opacity:.5;cursor:default}.add-section-wrap{margin-bottom:14px;position:relative}.add-section-button{border:1px dashed var(--accent);background:var(--paper);color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;padding:8px 16px;font-size:.8rem;font-weight:700}.add-section-menu{z-index:5;border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column;gap:2px;min-width:200px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0000001f}.add-section-option{text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 10px;font-size:.82rem;font-weight:600}.add-section-option:hover{background:var(--accent-soft)}.free-speech-group-header{border-bottom:none;justify-content:flex-end;margin-bottom:-4px;padding-bottom:0}.daily-section{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:16px;padding:20px 22px;transition:border-color .18s,box-shadow .18s,transform .12s}.daily-section:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.daily-section.selected{border-color:var(--accent);box-shadow:var(--shadow)}.daily-section-heading{align-items:flex-start;gap:14px;display:flex}.daily-section-heading>div{flex:1}.daily-section-heading h2{color:var(--ink);margin-bottom:0;font-size:1.1rem}.section-state{color:var(--muted);letter-spacing:.1em;white-space:nowrap;background:#6c7d781a;border-radius:999px;padding:4px 10px;font-size:.62rem;font-weight:700}.section-state.complete{color:var(--accent);background:var(--accent-soft)}.section-state.complete:before{content:"✓ "}.daily-section .recording-row{border-bottom:0;margin-top:17px;padding-bottom:0}.section-actions-row{flex-wrap:wrap;align-items:center;gap:16px;margin:17px 0 0 48px;display:flex}.section-actions-row .choose-section{margin:0}.suggest-plan-container{align-items:center;gap:8px;display:inline-flex}.suggest-plan-button{border:1px solid var(--accent);color:var(--accent);font:inherit;cursor:pointer;background:#2e75591a;border-radius:999px;padding:4px 12px;font-size:.76rem;font-weight:700;transition:all .15s}.suggest-plan-button:hover:not(:disabled){background:var(--accent);color:#fff}.suggest-plan-button:disabled{opacity:.5;cursor:wait}.choose-section{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin:17px 0 0 48px;padding:0;font-size:.78rem;font-weight:700}.text-button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:.78rem;font-weight:700}.text-button:disabled{opacity:.6;cursor:default}.app-footer{text-align:center;border-top:1px solid var(--line);margin-top:auto;padding:20px 0 32px}.app-footer .text-button{color:var(--muted);font-size:.72rem;font-weight:600;text-decoration:underline}.section-heading>span{color:var(--muted);font-size:.8rem}.recordings-list{border-top:1px solid var(--line)}.recording-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:17px 0;display:flex}.play-button{border:1px solid var(--line);width:34px;height:34px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:50%;font-size:.85rem}.play-button:disabled{color:var(--muted);cursor:wait;background:0 0}.play-button.playing{border-color:var(--sun);color:var(--sun);background:var(--sun-soft)}.recording-details{flex-direction:column;flex:1;gap:3px;display:flex}.recording-details strong{color:var(--ink);align-items:baseline;gap:8px;font-size:.95rem;display:flex}.recording-duration{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:400}.recording-details span{font-size:.78rem}.recording-transcript{white-space:pre-wrap}.free-speech-content{cursor:pointer;display:inline}.free-speech-content .blurred{filter:blur(5px);-webkit-user-select:none;user-select:none}.free-speech-content .reveal-hint{color:var(--accent);margin-left:6px;font-size:.72rem;font-weight:600;display:inline-block}.delete-button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:.8rem;transition:color .15s,background .15s}.delete-button:hover:not(:disabled){color:#9a4a1f;background:#fdece0}.delete-button:disabled{opacity:.4;cursor:not-allowed}.recording-row time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.edit-transcript-button{cursor:pointer;opacity:.6;vertical-align:baseline;background:0 0;border:0;padding:0 0 0 6px;font-size:.75rem;line-height:1}.edit-transcript-button:hover{opacity:1}.golden-star-button{cursor:pointer;opacity:.45;background:0 0;border:0;padding:4px;font-size:1.1rem;line-height:1;transition:opacity .15s,transform .15s}.golden-star-button:hover{opacity:.85;transform:scale(1.15)}.golden-star-button.is-golden{opacity:1;filter:drop-shadow(0 0 4px #f4a63766)}.golden-note-toggle-label{cursor:pointer;background:#f4a63714;border:1px solid #f4a63740;border-radius:8px;align-items:flex-start;gap:8px;margin:10px 0 14px;padding:8px 12px;display:flex}.golden-note-toggle-label input[type=checkbox]{accent-color:var(--sun,#f4a637);width:16px;height:16px;margin-top:3px}.golden-note-toggle-label div{flex-direction:column;display:flex}.golden-note-toggle-label span{color:var(--ink);font-size:.82rem;font-weight:700}.golden-note-toggle-label small{color:var(--muted);font-size:.72rem;line-height:1.3}.add-feelings-button{border:1px dashed var(--line);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px;font-size:.76rem;font-weight:700;transition:all .15s}.add-feelings-button:hover{border-color:var(--accent);background:var(--accent-soft)}.golden-thoughts-button{color:#a45a00;font:inherit;cursor:pointer;background:#f4a6371f;border:1px solid #f4a63759;border-radius:999px;padding:4px 12px;font-size:.76rem;font-weight:700;transition:all .15s}.golden-thoughts-button:hover{background:#f4a63738}.golden-thoughts-modal{width:min(100%,500px)}.golden-thoughts-list{flex-direction:column;gap:12px;max-height:60vh;margin:18px 0;display:flex;overflow-y:auto}.golden-thought-item{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.golden-thought-icon{font-size:1.1rem;line-height:1.2}.golden-thought-content{flex:1}.golden-thought-text{color:var(--ink);margin:0 0 6px;font-size:.92rem;font-weight:600;line-height:1.45}.golden-thought-date{color:var(--muted);font-size:.72rem}.golden-thoughts-empty{color:var(--muted);margin:10px 0;font-size:.85rem;font-style:italic}.transcript-edit{flex-direction:column;gap:8px;display:flex}.transcript-textarea{border:1px solid var(--line);width:100%;min-height:60px;font:inherit;color:var(--ink);resize:vertical;background:#fff;border-radius:8px;padding:8px 10px;font-size:.85rem}.transcript-error{color:#9a4a1f;margin:0;font-size:.78rem}.transcript-edit-actions{gap:10px;display:flex}.transcript-save,.transcript-cancel{font:inherit;cursor:pointer;border:0;border-radius:999px;padding:6px 14px;font-size:.78rem;font-weight:700}.transcript-save{color:#fff;background:var(--accent)}.transcript-save:disabled,.transcript-cancel:disabled{opacity:.6;cursor:not-allowed}.transcript-cancel{color:var(--muted);background:0 0}.analysis-block{margin:12px 4px 24px;padding:4px}.coach-feedback{background:var(--accent-soft);border-radius:14px;margin-bottom:12px;padding:16px 18px}.coach-feedback .eyebrow{margin-bottom:8px}.coach-feedback p:last-child{color:var(--ink);white-space:pre-wrap;margin:0;font-size:.88rem;line-height:1.55}.analyze-button{background:linear-gradient(135deg, var(--accent), var(--sun));color:#fff;font:inherit;letter-spacing:.01em;cursor:pointer;background-size:200% 200%;border:0;border-radius:999px;align-items:center;gap:8px;padding:13px 24px;font-size:.9rem;font-weight:700;transition:transform .18s,box-shadow .18s,background-position .4s;display:inline-flex;box-shadow:0 14px 30px -12px #1f8a638c}.analyze-button:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 18px 34px -10px #f4a6378c}.analyze-button:active{transform:translateY(0)}.reanalyze-remaining{color:var(--muted);margin-top:6px;font-size:.72rem;display:block}.reanalyze-limit-note{color:var(--muted);margin:0;font-size:.8rem;font-style:italic}.session-card-modal{background:var(--paper);width:min(100%,520px);max-height:90vh;box-shadow:var(--shadow);border-radius:22px;padding:22px;overflow-y:auto}.session-card-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.session-card-modal-header h2{margin:0;font-size:1.55rem}.session-card-preview-wrap{background:var(--accent-soft);border-radius:20px;padding:12px}.session-card-preview{border-radius:16px;width:100%;display:block;box-shadow:0 16px 32px -22px #0f1f1a80}.session-card-privacy-note{color:var(--muted);margin:12px 2px 0;font-size:.78rem;line-height:1.45}.session-card-options{flex-direction:column;gap:8px;margin:6px 0 14px;display:flex}.session-card-option{align-items:center;gap:10px;font-size:.92rem;display:flex}.session-card-option input[type=checkbox]{width:18px;height:18px}.session-card-photo-load-error{color:var(--muted);margin:-4px 0 2px 28px;font-size:.78rem}.session-card-score-format{border:0;flex-direction:column;gap:8px;margin:0 0 2px;padding:0;display:flex}.session-card-score-format legend{margin-bottom:8px;font-size:.92rem;font-weight:700}.session-card-score-format input[type=radio]{width:18px;height:18px}.session-card-photo-picker{margin-bottom:14px}.session-card-photo-picker-note{color:var(--muted);margin:0 0 8px;font-size:.78rem}.session-card-photo-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;display:grid}.session-card-photo-option{cursor:pointer;aspect-ratio:1;border:3px solid #0000;border-radius:12px;display:block;position:relative;overflow:hidden}.session-card-photo-option img{object-fit:cover;width:100%;height:100%;display:block}.session-card-photo-option input[type=checkbox],.session-card-photo-option input[type=radio]{width:18px;height:18px;position:absolute;top:6px;right:6px}.session-card-crop-editor{gap:6px;margin-top:12px;display:grid}.session-card-crop-editor p{color:var(--muted);margin:0;font-size:.78rem}.session-card-crop-editor .text-button{justify-self:start;font-size:.8rem}.session-card-crop-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.session-card-crop-item{background:var(--paper);border:1px solid #0f1f1a24;border-radius:12px;min-width:0;padding:8px}.session-card-crop-item h3{margin:0 0 6px;font-size:.78rem}.session-card-crop-viewport{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#dcefe7;border-radius:8px;width:100%;position:relative;overflow:hidden}.session-card-crop-viewport:active{cursor:grabbing}.session-card-crop-viewport img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;max-height:none;display:block;position:absolute}.session-card-crop-controls{align-items:center;gap:8px;margin-top:8px;display:flex}.session-card-crop-controls label{flex:1;align-items:center;gap:8px;min-width:0;font-size:.76rem;display:flex}.session-card-crop-controls input[type=range]{flex:1;min-width:50px}.session-card-crop-controls .text-button{flex:none}.session-card-style-picker{grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 16px;display:grid}.session-card-style-option{background:var(--accent-soft);cursor:pointer;font:inherit;color:inherit;text-align:center;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:stretch;gap:6px;padding:6px;display:flex}.session-card-style-option img{aspect-ratio:4/5;object-fit:cover;border-radius:10px;width:100%;display:block}.session-card-style-option span{font-size:.76rem;font-weight:700}.session-card-style-option.is-selected{border-color:var(--accent)}.session-card-style-option.is-disabled{opacity:.4;cursor:not-allowed}.session-card-size-picker{gap:10px;margin:0 0 16px;display:flex}.session-card-size-option{background:var(--accent-soft);cursor:pointer;font:inherit;color:inherit;text-align:center;border:2px solid #0000;border-radius:12px;flex:1;padding:10px;font-size:.86rem;font-weight:700}.session-card-size-option.is-selected,.session-card-photo-option.is-selected{border-color:var(--accent)}.session-card-photo-option.is-disabled{opacity:.4;cursor:not-allowed}@keyframes pulse{50%{box-shadow:0 0 0 10px #f4a6372e}}@media (width<=520px){.app-shell{padding:0 16px}.topbar{padding:10px 0}.entry{padding-top:56px}.date-heading{font-size:clamp(1.45rem,7vw,1.95rem)}.discipline-group-header{grid-template-columns:minmax(0,1fr) auto}.discipline-header-main{gap:7px}.discipline-header-main strong{overflow-wrap:anywhere;font-size:.9rem}.session-classification-control{gap:4px;font-size:0}.session-classification-control select{max-width:132px;padding:5px 7px;font-size:.7rem}.discipline-group-actions{justify-content:flex-start;width:100%}.session-card-button{flex:150px}.session-card-modal{padding:18px}.daily-section{padding:18px 16px}.daily-section-heading{grid-template-columns:auto minmax(0,1fr);gap:7px 12px;display:grid}.daily-section-heading>div{min-width:0}.daily-section-heading h2{font-size:1rem}.daily-section-heading p{font-size:.8rem}.daily-section-heading .section-state{white-space:normal;text-align:left;grid-column:2;justify-self:start;max-width:100%}.choose-section{margin:14px 0 0 40px}.landing-hero{padding:22px 0 20px}.landing-ghost-decor{width:32px;height:38px;top:4px;right:8px}.landing-hero .eyebrow{margin-bottom:8px}.landing-hero h1{max-width:360px;margin-bottom:10px;font-size:clamp(2.35rem,13vw,3.25rem);line-height:.95}.landing-hero-intro{max-width:330px;margin-bottom:22px;font-size:.92rem;line-height:1.45}.landing-hero-photo{max-width:300px;margin-bottom:22px}.landing-hero-photo img{border-radius:14px}.landing-hero-photo figcaption{margin-top:6px;font-size:.66rem}.landing-features{gap:10px;padding:0 0 28px}.landing-feature-card{border-radius:15px;padding:14px 12px}.landing-feature-icon{margin-bottom:8px;font-size:1.25rem}.landing-feature-title{font-size:.9rem;line-height:1.2}.landing-feature-body{font-size:.78rem;line-height:1.35}.landing-preview{padding:4px 0 28px}.landing-preview-label{margin-bottom:10px}.landing-mockup{border-radius:16px;max-width:320px}.landing-mockup-bar{padding:10px 12px}.landing-mockup-dot{width:7px;height:7px}.landing-mockup-body{gap:9px;padding:12px}.landing-mockup-card{border-radius:12px;padding:11px 12px}.landing-privacy{margin-bottom:28px;padding:14px 16px}.landing-footer{padding:0 0 34px}.record-button{padding:10px 18px;font-size:.92rem}}
