:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#243a32;background:#f6f8f2;font-synthesis:none;--green:#205942;--muted:#637566;--line:#dbe3d6;--paper:#fff;--danger:#963c2f}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #7b9f48;outline-offset:3px}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:16px;background:white;padding:14px;z-index:10}.skip-link:focus{top:12px}.topbar{display:flex;align-items:center;gap:20px;min-height:78px;padding:18px max(24px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--line);background:#fff}.brand{font-size:30px;letter-spacing:-1.4px;font-weight:750;text-decoration:none}.brand span{font-weight:400;color:#6f8f5d}.area-label{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:20px}.topbar nav{display:flex;align-items:center;gap:20px;margin-left:auto;font-size:12px}.topbar nav a{text-decoration:none}.quiet{border:0;background:transparent;color:var(--green);padding:8px}.shell{max-width:1440px;margin:auto;padding:40px 28px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:30px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.8px;color:#6d805d;margin:0 0 12px}h1{font-family:Georgia,serif;font-size:40px;font-weight:400;letter-spacing:-1.2px;line-height:1.14;margin:0 0 16px}.lede{font-size:13px;line-height:1.7;max-width:600px;color:var(--muted);margin:0}.connection{background:#eaf0e2;border:1px solid #d7e2ca;color:#547044;font-size:11px;line-height:1.5;padding:8px 12px;border-radius:20px;white-space:nowrap}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.summary-card{background:var(--paper);padding:20px;border:1px solid var(--line);border-radius:12px;min-width:0}.card-label{font-size:11px;color:var(--muted)}.summary-card strong{display:block;font-size:30px;font-weight:500;line-height:1.3;margin:12px 0 5px}.summary-card strong.text-value{font-size:20px;margin-top:18px;min-height:31px}.summary-card p{font-size:11px;line-height:1.5;margin:0;color:var(--muted);overflow-wrap:anywhere}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);background:var(--paper);border:1px solid var(--line);border-radius:15px;overflow:hidden;min-height:680px}.library{border-right:1px solid var(--line);background:#f9fbf5;padding:23px 18px}.library-header,.section-row,.editor-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.library-header{margin-bottom:20px}.library-header h2{font-size:17px;margin:0;font-weight:600}.library-header .eyebrow{font-size:9px;margin-bottom:7px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;background:white;color:var(--green);border:1px solid #cbd8c3;border-radius:8px;min-height:42px;font-size:12px;font-weight:600;line-height:1.4;text-decoration:none;text-align:center}.button.primary{background:var(--green);color:white;border-color:var(--green)}.button.danger{color:var(--danger);border-color:#e3bdb2;background:#fffafa}.button.quiet{background:transparent;border-color:transparent;color:var(--muted);font-weight:500}.button.compact{padding:8px 11px;min-height:36px;font-size:11px}.button:hover:not(:disabled){filter:brightness(.96)}label,.field-label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}.field-label{font-size:11px;color:var(--muted);font-weight:500}.library input,.library select{margin-bottom:15px;font-size:12px}input,select,textarea{width:100%;border:1px solid #cdd8c5;border-radius:8px;background:#fff;color:#263b32;padding:11px 12px;line-height:1.55}input::placeholder,textarea::placeholder{color:#82917d}select{appearance:auto}.list-count{font-size:10px;color:var(--muted);margin:5px 0 13px}.source-list{display:flex;flex-direction:column;gap:7px;max-height:670px;overflow-y:auto}.source-item{display:block;text-align:left;width:100%;padding:13px 12px;background:transparent;border:1px solid transparent;border-radius:9px;color:inherit}.source-item:hover{background:#edf2e6}.source-item[aria-current=true]{background:#e8efdd;border-color:#bdd0a9}.source-item strong{display:block;font-size:12px;line-height:1.5;overflow-wrap:anywhere;font-weight:600}.source-item .meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;color:var(--muted);font-size:10px;line-height:1.5}.badge{display:inline-flex;align-items:center;font-size:10px;line-height:1.5;padding:4px 7px;border-radius:5px;background:#edf1e6;color:#597249;white-space:nowrap}.badge.draft{background:#fbf0d5;color:#87612d}.badge.archived{background:#edf0ed;color:#69756d}.badge.base{background:#eef1f6;color:#586c7e}.empty-list{padding:20px 10px;color:var(--muted);font-size:12px;line-height:1.7}.editor-pane{padding:28px;min-width:0}.empty-editor{display:grid;justify-items:center;align-content:center;text-align:center;min-height:580px;max-width:400px;margin:auto}.empty-editor>span{font-size:42px;background:#eef3e4;color:#6c8753;border-radius:17px;padding:12px 18px;margin-bottom:20px}.empty-editor h2{font-family:Georgia,serif;font-weight:400;font-size:28px;margin:0 0 12px}.empty-editor p{font-size:13px;color:var(--muted);line-height:1.8;margin:0 0 24px}.editor-heading{margin-bottom:14px}.editor-heading h2{font-size:20px;line-height:1.35;margin:0;overflow-wrap:anywhere}.editor-heading .eyebrow{margin-bottom:7px;font-size:9px}.publication-state{font-size:12px;line-height:1.7;color:#5c7351;padding:13px 15px;background:#f0f5e9;border:1px solid #dce6cf;border-radius:8px;margin:0 0 24px}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset>input{margin-bottom:22px}.optional{font-weight:400;color:#7b8874;font-size:11px;margin-left:4px}.text-label{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.text-label>span{font-size:10px;color:var(--muted)}textarea{resize:vertical;min-height:250px;font-size:13px;line-height:1.8;tab-size:2}textarea:read-only,input:read-only{background:#f8faf5;color:#526149}.field-help{font-size:11px;color:var(--muted);line-height:1.65;margin:10px 0 0}.editor-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px}.save-state{margin-right:auto;font-size:11px;color:var(--muted)}.publication-actions{border-top:1px solid var(--line);margin-top:26px;padding-top:22px}.publication-actions strong{font-size:12px}.publication-actions p{font-size:11px;color:var(--muted);line-height:1.7;margin:6px 0 14px}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.revision-section{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.revision-section h3{font-size:13px;margin:0}.revision-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.revision-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;background:#f6f8f2;border:1px solid #e3e9dd;border-radius:8px}.revision-item strong{font-size:12px;font-weight:500}.revision-item p{font-size:10px;color:var(--muted);margin:5px 0 0}.page-footer{font-size:11px;color:var(--muted);line-height:1.6;text-align:center;margin:25px auto 0}.notice{padding:15px 18px;border:1px solid #baceac;background:#edf4e5;color:#345c2e;border-radius:9px;line-height:1.7;font-size:12px;margin-bottom:20px;overflow-wrap:anywhere}.notice.error{background:#fff0e9;color:#873c2b;border-color:#ecc8b7}.notice button{margin-left:12px;background:transparent;color:inherit;border:0;text-decoration:underline;font:inherit;cursor:pointer}.access-gate{padding:70px 28px;max-width:700px;background:white;border:1px solid var(--line);border-radius:15px;margin:25px auto;text-align:center}.access-gate h2{font-family:Georgia,serif;font-size:30px;font-weight:400}.access-gate p{color:var(--muted);font-size:13px;line-height:1.8}.access-gate .button-row{justify-content:center;margin-top:22px}.gate-symbol{font-size:50px;color:#7d965e}dialog{width:min(560px,calc(100vw - 32px));padding:28px;border:1px solid var(--line);border-radius:14px;color:inherit;background:white;box-shadow:0 20px 90px #1e30293b}dialog::backdrop{background:#173b2d66}dialog h2{font-size:20px;line-height:1.4;margin:0 0 14px}dialog p{font-size:13px;line-height:1.8;color:var(--muted)}dialog .button-row{justify-content:flex-end;margin-top:24px}#revision-dialog{width:min(900px,calc(100vw - 32px))}#revision-dialog .section-row{align-items:flex-start}#revision-dialog textarea{margin-top:10px;max-height:55vh}.revision-footer{margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1100px){.workspace{grid-template-columns:280px minmax(0,1fr)}.editor-pane{padding:23px}.summary{gap:10px}.summary-card{padding:17px}}@media(max-width:800px){.shell{padding:28px 16px}.topbar{padding:16px;gap:13px}.area-label{padding-left:13px;font-size:11px}.topbar nav{gap:10px}.topbar nav a{display:none}.page-heading{display:block}.connection{display:inline-flex;margin-top:20px}.page-heading h1{font-size:35px}.summary{grid-template-columns:1fr 1fr}.summary-card strong{font-size:26px}.summary-card strong.text-value{font-size:17px}.workspace{display:block}.library{border-right:0;border-bottom:1px solid var(--line);padding:21px}.source-list{max-height:300px}.editor-pane{padding:24px 18px}.empty-editor{min-height:350px}.editor-heading{align-items:flex-start}.editor-heading h2{font-size:18px}.editor-actions{justify-content:flex-start}.save-state{width:100%;margin-bottom:5px}.publication-actions .button-row>.button{flex:1}.source-item{padding:12px}.text-label{align-items:flex-start}.text-label>span{font-size:9px}.access-gate{padding:40px 20px}.access-gate .button-row>.button{width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* The email challenge stays in page memory; these controls are hidden until configured. */
.email-login{width:min(380px,100%);margin:18px auto 0;text-align:left;flex-shrink:0}.email-login label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}.email-login input{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:12px 14px;border:1px solid #cfcec2;border-radius:9px;background:#fff;color:#24251f;font:inherit;font-size:16px}.email-login input:focus-visible,.email-login button:focus-visible{outline:3px solid #b79b56;outline-offset:3px}.email-login input:disabled{background:#f1f1e9}.email-login .email-help{font-size:11px;line-height:1.65;color:#6d705f;margin:9px 0 14px}.email-login .email-divider{text-align:center;color:#6d705f;font-size:11px;margin:0 0 18px}.email-primary{width:100%;min-height:46px;border:1px solid #303828;border-radius:9px;background:#303828;color:#fff;font:inherit;font-size:13px;font-weight:600;padding:12px 16px;cursor:pointer}.email-login button:disabled{opacity:.5;cursor:default}.email-actions{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:8px}.email-actions button{min-height:44px;padding:7px 0;background:transparent;border:0;color:#625328;text-decoration:underline;font:inherit;font-size:12px;cursor:pointer}.email-login .email-destination{font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:0 0 14px;color:#59604e}.email-login .email-status{font-size:12px;line-height:1.7;margin:14px 0 0;padding:12px;border:1px solid #dedfd0;border-radius:8px;background:#f5f5ed;color:#4b563f;overflow-wrap:anywhere}.email-login .email-status.error{background:#fff1ea;border-color:#edc9b7;color:#873c2b}.access-gate:has(.email-login:not([hidden])){justify-content:flex-start}
.workflow-guide{margin:0 0 24px;padding:18px 20px;background:#edf3e6;border:1px solid #d8e3ca;border-radius:12px}.workflow-guide>p{margin:0;color:#4f6545;font-size:12px;line-height:1.7}.workflow-guide>p strong{color:#244b34}.workflow-guide ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:16px 0 0}.workflow-guide li{font-size:12px;line-height:1.5}.workflow-guide li strong,.workflow-guide li span{display:block}.workflow-guide li span{margin-top:5px;color:var(--muted);font-size:11px}.publication-review-dialog{width:min(1100px,calc(100vw - 32px));max-height:90dvh;overflow:auto}.review-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:18px}.review-columns>div{min-width:0}.review-columns textarea{margin-top:10px;min-height:240px;max-height:42dvh}.review-columns .field-help{overflow-wrap:anywhere}.review-reminder{padding:12px 14px;background:#f8f4e8;border:1px solid #e6ddc3;border-radius:8px}.publication-review-dialog .button-row{position:sticky;bottom:-28px;background:white;padding:14px 0;margin-bottom:-14px}@media(max-width:650px){.workflow-guide ol{grid-template-columns:1fr;gap:12px}.workflow-guide{padding:16px}.publication-review-dialog{padding:20px}.publication-review-dialog .button-row{bottom:-20px}}

/* Private administrative chat; text is rendered literally, never as HTML. */
.preview-messages{display:grid;gap:14px;max-height:60vh;overflow-y:auto;margin:20px 0;overscroll-behavior:contain}
.preview-message{min-width:0;padding:16px;border:1px solid #dce4df;border-radius:14px;background:#fff}
.preview-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;margin:8px 0 0}
#preview-form{display:grid;gap:10px}#preview-form textarea{width:100%;box-sizing:border-box;min-height:100px;resize:vertical}
#preview-conversations{margin-top:12px;max-height:120px;overflow:auto}#preview-conversations button{max-width:100%;overflow-wrap:anywhere;text-align:left}

/* Application accounting has its own UTC cycle; no provider balance is inferred. */
.monthly-budget{margin:0 0 24px;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:12px}
.monthly-budget h2{margin:0;font-size:17px;line-height:1.4}.monthly-budget .field-help{overflow-wrap:anywhere}
.budget-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 14px}
.budget-values>div{min-width:0;padding:14px;border:1px solid var(--line);border-radius:9px}
.budget-values dt{font-size:11px;line-height:1.5;color:var(--muted)}
.budget-values dd{font-size:22px;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums;margin:8px 0 0;overflow-wrap:anywhere}
.budget-values .budget-remaining{background:#edf3e6;border-color:#cadbb9}
@media(max-width:800px){.budget-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.monthly-budget{padding:17px}}
@media(max-width:420px){.budget-values{grid-template-columns:minmax(0,1fr)}}
