:root{--navy:#123c36;--green:#167a52;--green2:#e8f5ee;--ink:#172b27;--muted:#687873;--line:#dfe8e3;--bg:#f5f8f6;--white:#fff;--red:#b42318;--shadow:0 12px 32px rgba(18,60,54,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}.hidden{display:none!important}.muted{color:var(--muted)}.tiny{font-size:.78rem;color:var(--muted)}.eyebrow{font-size:.72rem;letter-spacing:.14em;font-weight:800;color:var(--green);margin:0 0 .5rem}.brand-mark{width:48px;height:48px;border-radius:15px;background:var(--green);color:white;display:grid;place-items:center;font-size:1.5rem;font-weight:900;box-shadow:0 8px 18px #167a5230}.brand-mark.small{width:38px;height:38px;border-radius:12px;font-size:1.1rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;border-radius:10px;padding:.72rem 1rem;font-weight:700;text-decoration:none;cursor:pointer;transition:.15s}.button:disabled{opacity:.6;cursor:wait}.primary{background:var(--green);color:white}.primary:hover{background:#116642}.outline{border-color:var(--line);background:white;color:var(--ink)}.danger{background:#fff0ef;color:var(--red);border-color:#ffd4d0}.small{padding:.45rem .7rem;font-size:.85rem}.full{width:100%}.landing{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,#d9efe3,transparent 45%),var(--bg)}.welcome{max-width:620px;text-align:center;background:#ffffffd9;border:1px solid var(--line);border-radius:28px;padding:clamp(28px,7vw,64px);box-shadow:var(--shadow)}.welcome .brand-mark{margin:0 auto 20px}.welcome h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.12;margin:.3rem 0 1rem;letter-spacing:-.04em}.welcome .button{margin:18px 0}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top right,#d9efe3,transparent 45%),var(--bg)}.login-card{width:min(100%,430px);background:white;padding:clamp(24px,6vw,42px);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.login-card .brand-mark{margin-bottom:18px}.login-card h1{margin:.2rem 0;font-size:1.8rem;letter-spacing:-.03em}.login-card>p.muted{margin:.4rem 0 1.5rem}label{display:block;font-size:.9rem;font-weight:700;margin:.9rem 0 .35rem}input:not([type=checkbox]):not([type=file]),textarea,select{width:100%;border:1px solid #cfdcd5;background:white;border-radius:10px;padding:.75rem .85rem;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #167a521c}textarea{resize:vertical}.login-card .button{margin-top:1.2rem}.back-link{display:block;text-align:center;color:var(--green);margin-top:14px;text-decoration:none}.message{font-size:.88rem;min-height:1.2rem;margin:.5rem 0}.message.error{color:var(--red)}.message.success{color:var(--green)}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{background:var(--navy);color:white;padding:24px 16px;display:flex;flex-direction:column;gap:30px;min-height:100vh}.side-brand{display:flex;align-items:center;gap:11px;padding:4px 8px}.side-brand small{display:block;color:#b6d2c7;font-size:.78rem}.sidebar nav{display:grid;gap:6px}.nav-item{color:#d9e9e2;background:transparent;border:0;text-align:left;border-radius:10px;padding:12px 14px;font-weight:650;cursor:pointer}.nav-item:hover,.nav-item.active{background:#ffffff1c;color:white}.sidebar .outline{margin-top:auto;background:transparent;border-color:#ffffff55;color:white}.main-content{padding:clamp(18px,4vw,44px);min-width:0;max-width:1400px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.topbar h1{margin:0;font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:-.04em}.admin-email{font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}.hero-panel{background:linear-gradient(120deg,#e6f5ec,#fff);border:1px solid #d5e9dc;border-radius:20px;padding:clamp(22px,4vw,38px);margin-bottom:20px}.hero-panel h2{font-size:clamp(1.5rem,3vw,2rem);margin:.3rem 0}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.stat-card,.panel,.item-card{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 4px 14px #123c3606}.stat-card span{display:block;color:var(--muted);font-size:.9rem}.stat-card strong{display:block;font-size:2rem;margin-top:4px}.panel h3{margin-top:0}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.section-heading h2{margin:0;font-size:1.5rem}.section-heading p{margin:.2rem 0}.editor{margin-bottom:18px}.editor h3{margin-bottom:1rem}.check-row{display:flex;align-items:center;gap:9px}.check-row input{width:17px;height:17px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.item-list{display:grid;gap:10px}.item-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.item-main{flex:1;min-width:160px}.item-main h3{font-size:1rem;margin:0 0 4px}.item-main p{margin:0;color:var(--muted);font-size:.9rem}.item-main small{display:block;color:var(--muted);overflow-wrap:anywhere}.pill{border-radius:99px;padding:4px 10px;font-size:.75rem;font-weight:800}.published{background:#e5f7eb;color:#17653c}.draft{background:#f1f3f2;color:#59655f}footer{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;padding:14px;gap:14px}.sidebar nav{display:flex;overflow-x:auto;padding-bottom:2px}.nav-item{white-space:nowrap;padding:10px 12px}.sidebar .outline{margin-top:0}.side-brand{padding:4px}.main-content{padding:20px 14px}.topbar{align-items:flex-start;flex-direction:column;gap:8px}.stat-grid{gap:8px}.stat-card{padding:14px}.stat-card strong{font-size:1.6rem}.section-heading{align-items:flex-start;flex-direction:column}.item-card{gap:10px}.item-card .actions{width:100%;margin-top:0}}
