:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#4c6b2a;--accent:#3f5836;--accent-hover:#354c2e;--accent-active:#2c4026;--accent-tint:#eef2e2;--navy:#24301b;--navy-ink:#e9ecdf;--ink:#33271a;--ink-strong:#241a0d;--muted:#5c5340;--line:#e2dcc6;--bg-page:#f3edda;--bg:#fbf8ef;--yes:#2f7d32;--danger:#b23a1f;--radius:.75rem;--radius-sm:.5rem;--shadow:0 1px 2px #1e16080f, 0 1px 3px #1e16081a}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg-page);margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}.skip-link{position:absolute;top:auto;left:-9999px}.skip-link:focus{background:var(--accent);color:#fff;border-radius:var(--radius-sm);padding:.5rem .75rem;top:1rem;left:1rem}.app-header{background:var(--bg);border-bottom:1px solid var(--line);padding:.85rem 1.25rem}.brand{color:var(--accent);margin:0;font-weight:700}.app-nav ul{flex-wrap:wrap;gap:1rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.app-nav a{color:var(--accent);align-items:center;min-height:2.75rem;font-weight:600;display:inline-flex}.app-nav a[aria-current=page]{text-decoration:underline}.app-main{max-width:64rem;margin:0 auto;padding:1.5rem 1rem}.app-main.login,.app-main.passkeys{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);width:min(100% - 2rem,27rem);box-shadow:var(--shadow);margin:3rem auto;padding:1.75rem}.app-main.passkeys{width:min(100% - 2rem,34rem)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1{color:var(--ink);font-size:1.5rem}.lede{color:var(--muted)}.field{flex-direction:column;gap:.25rem;max-width:20rem;display:flex}.field label{font-weight:600}select{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-height:2.75rem;color:var(--ink);padding:.55rem .65rem}button.provider{font:inherit;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;min-height:2.75rem;padding:.6rem 1.1rem;font-weight:600;transition:background .15s,border-color .15s}button.provider:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.provider:focus-visible{outline:3px solid var(--brand);outline-offset:2px}button.provider:disabled{opacity:.6;cursor:default}button.provider.secondary{background:var(--bg);color:var(--accent)}button.provider.secondary:hover{background:var(--accent-tint)}button.linklike{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;min-height:2.75rem;padding:.5rem 0;text-decoration:underline}button.linklike:hover{color:var(--accent-hover)}button.linklike:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.provider-buttons{flex-direction:column;gap:.75rem;max-width:22rem;margin:1rem 0;display:flex}.messages:empty{display:none}.error{color:var(--danger);font-weight:700}.status{color:var(--ink)}.status:empty,.error:empty{display:none}.sign-in-form .field{max-width:22rem}.sign-in-form input[type=text]{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:2.75rem;color:var(--ink);padding:.55rem .7rem}.sign-in-form input[type=text]:focus-visible{outline:3px solid var(--brand);outline-offset:1px;border-color:var(--accent)}.sign-in-form input[aria-invalid=true]{border-color:var(--danger);outline:2px solid var(--danger);outline-offset:1px}.sign-in-form .hint{color:var(--muted);font-size:.9rem}.sign-in-form .signed-in-as{color:var(--ink);max-width:36rem;font-size:1.05rem}.sign-in-form .choose-prompt{color:var(--muted);margin:.35rem 0 0;font-size:.95rem}.sign-in-form .provider{width:100%;max-width:22rem}.login-brand{justify-content:flex-start;margin-bottom:1.25rem;display:flex}.login-brand .brand-lockup{font-size:1.35rem}.sign-in-start{flex-direction:column;align-items:stretch;gap:.75rem;max-width:22rem;display:flex}.sign-in-start input[type=text]{width:100%}.sign-in-start .provider{width:100%;max-width:none;margin:0}.signed-in .signed-in-as{color:var(--ink);font-size:1.05rem}.signed-in-as strong{color:var(--ink)}.signed-in #sign-in-success:focus{outline:3px solid var(--brand);outline-offset:2px}.or-divider{max-width:22rem;color:var(--muted);align-items:center;gap:.75rem;margin:1rem 0;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--line);flex:auto;height:1px}.passkey-option{max-width:22rem;margin-bottom:.5rem}.actions{flex-direction:column;gap:.75rem;max-width:22rem;margin-top:1rem;display:flex}.passkey-prompt-overlay{z-index:50;background:#1e160880;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.passkey-prompt{background:var(--bg);width:min(100% - 2rem,28rem);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.85rem;padding:1.5rem;display:flex;box-shadow:0 12px 34px #1e160847}.passkey-prompt-title{margin:0;font-size:1.05rem;font-weight:600}.passkey-prompt-suppress{color:var(--muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.passkey-prompt .actions{flex-direction:row;gap:.75rem;max-width:none;margin-top:.25rem}.passkey-prompt .actions .provider{flex:auto;width:auto;max-width:none;margin:0}.passkey-list{flex-direction:column;gap:.5rem;margin:1rem 0;padding:0;list-style:none;display:flex}.passkey-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.passkey-meta code{color:var(--ink);font-size:.9rem}.passkey-added{color:var(--muted);font-size:.85rem;display:block}.passkey-status{color:var(--muted);font-weight:600}.passkey-status.warn{color:var(--danger)}.passkey-actions{margin:1rem 0}.passkey-note,.hint{color:var(--muted);font-size:.9rem}.passkey-note{margin:.5rem 0}.passkey-back{margin-top:1.25rem}.passkey-back a,a{color:var(--accent)}.passkey-loading,.passkey-unavailable{color:var(--muted)}.admin-console-title{color:var(--ink)}.admin-section{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);max-width:32rem;margin:1rem 0;padding:1.25rem}.admin-section h2{color:var(--ink);margin-top:0;font-size:1.15rem}.admin-form{flex-direction:column;gap:.75rem;display:flex}.admin-form input,.admin-form select{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-height:2.75rem;color:var(--ink);padding:.55rem .7rem}.admin-coverage{color:var(--muted)}.admin-coverage.warn{color:var(--danger);font-weight:600}.perm-grid{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.95rem}.perm-grid caption{text-align:left;margin-bottom:.5rem;font-weight:600}.perm-grid th,.perm-grid td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.4rem .6rem}.perm-grid thead th,.perm-grid tbody th{background:var(--accent-tint)}.cell.yes{color:var(--yes);font-weight:600}.cell.no{color:var(--muted)}.scope{color:var(--ink);font-weight:400}.login .lede{max-width:36rem}.under-construction{text-align:center;margin-top:3rem}.dev-note{color:var(--muted);border-top:1px solid var(--line);max-width:36rem;margin-top:1.5rem;padding-top:.75rem;font-size:.9rem}.topbar{z-index:50;background:var(--bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.landing .topbar{background:0 0;border-bottom:0;position:absolute;inset:0 0 auto}.topbar-actions{align-items:center;display:inline-flex}.nav-toggle{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.nav-toggle:hover{background:var(--accent-tint)}.nav-toggle:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.nav-toggle .menu-icon{width:1.5rem;height:1.5rem}.app-shell{background:var(--bg-page);flex-direction:column;min-height:100dvh;display:flex}.app-body{flex:auto;align-items:stretch;display:flex;position:relative}.dashboard-main{flex:auto;width:100%;min-width:0;max-width:60rem;margin:0 auto;padding:1.5rem}.app-sidebar{z-index:40;background:var(--bg-page);flex-direction:column;gap:1rem;width:min(16rem,82vw);padding:4.75rem 1rem 1.25rem;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-6px 0 26px #1e160833}.nav-open .app-sidebar{transform:translate(0)}.account-nav ul{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.account-nav-item{text-align:left;border-radius:var(--radius-sm);color:#1b1610;width:100%;min-height:2.75rem;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.6rem .85rem;font-weight:600;display:flex}.account-nav-item:hover{background:#4c6b2a1f}.account-nav-item.is-active{background:var(--accent);color:#fff}.account-nav-item:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.nav-warn{color:var(--danger);display:inline-flex}.account-nav-item.is-active .nav-warn{color:#ffe08a}.nav-warn .warn-icon{width:1.15rem;height:1.15rem}.signout-btn{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:#fff;min-height:2.75rem;font:inherit;cursor:pointer;margin-top:auto;padding:.6rem 1rem;font-weight:700}.signout-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.signout-btn:focus-visible{outline:3px solid var(--brand);outline-offset:2px}@media (width>=52rem){.nav-open .app-body{padding-right:min(16rem,82vw)}}.dialog-overlay{z-index:60;background:#1e160873;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);border-radius:var(--radius);width:min(100% - 2rem,24rem);box-shadow:var(--shadow);flex-direction:column;gap:.85rem;padding:1.5rem;display:flex}.dialog-title{color:var(--ink);margin:0;font-size:1.15rem;font-weight:700}.dialog-body{color:var(--muted);margin:0}.dialog-actions{justify-content:flex-end;gap:.75rem;display:flex}.profile-view{max-width:34rem}.profile-view>h2{color:var(--ink);margin-top:0}.profile-username,.profile-passkey{border-top:1px solid var(--line);margin-top:1.25rem;padding-top:1.25rem}.profile-view input{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:2.75rem;color:var(--ink);padding:.55rem .7rem}.profile-view input:focus-visible{outline:3px solid var(--brand);outline-offset:1px;border-color:var(--accent)}.profile-view input[readonly]{background:var(--accent-tint);color:var(--muted)}.dashboard-section>h2{color:var(--ink);margin-top:0}@media (width<=30rem){.app-main.login,.app-main.passkeys{margin:2rem auto;padding:1.5rem}.perm-grid{font-size:.85rem}.perm-grid th,.perm-grid td{padding:.35rem .4rem}}.landing{background:var(--bg-page);flex-direction:column;justify-content:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.landing-header{z-index:2;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.5rem;display:flex;position:absolute;inset:0 0 auto}.brand-lockup{color:var(--brand);letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:1.3rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-lockup .brand-wordmark{color:var(--ink)}.brand-leaf{flex:none;width:1.5em;height:1.5em;display:inline-block}.brand-lockup:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:.35rem}.signin-btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;min-height:2.6rem;font:inherit;border:1px solid var(--accent);cursor:pointer;align-items:center;gap:.45rem;padding:.5rem 1.1rem;font-weight:600;text-decoration:none;display:inline-flex}.signin-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.signin-btn:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.signin-btn svg{width:1.15em;height:1.15em}.landing-account{align-items:center;gap:.75rem;display:inline-flex}.landing-account .who{color:var(--ink);border-radius:var(--radius-sm);background:#fbf8efcc;padding:.3rem .6rem;font-weight:600}.hero-content{z-index:1;flex-direction:column;justify-content:center;gap:1.2rem;max-width:42rem;padding:5.5rem 3rem 3rem;display:flex;position:relative}.hero-headline{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(2.2rem,5vw,4rem);font-weight:800;line-height:1.04}.hero-headline .thrive{color:var(--brand)}.hero-headline .brand-leaf{width:.85em;height:.85em;color:var(--brand);vertical-align:-.06em}.hero-sub{color:var(--ink);opacity:.82;max-width:32rem;margin:0;font-size:clamp(1rem,1.4vw,1.2rem)}.hero-divider{max-width:22rem;color:var(--brand);align-items:center;gap:.75rem;display:flex}.hero-divider .rule{background:var(--line);flex:auto;height:1px}.hero-divider .brand-leaf{width:1.3rem;height:1.3rem}.hero-features{flex-wrap:wrap;gap:1.75rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.hero-features li{text-align:center;width:7.5rem;color:var(--ink-strong);flex-direction:column;align-items:center;gap:.5rem;display:flex}.hero-features .feature-ic{color:var(--ink-strong)}.hero-features .feature-icon{stroke-width:1.9px;width:2rem;height:2rem;filter:drop-shadow(0 0 3px var(--bg-page)) drop-shadow(0 0 6px var(--bg-page))}.hero-features li>span:last-child{text-shadow:0 0 4px var(--bg-page), 0 0 8px var(--bg-page);font-size:.92rem;font-weight:700}.hero-art{z-index:0;background-image:url(/brand/hero-background.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-art:after{content:"";background:radial-gradient(58% 46% at 21% 42%,#f3eddaed 0%,#f3eddab3 36%,#f3edda38 64%,#f3edda00 84%),radial-gradient(50% 34% at 21% 65%,#f3eddaf2 0%,#f3eddadb 34%,#f3edda75 62%,#f3edda00 84%),linear-gradient(100deg,#f3edda66 0%,#f3edda24 22%,#f3edda00 42%);position:absolute;inset:0}@media (width<=52rem){.landing{justify-content:flex-start}.hero-content{justify-content:flex-start;gap:1rem;max-width:none;min-height:100dvh;padding:5rem 1.5rem 3rem}.hero-art:after{background:radial-gradient(120% 42% at 50% 12%,#f3eddaed 0%,#f3eddab8 38%,#f3edda42 66%,#f3edda00 86%),radial-gradient(130% 34% at 50% 46%,#f3eddaf2 0%,#f3eddad1 34%,#f3edda66 64%,#f3edda00 88%)}.hero-features{flex-wrap:nowrap;gap:.65rem}.hero-features li{flex:1 1 0;width:auto;min-width:0}.hero-features li>span:last-child{font-size:.8rem}}
