@charset "UTF-8";
:root{color-scheme:dark;--bg:#0c1020;--sidebar:#101426;--panel:#151b30;--panel-soft:#192139;--text:#eff0fa;--muted:#a6afc7;--line:#2a324b;--accent:#c2b0ff;--shadow:0 16px 48px #00000012;--base:16px}
:root[data-theme=light]{color-scheme:light;--bg:#f5f6fb;--sidebar:#fff;--panel:#fff;--panel-soft:#eef1fa;--text:#20283d;--muted:#5e687f;--line:#dce0ec;--accent:#6544b7;--shadow:0 16px 48px #27335b06}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:var(--base)/1.65 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,select{cursor:pointer}button,a,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #5fbbef;outline-offset:5px}button{color:inherit}button,a{transition:background .15s,color .15s}button:disabled{cursor:default}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3.2vw,44px);letter-spacing:-1.5px;line-height:1.2;margin-bottom:12px;font-weight:650}h2{font-size:23px;line-height:1.35;letter-spacing:-.6px;font-weight:620}h3{font-size:19px;letter-spacing:-.3px}p{color:var(--muted)}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:var(--sidebar);border-right:1px solid var(--line);padding:38px 26px;display:flex;flex-direction:column;z-index:5}.brand{font-size:24px;font-weight:650;letter-spacing:5px;display:flex;align-items:center;gap:10px}.brand span{font-size:9px;letter-spacing:2px;border-left:1px solid var(--line);padding-left:12px;color:var(--accent)}.workspace{display:flex;align-items:center;gap:12px;padding:36px 0 28px}.workspace-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:linear-gradient(135deg,#58ceee,#a275f6);color:#11172c;font-size:24px;font-weight:800}.workspace strong,.workspace small{display:block}.workspace small{font-size:11px;color:var(--muted)}.navigation{display:grid;gap:9px}.navigation a{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:12px;color:var(--muted);font-size:14px;font-weight:550;min-height:48px}.navigation a>span:first-child{font-size:22px;width:25px;text-align:center;line-height:1}.navigation a:hover,.navigation a[aria-current=page]{background:var(--panel-soft);color:var(--text)}.navigation a[aria-current=page]{box-shadow:inset 3px 0 var(--accent)}.sidebar-bottom{margin-top:auto;padding-top:26px}.sidebar-bottom p{font-size:12px;line-height:1.8}.settings-link,.back-link{display:block;font-size:12px;padding:12px 0}.settings-link{border-top:1px solid var(--line);margin-top:22px}.back-link{color:var(--muted)}.app{margin-left:246px}.topbar{height:78px;border-bottom:1px solid var(--line);padding:0 48px;display:flex;align-items:center;justify-content:space-between}.preview-badge{font-size:11px;letter-spacing:.6px;color:var(--muted);display:flex;align-items:center;gap:9px}.preview-badge i{height:6px;width:6px;background:#85c6bd;border-radius:50%}.top-settings{font-size:12px;padding:12px}.mobile-brand{display:none}main{max-width:1260px;padding:48px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.page-heading p:last-child{margin-bottom:0}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.2px;color:var(--accent);margin-bottom:12px}.quiet-button{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:11px 14px;font-size:12px;min-height:44px}.quiet-button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.quiet-button span{margin-left:10px}.preview-note{display:flex;gap:12px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:10px;margin-bottom:26px;background:var(--panel)}.preview-note p{font-size:12px;margin:0}.preview-note>span{color:var(--accent);font-size:22px}.welcome-card{padding:38px 42px;border:1px solid var(--line);border-radius:22px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:radial-gradient(ellipse at right top,#7258b929,transparent 75%),var(--panel);overflow:hidden}.welcome-card h2{font-size:clamp(24px,2.8vw,34px);letter-spacing:-1px;margin-bottom:14px}.welcome-card p:not(.eyebrow){font-size:14px;line-height:1.9}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:46px;padding:12px 18px;border-radius:10px;font-size:13px;font-weight:650}.primary{background:linear-gradient(115deg,#a7deee,#c7affb);color:#17203a}.primary:hover{background:#d3c8fa}.secondary{border:1px solid var(--line);margin-top:20px}.pam-orbit{width:190px;height:190px;position:relative;flex-shrink:0;display:grid;place-items:center}.orbit-ring{position:absolute;inset:0;border:1px solid #9f91d34d;border-radius:50%;transform:rotate(-25deg) scaleY(.82)}.pam-mark{font-size:95px;line-height:1;font-weight:750;letter-spacing:-10px;color:#c6bbff;text-shadow:0 0 50px #8471d566}.pam-mark span{color:#67d4ed}.orbit-dot{position:absolute;right:3px;top:64px;width:12px;height:12px;border-radius:50%;background:#95c8ea;box-shadow:0 0 25px #95c8ea55}.section-label{display:flex;justify-content:space-between;align-items:center;margin:34px 0 16px;gap:12px}.section-label h2{font-size:17px;margin:0}.section-label>span{font-size:11px;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:var(--shadow);min-width:0}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.card-top>.muted{font-size:11px}.card p{font-size:13px;line-height:1.9}.card h3{margin-bottom:12px}.card-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;font-size:22px;margin-bottom:16px}.card-top .card-icon{margin:0}.lavender{background:#9981d929;color:var(--accent)}.blue{background:#4ca5d522;color:#80bddc}.rose{background:#d489b125;color:#dca0be}:root[data-theme=light] .blue{color:#24688d}:root[data-theme=light] .rose{color:#914a70}.text-link{color:var(--accent);font-size:12px;display:inline-flex;align-items:center;min-height:44px}.text-link:hover{text-decoration:underline}.muted{color:var(--muted)}.gentle-note{display:flex;align-items:center;gap:18px;border:1px solid var(--line);border-radius:14px;padding:22px 26px;margin-top:22px}.gentle-note>span{font-size:24px;color:var(--accent)}.gentle-note strong{font-size:13px;font-weight:550}.gentle-note p{font-size:12px;margin:3px 0 0}.gentle-note a{margin-left:auto;white-space:nowrap;color:var(--accent);font-size:12px;padding:12px 0}.app-footer{display:flex;justify-content:space-between;gap:16px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:.4px}.feature-card{max-width:790px;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:44px}.feature-card>p{max-width:580px}.large-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:34px;margin-bottom:30px}.type-list{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.type-list span,.stage-label{border:1px solid var(--line);border-radius:9px;font-size:12px;padding:8px 15px;color:var(--muted)}.coming{padding:22px;background:var(--panel-soft);border-radius:14px;margin-top:28px}.coming strong{font-size:14px}.coming p{font-size:13px;margin:8px 0 0}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.field{display:block;font-size:13px;padding:16px 0}.field select{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 0;border-top:1px solid var(--line)}.switch-row strong{display:block;font-size:13px;font-weight:550}.switch-row small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.switch-row input{width:23px;height:23px;accent-color:#9876db;flex-shrink:0}.privacy-list{padding-left:19px;font-size:13px;line-height:1.9;color:var(--muted)}.privacy-list li{margin-bottom:12px}body.low-energy .optional{display:none}body.low-energy .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.large-text{--base:18px}body.large-text p,body.large-text .card p,body.large-text .coming p,body.large-text .privacy-list{font-size:1rem}body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:var(--panel);padding:12px 20px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.noscript{margin:20px}
@media(min-width:1500px){main{padding-top:60px}}
@media(max-width:1100px){.sidebar{width:210px;padding:30px 20px}.app{margin-left:210px}main{padding:32px}.topbar{padding-inline:32px}.welcome-card{padding:30px}.pam-orbit{width:140px;height:140px}.card-grid{gap:12px}.card{padding:20px}.page-heading{align-items:flex-start}.quiet-button{flex-shrink:0}.settings-grid{grid-template-columns:1fr}}
@media(max-width:800px){.sidebar{position:fixed;inset:auto 0 0;width:auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);background:var(--sidebar)}.sidebar>.brand,.workspace,.sidebar-bottom{display:none}.navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.navigation a{padding:8px 2px;flex-direction:column;gap:4px;font-size:10px;min-height:56px;border-radius:9px}.navigation a[aria-current=page]{box-shadow:inset 0 2px var(--accent)}.app{margin-left:0;padding-bottom:calc(92px + env(safe-area-inset-bottom))}.topbar{height:68px;padding:0 22px;gap:12px}.mobile-brand{display:block;font-size:19px;font-weight:650;letter-spacing:-.5px}.mobile-brand small{display:block;font-size:9px;font-weight:400;letter-spacing:1px;color:var(--muted)}.preview-badge{font-size:9px;margin-left:auto}.preview-badge i{display:none}.top-settings{font-size:11px;padding:10px 0 10px 4px}main{padding:30px 22px}.page-heading{display:block}.page-heading .quiet-button{margin-top:18px}.preview-note{margin-top:20px}.welcome-card{padding:28px}.pam-orbit{width:105px;height:105px}.pam-mark{font-size:70px;letter-spacing:-8px}.orbit-dot{width:9px;height:9px;right:0;top:35px}.welcome-card .eyebrow{max-width:200px}.welcome-card p br{display:none}.welcome-card h2{font-size:26px}.card-grid,body.low-energy .card-grid{grid-template-columns:1fr}.card{padding:24px}.card-top{margin-bottom:14px}.gentle-note{flex-wrap:wrap;padding:20px}.gentle-note a{margin-left:42px;padding:2px 0}.section-label{margin-top:28px}.feature-card{padding:28px}.app-footer{margin-top:32px;font-size:9px}}
@media(max-width:440px){.pam-orbit{display:none}.welcome-card{padding:26px}.preview-badge{max-width:80px;line-height:1.4}.section-label>span{max-width:125px;text-align:right}.app-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Personal organiser */
.organiser-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 25px}.organiser-toolbar #sync-status{font-size:12px;color:var(--muted)}.error,#editor-status{color:#d9a6b9}.item-list{display:grid;gap:12px}.item-row{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;padding:23px 25px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.item-copy{min-width:0;flex:1}.item-copy h3{margin:0 0 6px;overflow-wrap:anywhere}.item-meta{font-size:11px;margin:0;color:var(--muted)}.item-body{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0 0;max-height:150px;overflow:auto}.item-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:240px}.item-actions button{font-size:11px}.item-actions button:disabled{opacity:.45;cursor:default}.is-done h3{text-decoration:line-through;color:var(--muted)}.empty-state{border:1px dashed var(--line);border-radius:14px;padding:25px;font-size:14px}.plan-tabs{display:flex;gap:9px;overflow-x:auto;margin-bottom:24px;padding:4px}.plan-tabs button{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:12px 18px;font-size:13px;white-space:nowrap}.plan-tabs button[aria-pressed=true]{background:var(--panel-soft);border-color:var(--accent);color:var(--accent)}.field input,.field textarea{display:block;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);margin-top:8px;font:inherit}.field textarea{resize:vertical;min-height:100px}.calendar-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px}.calendar-heading h2{margin:0;flex:1;text-align:center;font-size:21px}.calendar-grid,.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekdays{text-align:center;font-size:11px;color:var(--muted);padding-bottom:10px}.calendar-day{min-height:75px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel);text-align:left}.calendar-day small{display:block;font-size:9px;color:var(--accent);margin-top:7px}.calendar-day[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:-2px;background:var(--panel-soft)}.calendar-day.is-today{font-weight:800;color:var(--accent)}.calendar-hint{font-size:11px;margin:15px 0}.editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}#item-dialog{width:min(620px,calc(100% - 28px));max-height:88dvh;overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:20px;padding:30px}#item-dialog::backdrop{background:#050815b8}.editor-heading,.editor-actions{display:flex;align-items:center;gap:15px;justify-content:space-between}.editor-heading h2{margin:0}.editor-actions{justify-content:flex-start}.editor-actions button{border:1px solid var(--line)}#editor-hint,#editor-status{font-size:12px}#capture-form>p{font-size:12px;margin:16px 0 0}
@media(max-width:800px){.item-row{flex-direction:column;padding:20px}.item-actions{max-width:none;justify-content:flex-start}.calendar-day{min-height:60px;padding:8px 5px}.calendar-day small{font-size:8px}.calendar-heading{gap:7px}.calendar-heading h2{font-size:17px}.calendar-heading button{padding:10px}.editor-fields{grid-template-columns:1fr}#item-dialog{padding:22px}.organiser-toolbar #sync-status{flex-basis:100%}}
/* Stage 4: private check-ins and explicitly shared plans. */
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 18px}.section-heading h2{margin:0}.section-heading p{max-width:680px}.member-row,.recipient-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.member-row span,.recipient-row span{overflow-wrap:anywhere}.recipient-row select{max-width:190px}.household-card{margin:20px 0}.household-card h3{overflow-wrap:anywhere}.household-card details{margin:16px 0}.household-card summary{cursor:pointer;padding:10px 0}.checkin-metrics{display:flex;flex-wrap:wrap;gap:10px;font-size:.9rem}.checkin-metrics span{padding:6px 10px;border-radius:8px;background:var(--panel-soft)}#shared-dialog{width:min(680px,calc(100% - 32px));max-height:90vh;overflow:auto;padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--panel);color:inherit}#shared-dialog::backdrop{background:rgba(3,6,18,.75)}#shared-recipients{border:1px solid var(--line);border-radius:14px;margin:18px 0;padding:16px}#invite-code{font-family:monospace;font-size:.9rem}#checkin-history .item-row,#shared-list .item-row{margin-bottom:12px}.shared-access{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}@media(max-width:600px){.section-heading{align-items:flex-start;flex-direction:column}.member-row,.recipient-row{flex-wrap:wrap}.recipient-row select{width:100%;max-width:none}#shared-dialog{padding:20px}}

.recipient-row select{font:inherit;background:var(--panel-soft);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px}.field textarea{font:inherit}

/* Stage 5: optional assistant tools, respecting the existing display theme. */
.companion-card { margin-bottom: 1.5rem; border-inline-start: 3px solid var(--accent, #8b7bff); }
.companion-card p { font-size: 1.1rem; }
.assistant-panel { padding: 1rem; margin-block: 1rem; border: 1px solid var(--line); border-radius: 14px; background: var(--panel-soft); }
.assistant-panel summary { cursor: pointer; font-weight: 600; }
.assistant-panel .field { margin-top: 1rem; }
