:root{--ground: #F5F7F6;--surface: #FFFFFF;--sunk: #EDF1EF;--line: #DCE4E0;--line-strong: #C4D0CA;--ink: #0A2342;--body: #3D4A54;--muted: #6B7A82;--accent: #00614A;--accent-soft: rgba(0, 97, 74, .1);--warn: #9A6410;--warn-soft: rgba(154, 100, 16, .12);--danger: #B3261E;--danger-soft: rgba(179, 38, 30, .1);--radius: 10px;--shadow: 0 1px 2px rgba(10, 35, 66, .06)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--body);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Merriweather,Georgia,serif;color:var(--ink);margin:0}h1{font-size:1.6rem;line-height:1.25}h2{font-size:1.15rem}h3{font-size:.98rem}p{margin:0}a{color:var(--accent)}.mono,code{font-family:IBM Plex Mono,ui-monospace,Menlo,monospace;font-size:.85em}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}@media(max-width:820px){.shell{grid-template-columns:1fr}}.sidebar{background:var(--ink);color:#c7d6e4;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:1.5rem}.brand{display:flex;flex-direction:column;gap:.15rem;padding:0 .5rem}.brand .name{font-family:Merriweather,serif;color:#fff;font-size:1.02rem}.brand .sub{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#7e93a8}.nav{display:flex;flex-direction:column;gap:.15rem}.nav a{color:#b7c8d8;text-decoration:none;padding:.5rem .65rem;border-radius:7px;font-size:.88rem;font-weight:500}.nav a:hover{background:#ffffff12;color:#fff}.nav a.active{background:#35c79b29;color:#6fe3bc}.who{margin-top:auto;padding:.75rem .65rem;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem}.who .email{color:#fff;word-break:break-all}.who .role{color:#7e93a8;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.main{padding:2rem 2.25rem 4rem;max-width:1100px}@media(max-width:640px){.main{padding:1.25rem}}.page-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.page-head .sub{color:var(--muted);font-size:.88rem;margin-top:.2rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:1.1rem 1.25rem}.stack{display:flex;flex-direction:column;gap:1rem}.row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.stat{display:flex;flex-direction:column;gap:.15rem}.stat .n{font-size:1.7rem;font-family:Merriweather,serif;color:var(--ink);font-variant-numeric:tabular-nums}.stat .l{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th,td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--line);vertical-align:middle}thead th{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);background:var(--sunk);white-space:nowrap;font-weight:700}tbody tr:last-child td{border-bottom:0}tbody tr.clickable:hover{background:var(--sunk);cursor:pointer}td.num{font-variant-numeric:tabular-nums;white-space:nowrap}td.tick{font-family:IBM Plex Mono,monospace;font-weight:500;color:var(--ink)}.chip{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.18rem .5rem;border-radius:999px;border:1px solid var(--line-strong);color:var(--muted);background:var(--surface);white-space:nowrap}.chip.published{color:var(--accent);border-color:#00614a59;background:var(--accent-soft)}.chip.scheduled{color:var(--warn);border-color:#9a641059;background:var(--warn-soft)}.chip.in_review{color:#1d4ed8;border-color:#1d4ed84d;background:#1d4ed814}.chip.archived{color:var(--muted)}button,.btn{font:inherit;font-size:.86rem;font-weight:600;padding:.45rem .9rem;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer}button:hover:not(:disabled){background:var(--sunk)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:#00513e}button.danger{color:var(--danger);border-color:#b3261e59}button.danger:hover:not(:disabled){background:var(--danger-soft)}button.ghost{border-color:transparent;background:transparent;color:var(--accent);padding:.3rem .4rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--ink)}input,textarea,select{font:inherit;font-size:.9rem;font-weight:400;color:var(--ink);padding:.5rem .65rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);width:100%}textarea{min-height:5rem;resize:vertical;line-height:1.5}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem}.hint{font-size:.76rem;color:var(--muted);font-weight:400}.banner{padding:.7rem .95rem;border-radius:8px;font-size:.86rem}.banner.error{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(179,38,30,.25)}.banner.ok{background:var(--accent-soft);color:var(--accent);border:1px solid rgba(0,97,74,.25)}.banner.info{background:var(--sunk);color:var(--body);border:1px solid var(--line)}.empty{padding:2.5rem 1rem;text-align:center;color:var(--muted);font-size:.9rem}.centre{min-height:100vh;display:grid;place-items:center;padding:2rem}.signin{text-align:center;display:flex;flex-direction:column;gap:1rem;align-items:center;max-width:26rem}.feed{display:flex;flex-direction:column}.feed-item{display:flex;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--line);font-size:.87rem}.feed-item:last-child{border-bottom:0}.feed-item .when{color:var(--muted);font-size:.75rem;white-space:nowrap;min-width:7.5rem}.feed-item .who2{color:var(--muted);font-size:.75rem}.list-actions{display:flex;gap:.4rem;justify-content:flex-end}.sections-list{display:flex;flex-direction:column;gap:.9rem}.section-card{border:1px solid var(--line);border-radius:8px;padding:.85rem;background:var(--sunk);display:flex;flex-direction:column;gap:.6rem}
