.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:70px}.feature-card,.link-card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(19,23,28,.94),rgba(11,13,16,.96));min-height:240px;padding:28px;border-radius:8px;box-shadow:var(--shadow)}.feature-card.wide{grid-column:span 4;min-height:250px;display:grid;grid-template-columns:1fr auto;align-content:center;column-gap:40px}.feature-card h2{font-size:34px;margin:10px 0}.feature-card p{max-width:720px;color:var(--muted);line-height:1.7}.stat-strip{grid-column:2;grid-row:1 / span 3;display:grid;grid-template-columns:repeat(3,120px);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}.stat-strip div{display:grid;place-items:center;align-content:center;background:#0c0f12}.stat-strip b{font-size:34px}.stat-strip span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);text-align:center}.link-card{position:relative;text-decoration:none;color:var(--ink);cursor:pointer;transition:.2s ease}.link-card:hover{transform:translateY(-3px);border-color:#3b424a}.link-card h3{font-size:23px;margin:35px 0 10px}.link-card p{font-size:13px;line-height:1.6;color:var(--muted)}.card-number{position:absolute;top:22px;right:24px;font-size:10px;color:#565d66}.card-link{position:absolute;left:28px;bottom:24px;font-size:9px;font-weight:800;letter-spacing:.12em;color:#a85160}.disabled-card{cursor:not-allowed;opacity:.64}.disabled-card:hover{transform:none;border-color:var(--line)}
.page-heading{padding:72px 0 30px}.page-heading h1{font-size:58px;margin:8px 0 0;letter-spacing:-.04em;text-transform:uppercase}.page-heading p{color:var(--muted);margin:10px 0}.page-heading.split{display:flex;align-items:end;justify-content:space-between;gap:30px}.empty-panel,.memorial-panel{min-height:420px;border:1px dashed #313840;border-radius:10px;display:grid;place-items:center;align-content:center;text-align:center;background:rgba(13,16,20,.55);margin-bottom:70px}.empty-sigil{font-size:74px;font-weight:900;color:rgba(255,255,255,.05)}.empty-panel h2,.memorial-panel h2{margin:8px 0}.empty-panel p,.memorial-panel p{color:var(--muted);max-width:520px}.memorial-panel img{width:110px;opacity:.48;filter:grayscale(1)}
.live-chip,.count-chip{border:1px solid var(--line);padding:9px 12px;border-radius:100px;font-size:9px;font-weight:800;letter-spacing:.12em;color:#aeb4bb}.live-chip i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red2);margin-right:7px}.schedule-shell{border:1px solid var(--line);background:#0c0f12;border-radius:9px;margin-bottom:70px;overflow:hidden}.schedule-toolbar{display:flex;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.schedule-toolbar span{color:var(--muted)}.schedule-empty{min-height:320px;display:grid;place-items:center;align-content:center;text-align:center;padding:40px}.schedule-empty span{font-size:18px;font-weight:900;letter-spacing:.14em}.schedule-empty p{max-width:650px;color:var(--muted);line-height:1.7}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:70px}.gallery-placeholder{aspect-ratio:16/10;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#101419,#090b0e);display:grid;place-items:center;align-content:center}.gallery-placeholder span{font-size:54px;font-weight:900;color:rgba(255,255,255,.08)}.gallery-placeholder p{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.source-button{text-decoration:none}.orbat-tabs{position:sticky;top:80px;z-index:12;display:flex;gap:6px;padding:10px;margin:0 0 16px;border:1px solid var(--line);border-radius:8px;background:rgba(11,14,17,.94);backdrop-filter:blur(12px);overflow:auto}.orbat-tabs button{border:0;background:transparent;color:#9299a2;padding:10px 14px;border-radius:5px;white-space:nowrap;cursor:pointer;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.orbat-tabs button.active,.orbat-tabs button:hover{background:var(--redsoft);color:#fff}.orbat-company{border:1px solid var(--line);background:#0d1014;border-radius:9px;padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}.company-banner{min-height:104px;border:1px solid #2b3138;background:linear-gradient(120deg,rgba(142,31,47,.22),rgba(17,21,26,.76) 42%,#0b0e11);display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-radius:7px;margin-bottom:22px}.company-banner h3{font-size:28px;margin:6px 0 0;text-transform:uppercase}.capacity{display:grid;grid-template-columns:auto auto;gap:5px 12px;align-items:center;text-align:right}.capacity span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.capacity b{font-size:13px}.orbat-company>h4,.orbat-platoon-body>h4{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#a3a9b0;margin:18px 0 10px}.roster-table-wrap{overflow:auto;border:1px solid #222830;border-radius:6px}.roster-table{width:100%;border-collapse:collapse;min-width:700px}.roster-table th{font-size:8px;color:#7f8790;text-transform:uppercase;letter-spacing:.11em;background:#0a0c0f;text-align:left;padding:11px;border-bottom:1px solid var(--line)}.roster-table td{font-size:11px;padding:11px;border-bottom:1px solid #1d2228;color:#d9dde1}.roster-table tr:last-child td{border-bottom:0}.roster-table td:first-child{font-weight:800}.vacant-row td{color:#565e67;font-style:italic}.vacant-row td:first-child{color:#72414a}.orbat-platoon{margin-top:14px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.orbat-platoon summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#11151a}.orbat-platoon summary::-webkit-details-marker{display:none}.orbat-platoon summary span{display:grid;gap:3px}.orbat-platoon summary strong{text-transform:uppercase;font-size:12px;letter-spacing:.06em}.orbat-platoon summary small{color:var(--muted);text-transform:uppercase;font-size:8px;letter-spacing:.14em}.orbat-platoon summary b{font-size:10px;color:#9ba2aa}.orbat-platoon-body{padding:16px;background:#0a0d10}.squad-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.squad-card{min-width:0}.squad-card .roster-table{min-width:570px}.squad-title{font-size:10px;font-weight:900;letter-spacing:.13em;color:#a64a59;margin:0 0 7px}.formation-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:16px}.formation-summary button,.closed-formation{border:1px solid var(--line);background:#101419;border-radius:6px;color:#fff;padding:16px;text-align:left}.formation-summary button{cursor:pointer}.formation-summary button:hover{border-color:#5a2931;background:#151216}.formation-summary b,.closed-formation b{display:block;font-size:11px}.formation-summary span,.closed-formation span{display:block;color:var(--muted);font-size:9px;margin-top:5px}.source-note{font-size:10px;color:#69717a;text-align:center;margin:24px 0 70px}.assignment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.assignment-grid div{border:1px solid var(--line);padding:15px;border-radius:6px;display:flex;justify-content:space-between;font-size:10px}.assignment-grid span{color:var(--muted)}
.admin-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-card,.admin-table-card{border:1px solid var(--line);border-radius:7px;background:#0d1014;padding:20px}.admin-card h3{font-size:15px;margin:9px 0}.admin-card p{font-size:11px;color:var(--muted);line-height:1.6}.admin-table-card.full{grid-column:span 3}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.section-head h3{margin:6px 0 0}.chip-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip-list span{border:1px solid #2b3138;background:#12161b;padding:6px 8px;border-radius:4px;color:#9ea5ad;font-size:8px;text-transform:uppercase;letter-spacing:.06em}
footer{width:min(1240px,calc(100% - 64px));height:55px;margin:0 auto;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#555c64;font-size:8px;letter-spacing:.15em}
