.planner{gap:var(--space-5);width:min(100%,72rem);margin-inline:auto;padding:clamp(1rem,4vw,2rem);display:grid}.planner-hero,.planner-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-panel);padding:clamp(1rem,4vw,1.5rem)}.planner-hero{gap:var(--space-5);display:grid}.planner-hero h1,.planner-hero p,.section-heading h2,.section-heading p,.template-card h3,.template-card p,.plan-group h3,.task-card h4,.task-card p{margin:0}.planner-hero h1{margin-top:var(--space-2);font-size:clamp(2rem,8vw,3.5rem);line-height:1}.planner-hero p,.section-heading p,.template-card p,.task-main p,.empty-state{color:var(--color-muted);line-height:1.55}.planner-progress{border-radius:var(--radius-md);background:var(--color-success-bg);min-width:9rem;color:var(--color-text);padding:var(--space-4);align-content:center;display:grid}.planner-progress strong{font-size:2rem;line-height:1}.review-status{font-size:.9rem;font-weight:720;margin-top:var(--space-2)!important}.planner-section{gap:var(--space-4);display:grid}.section-heading{gap:var(--space-1);display:grid}.section-heading.split{gap:var(--space-3)}.section-heading h2{font-size:clamp(1.35rem,5vw,1.9rem);line-height:1.1}.template-grid{gap:var(--space-3);display:grid}.template-card,.task-card{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;padding:var(--space-4);display:grid}.template-card svg{color:var(--color-accent-strong)}.template-card h3,.plan-group h3,.task-card h4{font-size:1rem;line-height:1.25}.task-form{gap:var(--space-3);display:grid}.plan-list,.task-list{gap:var(--space-4);display:grid}.plan-group{gap:var(--space-3);display:grid}.task-list{padding:0;list-style:none}.task-card.done{background:var(--color-surface-soft)}.task-main{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.task-main svg{color:var(--color-accent-strong);flex:none}.task-main p{align-items:center;gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.blocked-note{border-radius:var(--radius-sm);background:var(--color-warning-bg);color:var(--color-warning-text);padding:var(--space-3);font-weight:720}.checklist{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.checklist legend{margin-bottom:var(--space-2);color:var(--color-muted);font-size:.85rem;font-weight:760}.checklist label{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);min-height:44px;display:grid}.checklist input{width:1.25rem;height:1.25rem;accent-color:var(--color-text)}.task-actions{gap:var(--space-2);display:grid}.compact-input{min-width:0}.review-button{width:100%}.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-5)}@media (width>=42rem){.planner-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end}.template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section-heading.split{grid-template-columns:minmax(0,1fr) auto;align-items:start}.task-actions{grid-template-columns:11rem minmax(10rem,1fr) auto;align-items:center}.review-button{width:auto}}@media (width>=54rem){.task-form{grid-template-columns:minmax(12rem,1fr) 11rem 12rem auto;align-items:end}.task-form .field-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.planner-section>summary{cursor:pointer;min-height:44px;padding-block:.75rem;font-weight:750}.admin-surface{gap:var(--space-5);width:min(100%,72rem);margin-inline:auto;padding:clamp(1rem,4vw,2rem);display:grid}.admin-card{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-panel);padding:clamp(1rem,4vw,1.5rem);display:grid}.admin-heading{gap:var(--space-1);display:grid}.admin-heading h2,.admin-heading p,.admin-empty,.danger-copy{margin:0}.admin-heading h2{font-size:clamp(1.35rem,5vw,1.9rem);line-height:1.1}.admin-heading p,.admin-row span,.document-row span,.admin-empty,.danger-copy{color:var(--color-muted);line-height:1.55}.admin-form{gap:var(--space-3);display:grid}.admin-form.compact{align-items:end}.admin-actions{gap:var(--space-2);display:grid}.admin-list,.document-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.admin-row,.document-row{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;padding:var(--space-4);display:grid}.admin-row{grid-template-columns:auto minmax(0,1fr);align-items:center}.admin-row>svg,.document-row>svg{color:var(--color-accent-strong)}.admin-row div,.document-row div{min-width:0}.admin-row strong,.admin-row span,.document-row strong,.document-row span{overflow-wrap:anywhere;display:block}.admin-row-action{grid-column:1/-1;justify-self:start}.document-row{grid-template-columns:auto minmax(0,1fr)}.document-row span{align-items:center;gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.document-actions{gap:var(--space-2);grid-column:1/-1;display:flex}.icon-button{border:1px solid var(--color-input-border);border-radius:var(--radius-sm);background:var(--color-surface);width:44px;height:44px;color:var(--color-text);place-items:center;display:inline-grid}.danger-icon,.danger-button{color:var(--color-danger)}.invite-panel{gap:var(--space-3);display:grid}.copy-once{align-items:center;gap:var(--space-2);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-width:0;color:var(--color-text);overflow-wrap:anywhere;padding:var(--space-3);margin:0;display:flex}.danger-zone{border-color:var(--color-danger)}.danger-form{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.danger-button{border-color:var(--color-danger);background:var(--color-danger-bg)}.danger-button:not(:disabled):hover{border-color:var(--color-danger);background:var(--color-danger-hover-bg)}@media (width>=42rem){.admin-form.compact{grid-template-columns:minmax(0,1fr) auto}.admin-form.compact .field-label{grid-column:1/-1}.admin-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-row{grid-template-columns:auto minmax(0,1fr) auto}.admin-row-action{grid-column:auto}.document-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.document-actions{grid-column:auto}}.pwa-settings{gap:var(--space-5);width:min(100%,52rem);margin-inline:auto;padding:clamp(1rem,4vw,2rem);display:grid}.pwa-card{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-panel);padding:clamp(1rem,4vw,1.5rem);display:grid}.pwa-heading{gap:var(--space-1);display:grid}.pwa-heading h2,.pwa-heading p,.pwa-consent p,.pwa-guidance{margin:0}.pwa-heading h2{font-size:clamp(1.35rem,5vw,1.9rem);line-height:1.1}.pwa-heading p,.pwa-status span,.pwa-consent,.pwa-guidance{color:var(--color-muted);line-height:1.55}.pwa-status{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.pwa-status svg{color:var(--color-accent-strong)}.pwa-status.offline{background:var(--color-warning-bg);border-color:var(--color-yellow)}.pwa-status.installed{background:var(--color-success-bg)}.pwa-status strong,.pwa-status span{overflow-wrap:anywhere;display:block}.pwa-consent{gap:var(--space-3);border-left:3px solid var(--color-accent);padding-left:var(--space-3);display:grid}.pwa-actions{gap:var(--space-2);display:grid}@media (width>=42rem){.pwa-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.push-settings{gap:var(--space-5);width:min(100%,52rem);margin-inline:auto;padding:clamp(1rem,4vw,2rem);display:grid}.push-card{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-panel);padding:clamp(1rem,4vw,1.5rem);display:grid}.push-card.compact{grid-template-columns:auto minmax(0,1fr);align-items:start}.push-heading{gap:var(--space-1);display:grid}.push-heading h2,.push-heading p,.push-copy p,.push-guidance,.push-offline,.push-card.compact p{margin:0}.push-heading h2{font-size:clamp(1.35rem,5vw,1.9rem);line-height:1.1}.push-heading p,.push-status span,.push-copy,.push-guidance,.push-offline,.push-card.compact p{color:var(--color-muted);line-height:1.55}.push-status{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.push-status svg,.push-card.compact svg{color:var(--color-accent-strong)}.push-status.warning{background:var(--color-warning-bg);border-color:var(--color-yellow)}.push-status strong,.push-status span{overflow-wrap:anywhere;display:block}.push-copy{gap:var(--space-3);border-left:3px solid var(--color-accent);padding-left:var(--space-3);display:grid}.push-guidance,.push-offline{border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:var(--space-3)}.push-actions{gap:var(--space-2);display:grid}@media (width>=42rem){.push-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:200 800;src:url(/fonts/manrope.ttf)format("truetype")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f4f7fc;--color-surface:#fff;--color-surface-soft:#eff4fc;--color-text:#172033;--color-muted:#5f6b80;--color-border:#d8deea;--color-input-border:#7f8da7;--color-brand:#003893;--color-brand-hover:#002a70;--color-accent:#003893;--color-accent-strong:#003893;--color-yellow:#f7d116;--color-danger:#cf2027;--color-danger-bg:#fff5f5;--color-danger-hover-bg:#ffe8ea;--color-warning-bg:#fff8d8;--color-warning-text:#172033;--color-success-bg:#eaf1fc;--color-focus:#003893;--shadow-panel:0 16px 48px #00389314;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--font-body:"Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{background:var(--color-bg);min-height:100%;font-family:var(--font-body);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);margin:0}button,input,select,textarea{font:inherit}.app-shell{max-width:1120px;margin:auto;padding:0 1rem 3rem}.app-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:1rem;padding:1.25rem 0;display:flex}.brand-lockup{color:var(--color-brand);align-items:center;gap:.65rem;margin-right:auto;text-decoration:none;display:inline-flex}.brand-mark{background:currentColor;flex-shrink:0;display:block;-webkit-mask:url(/brand-mark.png) 50%/contain no-repeat;mask:url(/brand-mark.png) 50%/contain no-repeat}.wordmark{color:inherit;letter-spacing:-.03em;font-size:1.55rem;font-weight:800;line-height:1}.app-main{gap:1.25rem;padding-top:1.5rem;display:grid}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;padding:clamp(1.25rem,4vw,2rem)}.panel h1{letter-spacing:-.04em;margin:.5rem 0 1rem;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.15}.panel h2{margin-top:0}.panel p{line-height:1.65}.muted{color:var(--color-muted)}.recovery-codes{overflow-wrap:anywhere;gap:.75rem;padding:0;list-style:none;display:grid}.recovery-codes code{-webkit-user-select:all;user-select:all;font-size:.9rem}.notice{background:var(--color-success-bg);border-radius:var(--radius-md);padding:1rem}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.64}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}#root{min-height:100vh}.button{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);border:1px solid #0000;min-height:44px;padding:.78rem 1rem;font-weight:750;line-height:1.2;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary{background:var(--color-brand);width:100%;color:var(--color-surface)}.button-primary:not(:disabled):hover{background:var(--color-brand-hover)}.button-secondary{border-color:var(--color-input-border);background:var(--color-surface);width:100%;color:var(--color-text)}.button-secondary:not(:disabled):hover{border-color:var(--color-brand);background:var(--color-surface-soft)}.button-ghost{min-height:44px;color:var(--color-accent-strong);background:0 0;padding-inline:0}.button-ghost:not(:disabled):hover{color:var(--color-text)}.field-label{color:var(--color-text);font-size:.94rem;font-weight:740;display:block}.text-input{border:1px solid var(--color-input-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-text);padding:.85rem .95rem;line-height:1.2}.text-input::placeholder{color:var(--color-muted)}.text-input:focus{border-color:var(--color-accent)}.form-alert{border:1px solid var(--color-danger);border-radius:var(--radius-sm);background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-3) var(--space-4);margin:0;font-weight:700;line-height:1.45}.welcome-screen{place-items:center;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.welcome-panel{--welcome-padding:clamp(1.25rem, 4vw, 2rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,31rem);box-shadow:var(--shadow-panel);padding:var(--welcome-padding)}.welcome-identity{margin-bottom:var(--space-5);border-radius:var(--radius-md);background:var(--color-brand);color:var(--color-surface);padding:var(--space-5)}.welcome-panel>.welcome-identity{margin:calc(-1 * var(--welcome-padding));margin-bottom:var(--space-5);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--welcome-padding)}.welcome-identity .brand-lockup{color:inherit}.welcome-brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.brand-signature{margin:0;font-size:clamp(1.15rem,4vw,1.4rem);font-weight:750;line-height:1.4}.brand-signature-kriolu{margin:var(--space-1) 0 0;color:var(--color-yellow);font-size:1rem;font-weight:650;line-height:1.5}.welcome-copy{gap:var(--space-3);margin-bottom:var(--space-5);display:grid}.welcome-copy h1,.welcome-copy p{margin:0}.welcome-copy h1{letter-spacing:-.035em;max-width:19ch;font-size:clamp(1.75rem,5vw,2rem);line-height:1.15}.welcome-copy p{color:var(--color-muted);font-size:1rem;line-height:1.55}.eyebrow{text-transform:uppercase;font-weight:850;color:var(--color-accent-strong)!important;font-size:.78rem!important}.account-form,.recovery-form{gap:var(--space-3);display:grid}.account-form{margin-top:var(--space-4)}.welcome-divider{align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-4);color:var(--color-muted);font-size:.85rem;font-weight:740;display:flex}.welcome-divider:before,.welcome-divider:after{background:var(--color-border);content:"";flex:1;height:1px}.recovery-block{gap:var(--space-3);margin-top:var(--space-4);display:grid}.inline-form{gap:var(--space-3);display:grid}.inline-button{width:100%}.security-note{margin:var(--space-5) 0 0;color:var(--color-muted);font-size:.9rem;line-height:1.55}.app-shell{background:var(--color-bg);min-height:100vh;color:var(--color-text)}.app-header,.app-nav,.panel,.list{width:min(100% - 2rem,68rem);margin-inline:auto}.app-header{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:64px;display:flex}.app-nav{gap:var(--space-2);display:flex}.panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-5)}.list{gap:var(--space-3);padding:0;list-style:none;display:grid}@media (width>=38rem){.inline-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.inline-button{width:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.app-nav{gap:.5rem;padding:1rem 0 0;display:flex}.app-nav button{flex:1;width:auto}.app-nav [aria-current=page]{background:var(--color-brand);color:var(--color-surface)}
