*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font:14px/1.55 var(--font);color-scheme:light}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid #2eb988;outline-offset:2px}[hidden]{display:none!important}.skip{position:fixed;top:-90px;background:white;padding:10px;z-index:4}.skip:focus{top:0}
.rail{background:#1d2e28;color:#fff}body.workspace{padding-left:168px}body.workspace>.rail{position:fixed;inset:0 auto 0 0;width:168px;display:flex;flex-direction:column;overflow:auto;padding:18px 9px 12px}.brand{display:flex;align-items:center;gap:8px;color:white;font-size:16px;font-weight:660;margin:0 4px 5px}.brand-symbol{display:grid;place-items:center;background:#31b788;width:26px;height:26px;border-radius:6px;color:#fff}.nav-group{margin:17px 9px 5px;color:#a9c3ba;font-size:11px;letter-spacing:.08em}.rail nav a{display:flex;gap:10px;align-items:center;padding:7px 10px;color:#e3eeea;border-radius:4px;font-size:13px;text-decoration:none}.rail nav a:hover{background:#2c443b}.rail nav a[aria-current]{background:#325d4e;color:#e3f8f1;box-shadow:inset 3px 0 #53d4a7;font-weight:620}.rail nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.rail nav b{background:#ddf7ee;color:#247056;font-size:11px;border-radius:3px;padding:0 5px}.identity{margin-top:auto;padding:14px 4px 0;display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px}.identity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity button,.menu{color:#e8f2ef;background:transparent;border:1px solid #5a6b65;padding:3px 7px;font-size:12px}.menu{display:none}.guest .rail,.guest-nav{display:flex;justify-content:space-between;align-items:center;padding:6px 3vw}
main#content{max-width:1600px;margin:auto;padding:16px clamp(16px,2.3vw,36px) 42px;overflow-wrap:anywhere;min-width:0}.crumb,.eyebrow,main#content>small:first-child{display:block;font-weight:500;color:var(--dim);font-size:12px;padding-bottom:9px;border-bottom:1px solid var(--line);margin-bottom:14px}.crumb a{color:inherit}.kicker{color:var(--dim);font-size:11px;letter-spacing:.06em}.mast,.row,.actionbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.mast,.actionbar{justify-content:space-between}.mast{margin-bottom:12px}h1{font-size:25px;font-weight:690;letter-spacing:-.025em;line-height:1.3;margin:7px 0}h2{font-size:17px;font-weight:650;line-height:1.42;margin:0 0 8px}h3{font-size:15px;margin:6px 0}p{margin:6px 0 10px}
section,article,details{background:white;border:1px solid var(--line);border-radius:5px;padding:13px 15px;margin:12px 0}article{padding:10px 12px;margin:7px 0}section section,section article{border-radius:3px}small,.muted,.helptext,dd{color:var(--dim)}.helptext{font-size:12px}.notice{background:#fff5dc;border-left:3px solid #ab791c;padding:8px 11px}.inline{display:inline}.row strong{flex:1;min-width:135px}pre{white-space:pre-wrap}input,textarea,select,button,.cta{font:inherit;max-width:100%;padding:5px 10px;border:1px solid #c2d5ce;border-radius:4px;background:white;color:var(--ink)}textarea{width:100%;min-height:72px}label{display:block;font-weight:570;margin:7px 0 3px}button,.cta{display:inline-block;background:var(--blue);color:white;border-color:var(--blue);font-weight:550;cursor:pointer}.cta:hover{color:#fff;background:#2b9570;text-decoration:none}.secondary,.quiet{background:#fff;color:var(--blue);border:1px solid #9be0c8}.secondary:hover,.quiet:hover{color:var(--blue);background:#f1fbf8}button:disabled{opacity:.55;cursor:not-allowed}summary{cursor:pointer;font-weight:600}.grid,.import-layout,.auth-layout,.member-summary{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px}.grid>*{min-width:0}.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.plans section{margin:3px 0}.auth-layout{max-width:810px;margin:7vh auto;grid-template-columns:1fr 1fr}.intro,.readme,.member-summary{background:#f6fdfa}.intro-list{display:grid;gap:7px}.auth-card input:not([type=checkbox]){width:100%}.errorlist{color:#9d3330}
.summaryline{display:flex;flex-wrap:wrap;gap:5px 16px;color:var(--dim);margin:6px 0 14px}.summaryline a{color:inherit;font-size:13px}.summaryline b{color:var(--ink);margin-left:3px}.dashboard{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(230px,1fr);gap:20px}.ledger,.inspector{min-width:0}.ledger>section,.inspector>section{margin:0 0 13px}.ledger>section:has(table){padding:12px 0 0;overflow:hidden}.ledger .panelhead{padding:0 12px}.ledger .data-table th:first-child{width:43%}.inspector{border-left:1px solid var(--line);padding-left:18px}.inspector>section{border:0;border-bottom:1px solid var(--line);padding:9px 0 15px;border-radius:0}.tabs{display:flex;gap:3px;flex-wrap:wrap}.tabs button{font-size:12px;background:var(--wash);border:1px solid transparent;color:var(--dim);padding:2px 7px}.tabs button[aria-pressed=true]{background:#eefbf6;color:#26926c;border-color:#d0f3e7}.state{white-space:nowrap}.state:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#7ca496;margin-right:5px}.state.complete:before{background:#38856b}.replyline,.report-row{display:flex;gap:8px;padding:8px 0;border-top:1px solid var(--line)}.replyline{flex-direction:column;gap:2px}.report-row{align-items:center}.report-row strong{margin-right:auto}.file-box{background:#f7fcfa;border:1px dashed #a0cfbf;border-radius:5px;padding:13px;margin:10px 0}.file-box input{display:block;width:100%;border:0;background:transparent;padding:6px 0}.file-box small{display:block}.consent,.hint{font-size:13px}.readme dl{margin:6px 0}.readme dt{font-weight:600}.readme dd{margin:0 0 9px}.import-layout>section{margin:0}.empty{font-size:13px}
@media(max-width:980px){.dashboard{grid-template-columns:minmax(0,1.6fr) minmax(205px,1fr);gap:12px}.inspector{padding-left:12px}.data-table th,.data-table td{padding:7px}.panelhead{flex-wrap:wrap}}
@media(max-width:760px){body.workspace{padding-left:0}body.workspace>.rail{position:static;width:auto;display:grid;grid-template-columns:1fr auto;align-items:center;padding:8px 11px}.brand{margin:0}.menu{display:block}.identity,body.workspace #modules{display:none}body.workspace #modules.open{display:grid;grid-column:1/-1;grid-template-columns:1fr 1fr}.nav-group{grid-column:1/-1;margin:10px 8px 2px}.rail:has(#modules.open) .identity{display:flex;grid-column:1/-1}.dashboard,.import-layout,.grid,.plans,.auth-layout,.member-summary{grid-template-columns:1fr}.inspector{border-left:0;padding:0}.report-row{flex-wrap:wrap}main#content{padding:12px 12px 30px}h1{font-size:22px}.ledger .data-table td,.ledger .data-table th{font-size:12px;padding:6px}.auth-layout{margin:12px auto}}

.updates-link{margin-top:auto;padding:13px 9px 3px;color:#d3eee5;font-size:13px}.identity{margin-top:0}.workspace .rail:has(a[aria-current]) .updates-link:hover{color:white}@media(max-width:760px){.updates-link{display:none}.rail:has(#modules.open) .updates-link{display:block}}
/* Forest workspace */
:root{accent-color:#17654f}
body{background:#f7f8f4}
body>.rail{background:#fcfcf8;color:#1a3931;border-color:#dce4dc}
body.workspace>.rail{border-right:1px solid #dce4dc}
.brand,.rail nav a,.updates-link{color:#25473d}
.brand{gap:7px;font-size:19px;letter-spacing:-.04em}.brand small{color:#537267;font-size:12px;letter-spacing:0}
.brand-symbol{background:#163e32;border-radius:8px;color:#c6eba0;width:30px;height:30px}.brand-symbol svg{width:25px;height:25px}
.nav-group{color:#65766e}.rail nav a:hover,.rail nav a[aria-current]{color:#174b37;background:#e8efe4}.rail nav a[aria-current]{box-shadow:inset 3px 0 #417653}
.menu,.identity button{color:#37584b;border-color:#bccac0}.updates-link:hover,.workspace .rail:has(a[aria-current]) .updates-link:hover{color:#14593e}
.guest .rail{border-bottom:1px solid #dce4dc}.intro,.liveblank{background-color:#edf4e9}
section,article,details{border-radius:9px}.overview-head,.quick-grid a,.signal-label{display:flex;align-items:center}.overview-head{justify-content:space-between;margin:6px 0 14px}.overview-head h1{font-size:clamp(24px,2vw,32px);margin:3px 0 0;letter-spacing:-.045em}
.system-label,.signal-label{font:600 10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.13em;color:#526c5f}
.signal-hero{isolation:isolate;position:relative;overflow:hidden;border-radius:13px;background:linear-gradient(112deg,#10392e 14%,#1f5140 75%,#275b46);color:#fff;padding:22px clamp(18px,2.4vw,36px)}
.signal-copy{position:relative;z-index:1;max-width:57%}.signal-art{position:absolute;right:1%;top:0;height:100%;width:43%;object-fit:contain}
.signal-label{display:inline-flex;gap:7px;color:#d2ebbc;letter-spacing:.1em}.signal-label i{width:6px;height:6px;background:#c4e89e;border-radius:50%}
.signal-hero h2{font-size:clamp(24px,2.4vw,35px);color:#fff;line-height:1.2;margin:8px 0}.signal-hero p{color:#d6e7da;font-size:13px}
.signal-action,.signal-report{display:inline-block;padding:7px 13px;border-radius:6px;font-weight:600;font-size:13px}.signal-action{color:#143c2d;background:#d1eeae}.signal-action:hover{background:#e0f7c4;text-decoration:none}.signal-report{color:#fff}
.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.quick-grid a{gap:12px;padding:13px 14px;border:1px solid #d9e2d7;border-radius:9px;background:#fff;color:#193a2d}.quick-grid a:hover{border-color:#93b39f;text-decoration:none;background:#f8fbf5}.quick-grid svg{width:35px;height:35px;flex:none;padding:8px;stroke:#30684c;fill:none;stroke-width:1.7;background:#eaf2e4;border-radius:9px}.quick-grid strong,.quick-grid small{display:block}.quick-grid b{margin-left:auto;color:#5e7969}.quick-grid small{font-size:12px}
.summaryline{padding:7px 2px;border-block:1px solid #d9e2d7}
.ledger>section,.inspector>section{background:#fff;border:1px solid var(--line);border-radius:9px}.inspector{padding-left:0;border:0}.inspector>section{padding:13px 15px}.dashboard{gap:13px}
.guest .intro{background:linear-gradient(125deg,#123e30,#285944);color:white}.guest .intro .eyebrow,.guest .intro p{color:#d1e9d6}.guest .intro-list{color:#e1f1d5}.guest .intro,.auth-card{padding:24px}.guest .auth-card button{width:100%;margin:8px 0}
@media(min-width:761px){body.workspace{padding-left:184px}body.workspace>.rail{width:184px;padding:19px 10px 12px}}
@media(max-width:760px){.quick-grid{gap:6px}.quick-grid a{padding:9px;gap:6px;flex-wrap:wrap}.quick-grid small,.quick-grid b{display:none}.quick-grid strong{font-size:12px}.signal-copy{max-width:69%}.signal-art{width:34%;right:0}.signal-hero{padding:16px}.system-label{font-size:9px}}
@media(max-width:480px){.signal-art{width:28%;opacity:.75}.signal-copy{max-width:78%}.quick-grid a{display:grid}.quick-grid svg{width:26px;height:26px;padding:5px}}

/* Shared by the desk and reply library. */
.quick-panel{margin:16px 0;padding:clamp(14px,2vw,24px);border:1px solid #d6e5de;border-radius:16px;background:#fff;color:#183c32;box-shadow:0 4px 18px #15382a07;min-width:0}
.quick-panel .qr-head,.quick-panel .qr-caption,.quick-panel .qr-toolbar,.quick-panel .qr-actions{display:flex;align-items:center;gap:10px}
.quick-panel .qr-head,.quick-panel .qr-caption{justify-content:space-between}
.quick-panel .qr-head h2{margin:0;font-size:20px;letter-spacing:.02em}
.quick-panel .qr-head input{margin:0;width:min(43%,220px);min-width:0;padding:7px 12px;min-height:32px;border:1px solid #d8e4df;border-radius:20px;background:#f7faf8;font-size:13px}
.quick-panel form{margin:0}.quick-panel .qr-compose{margin:14px 0;padding:10px 12px;background:#f4f8f6;border:1px solid #cdded5;border-radius:10px;display:block}
.quick-panel .qr-compose:focus-within{border-color:#47866f}.quick-panel .qr-compose textarea{box-sizing:border-box;width:100%;min-height:48px;margin:0;padding:2px 0;resize:vertical;font:inherit;font-size:14px;color:#19372c;background:transparent;border:0;box-shadow:none}
.quick-panel .qr-toolbar .qr-save{margin-left:auto;background:#145842;color:white;border:0;border-radius:7px;padding:7px 15px;min-height:32px;font-size:13px}
.quick-panel .qr-attach{display:inline-flex;align-items:center;position:relative;margin:0;padding:5px 0;white-space:nowrap;cursor:pointer;color:#28644e;font-weight:600;font-size:13px}
.quick-panel .qr-attach input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.qr-attach:focus-within{outline:2px solid #328762}
.quick-panel .qr-filehint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:#596d64;font-size:12px}
.quick-panel .qr-caption{font-size:12px;font-weight:600;color:#4e695b;padding-bottom:6px}.quick-panel .qr-caption small{font-weight:400}
.quick-panel .qr-list{max-height:340px;overflow:auto}
.quick-panel .quick-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:10px 0;border:0;border-top:1px solid #e4ece7;border-radius:0;background:transparent;box-shadow:none}
.quick-panel .quick-entry[hidden]{display:none}.quick-panel .qr-body{min-width:0}.quick-panel .qr-body small{display:block;font-size:11px;color:#537261;margin-bottom:3px}
.quick-panel .qr-body pre,.quick-panel .qr-body b{display:block;margin:0;padding:0;font:500 14px/1.55 system-ui,"Microsoft YaHei",sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;color:#1a342b;background:none;border:none;max-height:7em;overflow:auto}
.quick-panel .qr-actions{flex:none;gap:8px}.quick-panel .qr-actions button,.quick-panel .qr-actions a{display:inline-flex;margin:0;padding:5px 9px;min-height:28px;align-items:center;border:1px solid transparent;background:#e8f3ed;color:#195a40;border-radius:7px;text-decoration:none;font:600 12px/1.3 system-ui,sans-serif}
.quick-panel .qr-actions .qr-delete,.quick-panel .qr-actions a{color:#597165;background:transparent}.quick-panel .qr-actions .qr-delete:hover{color:#9f342d;background:#fbefed}
.quick-panel .qr-empty{font-size:13px;color:#64766c;margin:6px 0}
@media(max-width:550px){.quick-panel .quick-entry{gap:7px;align-items:flex-start}.quick-panel .qr-actions{gap:2px;flex-wrap:wrap;max-width:110px}.quick-panel .qr-toolbar{gap:6px}.quick-panel .qr-filehint{max-width:28%}}

/* Consistent workspace spacing: separate navigation highlights and form controls. */
#modules{display:flex;flex-direction:column;gap:4px}
#content .row{column-gap:16px;row-gap:12px}
#content .row>label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0}
#content form:not(.row):not(.inline):not(.qr-compose)>label:not(.qr-attach){display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}
#content form.row{padding-block:4px}
@media(max-width:760px){#modules.open{column-gap:8px;row-gap:4px}#content .row{column-gap:12px;row-gap:12px}#content .row>label{max-width:100%}#content .row>label>input,#content .row>label>select{min-width:0;max-width:100%}}
