/* Forteca — illuminated atlas. Category colour is separate from progress state. */
body{background:#0b0d12;color:#e8e4da;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
body:before{background:radial-gradient(ellipse at 50% 0,#795d2c24,transparent 55%);backdrop-filter:none}
.wrap{max-width:1580px;width:94vw;padding-top:16px}.hero{padding:32px 0 26px;text-align:left;border-bottom:1px solid #d9b47728;margin-bottom:24px}.hero h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,68px);text-transform:none;letter-spacing:-.04em}.hero p{margin:10px 0;max-width:720px;color:#9fabb8;font-size:16px}.eyebrow{font-size:12px;letter-spacing:.18em}
.bar{position:relative;top:0;background:#141821;border:1px solid #303541;box-shadow:0 12px 32px #0003;grid-template-columns:minmax(240px,1fr) auto;align-items:center}.search{font-family:inherit;background:#0c1017;color:#e6e8eb;border-color:#353b49}.filters{grid-row:2;grid-column:1/-1;justify-content:flex-start}.filters button,.admin-btn,.drop-target{font-family:inherit;font-size:12px;letter-spacing:.02em}.filters button{background:#151a24;border-color:#394252;color:#b6c0cf}.filters button.active{background:#3b3020;color:#f2d69c}.admin-btn{background:#222430;font-size:13px;border-color:#6e6146}
#saveMessage{min-height:30px;padding:8px 0;color:#94d8bf;font-size:13px}#saveMessage.error{color:#f4ac9e}.summary{gap:1px;background:#35343a;border:1px solid #35343a;border-radius:8px;overflow:hidden;margin-top:4px}.stat{border:0;border-radius:0;background:#141820;padding:13px 4px}.stat b{font-size:25px;font-family:Georgia,serif}.stat small{font-size:11px;color:#b0adab;letter-spacing:.03em}
main>section{background-image:none!important;--cat:#d9a45a;--scene:0% 0%}.division-economy,.division-infrastructure,.division-contracts{--cat:#6cd2c5;--scene:100% 0%}.division-warfare,.division-defence,.division-politics{--cat:#f18579;--scene:0% 100%}.division-roles,.division-diplomacy,.division-world-systems{--cat:#bba0f5;--scene:100% 100%}.division-map,.division-territories{--cat:#91b7df}.division-freeborn,.division-community{--cat:#bbcc86}
.category-banner{min-height:138px;padding:26px;border:1px solid #414047;border-left:3px solid var(--cat);background-image:url('assets/clan-warfare-atlas.png');background-size:200% auto;background-position:var(--scene);border-radius:8px}.category-banner:before{background:linear-gradient(90deg,#0a0d14f5 5%,#0a0d14b5 70%,#0a0d1440)}.category-banner h2{font-family:Georgia,serif;font-size:27px;letter-spacing:.01em;text-transform:none;color:var(--cat)}.category-banner p{max-width:780px;color:#d0d2d9;font-size:14px}.category-banner .count{font-size:12px;letter-spacing:.04em}
.grid{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:linear-gradient(140deg,#1a202b,#10151e);border-color:#343a46;border-top:2px solid color-mix(in srgb,var(--cat) 55%,#161b24);border-radius:8px}.card:hover,.card.pinned,.card.expanded{border-color:var(--cat);box-shadow:0 10px 30px #0006}.card-head{min-height:99px;grid-template-columns:34px 1fr;padding:16px;gap:10px}.num{font-family:Georgia,serif;width:32px;height:32px;background:transparent;border:0;color:var(--cat);font-size:19px}.name{font-size:16px;line-height:1.3;color:#e8e6e2}.meta{font-size:11px;letter-spacing:0;color:#94a0b0}.badge{grid-column:2;justify-self:start;font-family:inherit;font-size:10px;padding:5px 7px;letter-spacing:.02em}.detail-content{padding-left:17px;background:#0e141f;border-color:#343b48}.detail p{font-size:15px;color:#bdc6d1;line-height:1.6}.detail h4{font-family:inherit;font-size:12px;color:var(--cat);letter-spacing:.07em}.links a{font-size:12px;color:var(--cat);background:#1b2330;border-color:#394557}.hint{font-size:11px;color:#929caf}.pin-close{background:#202737;border-color:#6d7480}.footer{border-color:#30343d;color:#9dabb9}
.idea-callout{display:grid;grid-template-columns:1fr 1.2fr;gap:28px;padding:25px 28px;border:1px solid #87754b;border-radius:10px;background:radial-gradient(ellipse at left top,#74603042,transparent 65%),#1c2029;box-shadow:0 0 35px #bd98570a;margin:26px 0}.kicker{font-size:11px;letter-spacing:.18em;color:#d6b873}.idea-callout h2{font:27px Georgia,serif;margin:8px 0;color:#f3ddb0}.idea-callout p{font-size:14px;line-height:1.5;color:#aeb7c4;margin:8px 0}.idea-callout form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}.idea-callout textarea,.idea-item textarea{width:100%;resize:vertical;min-height:78px;background:#0d121b;border:1px solid #475061;border-radius:6px;padding:12px;color:#e9e3d8;font:15px/1.5 system-ui}.idea-callout button,.idea-item button{border:1px solid #d3b57b;border-radius:5px;background:#d6b77d;color:#201a10;padding:12px 15px;font:600 14px system-ui;cursor:pointer}.idea-callout button:disabled{opacity:.5}.idea-callout #ideaResult{grid-column:1/-1;font-size:13px;margin:0}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
[hidden]{display:none!important}#statusDock{position:sticky;top:8px;z-index:50;background:#131a27ed;backdrop-filter:blur(16px);border:1px solid #687286;border-radius:8px;padding:12px 16px;box-shadow:0 10px 35px #0009}#statusDock p{margin:0 0 10px;font-size:12px;color:#c3cdd9}#dropTargets{display:flex;gap:7px;flex-wrap:wrap}.drop-target{flex:1;min-width:95px;border:1px dashed currentColor;border-radius:5px;padding:14px 8px;cursor:pointer}.drop-target.over{outline:2px solid #f7d995;background:#5c4b34}.drag-handle{color:var(--cat);background:#262e3e;border:1px solid #536071;border-radius:4px;font-size:24px;cursor:grab;touch-action:none;padding:0 5px;grid-row:1/3;align-self:stretch}.admin-mode .card-head{grid-template-columns:27px 28px 1fr}.admin-mode .badge{grid-column:3}.dragging{opacity:.4}#ideaInbox{border:1px solid #536079;padding:24px;border-radius:8px;background:#151b27;margin:24px 0}#ideaInbox h2{font:26px Georgia;margin:0;color:#e1c591}.inbox-hint{font-size:13px;color:#a3adbc}.idea-item{padding:16px 0;border-top:1px solid #353e50}.idea-item p{white-space:pre-wrap;font-size:16px;color:#eee6d5}.idea-item small{display:block;color:#acb9ce;font-size:12px;margin:8px 0}.idea-item textarea{min-height:95px}.login-box{background:#171d29;border-color:#79735f}.login-box p{font-size:14px}.login-box input{font-family:system-ui;background:#0d121c;color:#eee}
:focus-visible{outline:2px solid #e8c382;outline-offset:3px}
@media(max-width:1100px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.idea-callout{grid-template-columns:1fr}.summary{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.grid{grid-template-columns:1fr}.wrap{width:92vw}.bar{grid-template-columns:1fr}.search{grid-column:1}.filters{grid-row:auto;flex-wrap:wrap;overflow:visible}.admin-btn{justify-self:start}.summary{grid-template-columns:repeat(3,1fr)}.idea-callout{padding:20px}.idea-callout form{grid-template-columns:1fr}.category-banner{padding:20px}.category-banner h2{font-size:23px}#statusDock{top:0;padding:8px}#dropTargets{gap:4px}.drop-target{min-width:70px;font-size:10px;padding:9px 3px}.hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before{transition:none!important;animation:none!important}}
