:root{--ink:#14213d;--muted:#526078;--navy:#14213d;--ochre:#bd4f26;--ochre-soft:#ffe2d1;--paper:#f6f8f2;--surface:#fff;--line:#cbd3cb;--cobalt:#2447d8;--mint:#82d8c2;--sun:#ffc857;--danger:brown;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;font-family:Avenir Next,Avenir,Segoe UI,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}:focus-visible{outline-offset:3px;outline:3px solid #c17b1a}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}#root,.app-shell,.lock-shell{min-height:100vh}.app-shell{flex-direction:column;padding:0 6vw;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:84px;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:12px;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.crest{background:var(--navy);color:var(--paper);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;font-family:Georgia,Times New Roman,serif;font-size:2.7rem;display:inline-flex}.crest-small{width:34px;height:34px;font-size:1rem}.environment-badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.badge{border:1px solid var(--line);color:var(--muted);letter-spacing:.11em;text-transform:uppercase;border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:800}.badge-demo{background:var(--ochre-soft);color:#6a4517}.badge-clean{color:#1d5d51;background:#e7f1ee}.badge-safe{background:#fff}.welcome{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px;margin:auto 0;padding:10vh 0 8vh;display:grid}.eyebrow,.status-index{color:var(--ochre);letter-spacing:.18em;text-transform:uppercase;font-size:.71rem;font-weight:800}h1,h2,p{margin-top:0}h1{color:var(--navy);letter-spacing:-.055em;max-width:10ch;margin-bottom:28px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,8vw,7.4rem);font-weight:500;line-height:.9}.lede{color:var(--muted);max-width:56ch;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6}.environment-seal{aspect-ratio:1;background:var(--navy);color:var(--paper);outline-offset:-10px;border-radius:50%;outline:1px solid #ffffff40;flex-direction:column;justify-content:center;align-items:center;height:clamp(150px,18vw,220px);display:flex;transform:rotate(3deg)}.environment-seal span{letter-spacing:.2em;text-transform:uppercase;font-size:.66rem}.environment-seal strong{text-transform:capitalize;font-family:Georgia,Times New Roman,serif;font-size:2.1rem;font-weight:500}.status-grid{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.status-grid article{min-height:165px;padding:28px 30px 24px 0}.status-grid article+article{border-left:1px solid var(--line);padding-left:30px}.status-grid h2{color:var(--navy);margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.status-grid article p:last-child,.fine-print{color:var(--muted);font-size:.88rem;line-height:1.55}footer{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding:24px 0 36px;font-size:.72rem}.lock-shell{justify-content:center;align-items:center;padding:32px;display:flex}.lock-card{background:var(--paper);border:1px solid var(--line);max-width:590px;padding:clamp(32px,6vw,64px);box-shadow:0 24px 70px #10233414}.lock-card h1{margin:26px 0;font-size:clamp(2.7rem,7vw,5rem)}.lock-card code{border-left:3px solid var(--ochre);overflow-wrap:anywhere;background:#efece5;margin:26px 0;padding:16px;display:block}@media (width<=760px){.app-shell{padding:0 22px}.topbar{flex-direction:column;align-items:flex-start;padding:18px 0}.environment-badges{justify-content:flex-start}.welcome{grid-template-columns:1fr;padding:11vh 0 8vh}.environment-seal{justify-self:end;height:125px}.status-grid{grid-template-columns:1fr}.status-grid article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}}a{color:var(--cobalt)}button,.primary-link{background:var(--cobalt);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);color:#fff;cursor:pointer;border-radius:0;padding:.7rem 1rem;font-weight:750;text-decoration:none;display:inline-block}@media (hover:hover) and (pointer:fine){button:hover,.primary-link:hover{box-shadow:4px 4px 0 var(--ink);transform:translate(-1px,-1px)}}button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.6;transform:none}input,select,textarea{border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:0;min-height:2.75rem;padding:.55rem .7rem}textarea{resize:vertical;min-height:7rem}label{margin-top:.9rem;font-weight:700;display:block}form>button{margin-top:1rem}.welcome-actions{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.welcome-actions>a:not(.primary-link){align-self:center;font-weight:750}.workspace-topbar{background:var(--surface);z-index:20;min-height:68px;padding:0 2rem;position:sticky;top:0}.workspace-topbar .environment-badges a{align-self:center;font-size:.8rem;font-weight:700}.responsive-app-shell{overflow-wrap:anywhere;min-height:calc(100vh - 68px);position:relative}.skip-link{background:var(--sun);color:var(--ink);z-index:100;padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.desktop-rail{background:var(--ink);border-right:4px solid var(--sun);color:#fff;z-index:10;width:15rem;padding:1rem .7rem;transition:width .18s;position:fixed;top:68px;bottom:0;left:0;overflow:hidden}.desktop-rail[data-open=false]{width:5.25rem}.desktop-rail__controls{gap:.6rem;display:grid}.desktop-rail button{background:var(--sun);color:var(--ink);padding:.55rem;font-size:.78rem}.desktop-rail nav ul,.mobile-navigation ul{margin:1rem 0 0;padding:0;list-style:none}.desktop-rail nav a{color:#fff;white-space:nowrap;border-left:4px solid #0000;padding:.8rem .65rem;font-weight:700;text-decoration:none;display:block}.desktop-rail nav a[aria-current=page]{background:var(--mint);border-color:var(--sun);color:var(--ink)}.responsive-app-shell__content{margin-left:15rem;padding:clamp(1.25rem,4vw,4rem);transition:margin-left .18s}.responsive-app-shell[data-navigation-pinned=false] .desktop-rail[data-open=false]+.responsive-app-shell__content{margin-left:5.25rem}.mobile-navigation{display:none}.responsive-app-shell__content>main,.responsive-app-shell__content>section,.responsive-app-shell__content>div[role=main]{max-width:74rem;margin:0 auto}.responsive-app-shell h1{letter-spacing:-.06em;max-width:13ch;margin:.3rem 0 2rem;font-size:clamp(2.4rem,6vw,5.6rem);line-height:.92}.responsive-app-shell h2{letter-spacing:-.025em}.responsive-app-shell section{margin-block:2rem}.responsive-app-shell article,.responsive-app-shell section>form,.home-summary-card,.gallery-grid>li,.conversation-list li,.admin-view-grid>li{background:var(--surface);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--mint);padding:1.2rem}.home-cover-direction .home-dashboard__eyebrow{color:var(--yellow)}.eyebrow,.home-dashboard__eyebrow{color:var(--ochre);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:850}.home-cover-direction{background:var(--ink);color:#fff;grid-template-columns:1.6fr 1fr;gap:1.5rem;padding:clamp(1.4rem,4vw,3rem);display:grid}.home-cover-direction h2{color:var(--sun)}.home-approved-colors,.home-summary-grid,.gallery-grid,.admin-view-grid{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:1rem;padding:0;list-style:none;display:grid}.home-approved-colors li{border:2px solid #fff;min-height:7rem;padding:1rem;display:grid}.home-summary-grid{margin-top:2rem}.home-summary-card{box-shadow:5px 5px 0 var(--sun)}.home-summary-card ul,.family-directory ul,.calendar-page ol{padding:0;list-style:none}.home-summary-card li,.family-directory li,.calendar-page li{border-bottom:1px solid var(--line);padding:.8rem 0}.home-summary-card li>strong,.home-summary-card li>span{display:block}.family-directory>label{font-size:1.1rem}.family-directory>input{width:100%;max-width:42rem;font-size:1.15rem}.person-profile>header,.calendar-page>header,.gallery-page>header,.admin-dashboard>header{border-bottom:6px solid var(--sun);padding-bottom:1rem}.gallery-grid>li{box-shadow:5px 5px 0 var(--ochre-soft)}.gallery-detail,.mfa-prompt{border:3px solid var(--ink);box-shadow:10px 10px 0 var(--sun);z-index:50;background:#fff;max-height:75vh;padding:2rem;position:fixed;inset:12vh 8vw auto;overflow:auto}.message-thread{padding:0;list-style:none}.message-thread li{border-left:5px solid var(--mint);margin:1rem 0;padding:.8rem 1rem}.admin-link{margin-bottom:1rem;font-weight:800;display:inline-block}@media (width<=760px){.workspace-topbar{flex-direction:row;align-items:center;padding:.7rem 1rem}.workspace-topbar .brand>span:last-child,.desktop-rail{display:none}.responsive-app-shell__content,.responsive-app-shell[data-navigation-pinned=false] .desktop-rail[data-open=false]+.responsive-app-shell__content{margin-left:0;padding:1.35rem 1rem 7rem}.mobile-navigation{background:var(--ink);z-index:30;grid-template-columns:repeat(3,minmax(0,1fr));padding:.45rem;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-navigation a{color:#fff;overflow-wrap:anywhere;text-align:center;white-space:normal;align-content:center;min-height:44px;padding:.75rem .15rem;font-size:.66rem;font-weight:750;line-height:1.15;text-decoration:none;display:block}.mobile-navigation a[aria-current=page]{background:var(--sun);color:var(--ink)}.responsive-app-shell h1{font-size:clamp(2.5rem,14vw,4.2rem)}.home-cover-direction{grid-template-columns:1fr}.gallery-detail,.mfa-prompt{inset:6rem 1rem auto}}@media (prefers-reduced-motion:reduce){.desktop-rail,.responsive-app-shell__content{transition:none}}
