body{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    background:#F7F2E8;
    color:#262A2D;
    margin:0;
}

/* Garden governance and the participant Garden Shed share one calm, readable
   language while remaining distinct from the Steward-only Head Shed. */
.governance-page .container{max-width:1120px;}
.governance-shell,.governance-document,.garden-shed{margin:0 auto;padding:clamp(1.5rem,4vw,3.5rem) 0;max-width:920px;}
.governance-shell>h1,.governance-document>h1,.garden-shed>header h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.08;color:#314b38;}
.governance-kicker{text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:700;color:#6d765e;}
.governance-card{background:#fffdf7;border:1px solid #d9d2bd;border-radius:18px;padding:clamp(1rem,3vw,1.75rem);margin:1.25rem 0;box-shadow:0 8px 24px rgba(61,70,48,.06);}
.governance-deadline,.governance-notice{border-left:4px solid #b47b2e;background:#fff7e7;padding:1rem;}
.governance-acceptance{display:grid;gap:1rem;margin:1.5rem 0;}
.governance-acceptance label{display:flex;gap:.7rem;align-items:flex-start;}
.governance-acceptance input[type="checkbox"]{width:1.25rem;height:1.25rem;margin-top:.15rem;}
.governance-reassurance{font-size:1.05rem;color:#4e594d;}
.governance-document{max-width:760px;}
.governance-document-body{white-space:pre-wrap;line-height:1.75;margin:2rem 0;}
.shed-grid{display:grid;gap:1rem;}
.shed-grid .governance-card{margin:0;}
.governance-admin-form{display:grid;gap:1rem;}
.governance-admin-form label{display:grid;gap:.35rem;font-weight:650;}
.governance-admin-form input,.governance-admin-form select,.governance-admin-form textarea,.governance-card select{font:inherit;padding:.65rem;border:1px solid #9f9a89;border-radius:8px;background:white;}
.governance-admin-form fieldset{display:grid;gap:.75rem;border:1px solid #d9d2bd;border-radius:12px;padding:1rem;}
.governance-card table{width:100%;border-collapse:collapse;}
.governance-card th,.governance-card td{text-align:left;padding:.65rem;border-bottom:1px solid #ded8c8;vertical-align:top;}
.account-lifecycle-table-wrap{overflow-x:auto;}
.account-lifecycle table{min-width:760px;}
.account-lifecycle-history td{color:#6d665c;font-size:.82rem;padding-top:0;}
.account-lifecycle-history ol{display:grid;gap:.35rem;margin:.7rem 0 0;padding-left:1.25rem;}
.account-status{border-radius:999px;display:inline-block;font-size:.78rem;padding:.25rem .55rem;}
.account-status-active{background:#e2ebe1;color:#315c3c;}
.account-status-disabled{background:#eee8dc;color:#625b50;}
.account-lifecycle-action{white-space:nowrap;}
.codex-resource-fields{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));}
.codex-resource-fields label,.codex-funding form>label{display:grid;gap:.35rem;}
.codex-resource-history{display:grid;gap:.8rem;padding-left:1.25rem;}
.codex-resource-history li{display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:baseline;}
.codex-resource-history p{flex-basis:100%;margin:.2rem 0 0;}
.garden-shed-entry{text-align:right;}
.governance-page :focus-visible{outline:3px solid #315f45;outline-offset:3px;}
@media (min-width:760px){.shed-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.governance-admin-form{grid-template-columns:repeat(2,minmax(0,1fr));}.governance-admin-form fieldset,.governance-admin-form p,.governance-admin-form button{grid-column:1/-1;}}

.container{
    max-width:520px;
    margin:0 auto;
    padding:28px 18px;
}

h1{
    font-size:2.1rem;
    margin-bottom:14px;
}

.tagline{
    color:#666;
    line-height:1.45;
}

.tagline{
    margin-bottom:34px;
}

.footer{
    margin-top:clamp(36px,8vh,72px);
    color:#9A7A3F;
    font-size:.95rem;
    line-height:1.45;
    text-align:right;
    white-space:nowrap;
}

.footer-capture{
    font-weight:650;
}

.footer-remember{
    font-style:italic;
    font-weight:650;
}

.steward-status{
    color:#6D665C;
    font-size:.84rem;
    font-weight:400;
    line-height:1.45;
    margin-top:18px;
    overflow-wrap:break-word;
    text-align:right;
}

.steward-software-id{display:inline-block}

.landing-home{
    color:#262A2D;
    padding-top:clamp(64px,16vh,132px);
    text-align:center;
}

.landing-kicker{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2.8rem,11vw,5rem);
    font-weight:500;
    letter-spacing:0;
    line-height:1;
    margin:0 0 20px;
}

.landing-title{
    color:#9A7A3F;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.16rem,4vw,1.7rem);
    font-style:italic;
    font-weight:400;
    letter-spacing:0;
    line-height:1.4;
    margin:0 auto clamp(34px,7vh,58px);
    max-width:34rem;
}

.landing-alpha p{
    color:#9A7A3F;
    font-size:.92rem;
    margin:0 0 8px;
}

.landing-alpha a{
    color:#263F4C;
    display:inline-block;
    font-size:1rem;
    font-weight:650;
    padding:8px 2px 4px;
    text-decoration:underline;
    text-decoration-color:#C1A46C;
    text-decoration-thickness:1px;
    text-underline-offset:5px;
}

.landing-alpha a:focus-visible{
    border-radius:12px;
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:6px;
}

.garden-home{
    color:#262A2D;
    padding-top:clamp(18px,5vh,48px);
    text-align:center;
}

.garden-hero{
    margin:0 auto clamp(28px,6vh,46px);
    max-width:32rem;
}

.garden-kicker{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2.45rem,10vw,4.6rem);
    font-weight:500;
    letter-spacing:0;
    line-height:1;
    margin:0 0 18px;
}

.garden-title{
    color:#9A7A3F;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.08rem,4vw,1.55rem);
    font-style:italic;
    font-weight:400;
    letter-spacing:0;
    line-height:1.38;
    margin:0;
}

.garden-grid{
    display:grid;
    gap:clamp(16px,4vw,26px);
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0 auto;
    max-width:min(100%,620px);
}

.garden-journey{
    align-items:center;
    color:#263F4C;
    display:flex;
    flex-direction:column;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.08rem,4vw,1.45rem);
    gap:12px;
    min-width:0;
    padding:8px 4px 14px;
    text-align:center;
    text-decoration:none;
    transition:opacity .2s ease,transform .2s ease;
}

.garden-art{
    aspect-ratio:1;
    background:
        radial-gradient(circle at 68% 28%,rgba(247,242,232,.95) 0 13%,transparent 14%),
        linear-gradient(145deg,rgba(193,164,108,.22),rgba(49,90,107,.14));
    border-radius:44% 56% 48% 52%;
    display:block;
    overflow:hidden;
    position:relative;
    width:min(100%,clamp(112px,30vw,172px));
}

.garden-art-sky,
.garden-art-path,
.garden-art-sprig{
    position:absolute;
}

.garden-art-sky{
    background:rgba(49,90,107,.32);
    border-radius:999px;
    height:32%;
    left:18%;
    top:18%;
    width:64%;
}

.garden-art-path{
    background:rgba(154,122,63,.34);
    border-radius:48% 52% 0 0;
    bottom:-10%;
    height:48%;
    left:15%;
    transform:rotate(-4deg);
    width:70%;
}

.garden-art-sprig{
    border-left:2px solid rgba(91,124,91,.72);
    bottom:18%;
    height:42%;
    left:50%;
    transform:rotate(18deg);
}

.garden-art-sprig::before,
.garden-art-sprig::after{
    background:rgba(91,124,91,.62);
    border-radius:90% 10% 90% 10%;
    content:"";
    height:22px;
    position:absolute;
    width:12px;
}

.garden-art-sprig::before{
    left:-14px;
    top:8px;
    transform:rotate(-44deg);
}

.garden-art-sprig::after{
    left:2px;
    top:22px;
    transform:rotate(32deg);
}

.garden-journey-italy .garden-art{
    background:
        radial-gradient(circle at 66% 28%,rgba(247,242,232,.95) 0 13%,transparent 14%),
        linear-gradient(145deg,rgba(91,124,91,.24),rgba(193,164,108,.26));
}

.garden-journey-gene-therapy .garden-art{
    background:
        radial-gradient(circle at 68% 28%,rgba(247,242,232,.95) 0 13%,transparent 14%),
        linear-gradient(145deg,rgba(49,90,107,.20),rgba(91,124,91,.22));
}

.garden-journey-jamie .garden-art{
    background:
        radial-gradient(circle at 68% 28%,rgba(247,242,232,.95) 0 13%,transparent 14%),
        linear-gradient(145deg,rgba(193,164,108,.22),rgba(154,122,63,.16));
}

.garden-journey[href]:hover{
    opacity:.94;
    transform:translateY(-2px);
}

.garden-journey[href]:active{
    opacity:.86;
    transform:translateY(0);
}

.garden-journey[href]:focus-visible{
    border-radius:14px;
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:6px;
}

.garden-journey-placeholder{
    cursor:default;
}

.garden-different{
    color:#9A7A3F;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1rem;
    font-style:italic;
    margin-top:clamp(24px,5vh,38px);
}

.sr-only{
    clip:rect(0,0,0,0);
    border:0;
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    white-space:nowrap;
    width:1px;
}

.head-shed-page .container{
    box-sizing:border-box;
    max-width:1500px;
    width:80%;
}

.head-shed-navigation{
    align-items:center;
    border-bottom:1px solid rgba(154,122,63,.2);
    display:flex;
    flex-wrap:wrap;
    gap:6px 10px;
    padding:2px 0 14px;
}

.head-shed-navigation a{
    border-radius:999px;
    color:#526058;
    font-size:.86rem;
    font-weight:650;
    padding:8px 12px;
    text-decoration:none;
}

.head-shed-navigation a[aria-current="page"]{
    background:#E9E2D5;
    color:#263F4C;
}

.head-shed-navigation a:hover{
    text-decoration:underline;
    text-underline-offset:3px;
}

.head-shed-navigation .head-shed-garden-return{
    margin-left:auto;
}

.head-shed-incident-signal{
    background:#A95F4A;
    border-radius:999px;
    color:#fff;
    display:inline-block;
    font-size:.68rem;
    line-height:1;
    margin-left:6px;
    min-width:1.1rem;
    padding:4px;
    text-align:center;
}

.head-shed-page .footer{
    white-space:normal;
}

.head-shed{
    display:grid;
    gap:16px;
    padding-top:clamp(16px,4vh,36px);
}

.head-shed-hero{
    max-width:760px;
    padding:0 4px 4px;
}

.head-shed-hero h1{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2.5rem,8vw,4.2rem);
    font-weight:500;
    margin:4px 0 10px;
}

.head-shed-hero>p:not(.head-shed-eyebrow):not(.head-shed-time){
    color:#5F5B54;
    line-height:1.5;
    margin:0;
}

.head-shed-eyebrow,
.head-shed-kicker{
    color:#9A7A3F;
    font-size:.73rem;
    font-weight:700;
    letter-spacing:.09em;
    margin:0;
    text-transform:uppercase;
}

.head-shed-time,
.head-shed-note{
    color:#7A746A;
    font-size:.8rem;
    line-height:1.45;
    margin:11px 0 0;
}

.head-shed-why{
    color:#625B50;
    font-size:.8rem;
    line-height:1.45;
    margin:0 0 10px;
}

.head-shed-why strong{
    color:#35454C;
}

.head-shed-section{
    background:rgba(255,255,255,.68);
    border:1px solid rgba(154,122,63,.22);
    border-radius:20px;
    box-shadow:0 8px 24px rgba(38,42,45,.05);
    min-width:0;
    padding:18px;
}

.head-shed-section h2{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.4rem;
    font-weight:500;
    margin:3px 0 12px;
}

.head-shed-section-heading{
    align-items:flex-start;
    display:flex;
    gap:12px;
    justify-content:space-between;
}

.head-shed-condition,
.head-shed-evidence{
    background:#EEE8DC;
    border-radius:999px;
    color:#625B50;
    flex:0 0 auto;
    font-size:.73rem;
    font-weight:700;
    padding:6px 9px;
}

.head-shed-status-healthy{
    background:#D8F0DE;
    color:#205B30;
}

.head-shed-status-warning{
    background:#F3E4C9;
    color:#76501F;
}

.head-shed-status-problem{
    background:#F6D8D3;
    color:#7B302A;
}

.head-shed-status-unknown{
    background:#E8E6E2;
    color:#625F5A;
}

.head-shed-facts{
    display:grid;
    gap:0 18px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0;
}

.head-shed-facts div{
    align-items:baseline;
    border-top:1px solid rgba(154,122,63,.14);
    display:flex;
    gap:10px;
    justify-content:space-between;
    min-width:0;
    padding:9px 0;
}

.head-shed-facts dt{
    color:#746C62;
    flex:1 1 auto;
    font-size:.76rem;
    line-height:1.3;
}

.head-shed-facts dd{
    color:#263F4C;
    flex:0 1 auto;
    font-size:.82rem;
    font-weight:650;
    margin:0;
    overflow-wrap:anywhere;
    text-align:right;
}

.head-shed-source-state{
    align-items:center;
    display:flex;
    gap:6px;
}

.head-shed-source-state span{
    background:#7D7972;
    border-radius:50%;
    flex:0 0 auto;
    height:7px;
    width:7px;
}

.head-shed-source-state-healthy span{background:#2F8C49;}
.head-shed-source-state-warning span{background:#B47B2E;}
.head-shed-source-state-problem span{background:#C33F35;}
.head-shed-source-state-unknown span{background:#7D7972;}

.head-shed-diagnostic-link{
    border-bottom:1px solid rgba(49,93,67,.35);
    color:#315D43;
    text-decoration:none;
}

.head-shed-diagnostic-link:hover{
    border-bottom-color:#315D43;
}

.head-shed-tending-list,
.head-shed-derived{
    display:grid;
    gap:8px;
}

.head-shed-tending{
    border-left:3px solid #C1A46C;
    padding:3px 0 3px 12px;
}

.head-shed-tending-warning{border-color:#B47B2E;}

.head-shed-tending h3{
    color:#3C4244;
    font-size:.9rem;
    margin:0 0 3px;
}

.head-shed-attention-grid{
    display:grid;
    gap:16px;
}

.head-shed-noteworthy-list{
    display:grid;
    gap:9px;
    list-style:none;
    margin:0;
    padding:0;
}

.head-shed-noteworthy-list li{
    border-top:1px solid rgba(154,122,63,.14);
    display:grid;
    gap:2px;
    padding-top:9px;
}

.head-shed-noteworthy-list li:first-child{
    border-top:0;
    padding-top:0;
}

.head-shed-noteworthy-list time{
    color:#7A746A;
    font-size:.72rem;
}

.head-shed-noteworthy-list strong{
    color:#35454C;
    font-size:.82rem;
}

.head-shed-tending p,
.head-shed-empty{
    color:#6D665C;
    font-size:.82rem;
    line-height:1.42;
    margin:0;
}

.head-shed-footprint-groups,
.head-shed-footprints{
    list-style:none;
    margin:0;
    padding:0;
}

.head-shed-footprint-group{
    border-top:1px solid rgba(154,122,63,.18);
    padding:12px 0 8px;
}

.head-shed-footprint-group:first-child{
    border-top:0;
    padding-top:0;
}

.head-shed-footprint-group h3{
    color:#263F4C;
    font-size:.84rem;
    letter-spacing:.025em;
    margin:0 0 5px;
}

.head-shed-footprints li{
    align-items:baseline;
    display:grid;
    gap:10px;
    grid-template-columns:72px minmax(0,1fr);
    padding:4px 0;
}

.head-shed-footprints time{
    color:#7A746A;
    font-size:.73rem;
    white-space:nowrap;
}

.head-shed-footprints strong{
    color:#35454C;
    font-size:.82rem;
}

.head-shed-footprints small{
    color:#7A746A;
    font-size:.72rem;
}

.head-shed-derived{
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:9px;
}

.head-shed-derived div{
    background:rgba(247,242,232,.72);
    border-radius:12px;
    display:flex;
    flex-direction:column;
    gap:3px;
    padding:9px 10px;
}

.head-shed-derived strong{
    color:#35454C;
    font-size:.78rem;
}

.head-shed-derived span{
    color:#746C62;
    font-size:.72rem;
}

.head-shed-roadmap-summary{
    color:#746C62;
    font-size:.78rem;
    margin:0 0 12px;
}

.head-shed-roadmap-sections{
    display:grid;
    gap:16px;
    grid-template-columns:1.35fr 1fr 1fr;
}

.head-shed-roadmap-sections>section{
    min-width:0;
}

.head-shed-roadmap-sections h3{
    align-items:center;
    color:#35454C;
    display:flex;
    font-size:.82rem;
    gap:7px;
    margin:0 0 7px;
}

.head-shed-roadmap-sections h3 span{
    background:#EEE8DC;
    border-radius:999px;
    color:#625B50;
    font-size:.68rem;
    padding:2px 6px;
}

.head-shed-roadmap-sections ol{
    list-style:none;
    margin:0;
    padding:0;
}

.head-shed-roadmap-sections li{
    align-items:baseline;
    border-top:1px solid rgba(154,122,63,.14);
    display:flex;
    font-size:.74rem;
    gap:8px;
    justify-content:space-between;
    padding:6px 0;
}

.head-shed-roadmap-sections li>span{
    color:#4F5557;
    min-width:0;
}

.head-shed-roadmap-sections strong{
    color:#263F4C;
    white-space:nowrap;
}

.head-shed-roadmap-sections em{
    color:#76501F;
    flex:0 0 auto;
    font-size:.68rem;
    font-style:normal;
    font-weight:650;
}

.head-shed-harvest table{
    border-collapse:collapse;
    font-size:.82rem;
    width:100%;
}

.head-shed-harvest th,
.head-shed-harvest td{
    border-top:1px solid rgba(154,122,63,.16);
    padding:8px 6px;
    text-align:right;
}

.head-shed-harvest th:first-child{
    color:#35454C;
    padding-left:0;
    text-align:left;
}

.head-shed-harvest thead th{
    border-top:0;
    color:#746C62;
    font-size:.72rem;
    font-weight:650;
}

.head-shed-harvest tbody td{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.15rem;
    font-weight:600;
}

.head-shed-observatory-grid,
.head-shed-desk-reflection{
    display:grid;
    gap:16px;
}

.head-shed-observatory-grid>article,
.head-shed-desk-reflection>article{
    background:rgba(247,242,232,.58);
    border:1px solid rgba(154,122,63,.16);
    border-radius:14px;
    min-width:0;
    padding:16px;
}

.head-shed-observatory-grid h3,
.head-shed-desk-reflection h3{
    color:#35454C;
    font-size:1rem;
    margin:0 0 8px;
}

.head-shed-desk-reflection p{
    color:#625B50;
    font-size:.86rem;
    line-height:1.5;
}

.head-shed-software-version{
    color:#7A746A;
    font-size:.76rem;
    grid-column:1 / -1;
    margin:4px 4px 0;
    text-align:right;
}

.head-shed-wall{display:block;max-width:1500px;min-width:0;}
.head-shed-wall-return{margin:0 0 16px;}
.head-shed-wall-return a{color:#315D43;font-weight:700;text-underline-offset:3px;}
.head-shed-wall-band{background:#FBF7EF;border:1px solid #DED2C2;border-radius:18px;margin-top:20px;min-width:0;padding:clamp(16px,2.5vw,26px);}
.head-shed-wall-overview-grid,.head-shed-wall-activity-grid,.head-shed-wall-actions{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));}
.head-shed-wall-overview-card,.head-shed-wall-activity-card,.head-shed-wall-actions>section,.head-shed-wall-roadmap,.head-shed-wall-pins{background:#FFFDF8;border:1px solid #E4DACD;border-radius:14px;min-width:0;padding:16px;}
.head-shed-wall-overview-card h3,.head-shed-wall-activity-card h3,.head-shed-wall-actions h3,.head-shed-wall-roadmap h3,.head-shed-wall-pins h3{color:#35454C;font-size:1rem;margin:0 0 8px;}
.head-shed-wall-overview-card p{color:#625B50;font-size:.86rem;line-height:1.45;margin:0 0 12px;}
.head-shed-wall-future{background:#EEE8DD;border:1px solid #D6CAB9;border-radius:999px;color:#625B50;display:inline-block;font-size:.78rem;padding:6px 10px;}
.head-shed-wall-activity-card table{border-collapse:collapse;width:100%;}
.head-shed-wall-activity-card th,.head-shed-wall-activity-card td{border-top:1px solid rgba(154,122,63,.16);font-size:.82rem;padding:7px 5px;text-align:right;}
.head-shed-wall-activity-card th:first-child{text-align:left;}
.head-shed-wall-roadmap-layout{display:grid;gap:18px;grid-template-columns:minmax(0,3fr) minmax(280px,2fr);align-items:start;}
.head-shed-wall-pins>header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:12px;}
.head-shed-wall-pins>header .head-shed-kicker{margin:0 0 3px;}
.head-shed-wall-cards{display:grid;gap:10px;list-style:none;margin:0;padding:0;}
.head-shed-wall-roadmap-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));}
.head-shed-wall-card{background:#FFFDF8;border:1px solid #E4DACD;border-radius:14px;min-width:0;padding:13px;}
.head-shed-wall-card-heading{align-items:center;display:flex;gap:10px;justify-content:space-between;}
.head-shed-wall-card h3,.head-shed-wall-card h4{font-size:.95rem;line-height:1.35;margin:5px 0 8px;overflow-wrap:anywhere;}
.head-shed-wall-card h3 a,.head-shed-wall-card h4 a{color:#354F40;text-decoration-thickness:1px;text-underline-offset:3px;}
.head-shed-wall-card-id,.head-shed-wall-meta,.head-shed-wall-event{color:#746A60;font-size:.78rem;margin:0;}
.head-shed-wall-status{background:#EFE8DD;border:1px solid transparent;border-radius:999px;color:#51483F;display:inline-block;font-size:.76rem;font-weight:700;margin:0 0 8px;padding:4px 9px;white-space:nowrap;}
.head-shed-wall-card-heading .head-shed-wall-status{margin:0;}
.head-shed-wall-status-complete{background:#DDF2E2;border-color:#8DBB97;color:#20552D;}
.head-shed-wall-status-cancelled{background:#F5E1DE;border-color:#C98F86;color:#702E26;}
.head-shed-wall-status-proposed{background:#E1ECFA;border-color:#92B6DD;color:#234E78;}
.head-shed-wall-status-active{background:#F4E7CC;border-color:#D1AA65;color:#694A16;}
.head-shed-wall-event{border-top:1px solid #EEE5DA;margin-top:9px;overflow:hidden;padding-top:8px;text-overflow:ellipsis;white-space:nowrap;}
.head-shed-wall-more{border-top:1px solid #E4DACD;margin-top:14px;padding-top:12px;}
.head-shed-wall-more summary{color:#315D43;cursor:pointer;font-weight:700;min-height:44px;padding:10px 4px;}
.head-shed-wall-more summary span{color:#746A60;font-size:.78rem;font-weight:400;}
.head-shed-wall-more[open] summary{margin-bottom:10px;}
.head-shed-wall-actions a{display:block;margin-top:8px;overflow-wrap:anywhere;}
.head-shed-wall-message,.head-shed-wall-error{border-radius:12px;margin:16px 0;padding:12px 14px;}
.head-shed-wall-message{background:#EAF2E9;border:1px solid #BFD0BD;color:#35513A;}
.head-shed-wall-error{background:#F8EAE6;border:1px solid #D7AEA4;color:#733C34;}
.head-shed-wall-detail{display:block;max-width:900px;}
.head-shed-wall-form{display:grid;gap:14px;margin-top:18px;}
.head-shed-wall-form label{display:grid;gap:6px;color:#51483F;font-weight:650;}
.head-shed-wall-form label small{color:#746A60;font-weight:400;}
.head-shed-wall-form input,.head-shed-wall-form textarea,.head-shed-wall-form select{background:#FFFDF8;border:1px solid #BFB3A5;border-radius:10px;color:#312C27;font:inherit;padding:10px 12px;width:100%;}
.head-shed-wall-form textarea{min-height:92px;resize:vertical;}
.head-shed-wall-form button,.head-shed-workspace .soft-button{background:#4F725D;border:0;border-radius:999px;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:9px 15px;text-decoration:none;width:max-content;}
.head-shed-wall-history{display:grid;gap:12px;list-style:none;margin:0;padding:0;}
.head-shed-wall-history li{border-left:3px solid #D8C9B7;display:grid;gap:3px;padding-left:12px;}
.head-shed-wall-history time{color:#746A60;font-size:.8rem;}
.head-shed-wall-history span{color:#51483F;}

.head-shed-workspace{display:block;max-width:none;min-width:0;}
.head-shed-workspace .head-shed-hero{margin-top:20px;}
.head-shed-desk-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);}
.head-shed-desk-layout .head-shed-wall-band{margin-top:20px;}
.head-shed-compact-list{display:grid;list-style:none;margin:0;padding:0;}
.head-shed-compact-list li{align-items:center;border-top:1px solid #E8DED2;display:flex;gap:10px;justify-content:space-between;min-width:0;padding:8px 0;}
.head-shed-compact-list li:first-child{border-top:0;}
.head-shed-compact-list a,.head-shed-compact-list li>span:first-child{color:#354F40;font-size:.84rem;min-width:0;overflow:hidden;text-decoration-thickness:1px;text-overflow:ellipsis;white-space:nowrap;}
.head-shed-compact-list .head-shed-wall-status{flex:0 0 auto;margin:0;}
.head-shed-capture-list small{color:#746A60;flex:0 0 auto;font-size:.72rem;white-space:nowrap;}
.head-shed-controls-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));}
.head-shed-control-list{display:grid;list-style:none;margin:0;padding:0;}
.head-shed-control-list li{border-top:1px solid rgba(154,122,63,.14);display:grid;gap:3px;padding:10px 0;}
.head-shed-control-list li:first-child{border-top:0;}
.head-shed-control-list strong{color:#35454C;font-size:.86rem;}
.head-shed-control-list span,.head-shed-control-list small{color:#746A60;font-size:.76rem;}
.head-shed-control-list a{color:#315D43;font-size:.78rem;font-weight:700;text-underline-offset:3px;}
.head-shed-queue-list{grid-template-columns:1fr;}
.head-shed-queue-primary{align-items:baseline;display:flex;gap:14px;justify-content:space-between;}
.head-shed-queue-primary h3{font-size:.95rem;line-height:1.4;margin:0;min-width:0;}
.head-shed-queue-primary a{color:#354F40;overflow-wrap:anywhere;text-decoration-thickness:1px;text-underline-offset:3px;}
.head-shed-queue-primary .head-shed-wall-status{flex:0 0 auto;margin:0;}

.head-shed-compass-source-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px;}
.head-shed-compass-source-grid article{background:rgba(247,242,232,.58);border:1px solid rgba(154,122,63,.16);border-radius:14px;padding:14px;}
.head-shed-compass-source-grid h3{font-size:.92rem;margin:0 0 5px;}
.head-shed-compass-source-grid h3 a{color:#354F40;text-underline-offset:3px;}
.head-shed-compass-source-grid p{color:#625B50;font-size:.78rem;line-height:1.4;margin:0 0 10px;}
.head-shed-compass-source-grid small{color:#746A60;display:block;font-size:.72rem;margin-top:7px;}
.head-shed-compass-checklist ul{display:grid;gap:8px;margin:14px 0;padding-left:22px;}
.head-shed-compass-checklist li{color:#51483F;line-height:1.45;}
.head-shed-compass-state-links{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;}
.head-shed-compass-state-links a{background:#FFFDF8;border:1px solid #E4DACD;border-radius:12px;color:#354F40;display:grid;padding:12px;text-decoration:none;}
.head-shed-compass-state-links a[aria-current="page"]{border-color:#9A7A3F;box-shadow:0 0 0 1px #9A7A3F inset;}
.head-shed-compass-state-links strong{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;}
.head-shed-compass-state-links span{color:#746A60;font-size:.75rem;}
.head-shed-compass-record-list{display:grid;gap:10px;list-style:none;margin:16px 0 0;padding:0;}
.head-shed-compass-record-list>li{background:#FFFDF8;border:1px solid #E4DACD;border-radius:14px;padding:14px;}
.head-shed-compass-record-list>li>div:first-child{align-items:center;display:flex;gap:9px;}
.head-shed-compass-record-list h3{font-size:.95rem;margin:8px 0 5px;}
.head-shed-compass-record-list h3 a{color:#354F40;text-underline-offset:3px;}
.head-shed-compass-record-list p,.head-shed-compass-source{color:#746A60;font-size:.76rem;margin:0;}
.head-shed-compass-record-list dl{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0 0;}
.head-shed-compass-record-list dl div{border-top:1px solid #EEE5DA;padding-top:7px;}
.head-shed-compass-record-list dt{color:#746A60;font-size:.7rem;text-transform:uppercase;}
.head-shed-compass-record-list dd{color:#51483F;font-size:.78rem;margin:3px 0 0;}
.head-shed-compass-record-list dd small,.head-shed-compass-detail dd small{color:#746A60;display:block;font-size:.68rem;margin-top:3px;}
.head-shed-compass-state-historical{background:#EEE8DD;}
.head-shed-compass-state-incomplete{background:#F4E7CC;}
.head-shed-compass-state-deferred{background:#E1ECFA;}
.head-shed-compass-detail{max-width:1100px;}
.head-shed-compass-detail code{font-size:.78rem;overflow-wrap:anywhere;}

@media(max-width:980px){.head-shed-wall-roadmap-layout{grid-template-columns:1fr;}.head-shed-wall-overview-grid,.head-shed-wall-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:900px){.head-shed-page .container{max-width:none;width:auto;}.head-shed-desk-layout{grid-template-columns:1fr;}}
@media(max-width:620px){.head-shed-wall-overview-grid,.head-shed-wall-activity-grid,.head-shed-wall-actions,.head-shed-controls-grid,.head-shed-compass-source-grid,.head-shed-compass-state-links,.head-shed-compass-record-list dl{grid-template-columns:1fr;}.head-shed-wall-roadmap-cards{grid-template-columns:1fr;}.head-shed-wall-band{padding:15px;}.head-shed-navigation .head-shed-garden-return{margin-left:0;}.head-shed-queue-primary{align-items:flex-start;flex-direction:column;gap:8px;}.head-shed-compact-list li{align-items:flex-start;flex-direction:column;gap:5px;}.head-shed-compact-list a,.head-shed-compact-list li>span:first-child{white-space:normal;}}

@media (min-width:820px){
    .head-shed{
        grid-template-columns:repeat(12,minmax(0,1fr));
    }

    .head-shed-hero{grid-column:1 / -1;}
    .head-shed-home .head-shed-health{grid-column:1 / -1;}
    .head-shed-controls-grid,.head-shed-diagnostics>.head-shed-section,.head-shed-diagnostics>.head-shed-wall-return{grid-column:1 / -1;}
    .head-shed-attention-grid{grid-column:1 / -1;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);}
    .head-shed-harvest{grid-column:span 5;}
    .head-shed-recent-footprints{grid-column:span 7;}
    .head-shed-observatories,.head-shed-orb{grid-column:1 / -1;}
    .head-shed-compass-bearing,.head-shed-compass-records,.head-shed-compass-detail>.head-shed-section,.head-shed-compass-detail>.head-shed-wall-return{grid-column:1 / -1;}
    .head-shed-compass-checklist,.head-shed-compass-state{grid-column:span 6;}
    .head-shed-observatory-grid,.head-shed-desk-reflection{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:600px){
    .head-shed-section-heading{
        align-items:flex-start;
        flex-direction:column;
    }

    .head-shed-facts,
    .head-shed-derived,
    .head-shed-roadmap-sections{
        grid-template-columns:1fr;
    }

    .head-shed-footprints li{
        grid-template-columns:64px minmax(0,1fr);
    }
}

.home-screen{
    color:#262A2D;
    margin-bottom:-12px;
    padding-top:clamp(28px,6vh,54px);
    text-align:center;
}

.home-primary-actions{
    display:grid;
    gap:10px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin:0 auto 14px;
    max-width:720px;
}

.home-primary-actions a{
    background:rgba(255,255,255,.78);
    border:1px solid rgba(154,122,63,.24);
    border-radius:16px;
    color:#263F4C;
    font-weight:700;
    padding:12px 10px;
    text-decoration:none;
}

.home-primary-actions a[aria-current="page"]{
    background:rgba(231,224,202,.62);
}

.home-primary-actions a:focus-visible,
.home-primary-actions a:hover,
.home-soft-action:focus-visible,
.home-soft-action:hover,
.home-lock-form button:focus-visible,
.home-lock-form button:hover{
    outline:2px solid rgba(154,122,63,.48);
    outline-offset:3px;
}

.home-secondary-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:center;
    margin:0 auto 8px;
}

.home-soft-action{
    border:1px solid rgba(49,90,107,.16);
    border-radius:999px;
    color:#315A6B;
    padding:9px 18px;
    text-decoration:none;
}

.home-garden-shed-action{
    background:rgba(255,255,255,.48);
}

.home-head-shed-action{
    background:rgba(49,90,107,.09);
    border-color:rgba(49,90,107,.28);
    font-weight:700;
}

.home-lock-form{
    margin:8px auto 0;
}

.home-lock-form button{
    background:transparent;
    border:0;
    color:#6D6358;
    cursor:pointer;
    font:inherit;
    padding:7px 10px;
    text-decoration:underline;
    text-underline-offset:4px;
}

.home-hero{
    margin-bottom:clamp(42px,7vh,66px);
}

.home-moments-access{
    margin:0 auto clamp(36px,6vh,54px);
    max-width:560px;
}

.home-moments-link{
    align-items:center;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(154,122,63,.28);
    border-radius:20px;
    box-shadow:0 10px 28px rgba(38,42,45,.08);
    color:#263F4C;
    display:flex;
    justify-content:space-between;
    padding:20px 24px;
    text-align:left;
    text-decoration:none;
}

.home-moments-link strong{
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.35rem,4vw,1.7rem);
}

.home-moments-link span{
    color:#6D6358;
}

.home-moments-link:focus-visible,
.home-moments-link:hover{
    border-color:rgba(154,122,63,.58);
    outline:2px solid rgba(154,122,63,.40);
    outline-offset:4px;
}

.home-garden-link{
    color:#263F4C;
    display:inline-block;
    font-size:.95rem;
    font-weight:650;
    margin-bottom:clamp(22px,5vh,42px);
    padding:6px 2px 4px;
    text-decoration:underline;
    text-decoration-color:#C1A46C;
    text-decoration-thickness:1px;
    text-underline-offset:5px;
}

.home-garden-link:focus-visible{
    border-radius:12px;
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:6px;
}

.home-title{
    color:#262A2D;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2.4rem,8vw,4.45rem);
    font-weight:500;
    letter-spacing:0;
    line-height:1.02;
    margin:0;
}

.home-title-ornament{
    align-items:center;
    color:#9A7A3F;
    display:flex;
    gap:12px;
    justify-content:center;
    margin-top:18px;
}

.home-title-ornament span{
    background:#C1A46C;
    display:block;
    height:1px;
    width:76px;
}

.home-title-ornament b{
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.05rem;
    font-weight:400;
    line-height:1;
}

.home-invitation{
    margin-top:clamp(34px,6vh,58px);
    margin-bottom:clamp(28px,5vh,42px);
}

.home-management{
    border-top:1px solid rgba(49,90,107,.12);
    margin:clamp(38px,7vh,64px) auto 0;
    max-width:560px;
    padding-top:24px;
}

.home-journeys{
    margin:clamp(30px,6vh,52px) auto;
    max-width:560px;
}

.home-journeys h2{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
}

.home-journeys ul{
    list-style:none;
    margin:0;
    padding:0;
}

.home-journeys li{
    border-top:1px solid rgba(49,90,107,.12);
    padding:12px;
}

.home-invitation-title{
    color:#263F4C;
    font-size:clamp(2.35rem,8vw,4.15rem);
    font-weight:680;
    letter-spacing:0;
    line-height:1.04;
    margin:0 0 18px;
}

.home-invitation-text{
    color:#9A7A3F;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.05rem,3.5vw,1.42rem);
    font-style:italic;
    line-height:1.45;
    margin:0 auto clamp(28px,5vh,46px);
    max-width:34rem;
}

.home-capture-paths{
    display:grid;
    gap:clamp(14px,4vw,28px);
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0 auto;
    max-width:min(100%,560px);
}

[data-picture-environment="desktop"] .home-capture-paths{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:min(100%,680px);
}

.home-capture-path{
    align-items:center;
    box-sizing:border-box;
    color:#263F4C;
    display:flex;
    flex-direction:column;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.28rem;
    font-weight:500;
    gap:10px;
    min-width:0;
    padding:8px 4px 12px;
    text-align:center;
    text-decoration:none;
    transition:filter .2s ease,opacity .2s ease,transform .2s ease;
}

.home-capture-image{
    display:block;
    filter:drop-shadow(0 18px 18px rgba(38,42,45,.08));
    height:auto;
    max-width:100%;
    object-fit:contain;
    transition:filter .2s ease,transform .2s ease;
    width:min(100%,clamp(112px,31vw,178px));
}

.home-capture-image-speak{
    width:min(100%,clamp(116px,32vw,184px));
}

.home-capture-image-camera{
    width:min(100%,clamp(122px,33vw,190px));
}

.home-capture-image-write{
    width:min(100%,clamp(116px,32vw,184px));
}

.home-capture-image-photos{
    width:min(100%,clamp(118px,32vw,186px));
}

.home-capture-path[href]:hover{
    filter:brightness(1.02);
    transform:translateY(-2px);
}

.home-capture-path[href]:hover .home-capture-image{
    filter:drop-shadow(0 22px 20px rgba(38,42,45,.10));
}

.home-capture-path[href]:active{
    opacity:.92;
    transform:translateY(0);
}

.home-capture-path[href]:focus-visible,
.home-secondary:focus-visible{
    border-radius:12px;
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:6px;
}

.home-capture-path-static{
    cursor:default;
}

.home-journey-option{
    margin-top:clamp(18px,4vh,34px);
}

.home-or{
    align-items:center;
    color:#9A7A3F;
    display:flex;
    font-family:Georgia,"Times New Roman",serif;
    font-size:.95rem;
    font-style:italic;
    gap:8px;
    justify-content:center;
    margin-bottom:6px;
}

.home-or::before,
.home-or::after{
    color:#C1A46C;
    content:"❦";
    font-size:.62rem;
    line-height:1;
}

.home-secondary{
    color:#263F4C;
    display:inline-block;
    font-size:1rem;
    font-weight:650;
    margin-top:0;
    padding:8px 2px 4px;
    text-align:center;
    text-decoration:underline;
    text-decoration-color:#C1A46C;
    text-decoration-thickness:1px;
    text-underline-offset:5px;
}

.back-link{
    text-decoration:none;
    color:#0A84FF;
    display:inline-block;
    margin-bottom:24px;
}

.intro{
    color:#555;
    margin-bottom:32px;
    font-size:1.05rem;
    line-height:1.45;
}

.button{
    display:block;
    width:100%;
    box-sizing:border-box;
    border:0;
    text-decoration:none;
    text-align:center;
    padding:18px 16px;
    border-radius:18px;
    font-size:1.1rem;
    font-weight:650;
    margin-bottom:18px;
    box-shadow:0 6px 18px rgba(0,0,0,.08);
    font-family:inherit;
    cursor:pointer;
}

.primary{
    color:white;
    background:linear-gradient(135deg,#0A84FF,#5AC8FA);
}

.secondary{
    color:#222;
    background:#f6f6f6;
}

.quiet{
    background:#fff;
    color:#333;
    font-size:.98rem;
    padding:14px 16px;
    border-radius:14px;
    box-shadow:0 3px 10px rgba(0,0,0,.06);
}

.button:active{
    transform:scale(.98);
}

.button:disabled{
    background:#C9D1D4;
    box-shadow:none;
    color:#F7F7F4;
    cursor:not-allowed;
    opacity:.82;
}

.button:disabled:active{
    transform:none;
}

[hidden],
.hidden{
    display:none !important;
}

.local-garden-outcome,
.local-garden-notice{
    background:rgba(91,124,91,.10);
    border:1px solid rgba(91,124,91,.28);
    border-radius:16px;
    color:#263F4C;
    line-height:1.5;
    margin:0 0 24px;
    padding:14px 16px;
}

.local-garden-notice p{
    margin:0 0 10px;
}

.local-garden-notice p:last-of-type{
    margin-bottom:0;
}

.local-garden-dismiss{
    margin:14px 0 0;
}

.gentle-capture{
    display:flex;
    justify-content:space-between;
    gap:18px;
    margin-top:34px;
}

.gentle-choice{
    flex:1;
    text-align:center;
    text-decoration:none;
    color:#222;
    background:transparent;
    border:0;
    font-family:inherit;
    font-weight:650;
    font-size:1.05rem;
    padding:18px 6px;
    cursor:pointer;
}

.gentle-choice:active{
    transform:scale(.96);
}

.line-icon{
    font-size:2.4rem;
    font-weight:400;
    line-height:1;
    margin-bottom:12px;
    color:#333;
}

.soft-note{
    margin-top:30px;
    color:#777;
    font-size:.98rem;
}

.listening-indicator{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    margin:18px 0 28px;
    color:#999;
}

.listening-indicator span{
    width:3px;
    height:18px;
    background:#cfcfcf;
    border-radius:999px;
    animation:listeningPulse 1s infinite ease-in-out;
}

.listening-indicator span:nth-child(2){ animation-delay:.1s; }
.listening-indicator span:nth-child(3){ animation-delay:.2s; }
.listening-indicator span:nth-child(4){ animation-delay:.3s; }
.listening-indicator span:nth-child(5){ animation-delay:.4s; }

.listening-indicator strong{
    margin-left:8px;
    font-size:.95rem;
}

@keyframes listeningPulse{
    0%,100%{ transform:scaleY(.45); opacity:.45; }
    50%{ transform:scaleY(1.2); opacity:1; }
}

.fade-ready{
    animation:softFadeIn 1.5s ease-in;
}

@keyframes softFadeIn{
    from{ opacity:0; transform:translateY(6px); }
    to{ opacity:1; transform:translateY(0); }
}

.save-progress-button{
    --progress:0%;
    background:linear-gradient(90deg,#0A84FF var(--progress),#5AC8FA var(--progress));
}

.appointment-garden,
.appointment-list,
.appointment-workspace,
.appointment-photo{
    color:#262A2D;
}

.appointment-garden{
    padding-top:clamp(24px,7vh,60px);
    text-align:center;
}

.appointment-garden-path{
    display:flex;
    justify-content:center;
    margin-top:clamp(28px,6vh,48px);
}

.appointment-header,
.appointment-workspace-header{
    margin-bottom:28px;
}

.appointment-kicker{
    color:#9A7A3F;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1rem;
    font-style:italic;
    margin:0 0 8px;
}

.appointment-meta,
.appointment-purpose,
.appointment-consent,
.appointment-empty{
    color:#6D6358;
    line-height:1.45;
}

.appointment-purpose{
    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
}

.appointment-panel{
    margin:0 0 28px;
}

.appointment-panel h2{
    color:#263F4C;
    font-size:1.25rem;
    margin:0 0 14px;
}

.appointment-panel-heading{
    align-items:flex-start;
    display:flex;
    gap:14px;
    justify-content:space-between;
}

.appointment-state{
    color:#9A7A3F;
    font-size:.92rem;
    font-weight:650;
    margin-top:4px;
}

.appointment-confirmation{
    color:#5B7C5B;
    font-weight:650;
    min-height:1.4em;
}

.appointment-form label,
.appointment-note-form label{
    display:block;
    margin-bottom:16px;
}

.appointment-form span,
.appointment-note-form span{
    color:#6D6358;
    display:block;
    font-size:.92rem;
    font-weight:650;
    margin-bottom:6px;
}

.appointment-form input,
.appointment-form textarea,
.appointment-quick-thought,
.appointment-note-form textarea{
    background:rgba(255,255,255,.58);
    border:1px solid rgba(154,122,63,.28);
    border-radius:12px;
    box-sizing:border-box;
    color:#262A2D;
    font:inherit;
    padding:12px 13px;
    width:100%;
}

.appointment-form input:focus,
.appointment-form textarea:focus,
.appointment-quick-thought:focus,
.appointment-note-form textarea:focus{
    outline:2px solid rgba(154,122,63,.45);
    outline-offset:2px;
}

.appointment-form-grid{
    display:grid;
    gap:12px;
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.appointment-primary{
    background:#315A6B;
    box-shadow:0 10px 22px rgba(49,90,107,.16);
}

.appointment-stack{
    display:grid;
    gap:12px;
}

.appointment-row{
    color:#263F4C;
    display:flex;
    gap:14px;
    justify-content:space-between;
    padding:10px 0;
    text-decoration:none;
}

.appointment-row small{
    color:#6D6358;
    display:block;
    line-height:1.4;
    margin-top:4px;
}

.appointment-row em{
    color:#9A7A3F;
    font-size:.9rem;
    font-style:normal;
}

.appointment-recorder-controls,
.appointment-action-grid{
    display:grid;
    gap:12px;
}

.appointment-recorder-controls .button,
.appointment-action-grid .button,
.appointment-inline-button{
    margin-bottom:0;
}

.appointment-elapsed{
    color:#263F4C;
    font-weight:650;
    margin-top:16px;
}

.appointment-panel-heading form{
    align-items:center;
    display:flex;
    flex:1;
    gap:8px;
    max-width:320px;
}

.appointment-inline-button{
    flex:0 0 auto;
    padding:11px 14px;
    width:auto;
}

.appointment-discuss-list{
    display:grid;
    gap:12px;
}

.appointment-discuss-item{
    border-left:2px solid #C1A46C;
    padding-left:12px;
}

.appointment-discuss-item p{
    line-height:1.45;
    margin:0 0 8px;
}

.appointment-discuss-item.is-discussed{
    opacity:.58;
}

.appointment-discuss-toggle{
    background:transparent;
    border:0;
    color:#263F4C;
    cursor:pointer;
    font:inherit;
    font-size:.95rem;
    font-weight:650;
    padding:4px 0;
    text-decoration:underline;
    text-decoration-color:#C1A46C;
    text-underline-offset:4px;
}

.appointment-note-form{
    margin-top:18px;
}

.appointment-timeline{
    display:grid;
    gap:14px;
}

.appointment-timeline-item{
    border-left:2px solid rgba(49,90,107,.28);
    padding-left:12px;
}

.appointment-timeline-item time{
    color:#9A7A3F;
    display:block;
    font-size:.86rem;
    margin-bottom:4px;
}

.appointment-timeline-item strong{
    color:#263F4C;
}

.appointment-timeline-item p{
    color:#6D6358;
    line-height:1.4;
    margin:6px 0 0;
}

@media (min-width:640px){
    .appointment-recorder-controls,
    .appointment-action-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:520px){
    .appointment-form-grid,
    .appointment-panel-heading{
        display:block;
    }

    .appointment-panel-heading form{
        margin-top:12px;
        max-width:none;
    }
}

.save-progress-button.saving::after{
    content:"  • autosaving";
    opacity:.85;
    font-weight:500;
}

.reflection-form textarea{
    width:100%;
    box-sizing:border-box;
    border:0;
    border-radius:18px;
    padding:18px;
    font-size:1.05rem;
    font-family:inherit;
    box-shadow:0 8px 24px rgba(0,0,0,.10);
    margin-bottom:20px;
}

.moment-card{
    background:#fff;
    border-radius:18px;
    padding:22px;
    box-shadow:0 2px 10px rgba(0,0,0,.08);
    margin-top:24px;
}

.moment-card h2{
    margin-top:8px;
    font-size:1.25rem;
}

.moment-date{
    color:#777;
    font-size:.9rem;
}

.my-moments-screen{
    color:#262A2D;
    margin:0 auto;
    max-width:720px;
    padding-top:clamp(24px,5vh,44px);
}

.my-moments-navigation{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
}

.my-moments-header{
    margin-bottom:34px;
    text-align:center;
}

.my-moments-header p{
    color:#6D6358;
    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
}

.my-moments-list{
    display:grid;
    gap:24px;
    list-style:none;
    margin:0;
    padding:0;
}

.my-moment-card,
.my-moments-empty{
    background:rgba(255,255,255,.86);
    border:1px solid rgba(49,90,107,.14);
    border-radius:22px;
    box-shadow:0 10px 28px rgba(38,42,45,.08);
    padding:clamp(20px,5vw,30px);
}

.my-moment-card h2,
.my-moments-empty h2{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    margin:6px 0 16px;
}

.my-moment-card-local{
    background:rgba(250,244,226,.92);
    border-color:rgba(166,126,62,.34);
    box-shadow:0 10px 28px rgba(102,76,38,.08);
}

.my-moment-persistence-status{
    color:#4F684F;
    font-size:.95rem;
    font-weight:700;
    margin:0 0 14px;
}

.my-moment-card-local .my-moment-persistence-status{
    color:#765E37;
}

.my-moment-duration{
    color:#6D6358;
    font-size:.9rem;
    margin:-6px 0 14px;
}

.my-moment-lifecycle{
    color:#6D6358;
    font-size:.9rem;
    margin:0 0 14px;
}

.my-moment-upload-action{
    margin:0;
}

.my-moment-actions{
    align-items:center;
    display:flex;
    flex-wrap:nowrap;
    gap:10px;
    margin-top:16px;
    max-width:100%;
    overflow-x:auto;
    padding:2px 2px 6px;
    scrollbar-width:thin;
}

.my-moment-action,
.my-moment-actions .my-moment-upload-action{
    align-items:center;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(49,90,107,.28);
    border-radius:999px;
    color:#315A6B;
    cursor:pointer;
    display:inline-flex;
    flex:0 0 auto;
    font:inherit;
    font-size:.92rem;
    font-weight:700;
    justify-content:center;
    line-height:1;
    margin-bottom:0;
    min-height:44px;
    padding:10px 16px;
    width:auto;
    white-space:nowrap;
}

.my-moment-action:hover,
.my-moment-actions .my-moment-upload-action:hover{
    background:#fff;
}

.my-moment-action:focus-visible,
.my-moment-actions .my-moment-upload-action:focus-visible{
    outline:3px solid rgba(49,90,107,.28);
    outline-offset:2px;
}

.my-moment-action[aria-expanded="true"]{
    background:#315A6B;
    color:#fff;
}

.my-moment-recovery-actions{
    margin-top:8px;
}

.my-moment-date,
.my-moment-preserved{
    color:#6D6358;
    margin:0;
}

.my-moment-text{
    line-height:1.65;
    white-space:pre-wrap;
}

.my-moment-photo{
    border-radius:16px;
    display:block;
    height:auto;
    margin-top:18px;
    max-width:100%;
}

.my-moment-audio{
    display:block;
    margin-top:18px;
    max-width:100%;
    width:100%;
}

.my-moment-derived-heading{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1rem;
    margin:20px 0 0;
}

.my-moment-enrichment{
    border-top:1px solid rgba(49,90,107,.14);
    margin-top:20px;
    padding-top:16px;
}

.my-moment-enrichment summary{
    color:#315A6B;
    cursor:pointer;
    font-weight:700;
}

.my-moment-enrichment summary:focus-visible{
    outline:3px solid rgba(49,90,107,.28);
    outline-offset:4px;
}

.my-moment-enrichment-status,
.my-moment-enrichment-note{
    color:#6D6358;
    font-size:.95rem;
}

.my-moment-transcript{
    line-height:1.65;
    white-space:pre-wrap;
}

.my-moment-appointment-summary{
    background:rgba(249,245,235,.72);
    border:1px solid rgba(134,109,66,.14);
    border-radius:14px;
    padding:16px;
}

.my-moment-appointment-summary h3{
    color:#263F4C;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1rem;
    margin:18px 0 6px;
}

.my-moment-appointment-summary ul{
    margin:0;
    padding-left:22px;
}

.my-moments-empty{
    text-align:center;
}

.my-moments-empty .button{
    margin:24px auto 0;
    max-width:360px;
}

.my-moments-return{
    margin-top:34px;
    text-align:center;
}

.journey-play-button{
    margin-top:12px;
}

@media (max-width:480px){
    .container{
        padding:26px 16px;
    }

    h1{
        font-size:1.9rem;
    }

    .gentle-capture{
        gap:10px;
    }

    .line-icon{
        font-size:2.1rem;
    }

    .garden-home{
        padding-top:20px;
    }

    .landing-home{
        padding-top:54px;
    }

    .garden-hero{
        margin-bottom:24px;
    }

    .garden-grid{
        gap:14px 16px;
    }

    .garden-art{
        width:min(100%,128px);
    }

    .garden-journey{
        font-size:1.06rem;
        padding:4px 2px 10px;
    }

    .home-screen{
        padding-top:34px;
    }

    .home-primary-actions{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-hero{
        margin-bottom:38px;
    }

    .home-title-ornament{
        margin-top:14px;
    }

    .home-moments-link{
        align-items:flex-start;
        flex-direction:column;
        gap:6px;
        padding:18px;
    }

    .my-moments-navigation{
        align-items:flex-start;
        flex-direction:column;
    }

    .my-moment-actions{
        gap:8px;
        margin-left:-2px;
        margin-right:-2px;
    }

    .my-moment-action,
    .my-moment-actions .my-moment-upload-action{
        font-size:.86rem;
        min-height:44px;
        padding:9px 13px;
    }

    .home-invitation-text{
        margin-bottom:24px;
    }

    .home-capture-paths{
        gap:14px 16px;
        max-width:360px;
    }

    .home-capture-path{
        font-size:1.12rem;
        padding:4px 2px 10px;
    }

    .home-capture-image,
    .home-capture-image-speak,
    .home-capture-image-camera,
    .home-capture-image-write,
    .home-capture-image-photos{
        width:min(100%,138px);
    }
}

.launch-panel,
.launch-garden,
.launch-capture{
    max-width:680px;
    margin:0 auto;
    padding-top:34px;
}

.launch-panel{
    text-align:center;
    max-width:520px;
}

.launch-primary{
    width:100%;
    margin-top:16px;
}

.launch-message{
    color:#315A6B;
    min-height:1.5em;
    line-height:1.5;
    margin:18px 0;
}

.returning-home-form{
    display:grid;
    gap:10px;
    margin:24px auto 0;
    max-width:420px;
    text-align:left;
}

.returning-home-form input{
    background:#FFFDF8;
    border:1px solid rgba(49,90,107,.28);
    border-radius:14px;
    box-sizing:border-box;
    color:#262A2D;
    font:inherit;
    padding:13px 14px;
    width:100%;
}

.returning-home-form input:focus-visible{
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:3px;
}

.returning-home-guidance{
    color:#4E6258;
    line-height:1.5;
    margin:2px 0 0;
}

.garden-gate-actions{
    display:grid;
    gap:12px;
    margin:24px auto 0;
    max-width:430px;
}

.garden-gate-actions .button{
    box-sizing:border-box;
    text-align:center;
    width:100%;
}

.cf-turnstile{
    margin:8px 0;
    min-height:65px;
}

.returning-home-code{
    background:rgba(255,255,255,.48);
    border:1px solid rgba(154,122,63,.20);
    border-radius:20px;
    padding:18px;
}

.returning-home-confirmation{
    margin:30px auto 24px;
}

.returning-home-confirmation h2{
    color:#315A6B;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(1.65rem,5vw,2.15rem);
    margin-bottom:16px;
}

.returning-home-confirmation p{
    line-height:1.5;
    margin:8px 0;
}

.returning-home-code-fallback{
    border-top:1px solid rgba(154,122,63,.22);
    margin:30px auto 0;
    max-width:420px;
    padding-top:18px;
    text-align:left;
}

.returning-home-code-fallback summary{
    color:#315A6B;
    cursor:pointer;
    font-weight:650;
    text-align:center;
}

.returning-home-code-fallback summary:focus-visible{
    border-radius:10px;
    outline:2px solid rgba(154,122,63,.55);
    outline-offset:4px;
}

.returning-home-welcome{
    padding-top:clamp(72px,14vh,140px);
}

.returning-home-smile{
    align-items:center;
    display:inline-flex;
    gap:9px;
    justify-content:center;
    min-width:210px;
}

.returning-home-smile [aria-hidden="true"]{
    font-size:1.35rem;
}

.launch-capture-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.launch-capture-choice{
    background:rgba(255,255,255,.82);
    border:1px solid rgba(49,90,107,.16);
    border-radius:24px;
    box-shadow:0 8px 28px rgba(38,63,76,.08);
    color:#263F4C;
    display:flex;
    flex-direction:column;
    gap:9px;
    min-height:122px;
    justify-content:center;
    padding:24px;
    text-align:center;
    text-decoration:none;
}

.launch-capture-choice strong{
    font-family:Georgia,serif;
    font-size:1.3rem;
}

.launch-capture-choice span,
.launch-journey,
.launch-recent article span{
    color:#6D6358;
}

.launch-journey{
    margin:24px 0;
    text-align:center;
}

.launch-recent{
    margin-top:38px;
}

.launch-recent article{
    align-items:center;
    border-top:1px solid rgba(49,90,107,.12);
    display:flex;
    justify-content:space-between;
    padding:14px 0;
}

.launch-capture-form{
    display:grid;
    gap:16px;
}

.launch-field,
.launch-file-choice{
    display:grid;
    gap:8px;
}

.launch-field textarea,
.launch-file-choice{
    background:rgba(255,255,255,.82);
    border:1px solid rgba(49,90,107,.18);
    border-radius:18px;
    box-sizing:border-box;
    font:inherit;
    padding:16px;
    width:100%;
}

.launch-field small{
    color:#777;
    font-weight:normal;
}

.launch-file-choice input{
    color:#6D6358;
    max-width:100%;
}

@media (max-width:560px){
    .launch-capture-grid{
        grid-template-columns:1fr;
    }

    .launch-recent article{
        align-items:flex-start;
        flex-direction:column;
        gap:4px;
    }
}

@media (prefers-reduced-motion:reduce){
    .garden-journey,
    .home-capture-path,
    .home-capture-image{
        transition:none;
    }

    .garden-journey[href]:hover,
    .garden-journey[href]:active,
    .home-capture-path[href]:hover,
    .home-capture-path[href]:active{
        transform:none;
    }
}

.photo-review-layout{
    display:flex;
    align-items:flex-start;
    gap:20px;
}

.photo-reflection-actions{
    flex:1;
}

.photo-preview{
    width:50%;
    max-height:320px;
    object-fit:cover;
    border-radius:22px;
    box-shadow:0 8px 24px rgba(0,0,0,.10);
}

.photo-reflect-prompt{
    margin-top:0;
    margin-bottom:20px;
}

.photo-action-row{
    display:flex;
    gap:12px;
}

.photo-action-row .button{
    flex:1;
}

@media (max-width:480px){
    .photo-review-layout{
        flex-direction:row;
        gap:14px;
    }

    .photo-preview{
        width:46%;
        max-height:260px;
    }
}
