/* Sunlit ranch workspace: clear, opaque reading surfaces over a gentle landscape. */
:root{color-scheme:light;--bg:#f6efe2;--panel:rgba(255,253,247,.97);--muted:#625d51;--cyan:#285d49;--warm-line:#c9c0ae}
body{color:#29382f;background:linear-gradient(90deg,rgba(250,245,232,.68),rgba(250,245,232,.35)),url('/portal/ranch-background.jpg') center center/cover fixed no-repeat,#f6efe2}
header{background:rgba(255,252,244,.94);border:1px solid #fff9;border-top:0;border-radius:0 0 18px 18px;box-shadow:0 5px 24px #5d482b12}header .brand,header .brand span{color:#285d49}header nav a{font-weight:650;color:#365840;text-underline-offset:4px}main{margin-top:32px}h1{color:#243f30;font-size:clamp(2rem,4vw,2.7rem);text-shadow:0 2px 16px #fff9}h2,h3{color:#304b38}.eyebrow{color:#385d44}a{color:#285d49}.muted,small,footer{color:var(--muted)}footer{background:rgba(255,252,244,.92);border-radius:15px 15px 0 0}
.card{background:var(--panel);border-color:#cabda4;box-shadow:0 12px 38px #66513212}input,textarea,select{background:#fffef9;color:#27372e;border-color:#9d9b86}input::placeholder,textarea::placeholder{color:#767567}button{background:#35664a;color:#fffdf7;box-shadow:0 3px 8px #2c4a3412}.secondary{background:#fffaf0;color:#31563f;border-color:#a7af95}button:hover:not(:disabled){background:#294f3a;color:#fff}.secondary:hover:not(:disabled){background:#e8eddd;color:#234b36}button:disabled{opacity:.5;cursor:not-allowed}.error{color:#9b3528}.notice{color:#315f3f}code{color:#285d49;background:#eaf0df;padding:2px 5px;border-radius:4px}.codes{background:#f0f2e6}.development-banner{background:#f4d585;border-color:#d4b76d;color:#4c3d21}.danger{border-color:#bb7865}th,td{border-color:#d9d1bf}dt{color:#625d51}
.admin-folders{filter:none}.folder-tabs button{background:#e6dfca;color:#4b5140;border-color:#aaad90;box-shadow:inset 0 3px #f8f0dd}.folder-tabs button[aria-selected=true]{background:#fbf8ed;color:#274b36;box-shadow:inset 0 4px #66834f}.folder-tabs button:hover:not(:disabled){background:#eff1df;color:#274b36}.folder-body{background:linear-gradient(135deg,rgba(255,253,246,.98),rgba(245,244,230,.97));border-color:#b4b79c;box-shadow:0 20px 45px #725c2b20}.folder-body .card{background:#fffdf7}.associate-list{border-color:#c8c7b1;background:#fffdf8}.associate-list thead th{background:#e8ecdc;color:#354c38}.folder-body [role=tabpanel]>h2{color:#354f38}
.mail-message-list{border-color:#bbbda5}.mail-message{background:#fffdf7;color:#625d51;border-color:#d9d1bf}.mail-message.unread{background:#edf1e2;color:#2c4a35}.mail-reader{border-color:#c3c6af}.mail-reader pre{background:#fffef9;padding:18px;border-radius:10px}.mail-compose{color:#29382f;background:#fffaf0;border-color:#779265;box-shadow:0 20px 80px #1f30264a}.mail-compose::backdrop{background:#263f3266}.mail-compose h2{color:#304b38}.mail-folders button[aria-current=page]{background:#e4edda;border-color:#6e8959}.authenticator-qr{box-shadow:0 4px 20px #614c2114;border:8px solid #fff;border-radius:12px}
:focus-visible{outline:3px solid #406e48;outline-offset:4px}h1:focus{outline:none}
@media(max-width:700px){body{background-attachment:scroll;background-position:65% top}header{margin:0 10px;padding:20px;border-radius:0 0 14px 14px}.folder-body{background:rgba(255,253,246,.98)}main{width:calc(100% - 24px)}.card{padding:20px}}
@media print{body{background:#fff}header,footer,.folder-body,.card{background:#fff;box-shadow:none}}
#app>div{background:rgba(255,251,242,.88);padding:clamp(18px,3vw,30px);border:1px solid #fff9;border-radius:20px;box-shadow:0 14px 50px #71542a1a}#app>.narrow{background:rgba(255,251,242,.94)}
@media(max-width:700px){body{background-size:auto 100vh;background-repeat:no-repeat;background-color:#f6efe2}}

/* Give the member directory more room without widening sign-in forms. */
main:has(.admin-folders){width:min(calc(100% - 40px),1600px)}
body:has(.admin-folders) header,body:has(.admin-folders) footer{max-width:1600px;width:calc(100% - 40px)}
#app>div:has(.admin-folders){padding:22px}
.admin-folders .folder-body{padding:22px}
#folder-associates>.card{padding:20px}
.associate-list{max-height:420px}
.associate-list th,.associate-list td{padding:10px 12px;font-size:.9rem;line-height:1.5}
.associate-list td:nth-child(1){min-width:240px}
.associate-list td:nth-child(2){min-width:150px}
.associate-list td:last-child{min-width:190px}
@media(max-width:700px){main:has(.admin-folders){width:calc(100% - 24px)}body:has(.admin-folders) header,body:has(.admin-folders) footer{width:calc(100% - 20px)}#app>div:has(.admin-folders),.admin-folders .folder-body{padding:14px}#folder-associates>.card{padding:16px}.associate-list{max-height:360px}}

.workspace-panel{position:relative}.workspace-toolbar{margin-bottom:20px}.workspace-email{overflow-wrap:anywhere}.workspace-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.workspace-actions button{margin:0;min-height:44px}.signout-confirmation{width:min(460px,calc(100% - 32px));padding:30px;border:1px solid #9baa85;border-radius:18px;background:#fffaf0;color:#29382f;box-shadow:0 20px 70px #293c3044}.signout-confirmation::backdrop{background:#263f3266}.signout-confirmation h2{margin-top:0}.signout-confirmation p{line-height:1.65}
@media(min-width:901px){.workspace-panel:not(.narrow) .workspace-actions{position:absolute;top:22px;right:22px;max-width:48%}.workspace-panel:not(.narrow)>.eyebrow,.workspace-panel:not(.narrow)>h1{max-width:calc(100% - 330px)}}
@media(max-width:900px){.workspace-actions{justify-content:flex-end}.workspace-panel .workspace-actions{position:static}}

/* Keep only the corner actions above the ranch when the dashboard is hidden. */
#app>.workspace-panel.dash-hidden{background:transparent;border-color:transparent;box-shadow:none;min-height:65vh}
.workspace-panel.dash-hidden>:not(.workspace-toolbar){display:none!important}
.workspace-panel.dash-hidden .workspace-email{display:none}
.workspace-panel.dash-hidden .workspace-toolbar{margin:0}
.workspace-panel.dash-hidden .workspace-actions{position:absolute;top:22px;right:22px;justify-content:flex-end;max-width:100%}
.workspace-panel.dash-hidden .workspace-actions button{box-shadow:0 3px 15px #29382f22;background:#fffaf0}

.access-badge{display:inline-block;min-width:32px;text-align:center;padding:3px 9px;border-radius:20px;background:#e3ecd6;color:#294d37}.associate-list th:nth-child(3),.associate-list td:nth-child(3){min-width:130px}.folder-body details>summary{cursor:pointer;font-weight:700;color:#31563f}.folder-body details[open]>summary{margin-bottom:20px}

/* Accessible level-10 visibility switch. */
.site-visibility-toggle{display:inline-flex!important;align-items:center;gap:12px;width:auto!important;padding:8px 0!important;border:0!important;background:transparent!important;color:#214936!important;box-shadow:none!important}
.site-visibility-toggle>span{display:block;position:relative;width:54px;height:30px;flex:none;border:1px solid #79877b;border-radius:20px;background:#8b9286;font-size:0}
.site-visibility-toggle>span::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fffdf6;box-shadow:0 1px 4px #0003;transition:transform .15s ease}
.site-visibility-toggle[aria-checked="true"]>span{background:#256b50}
.site-visibility-toggle[aria-checked="true"]>span::after{transform:translateX(24px)}
@media(prefers-reduced-motion:reduce){.site-visibility-toggle>span::after{transition:none}}
