.admin header{border-bottom:1px solid var(--line);flex-wrap:wrap}.admin header>a:last-child{margin-left:auto}.admin .page{max-width:1350px;margin:auto}.admin h1{font-size:42px}.admin h2{font-family:Georgia,serif;font-weight:normal;font-size:27px}.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.admin-nav button{background:none;color:var(--ink);border:1px solid var(--line);border-radius:24px;padding:10px 16px}.admin-nav button.active{background:var(--green);color:white}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.admin-panel{background:#eeefe6;border:1px solid var(--line);border-radius:10px;padding:24px;min-width:0;margin-bottom:20px}.admin-panel label:not(.check){display:block;font-weight:600;margin:16px 0 7px;font-size:12px}.admin-panel input:not([type=checkbox]),.admin-panel textarea,.admin-panel select{display:block;width:100%;max-width:100%;background:var(--cream);border:1px solid #c6cdbf;border-radius:5px;padding:12px;color:var(--ink)}.admin-panel textarea{min-height:120px}.admin-panel .btn{margin:12px 7px 0 0}.admin small{line-height:1.6}.job-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.job-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;min-width:0}.job-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#eee}.job-card>div{padding:22px}.job-card h3{font-size:21px}.job-card pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;font-size:12px;line-height:1.5}.job-card .btn{margin-top:12px}.status-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin table{width:100%;border-collapse:collapse;font-size:12px}.admin th,.admin td{padding:12px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin td{overflow-wrap:anywhere}.admin .scroll-table{overflow:auto}.admin .stat-grid{margin:20px 0}.admin .stat strong{font-size:30px}.admin .warning{background:#fff1da;padding:16px;border-radius:7px;font-size:13px}.admin details{margin-top:14px}.admin summary{cursor:pointer;font-weight:bold;font-size:12px}#admin-message{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;background:var(--ink);color:white;border-radius:8px;padding:15px 22px;z-index:20;display:none}.admin .muted{color:var(--muted);font-size:12px}.admin .check{align-items:center}.admin .check input{width:18px;height:18px;flex:none}
.story-overview{position:sticky;top:8px;z-index:4;box-shadow:0 8px 24px rgba(24,55,42,.08)}.story-legend{display:flex;gap:8px;flex-wrap:wrap}.story-legend span{font-size:11px;font-weight:700;border-radius:20px;padding:6px 10px;border:1px solid var(--line)}.story-legend .canon{background:var(--green);color:white}.story-legend .executing{background:#ffd970}.story-legend .next{background:#e9f4a0}.story-legend .roadmap{background:var(--cream)}.story-graph{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:22px;align-items:start}.story-act{min-width:0}.story-act>h2{font-size:22px;padding-bottom:10px;border-bottom:2px solid var(--green)}.story-beat{position:relative;display:grid;grid-template-columns:24px 1fr;gap:7px;padding-bottom:18px}.story-beat:before{content:"";position:absolute;left:10px;top:20px;bottom:-2px;width:2px;background:var(--line)}.story-beat:last-child:before{display:none}.story-dot{width:20px;height:20px;border:3px solid var(--cream);outline:2px solid var(--line);background:#d8dbd0;border-radius:50%;z-index:1;margin-top:16px}.story-card{background:#f7f5ed;border:1px solid var(--line);border-radius:10px;padding:17px;min-width:0}.story-card h3{font-size:18px;margin:10px 0 5px}.story-card p{font-size:13px}.story-beat.canon .story-dot{background:var(--green);outline-color:var(--green)}.story-beat.canon .story-card{border-left:5px solid var(--green)}.story-beat.executing .story-dot{background:#ffc84a;outline-color:#a87900;animation:story-pulse 1.6s infinite}.story-beat.executing .story-card{border:2px solid #b98400;background:#fff7d7}.story-beat.next .story-dot{background:#d9ec59;outline-color:var(--green)}.story-beat.next .story-card{border:2px solid var(--green)}.story-lock{font-size:11px!important;font-weight:700}.story-editor{border:2px solid var(--green);scroll-margin-top:120px}.story-editor .compact{gap:0 16px}.story-editor textarea{min-height:75px}.story-editor #body{min-height:150px}@keyframes story-pulse{50%{box-shadow:0 0 0 8px rgba(255,200,74,.25)}}
@media(max-width:1000px){.story-graph{grid-template-columns:1fr}.story-overview{position:static}.story-act>h2{position:sticky;top:0;background:var(--cream);z-index:2;padding-top:10px}.story-editor .compact{grid-template-columns:1fr}}@media(max-width:700px){.admin-grid,.job-list{grid-template-columns:1fr}.admin h1{font-size:34px}.admin header .pill{display:none}.admin-panel{padding:18px}.admin .page{padding:25px 5%}.admin-nav{gap:6px}.admin-nav button{font-size:12px;padding:9px 12px}.admin .status-row{flex-wrap:wrap}}
