
.auth-overlay{position:fixed;inset:0;display:grid;place-items:center;background:rgba(3,12,22,.78);backdrop-filter:blur(18px);z-index:9999;padding:24px}
.auth-card{width:min(100%,460px);padding:34px;border-radius:28px;border:1px solid rgba(140,198,63,.25);background:linear-gradient(180deg,rgba(8,28,48,.98),rgba(15,42,68,.96));box-shadow:0 30px 80px rgba(0,0,0,.28);display:grid;gap:16px}
.auth-card h1{color:#fff;font-size:2rem;line-height:1.05;letter-spacing:-.04em}.auth-card p,.auth-card label{color:rgba(237,245,251,.82)}
.auth-badge{display:inline-flex;width:max-content;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#b7d96c;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.auth-form{display:grid;gap:12px}.auth-form input{width:100%;margin-top:6px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:#fff;padding:14px 16px}.auth-error{color:#ff9d9d;min-height:20px;font-size:.92rem}.auth-back{color:#d7ecfb;font-weight:600}
.auth-locked .app-layout,.auth-locked header,.auth-locked main{filter:blur(4px);pointer-events:none;user-select:none}
.module-access-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin-top:18px;padding:18px 20px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}
.module-access-pill{display:grid;gap:4px}.module-access-pill strong{color:#fff}.module-access-pill span{color:rgba(237,245,251,.78)}.module-access-pill.is-admin strong{color:#b7d96c}.module-access-pill.is-module strong{color:#8fd7ff}.module-access-actions{display:flex;gap:10px;flex-wrap:wrap}
.module-structure-panel{margin-top:18px}.module-structure-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}.module-structure-head h3{margin:6px 0 8px}.module-structure-head p{margin:0;color:rgba(237,245,251,.82)}.module-tag{padding:10px 14px;border-radius:999px;background:rgba(140,198,63,.12);border:1px solid rgba(140,198,63,.28);color:#dff2ad;font-weight:700}
.module-quick-grid{margin-top:18px}
.module-file-panel p,.module-file-hint,.module-file-empty{color:rgba(237,245,251,.78)}
.module-file-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px}.module-file-actions input{flex:1 1 280px;border-radius:16px;border:1px dashed rgba(255,255,255,.14);background:rgba(255,255,255,.03);padding:12px;color:#fff}
.module-file-list{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.module-file-list li{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.module-file-list span{color:#fff}.module-file-delete{border:none;background:rgba(214,91,91,.16);color:#ffb3b3;padding:8px 12px;border-radius:999px;font-weight:700;cursor:pointer}
.module-readonly-box{padding:22px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08)}
.modular-home-hero{padding-top:62px}.modular-home-modules{padding-top:0}.elevated-video{transform:translateY(-10px)}.modular-grid .home-premium-card:last-child{background:linear-gradient(135deg,rgba(18,50,82,.98),rgba(27,84,60,.95));border-color:rgba(140,198,63,.45)}
.admin-hero{padding-top:52px}.admin-grid .home-premium-card{min-height:176px}
@media (max-width:760px){.module-access-banner,.module-structure-head,.module-file-actions{grid-template-columns:1fr;display:grid}.auth-card{padding:26px}.elevated-video{transform:none}}


.module-file-list a{color:#dff2ad;font-weight:700;text-decoration:none}
.module-file-list a:hover{text-decoration:underline}
.module-file-meta{display:grid;gap:4px}
.module-file-meta small{color:rgba(237,245,251,.72);line-height:1.45}
.sim-sheet-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.sim-sheet-note{margin-top:16px;color:rgba(237,245,251,.82)}


/* agf-toolbar-filters */
.agf-filter-toolbar{margin-top:18px;padding:18px 20px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));display:grid;gap:16px}
.agf-filter-head{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.agf-filter-head strong{color:#fff;font-size:1rem}.agf-filter-head span{color:rgba(237,245,251,.76)}
.agf-filter-group{display:grid;gap:10px}.agf-filter-group label{color:#dbeaf7;font-weight:700;font-size:.92rem}.agf-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.agf-chip-row{display:flex;gap:10px;flex-wrap:wrap}.agf-chip{border:none;cursor:pointer;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#edf5fb;font-weight:700}.agf-chip.is-active{background:linear-gradient(135deg,#8cc63f,#6bb14a);color:#072033}
.agf-filter-toolbar input,.agf-filter-toolbar select{width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;padding:13px 14px}
.agf-filter-toolbar option{color:#111}
.module-access-banner.compact{margin-top:18px;padding:14px 16px}
.module-access-banner.compact .module-access-actions{width:100%;justify-content:flex-end}
@media (max-width:860px){.agf-filter-grid{grid-template-columns:1fr}.agf-filter-head{display:grid}}



/* premium-auth-upgrade */
.auth-overlay{background:radial-gradient(circle at top,rgba(13,44,66,.40),rgba(3,12,22,.82) 58%);backdrop-filter:blur(24px)}
.auth-card{width:min(100%,520px);padding:38px;border-radius:34px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(8,24,40,.96),rgba(11,30,48,.92));box-shadow:0 40px 110px rgba(0,0,0,.34)}
.auth-card h1{font-size:2.35rem;letter-spacing:-.05em}
.auth-badge{background:rgba(140,198,63,.14);border-color:rgba(140,198,63,.28);color:#e4f7b6}
.auth-form input{padding:16px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06)}
.auth-back{display:inline-flex;width:max-content;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);text-decoration:none}

