@font-face{font-family:SubCrabSans;src:url('assets/fonts/DejaVuSans.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:SubCrabSans;src:url('assets/fonts/DejaVuSans-Bold.ttf') format('truetype');font-display:swap;font-weight:700}
:root{
  --ocean-950:#06101e;--ocean-925:#071523;--ocean-900:#0b192c;--ocean-850:#10263c;--ocean-800:#1e3e62;
  --ocean-700:#0077b6;--ocean-600:#0096c7;--aqua:#00d2ff;--cyan:#48cae4;--cyan-soft:#90e0ef;
  --orange:#ff6b35;--gold:#ffd166;--green:#23d18b;--red:#ff5a67;--text:#eefbff;--muted:#91abb9;
  --line:rgba(72,202,228,.18);--panel:rgba(11,25,44,.87);--panel-solid:#0b2033;--shadow:0 28px 80px rgba(0,4,12,.42);
  --radius:18px;--radius-sm:12px;--sidebar:276px;
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--ocean-950);scroll-behavior:smooth}
body{min-height:100vh;margin:0;color:var(--text);background:radial-gradient(circle at 85% -10%,rgba(0,210,255,.11),transparent 32rem),linear-gradient(160deg,#06101e,#071a28 55%,#06101e);font-family:SubCrabSans,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(0,210,255,.5);outline-offset:2px}
::selection{color:#06101e;background:var(--cyan)}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#06101e}::-webkit-scrollbar-thumb{background:#1e3e62;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0077b6}
.hidden{display:none!important}
.glass-panel{background:rgba(11,25,44,.86);backdrop-filter:blur(20px);border:1px solid rgba(72,202,228,.24);box-shadow:var(--shadow)}
.eyebrow{margin:0;color:var(--cyan-soft);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}

.loading-screen{position:fixed;inset:0;z-index:999;display:grid;place-content:center;justify-items:center;gap:18px;background:var(--ocean-950)}
.loading-screen img{width:104px;height:104px;object-fit:cover;border-radius:50%;border:3px solid rgba(72,202,228,.35);box-shadow:0 0 50px rgba(0,210,255,.24)}
.loading-screen p{margin:0;color:var(--muted);font-size:13px}
.loading-ring{width:34px;height:34px;border:3px solid rgba(72,202,228,.14);border-top-color:var(--aqua);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.auth-screen{min-height:100vh;display:grid;place-items:center;padding:34px 18px;position:relative;overflow:hidden;background-image:linear-gradient(135deg,rgba(3,10,18,.93),rgba(4,22,35,.77)),url('assets/subcrab-hero.jpg');background-size:cover;background-position:center}
.auth-screen:before,.auth-screen:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}
.auth-screen:before{width:34rem;height:34rem;right:-12rem;top:-16rem;background:radial-gradient(circle,rgba(0,210,255,.17),transparent 68%)}
.auth-screen:after{width:26rem;height:26rem;left:-13rem;bottom:-13rem;background:radial-gradient(circle,rgba(255,107,53,.1),transparent 70%)}
.auth-card{width:min(100%,520px);position:relative;z-index:1;padding:34px;border-radius:30px;text-align:center}
.database-badge{position:absolute;right:18px;top:17px;display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(3,17,28,.75);color:var(--muted);font-size:9px}
.database-badge span{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px currentColor}.database-badge.online{color:#91f2ca;border-color:rgba(35,209,139,.25)}.database-badge.online span{background:var(--green)}.database-badge.offline{color:#ffabb2;border-color:rgba(255,90,103,.28)}.database-badge.offline span{background:var(--red)}
.auth-logo-wrap{width:116px;height:116px;margin:8px auto 16px;padding:4px;border-radius:50%;background:linear-gradient(135deg,var(--aqua),var(--orange));box-shadow:0 0 50px rgba(0,210,255,.28)}
.auth-logo{width:100%;height:100%;object-fit:cover;border-radius:50%;background:var(--ocean-950);border:4px solid var(--ocean-950)}
.auth-heading h1{margin:5px 0 3px;font-size:34px;letter-spacing:-.04em}.auth-heading>p:last-child{margin:0;color:var(--muted);font-size:13px}
.form-stack{display:grid;gap:14px;margin-top:26px;text-align:left}.form-stack label,.field{display:grid;gap:7px}.form-stack label>span,.field>span,.field-label{color:#b7cbd4;font-size:11px;font-weight:700;letter-spacing:.02em}
input,select,textarea{width:100%;min-height:44px;padding:11px 13px;color:var(--text);background:rgba(5,20,32,.88);border:1px solid rgba(145,171,185,.23);border-radius:11px;transition:.18s ease}
textarea{min-height:96px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:rgba(72,202,228,.4)}input:focus,select:focus,textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(0,210,255,.1)}input::placeholder,textarea::placeholder{color:#607b88}
select option{color:var(--text);background:var(--ocean-900)}
.button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:9px 15px;border:1px solid transparent;border-radius:11px;cursor:pointer;font-weight:700;font-size:11px;transition:.18s ease;text-decoration:none}
.button:disabled{opacity:.5;cursor:not-allowed}.button:hover:not(:disabled){transform:translateY(-1px)}.button-wide{width:100%;min-height:48px}.button-primary{color:#041019;background:linear-gradient(135deg,var(--aqua),var(--cyan));box-shadow:0 10px 26px rgba(0,210,255,.18)}.button-orange{color:white;background:linear-gradient(135deg,var(--orange),#ff9346)}.button-green{color:#03170f;background:var(--green)}.button-danger{color:#ffc5c9;background:rgba(255,90,103,.1);border-color:rgba(255,90,103,.28)}.button-ghost{color:var(--cyan-soft);background:rgba(72,202,228,.08);border-color:rgba(72,202,228,.2)}.button-outline{color:#c4dae3;background:transparent;border-color:rgba(145,171,185,.25)}.button-small{min-height:32px;padding:6px 10px;font-size:9px;border-radius:9px}
.button-secondary{color:#ffe2ad;background:rgba(255,166,72,.1);border-color:rgba(255,166,72,.28)}
.text-button{padding:4px;color:var(--cyan-soft);background:none;border:0;cursor:pointer;font-size:11px}.text-button:hover{text-decoration:underline}
.auth-actions{margin:14px 0}.auth-footer{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);color:#718c99;font-size:9px}.join-login-hint{display:grid;gap:4px;margin:16px 0;padding:12px;border-radius:12px;border:1px solid rgba(255,209,102,.25);background:rgba(255,209,102,.08);color:#ffe8a4;text-align:left;font-size:10px}.join-login-hint span{color:#c9bb8e}
.notice{padding:11px 13px;margin-top:16px;border-radius:11px;border:1px solid;font-size:11px;text-align:left}.notice.error{color:#ffc4c8;background:rgba(255,90,103,.09);border-color:rgba(255,90,103,.25)}.notice.success{color:#a8f5d5;background:rgba(35,209,139,.08);border-color:rgba(35,209,139,.25)}.notice.info{color:#bceffa;background:rgba(72,202,228,.08);border-color:rgba(72,202,228,.23)}

.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}
.sidebar{position:sticky;top:0;z-index:60;height:100vh;display:flex;flex-direction:column;padding:24px 18px 18px;background:linear-gradient(180deg,rgba(6,20,32,.99),rgba(4,14,24,.995));border-right:1px solid var(--line);overflow-y:auto}
.brand{display:flex;align-items:center;gap:12px;padding:0 4px 20px;border-bottom:1px solid var(--line)}.brand img{width:52px;height:52px;object-fit:cover;border-radius:17px;border:2px solid rgba(72,202,228,.32);box-shadow:0 8px 24px rgba(0,0,0,.3)}.brand div{display:flex;min-width:0;flex-direction:column}.brand strong{overflow:hidden;font-size:15px;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap}.brand span{margin-top:2px;color:var(--cyan-soft);font-size:8px;letter-spacing:.08em}
#main-nav{display:grid;gap:5px;padding:13px 0}.nav-label{margin:14px 12px 6px;color:#526e7b;font-size:8px;font-weight:700;letter-spacing:.17em}.nav-label.addon-label{color:#ba7f64}.nav-item{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:41px;padding:8px 11px;color:#8fa9b6;background:transparent;border:1px solid transparent;border-radius:11px;cursor:pointer;text-align:left;transition:.18s ease}.nav-item:hover{color:white;background:rgba(255,255,255,.035)}.nav-item.active{color:white;background:linear-gradient(90deg,rgba(0,210,255,.15),rgba(0,210,255,.035));border-color:rgba(0,210,255,.18);box-shadow:inset 3px 0 0 var(--aqua)}.nav-item.addon.active{background:linear-gradient(90deg,rgba(255,107,53,.14),rgba(255,107,53,.025));border-color:rgba(255,107,53,.18);box-shadow:inset 3px 0 0 var(--orange)}.nav-item>span:nth-child(2){font-size:11px;font-weight:700}.nav-icon{width:25px;height:25px;display:grid;place-items:center;color:var(--cyan-soft);font-size:14px}.nav-item.addon .nav-icon{color:#ffac82}.nav-item small{padding:3px 5px;color:#ffb490;background:rgba(255,107,53,.1);border-radius:5px;font-size:6px;letter-spacing:.06em}.nav-count{min-width:20px;padding:3px 6px;color:#041019;background:var(--aqua);border-radius:999px;font-size:8px;text-align:center}
.security-card{display:flex;gap:10px;margin-top:auto;padding:13px;border:1px solid rgba(35,209,139,.15);border-radius:14px;background:linear-gradient(135deg,rgba(35,209,139,.08),rgba(0,210,255,.035))}.security-mark{width:28px;height:28px;display:grid;place-items:center;flex:none;color:#052018;background:var(--green);border-radius:9px;font-weight:900}.security-card strong{display:block;font-size:10px}.security-card p{margin:3px 0 0;color:#78949f;font-size:8px;line-height:1.45}
.sidebar-user{display:grid;grid-template-columns:38px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:16px 4px 0;margin-top:14px;border-top:1px solid var(--line)}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#041019;background:linear-gradient(135deg,var(--aqua),#58a4d2);font-size:10px;font-weight:800}.avatar-button{border:0;cursor:pointer}.sidebar-user div{display:flex;min-width:0;flex-direction:column}.sidebar-user strong,.sidebar-user div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{font-size:10px}.sidebar-user div span{margin-top:2px;color:#718d99;font-size:8px}.icon-button{width:31px;height:31px;display:grid;place-items:center;padding:0;color:#9ab4c0;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:9px;cursor:pointer}.icon-button:hover{color:white;border-color:rgba(72,202,228,.35)}

.main-area{min-width:0;padding:0 32px 44px}.topbar{min-height:94px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line)}.topbar-title{flex:1;min-width:0}.topbar h1{margin:5px 0 0;font-size:23px;letter-spacing:-.03em}.topbar-actions{display:flex;align-items:center;gap:9px}.connection-pill{display:flex;align-items:center;gap:7px;padding:7px 10px;color:#8bdcbd;background:rgba(35,209,139,.07);border:1px solid rgba(35,209,139,.16);border-radius:999px;font-size:8px;font-weight:700}.connection-pill i{width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 9px var(--green)}.mobile-menu{display:none;width:38px;height:38px;color:white;background:transparent;border:1px solid var(--line);border-radius:10px;font-size:18px}.sidebar-backdrop{position:fixed;inset:0;z-index:50;background:rgba(0,7,13,.72);backdrop-filter:blur(2px);border:0}
.content{padding-top:27px}.content-loading{min-height:320px;display:grid;place-items:center;color:var(--muted)}.content-loading div{display:grid;justify-items:center;gap:14px}.content-loading .loading-ring{width:28px;height:28px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.page-head h2{margin:4px 0 0;font-size:22px;letter-spacing:-.025em}.page-head p{max-width:740px;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.page-actions{display:flex;gap:8px;flex-wrap:wrap}
.hero-card{position:relative;min-height:228px;display:flex;align-items:center;padding:31px;overflow:hidden;border:1px solid rgba(72,202,228,.22);border-radius:24px;background:linear-gradient(90deg,rgba(5,23,36,.97) 0%,rgba(5,23,36,.86) 47%,rgba(5,23,36,.2) 100%),url('assets/subcrab-hero.jpg') center/cover;box-shadow:var(--shadow)}.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 55%,rgba(0,210,255,.1));pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:590px}.hero-copy h2{max-width:520px;margin:9px 0 10px;font-size:32px;line-height:1.12;letter-spacing:-.04em}.hero-copy h2 span{color:var(--aqua)}.hero-copy p{max-width:550px;margin:0;color:#afc4cd;font-size:11px;line-height:1.65}.hero-copy .button{margin-top:18px}.chip{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;color:#a9effa;background:rgba(0,210,255,.08);border:1px solid rgba(0,210,255,.2);border-radius:999px;font-size:8px;font-weight:700;letter-spacing:.08em}.chip.orange{color:#ffd2bb;background:rgba(255,107,53,.08);border-color:rgba(255,107,53,.2)}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:17px 0}.stat-card{position:relative;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(14,41,59,.78),rgba(7,25,39,.82));overflow:hidden}.stat-card:after{content:"";position:absolute;width:70px;height:70px;right:-25px;bottom:-30px;border-radius:50%;background:rgba(0,210,255,.08)}.stat-card span{color:var(--muted);font-size:9px}.stat-card strong{display:block;margin-top:7px;font-size:25px;letter-spacing:-.04em}.stat-card small{display:block;margin-top:5px;color:#5f7c89;font-size:8px}.stat-card.orange:after{background:rgba(255,107,53,.09)}.stat-card.green:after{background:rgba(35,209,139,.09)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.panel{padding:19px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 15px 45px rgba(0,4,12,.16)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.panel-head h3{margin:0;font-size:13px}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:9px}.panel-subtitle{margin:0 0 12px;color:var(--muted);font-size:10px;line-height:1.6}.feature-card{min-height:142px;padding:17px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,rgba(15,47,68,.65),rgba(7,27,41,.78));transition:.18s ease}.feature-card:hover{border-color:rgba(72,202,228,.38);transform:translateY(-2px)}.feature-card .card-icon{width:38px;height:38px;display:grid;place-items:center;margin-bottom:12px;color:#041019;background:linear-gradient(135deg,var(--aqua),var(--cyan));border-radius:12px;font-weight:800}.feature-card h3{margin:0;font-size:12px}.feature-card p{margin:7px 0 0;color:var(--muted);font-size:9px;line-height:1.55}.feature-card.orange .card-icon{background:linear-gradient(135deg,var(--orange),#ffad69)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid .span-2{grid-column:1/-1}.checkbox-field{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid var(--line);border-radius:11px;background:rgba(4,18,29,.45)}.checkbox-field input{width:17px;min-height:17px;height:17px;flex:none;margin:1px 0 0}.checkbox-field span{color:#b1c7d0;font-size:9px;line-height:1.5}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.field-help{color:#617e8a;font-size:8px;line-height:1.4}
.data-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid rgba(72,202,228,.09);text-align:left;vertical-align:middle}.data-table th{position:sticky;top:0;color:#718f9c;background:#0a2031;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.data-table td{color:#bfd2da;font-size:9px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:rgba(72,202,228,.025)}.data-table strong{color:white}.data-table small{display:block;margin-top:2px;color:#607d89}.table-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;white-space:nowrap}
.status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:700}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-draft,.status-pending,.status-planned,.status-leader_submitted{color:#ffd989;background:rgba(255,209,102,.08)}.status-open,.status-active,.status-approved,.status-instructor_approved{color:#9ee9ff;background:rgba(0,210,255,.08)}.status-prepared,.status-diver_submitted{color:#d7bdff;background:rgba(165,117,255,.09)}.status-sent,.status-closed,.status-completed,.status-tssf_approved,.status-delivered{color:#9cf0c9;background:rgba(35,209,139,.08)}.status-rejected,.status-suspended,.status-cancelled,.status-archived{color:#ffadb4;background:rgba(255,90,103,.08)}
.empty-state{display:grid;place-items:center;min-height:200px;padding:30px;color:var(--muted);text-align:center}.empty-state span{font-size:36px}.empty-state h3{margin:12px 0 6px;color:white;font-size:14px}.empty-state p{max-width:460px;margin:0;font-size:10px;line-height:1.6}
.list-stack{display:grid;gap:9px}.list-row{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(140px,.8fr) minmax(140px,.8fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:rgba(4,19,30,.48)}.list-row:hover{border-color:rgba(72,202,228,.3)}.list-row strong{display:block;font-size:10px}.list-row small{display:block;margin-top:3px;color:var(--muted);font-size:8px}.list-row .row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.exam-template{display:flex;min-height:150px;flex-direction:column;justify-content:space-between}.exam-template strong{font-size:14px}.exam-template p{color:var(--muted);font-size:9px;line-height:1.5}.exam-question{padding:18px;margin-bottom:12px;border:1px solid var(--line);border-radius:15px;background:rgba(7,27,41,.7)}.exam-question h3{margin:0 0 14px;font-size:12px;line-height:1.5}.exam-question h3 span{color:var(--aqua);font-size:9px}.answer-list{display:grid;gap:8px}.answer-option{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid rgba(145,171,185,.15);border-radius:10px;cursor:pointer}.answer-option:hover{border-color:rgba(72,202,228,.35);background:rgba(72,202,228,.035)}.answer-option input{width:16px;height:16px;min-height:16px;flex:none}.answer-option span{font-size:10px;line-height:1.45}.score-card{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}.score-ring{width:100px;height:100px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--green) var(--score,0%),rgba(255,255,255,.07) 0);position:relative}.score-ring:after{content:"";position:absolute;inset:9px;background:var(--ocean-900);border-radius:50%}.score-ring strong{position:relative;z-index:1;font-size:20px}
.exam-question-image{display:block;width:min(100%,760px);max-height:520px;margin:0 auto 16px;object-fit:contain;border:1px solid var(--line);border-radius:13px;background:#04121c}.question-thumb{width:72px;height:50px;display:block;object-fit:cover;border:1px solid var(--line);border-radius:8px;background:#04121c}
.group-card{padding:16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(140deg,rgba(15,46,67,.65),rgba(5,22,34,.8))}.group-card header{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.group-card h3{margin:0;font-size:13px}.group-meta{display:flex;gap:7px;flex-wrap:wrap}.roster{display:grid;gap:7px}.roster-row{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(120px,.6fr);align-items:center;gap:9px;padding:8px;border-radius:10px;background:rgba(3,16,26,.55)}.roster-row .avatar{width:28px;height:28px;border-radius:9px;font-size:8px}.roster-row strong{font-size:9px}.roster-row small{color:var(--muted);font-size:8px}.standby{margin-top:9px;padding:9px;color:#ffdba0;background:rgba(255,209,102,.07);border:1px solid rgba(255,209,102,.15);border-radius:10px;font-size:8px}
.qr-card{display:grid;justify-items:center;gap:13px;text-align:center}.qr-card img{width:min(100%,280px);height:auto;padding:12px;background:white;border-radius:17px}.qr-card code{display:block;width:100%;max-height:90px;overflow:auto;padding:9px;color:#a9c4cf;background:#04121c;border-radius:9px;font-size:8px;word-break:break-all}.qr-card p{margin:0;color:var(--muted);font-size:9px;line-height:1.55}.join-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 16px;border:1px solid rgba(255,209,102,.22);border-radius:14px;background:linear-gradient(90deg,rgba(255,209,102,.09),rgba(255,107,53,.045))}.join-banner strong{display:block;color:#ffe6a8;font-size:11px}.join-banner span{display:block;margin-top:3px;color:#aa9e7a;font-size:8px}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.photo-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:rgba(7,27,41,.76)}.photo-card img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover;background:#04121c}.photo-card div{padding:11px}.photo-card strong{display:block;font-size:10px}.photo-card span,.photo-card small{display:block;margin-top:3px;color:var(--muted);font-size:8px}.site-map{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.site-pin{padding:13px;border:1px solid rgba(0,210,255,.18);border-radius:13px;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.12),transparent 50%),rgba(6,27,42,.78)}.site-pin strong{display:block;font-size:10px}.site-pin span{display:block;margin-top:4px;color:var(--cyan-soft);font-size:8px}
.privacy-note{padding:14px;border:1px solid rgba(72,202,228,.15);border-radius:13px;background:rgba(0,210,255,.04);color:#9eb7c1;font-size:9px;line-height:1.65}.privacy-note strong{color:#dff9ff}.warning-note{padding:13px;color:#f5d9a0;background:rgba(255,209,102,.06);border:1px solid rgba(255,209,102,.17);border-radius:12px;font-size:9px;line-height:1.6}
.privacy-note a,.warning-note a,.checkbox-field a,.site-footer a{color:var(--cyan-soft);text-decoration:underline;text-underline-offset:2px}.nested-grid{padding:13px;border:1px solid var(--line);border-radius:13px;background:rgba(4,18,29,.34)}.inline-check{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:8px}.inline-check input{width:15px;height:15px;min-height:15px}.admin-users-table{min-width:1120px}.admin-users-table td:nth-child(2),.admin-users-table td:nth-child(3){display:grid;gap:7px}.admin-users-table input[type=date],.admin-users-table select{min-width:150px}
.mobile-app-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:18px;align-items:center}.mobile-app-card img{width:110px;height:110px;border-radius:24px;box-shadow:0 14px 35px rgba(0,0,0,.35)}.mobile-app-card h3{margin:12px 0 7px}.mobile-app-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.65}.mobile-checks{display:grid;gap:10px;margin-top:14px}.mobile-checks>div{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px}.mobile-checks>div>span{width:28px;height:28px;display:grid;place-items:center;flex:none;color:#041019;background:var(--green);border-radius:9px;font-weight:800}.mobile-checks p,.mobile-checks strong,.mobile-checks small{display:block;margin:0}.mobile-checks strong{font-size:9px}.mobile-checks small{margin-top:2px;color:var(--muted);font-size:8px}
.legal-page{padding:30px 16px}.legal-shell{width:min(900px,100%);margin:0 auto}.legal-card{margin-top:18px;padding:28px}.legal-card h1{margin:7px 0 18px;font-size:28px}.legal-card h2{margin:24px 0 8px;font-size:15px}.legal-card p,.legal-card li{color:#a9c0ca;font-size:10px;line-height:1.8}.legal-card a{color:var(--cyan-soft)}
.site-footer{display:flex;justify-content:space-between;gap:14px;margin-top:38px;padding:18px 0;border-top:1px solid var(--line);color:#4f6c79;font-size:8px}

.lesson-visual{display:grid;gap:16px}.visual-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.visual-step{position:relative;min-height:116px;display:grid;align-content:center;justify-items:center;gap:9px;padding:14px;text-align:center;border:1px solid rgba(72,202,228,.2);border-radius:16px;background:linear-gradient(145deg,rgba(0,210,255,.1),rgba(4,18,29,.55))}.visual-step:not(:last-child):after{content:"→";position:absolute;right:-12px;top:45%;z-index:2;color:var(--cyan);font-size:18px}.visual-step>span{width:34px;height:34px;display:grid;place-items:center;color:#041019;background:linear-gradient(135deg,var(--aqua),var(--cyan));border-radius:50%;font-weight:800}.visual-step strong{font-size:10px;line-height:1.5}.visual-step small{color:var(--muted);font-size:8px}.lesson-cycle .visual-track{border-radius:22px;background:radial-gradient(circle,rgba(0,210,255,.08),transparent 65%)}.lesson-safety .visual-step{border-color:rgba(255,107,53,.28)}
.academy-curriculum-panel{margin-top:16px}.academy-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0}.academy-stats>span{display:flex;align-items:baseline;gap:6px;padding:12px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:rgba(3,18,29,.52);font-size:9px}.academy-stats strong{color:var(--cyan-soft);font-size:17px}.academy-stats .highlight-stat{color:#ffe693;border-color:rgba(255,220,72,.28);background:rgba(255,210,40,.07)}.academy-stats .highlight-stat strong{color:#ffdd48}.academy-toolbar{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(150px,.7fr) minmax(240px,1.5fr);gap:10px;padding:13px;border:1px solid rgba(72,202,228,.16);border-radius:14px;background:rgba(4,18,29,.4)}.academy-toolbar label{display:grid;gap:6px}.academy-toolbar label>span{color:var(--muted);font-size:8px;font-weight:700}.academy-result-count{margin:13px 0 9px;color:var(--muted);font-size:9px}.academy-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.academy-module-card{display:flex;min-height:250px;flex-direction:column;padding:15px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,rgba(12,45,64,.75),rgba(4,18,29,.83))}.academy-module-card:hover{border-color:rgba(72,202,228,.4);transform:translateY(-1px)}.academy-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.course-type-badge{display:inline-flex;align-items:center;width:max-content;padding:5px 7px;border:1px solid rgba(72,202,228,.25);border-radius:999px;color:var(--cyan-soft);background:rgba(0,210,255,.07);font-size:7px;font-weight:850;letter-spacing:.1em}.course-type-badge.practical{color:#bff3d6;border-color:rgba(72,220,154,.28);background:rgba(58,200,139,.08)}.academy-module-card h3{margin:14px 0 7px;font-size:12px;line-height:1.4}.academy-module-card p{margin:0;color:var(--muted);font-size:9px;line-height:1.6}.academy-card-counts{display:flex;flex-wrap:wrap;gap:7px;margin:auto 0 12px;padding-top:14px}.academy-card-counts span{padding:5px 7px;border-radius:8px;color:#9eb6c0;background:rgba(255,255,255,.04);font-size:8px}.academy-card-counts .highlight-count{color:#ffe693;background:rgba(255,210,40,.09)}.academy-source-warning{margin-top:14px}.lesson-deck{display:grid;gap:14px}.lesson-deck-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.lesson-deck-summary>div{display:flex;align-items:center;gap:8px}.lesson-deck-summary strong{font-size:9px}.lesson-deck-summary p{max-width:430px;margin:0;color:var(--muted);text-align:right;font-size:9px;line-height:1.5}.lesson-progress{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;color:var(--muted);font-size:8px}.lesson-progress>div{height:7px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07)}.lesson-progress i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--aqua),var(--cyan));transition:width .22s ease}.lesson-slide-stage{min-height:410px;touch-action:pan-y}.lesson-slide{min-height:410px;overflow:hidden;border:1px solid rgba(72,202,228,.24);border-radius:20px;background:radial-gradient(circle at 85% 12%,rgba(0,210,255,.15),transparent 36%),linear-gradient(145deg,#0c2a3d,#071a29);box-shadow:inset 0 1px rgba(255,255,255,.04)}.lesson-slide-highlight{border-color:rgba(255,220,72,.5);background:radial-gradient(circle at 82% 12%,rgba(255,220,72,.2),transparent 38%),linear-gradient(145deg,#2b2812,#131c22)}.lesson-slide-safety{border-color:rgba(255,132,82,.42);background:radial-gradient(circle at 82% 12%,rgba(255,107,53,.18),transparent 36%),linear-gradient(145deg,#2b1e1a,#101b24)}.lesson-highlight-banner,.lesson-safety-banner{display:flex;align-items:center;gap:9px;padding:10px 18px;color:#1b1a0a;background:linear-gradient(90deg,#ffdc3f,#ffe98a);font-size:8px;letter-spacing:.12em}.lesson-highlight-banner span{font-size:16px}.lesson-safety-banner{color:#fff2e8;background:linear-gradient(90deg,#bf4b25,#e36b3f)}.lesson-slide-copy{display:grid;align-content:start;min-height:350px;padding:22px}.lesson-slide-copy h3{margin:4px 0 7px;font-size:22px;line-height:1.25}.lesson-slide-lead{margin:0;color:#b9d2dc;font-size:10px;line-height:1.65}.lesson-slide-copy ul{display:grid;gap:9px;margin:17px 0 0;padding:0;list-style:none}.lesson-slide-copy li{position:relative;padding:10px 12px 10px 31px;border:1px solid rgba(255,255,255,.07);border-radius:11px;color:#d6e8ed;background:rgba(2,13,21,.34);font-size:9px;line-height:1.6}.lesson-slide-copy li:before{content:"✓";position:absolute;left:11px;top:10px;color:var(--aqua);font-weight:900}.lesson-slide-highlight li:before{content:"✦";color:#ffdc3f}.lesson-diagram{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:16px;margin-top:19px;padding:14px;border:1px solid rgba(72,202,228,.15);border-radius:15px;background:rgba(2,14,23,.42)}.diagram-icon{width:72px;height:72px;display:grid;place-items:center;color:#06131b;background:linear-gradient(145deg,#84efff,#1bc0dd);border-radius:22px;font-size:22px;font-weight:900;box-shadow:0 12px 28px rgba(0,210,255,.17)}.diagram-highlight .diagram-icon{background:linear-gradient(145deg,#fff099,#ffcf2e);box-shadow:0 12px 28px rgba(255,207,46,.18)}.diagram-safety .diagram-icon{color:#fff;background:linear-gradient(145deg,#ff976b,#cc4924)}.diagram-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.diagram-path>span{position:relative;display:grid;justify-items:center;gap:6px;padding:10px 6px;text-align:center;border-radius:11px;background:rgba(255,255,255,.045)}.diagram-path>span:not(:last-child):after{content:"→";position:absolute;right:-8px;top:35%;z-index:2;color:var(--cyan)}.diagram-path i{width:24px;height:24px;display:grid;place-items:center;color:var(--cyan-soft);border:1px solid rgba(72,202,228,.3);border-radius:50%;font-size:8px;font-style:normal}.diagram-path strong{font-size:8px;line-height:1.35}.lesson-slide-nav{display:grid;grid-template-columns:auto minmax(150px,1fr) auto;align-items:end;gap:10px}.lesson-slide-nav label{display:grid;gap:5px}.lesson-slide-nav label span{color:var(--muted);text-align:center;font-size:8px}.lesson-slide-nav select{min-height:40px}.lesson-source{padding:12px;border:1px solid rgba(255,209,102,.16);border-radius:12px;color:#ceb980;background:rgba(255,209,102,.045);font-size:8px;line-height:1.55}.lesson-source p{margin:4px 0}.lesson-source a{color:var(--cyan-soft);text-decoration:underline;text-underline-offset:2px}
.academy-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.academy-stats .archive-stat{color:#ffd8aa;border-color:rgba(255,166,72,.28);background:rgba(255,146,42,.07)}.academy-stats .archive-stat strong{color:#ffbd75}.academy-card-counts .archive-count{color:#ffd8aa;background:rgba(255,146,42,.09)}.academy-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.academy-archive{display:grid;gap:14px}.archive-warning{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid rgba(255,153,71,.3);border-radius:13px;color:#ffe0ba;background:rgba(255,128,34,.08)}.archive-warning>span{display:grid;width:25px;height:25px;flex:0 0 auto;place-items:center;border-radius:50%;color:#1b0d03;background:#ff9b4a;font-weight:900}.archive-warning p{margin:0;font-size:9px;line-height:1.6}.archive-slide-stage{min-height:390px;touch-action:pan-y}.archive-slide{margin:0;overflow:hidden;border:1px solid rgba(255,166,72,.25);border-radius:18px;background:#020b12}.archive-slide-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(8,28,42,.92)}.archive-slide img{display:block;width:100%;max-height:70vh;object-fit:contain;background:#020b12}.archive-slide figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;color:#e7f5f8;font-size:9px}.archive-slide p{margin:0;padding:0 13px 8px;color:#ccb58f;font-size:8px;line-height:1.55}.archive-slide small{display:block;padding:0 13px 12px;color:#78919d;font-size:7px}.archive-media-error{display:grid;min-height:340px;place-items:center;padding:24px;color:#ffc6ca;background:rgba(255,90,103,.08);text-align:center;font-size:10px;line-height:1.6}
.view-selector{display:flex;align-items:center;gap:10px;margin:0 0 15px}.view-selector span{color:var(--muted);font-size:9px}.view-selector select{width:min(420px,100%)}.due-soon{color:#ffab7d!important;background:rgba(255,107,53,.08)}
.dive-map-panel{padding:10px}.dive-map-svg{display:block;width:100%;height:auto;max-height:520px}.map-grid{stroke:rgba(170,230,245,.09);stroke-width:1}.map-point circle{fill:var(--orange);stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 8px rgba(255,107,53,.65))}.map-point text{fill:#fff;font-size:12px;font-weight:700}.map-range{display:flex;justify-content:space-between;padding:6px 12px;color:var(--muted);font-size:8px}.custom-exam-panel input[type=number]{font-variant-numeric:tabular-nums}.custom-exam-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.map-point-private circle{fill:var(--cyan)}.map-point-personal-shared circle{fill:#6ee7b7}.map-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:12px;color:var(--muted);font-size:9px}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--orange)}.map-legend i.private{background:var(--cyan)}.site-pin{color:inherit;text-decoration:none}.site-pin:hover{border-color:rgba(0,210,255,.48);transform:translateY(-1px)}
.coordinate-picker{position:relative;min-height:280px;overflow:hidden;border:1px solid rgba(0,210,255,.28);border-radius:18px;background:radial-gradient(circle at 65% 35%,rgba(0,210,255,.13),transparent 28%),linear-gradient(145deg,#0b3550,#061722);touch-action:none;cursor:crosshair}.coordinate-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(184,231,244,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(184,231,244,.09) 1px,transparent 1px);background-size:10% 10%}.coordinate-picker>p{position:absolute;inset:auto 15px 13px;text-align:center;color:var(--muted);font-size:9px;pointer-events:none}.coordinate-marker{position:absolute;width:20px;height:20px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:var(--orange);filter:drop-shadow(0 0 8px rgba(255,107,53,.7));transform:translate(-50%,-100%) rotate(-45deg);pointer-events:none}.coordinate-label{position:absolute;z-index:2;padding:4px 7px;border-radius:8px;background:rgba(3,17,27,.7);color:var(--cyan-soft);font-size:8px;font-weight:800;pointer-events:none}.coordinate-label.north{top:8px;left:50%}.coordinate-label.south{bottom:8px;left:50%}.coordinate-label.west{top:50%;left:8px}.coordinate-label.east{top:50%;right:8px}
.health-question-list{display:grid;gap:10px}.health-question{display:grid;grid-template-columns:minmax(0,1fr) 86px 86px;gap:10px;align-items:center;margin:0;padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(4,23,35,.68)}.health-question legend{display:contents;color:#d9eef5;font-size:10px;font-weight:650}.health-question legend span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(0,210,255,.12);color:var(--cyan-soft)}.health-question label{display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 10px;border:1px solid rgba(145,171,185,.18);border-radius:10px;color:#c5dbe3;background:rgba(5,20,32,.72);font-size:10px;cursor:pointer}.health-question input[type=radio]{width:16px;height:16px;min-height:0;margin:0;padding:0;flex:0 0 16px;accent-color:var(--aqua);box-shadow:none}.health-question label:has(input:checked){border-color:rgba(0,210,255,.62);background:rgba(0,210,255,.1);color:var(--text)}.health-detail-required{padding:12px;border:1px solid rgba(255,107,53,.45);border-radius:12px}.guardian-panel{display:grid;gap:12px;padding:14px;border:1px solid rgba(255,180,80,.34);border-radius:14px;background:rgba(76,43,10,.18)}
.review-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(4,18,29,.55)}.review-summary>div{display:grid;gap:4px;padding:10px;border-radius:10px;background:rgba(255,255,255,.035)}.review-summary span{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.review-summary strong{font-size:11px}.course-next-step{margin-top:6px!important;padding:6px 8px;border-left:3px solid var(--green);border-radius:4px;background:rgba(35,209,139,.08);color:#a8efd1!important}
.health-question legend{display:flex;align-items:center;gap:10px;width:100%;padding:0;color:#d9eef5;font-size:10px;font-weight:650;line-height:1.45}.health-question legend span{flex:0 0 24px}
.health-question{grid-template-columns:1fr 1fr}.health-question legend{grid-column:1/-1}.health-question label{width:100%}

.toast-region{position:fixed;z-index:500;right:20px;bottom:20px;display:grid;gap:9px;width:min(360px,calc(100vw - 40px))}.toast{display:grid;grid-template-columns:8px 1fr auto;align-items:start;gap:10px;padding:13px;color:#c5d8df;background:#0a2132;border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 50px rgba(0,0,0,.4);animation:toast-in .2s ease}.toast i{width:8px;height:8px;margin-top:3px;background:var(--cyan);border-radius:50%}.toast.success i{background:var(--green)}.toast.error i{background:var(--red)}.toast p{margin:0;font-size:9px;line-height:1.5}.toast button{padding:0;color:#7895a1;background:none;border:0;cursor:pointer}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
.modal{width:min(760px,calc(100vw - 24px));max-height:calc(100vh - 30px);max-height:calc(100dvh - 30px);padding:0;color:var(--text);background:transparent;border:0}.modal::backdrop{background:rgba(0,7,13,.78);backdrop-filter:blur(5px)}.modal-shell{overflow:hidden;border:1px solid rgba(72,202,228,.23);border-radius:21px;background:#0a1d2d;box-shadow:var(--shadow)}.modal-shell>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(0,210,255,.07),transparent)}.modal-shell h2{margin:4px 0 0;font-size:17px}.modal-body{max-height:calc(100vh - 125px);max-height:calc(100dvh - 125px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:20px}

/* v1.3.2 uygulama içi ders deneyimi */
.academy-card-progress{display:grid;gap:6px;margin:0 0 12px}.academy-card-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#7897a5;font-size:8px}.academy-card-progress strong{color:var(--cyan-soft);font-size:9px}.academy-card-progress>i{height:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07)}.academy-card-progress b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--aqua),var(--green));box-shadow:0 0 12px rgba(0,210,255,.28)}
.modal.lesson-modal-active{width:min(1180px,calc(100vw - 22px))}.lesson-modal-active .modal-shell{background:#061522}.lesson-modal-active .modal-body{padding:16px}.lesson-app{display:grid;gap:13px}.lesson-app-summary{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid rgba(72,202,228,.16);border-radius:14px;background:rgba(2,14,23,.58)}.lesson-app-summary>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lesson-app-summary>div>strong{font-size:10px}.lesson-app-summary p{margin:0;color:#8eabb7;font-size:9px;line-height:1.55}.lesson-app-code{display:inline-flex;padding:4px 7px;border-radius:7px;color:#06131b;background:var(--cyan);font-size:8px;font-weight:900;letter-spacing:.08em}
.lesson-app-stage{min-height:500px;touch-action:pan-y}.lesson-app-slide{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);min-height:500px;overflow:hidden;border:1px solid rgba(72,202,228,.26);border-radius:22px;background:linear-gradient(145deg,#092338,#061522);box-shadow:inset 0 1px rgba(255,255,255,.04),0 22px 55px rgba(0,4,12,.25)}.lesson-app-copy{display:grid;align-content:start;min-width:0;padding:28px;background:radial-gradient(circle at 0 0,rgba(0,210,255,.11),transparent 38%)}.lesson-app-kicker{display:flex;align-items:center;gap:8px;margin-bottom:18px;color:var(--cyan-soft)}.lesson-app-kicker>span{width:29px;height:29px;display:grid;place-items:center;border:1px solid rgba(72,202,228,.25);border-radius:9px;background:rgba(0,210,255,.08);font-size:14px}.lesson-app-kicker strong{font-size:8px;letter-spacing:.16em}.lesson-app-kicker small{margin-left:auto;color:#5e8292;font-size:7px;font-weight:800;letter-spacing:.11em}.lesson-app-copy h3{max-width:580px;margin:0;color:#f2fcff;font-size:clamp(22px,2.4vw,34px);line-height:1.12;letter-spacing:-.035em}.lesson-app-lead{max-width:600px;margin:13px 0 0;color:#b2cdd7;font-size:11px;line-height:1.7}.lesson-app-points{display:grid;gap:9px;margin-top:22px}.lesson-app-points>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;padding:10px 11px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(1,10,17,.34)}.lesson-app-points b{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#04131b;background:var(--cyan);font-size:8px}.lesson-app-points p{margin:3px 0 0;color:#d9e9ee;font-size:9px;line-height:1.55}.lesson-app-visual{position:relative;display:grid;align-content:center;min-width:0;padding:48px 24px 24px;overflow:hidden;border-left:1px solid rgba(72,202,228,.15);background:radial-gradient(circle at 62% 40%,rgba(0,210,255,.13),transparent 46%),linear-gradient(150deg,#071a29,#041019)}.lesson-app-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(72,202,228,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(72,202,228,.04) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);pointer-events:none}.visual-screen-label{position:absolute;z-index:2;left:20px;right:20px;top:15px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#658493;font-size:7px;letter-spacing:.12em}.visual-screen-label strong{overflow:hidden;color:#8bdce9;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.lesson-app-highlight{border-color:rgba(255,220,72,.48)}.lesson-app-highlight .lesson-app-copy{background:radial-gradient(circle at 0 0,rgba(255,220,72,.18),transparent 42%),#151c1f}.lesson-app-highlight .lesson-app-kicker{color:#ffe068}.lesson-app-highlight .lesson-app-kicker>span,.lesson-app-highlight .lesson-app-points b{color:#181306;border-color:rgba(255,220,72,.35);background:#ffdc48}.lesson-app-highlight .lesson-app-visual{border-left-color:rgba(255,220,72,.2);background:radial-gradient(circle at 60% 42%,rgba(255,220,72,.16),transparent 45%),#101719}.lesson-app-safety{border-color:rgba(255,107,53,.42)}.lesson-app-safety .lesson-app-copy{background:radial-gradient(circle at 0 0,rgba(255,107,53,.16),transparent 42%),#171b20}.lesson-app-safety .lesson-app-kicker{color:#ffaf83}.lesson-app-safety .lesson-app-kicker>span,.lesson-app-safety .lesson-app-points b{color:white;border-color:rgba(255,107,53,.35);background:#d95b2d}.lesson-app-safety .lesson-app-visual{border-left-color:rgba(255,107,53,.2);background:radial-gradient(circle at 60% 42%,rgba(255,107,53,.14),transparent 45%),#10171d}
.lesson-simulator,.lesson-equipment-map,.lesson-signal-board,.lesson-table-model,.lesson-route-model,.lesson-operation-board,.lesson-decision-board,.lesson-sequence-board{position:relative;z-index:1}.lesson-simulator{display:grid;gap:17px}.sim-readouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sim-readouts span{display:grid;gap:5px;padding:10px;border:1px solid rgba(72,202,228,.18);border-radius:11px;color:#698895;background:rgba(1,12,20,.66);font-size:7px;text-transform:uppercase}.sim-readouts strong{color:#eafcff;font-size:15px;font-variant-numeric:tabular-nums}.sim-control{display:grid;gap:8px;color:#8ba9b5;font-size:8px}.sim-control input[type=range]{height:28px;min-height:28px;padding:0;accent-color:var(--aqua);cursor:pointer}.lesson-simulator>small{color:#63818f;font-size:7px;line-height:1.55}.sim-tip{display:grid;gap:4px;padding:11px;border-left:3px solid var(--cyan);border-radius:4px 11px 11px 4px;background:rgba(0,210,255,.07)}.sim-tip strong{color:var(--cyan-soft);font-size:9px}.sim-tip span{color:#8eabb6;font-size:8px;line-height:1.5}
.pressure-water{position:relative;height:225px;overflow:hidden;border:1px solid rgba(72,202,228,.24);border-radius:18px;background:linear-gradient(#0a759d 0,#075579 30%,#06334d 66%,#041d2d 100%)}.pressure-water:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 43px,rgba(255,255,255,.08) 44px 45px)}.pressure-water>span{position:absolute;z-index:1;left:11px;top:9px;color:#c7f6ff;font-size:7px;letter-spacing:.12em}.pressure-depth-line{position:absolute;left:0;right:0;top:var(--depth-position,34%);height:1px;background:rgba(255,255,255,.45);transition:top .18s ease}.pressure-bubble{position:absolute;left:56%;top:var(--depth-position,34%);width:70px;height:70px;display:grid;place-items:center;border:3px solid rgba(255,255,255,.82);border-radius:50%;color:#d7faff;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.35),rgba(72,202,228,.08) 58%,rgba(0,35,54,.3));font-size:15px;transform:translate(-50%,-50%) scale(var(--bubble-scale,.5));transition:top .18s ease,transform .18s ease;box-shadow:0 0 22px rgba(144,224,239,.22)}
.nitrogen-model{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:18px;min-height:210px}.nitrogen-model>div{position:relative;width:145px;height:190px;display:grid;place-items:center;overflow:hidden;border:2px solid rgba(144,224,239,.62);border-radius:18px 18px 34px 34px;background:rgba(1,11,18,.65)}.nitrogen-model i{position:absolute;left:0;right:0;bottom:0;height:60%;background:linear-gradient(rgba(0,210,255,.25),rgba(0,119,182,.7));transition:height .18s ease}.nitrogen-model strong{position:relative;font-size:36px;text-shadow:0 0 22px rgba(0,210,255,.48)}.nitrogen-model p{margin:0;color:#a8c3cd;font-size:10px;line-height:1.7}
.compass-dial{position:relative;width:260px;height:260px;margin:0 auto;border:2px solid rgba(144,224,239,.58);border-radius:50%;background:repeating-conic-gradient(from -1deg,rgba(144,224,239,.58) 0 1deg,transparent 1deg 15deg),radial-gradient(circle,#092a40 0 58%,#04121d 59%);box-shadow:inset 0 0 40px rgba(0,0,0,.55),0 0 28px rgba(0,210,255,.08)}.compass-dial>span{position:absolute;color:#89aeba;font-size:9px;font-weight:900}.compass-dial>span:nth-child(1){left:50%;top:9px;transform:translateX(-50%);color:#ff8c61}.compass-dial>span:nth-child(2){right:13px;top:50%;transform:translateY(-50%)}.compass-dial>span:nth-child(3){left:50%;bottom:9px;transform:translateX(-50%)}.compass-dial>span:nth-child(4){left:13px;top:50%;transform:translateY(-50%)}.compass-dial i{position:absolute;left:50%;top:50%;width:8px;height:92px;border-radius:99px;background:linear-gradient(#ff6b35 0 52%,#d8edf2 53%);transform-origin:50% 88%;transform:translate(-50%,-88%) rotate(45deg);box-shadow:0 0 12px rgba(255,107,53,.4)}.compass-dial b{position:absolute;left:50%;top:50%;display:grid;width:78px;height:42px;place-items:center;border:1px solid rgba(72,202,228,.3);border-radius:10px;color:#e9fbff;background:#061825;font-size:17px;transform:translate(-50%,-50%);font-variant-numeric:tabular-nums}
.gas-gauge{position:relative;width:230px;height:230px;display:grid;place-items:center;margin:0 auto;border-radius:50%;background:conic-gradient(from 225deg,var(--red) 0 12%,var(--gold) 12% 28%,var(--green) 28% 76%,rgba(255,255,255,.06) 76% 100%);box-shadow:0 0 32px rgba(35,209,139,.08)}.gas-gauge:before{content:"";position:absolute;inset:18px;border-radius:50%;background:#061522;box-shadow:inset 0 0 32px rgba(0,0,0,.55)}.gas-gauge i{position:absolute;z-index:1;left:50%;top:50%;width:5px;height:79px;border-radius:99px;background:#e8faff;transform:translate(-50%,-92%) rotate(var(--gas-angle,65deg));transform-origin:50% 92%;transition:transform .18s ease}.gas-gauge b{position:relative;z-index:2;margin-top:23px;font-size:22px;font-variant-numeric:tabular-nums}.gas-gauge span{position:absolute;z-index:2;left:50%;bottom:62px;color:#648493;font-size:7px;letter-spacing:.12em;transform:translateX(-50%)}
.lesson-equipment-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.equipment-core{grid-column:1/-1;display:grid;justify-items:center;gap:4px;padding:14px;border:1px solid rgba(72,202,228,.25);border-radius:14px;background:rgba(0,210,255,.09)}.equipment-core span{color:#6b94a4;font-size:7px;letter-spacing:.15em}.equipment-core strong{font-size:15px}.equipment-node{display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:9px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(1,11,18,.58)}.equipment-node b{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#06131b;background:var(--cyan);font-size:8px}.equipment-node span{font-size:10px;font-weight:800}.equipment-node small{color:#698794;font-size:7px;font-weight:400}.lesson-equipment-map>p{grid-column:1/-1;margin:0;padding:10px;color:#8eb2bf;border-radius:10px;background:rgba(255,255,255,.04);text-align:center;font-size:8px}
.lesson-signal-board{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px}.signal-hand{grid-row:1/4;display:grid;place-items:center;border:1px solid rgba(72,202,228,.22);border-radius:18px;background:rgba(0,210,255,.08);font-size:58px}.lesson-signal-board>div:not(.signal-hand){display:grid;grid-template-columns:28px minmax(0,1fr);gap:4px 10px;padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(1,11,18,.55)}.lesson-signal-board b{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#06131b;background:var(--cyan);font-size:7px}.lesson-signal-board strong{font-size:9px}.lesson-signal-board span{color:#708d99;font-size:7px;line-height:1.4}
.lesson-table-model{overflow:hidden;border:1px solid rgba(72,202,228,.2);border-radius:16px;background:rgba(1,11,18,.65)}.lesson-table-model header,.lesson-table-model>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px}.lesson-table-model header span{padding:11px 8px;color:#7da2b0;background:#0b2d42;text-align:center;font-size:7px;letter-spacing:.08em}.lesson-table-model>div{position:relative;padding-top:50px}.lesson-table-model>div>strong{position:absolute;left:50%;top:10px;display:grid;width:30px;height:30px;place-items:center;border-radius:50%;color:#06131b;background:var(--cyan);transform:translateX(-50%)}.lesson-table-model>div>span{min-height:90px;padding:14px 9px;border-right:1px solid rgba(255,255,255,.07);color:#d6e9ef;text-align:center;font-size:8px;line-height:1.5}.lesson-table-model footer{padding:11px;color:#718f9d;background:rgba(255,255,255,.03);text-align:center;font-size:7px}
.route-grid{position:relative;height:260px;border:1px solid rgba(72,202,228,.2);border-radius:18px;background-image:linear-gradient(rgba(72,202,228,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(72,202,228,.07) 1px,transparent 1px);background-size:32px 32px}.route-line{position:absolute;inset:18% 19%;border:3px dashed rgba(0,210,255,.62);transform:skew(-8deg) rotate(4deg)}.route-point{position:absolute;width:34px;height:34px;display:grid;place-items:center;border:3px solid #e8fbff;border-radius:50%;color:#06131b;background:var(--orange);font-size:10px;font-weight:900;box-shadow:0 0 18px rgba(255,107,53,.32)}.route-point.p1{left:17%;top:16%}.route-point.p2{right:16%;top:22%}.route-point.p3{right:21%;bottom:15%}.route-point.p4{left:21%;bottom:19%}.route-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.route-legend span{display:flex;align-items:center;gap:7px;padding:8px;border-radius:9px;color:#8eabb6;background:rgba(255,255,255,.04);font-size:7px}.route-legend b{color:var(--cyan-soft)}
.lesson-operation-board{display:grid;grid-template-columns:minmax(0,1fr) 125px;gap:12px}.lesson-operation-board header{grid-column:1/-1;display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid rgba(72,202,228,.2)}.lesson-operation-board header span{color:#668895;font-size:7px;letter-spacing:.12em}.lesson-operation-board header strong{color:var(--cyan-soft);font-size:9px}.operation-radar{position:relative;min-height:270px;overflow:hidden;border:1px solid rgba(72,202,228,.2);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 39px,rgba(72,202,228,.12) 40px 41px),conic-gradient(from 25deg,rgba(0,210,255,.12),transparent 20% 100%)}.operation-radar:before,.operation-radar:after{content:"";position:absolute;background:rgba(72,202,228,.16)}.operation-radar:before{left:50%;top:0;width:1px;height:100%}.operation-radar:after{left:0;top:50%;width:100%;height:1px}.operation-radar i{position:absolute;left:50%;top:50%;width:45%;height:2px;background:linear-gradient(90deg,var(--aqua),transparent);transform-origin:left;animation:lesson-radar 4s linear infinite}.operation-radar b{position:absolute;left:50%;top:50%;z-index:1;padding:6px 8px;border-radius:8px;color:#06131b;background:var(--cyan);font-size:7px;transform:translate(-50%,-50%)}.operation-radar span{position:absolute;padding:5px 7px;border:1px solid rgba(72,202,228,.2);border-radius:7px;color:#a7d8e2;background:#071b29;font-size:7px}.radar-a{left:17%;top:24%}.radar-b{right:12%;top:38%}.radar-c{left:35%;bottom:15%}@keyframes lesson-radar{to{transform:rotate(360deg)}}.lesson-operation-board ol{display:grid;align-content:center;gap:10px;margin:0;padding:0;list-style:none}.lesson-operation-board li{display:grid;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:7px;color:#94b1bc;font-size:8px}.lesson-operation-board li span{width:9px;height:9px;border:2px solid var(--cyan);border-radius:50%}
.lesson-decision-board{display:grid;grid-template-columns:70px minmax(0,1fr);gap:13px}.decision-alert{grid-row:1/3;width:66px;height:66px;display:grid;place-items:center;border:2px solid #ff8b62;border-radius:20px;color:white;background:#cb4d23;font-size:28px;font-weight:900;box-shadow:0 0 28px rgba(255,107,53,.2)}.lesson-decision-board>div{display:grid;gap:8px}.lesson-decision-board article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:3px 9px;padding:10px;border:1px solid rgba(255,107,53,.18);border-radius:11px;background:rgba(35,14,8,.42)}.lesson-decision-board article b{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#1b0b04;background:#ff8b62;font-size:7px}.lesson-decision-board article strong{font-size:9px}.lesson-decision-board article small{color:#9c8177;font-size:7px;line-height:1.45}.lesson-decision-board>p{grid-column:2;margin:0;padding:10px;border-left:3px solid var(--orange);color:#ffc5ac;background:rgba(255,107,53,.08);font-size:8px;line-height:1.5}
.lesson-sequence-board{display:grid;grid-template-columns:95px minmax(0,1fr);align-items:center;gap:15px}.sequence-symbol{width:90px;height:90px;display:grid;place-items:center;border:1px solid rgba(72,202,228,.3);border-radius:26px;color:#06131b;background:linear-gradient(145deg,#90e0ef,#00d2ff);font-size:25px;font-weight:900;box-shadow:0 15px 32px rgba(0,210,255,.15)}.lesson-sequence-board>div{display:grid;gap:9px}.lesson-sequence-board article{display:grid;grid-template-columns:28px 18px minmax(0,1fr);align-items:center;gap:7px;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(1,11,18,.55)}.lesson-sequence-board article b{color:#6f92a0;font-size:7px}.lesson-sequence-board article span{height:2px;background:linear-gradient(90deg,var(--cyan),transparent)}.lesson-sequence-board article strong{font-size:9px}.lesson-sequence-board>p{grid-column:1/-1;margin:0;color:#7695a2;text-align:center;font-size:8px}
.lesson-app-nav{position:sticky;bottom:0;z-index:5;padding:10px;border:1px solid rgba(72,202,228,.15);border-radius:14px;background:rgba(5,20,32,.94);backdrop-filter:blur(12px)}.lesson-completion{display:none;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid rgba(72,202,228,.17);border-radius:14px;background:rgba(4,18,29,.72)}.lesson-completion.visible{display:flex}.lesson-completion>div{display:flex;align-items:center;gap:10px}.lesson-completion>div>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#06131b;background:var(--cyan);font-weight:900}.lesson-completion p{display:grid;gap:3px;margin:0}.lesson-completion strong{font-size:10px}.lesson-completion small{color:#7694a1;font-size:8px}.lesson-completion.completed{border-color:rgba(35,209,139,.28);background:rgba(35,209,139,.07)}.lesson-completion.completed>div>span{background:var(--green)}
.modal.lesson-modal-presenting{width:100vw;max-width:none;height:100vh;max-height:100vh;margin:0}.lesson-modal-presenting .modal-shell{height:100vh;border:0;border-radius:0}.lesson-modal-presenting .modal-shell>header{position:absolute;z-index:12;right:12px;top:10px;width:auto;padding:0;border:0;background:transparent}.lesson-modal-presenting .modal-shell>header>div{display:none}.lesson-modal-presenting .modal-body{max-height:100vh;height:100vh;padding:12px}.lesson-modal-presenting .lesson-app-summary{grid-template-columns:1fr auto;padding:8px 50px 8px 12px}.lesson-modal-presenting .lesson-app-summary>p{display:none}.lesson-modal-presenting .lesson-app-stage{min-height:calc(100vh - 190px)}.lesson-modal-presenting .lesson-app-slide{min-height:calc(100vh - 190px)}.lesson-modal-presenting .lesson-source,.lesson-modal-presenting .lesson-completion{display:none}.lesson-modal-presenting .lesson-app-nav{padding:7px}

@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-map{grid-template-columns:repeat(3,minmax(0,1fr))}.list-row{grid-template-columns:minmax(180px,1fr) minmax(130px,.7fr) auto}.list-row>div:nth-child(3){display:none}}
@media(max-width:860px){:root{--sidebar:268px}.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;transform:translateX(-105%);transition:transform .23s ease;box-shadow:20px 0 60px rgba(0,0,0,.35)}.sidebar.open{transform:translateX(0)}.main-area{padding:0 18px 35px}.mobile-menu{display:grid;place-items:center}.topbar{min-height:78px}.topbar h1{font-size:19px}.connection-pill{display:none}.hero-card{min-height:245px;padding:24px;background:linear-gradient(90deg,rgba(5,23,36,.97),rgba(5,23,36,.75)),url('assets/subcrab-hero.jpg') center/cover}.hero-copy h2{font-size:27px}.grid-2{grid-template-columns:1fr}.data-table{min-width:660px}.sidebar-backdrop:not(.hidden){display:block!important}}
@media(max-width:600px){.auth-card{padding:27px 18px 22px;border-radius:23px}.database-badge{position:static;width:max-content;margin:0 auto 14px}.auth-logo-wrap{width:98px;height:98px}.auth-heading h1{font-size:29px}.main-area{padding-inline:13px}.topbar{gap:10px}.topbar-actions .button{display:none}.avatar-button{width:35px;height:35px}.content{padding-top:19px}.page-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%}.page-actions .button{flex:1}.stats-grid,.grid-3,.grid-4,.photo-grid,.site-map{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:14px}.stat-card strong{font-size:21px}.hero-card{min-height:275px;padding:20px;border-radius:18px}.hero-copy h2{font-size:24px}.panel{padding:15px}.form-grid,.nested-grid,.custom-exam-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.list-row{grid-template-columns:1fr;gap:8px}.list-row>div:nth-child(3){display:block}.list-row .row-actions{justify-content:flex-start}.site-footer{flex-direction:column}.join-banner{align-items:flex-start;flex-direction:column}.join-banner .button{width:100%}.modal-body{padding:15px 15px calc(15px + env(safe-area-inset-bottom))}.roster-row{grid-template-columns:28px minmax(0,1fr)}.roster-row>small{grid-column:2}.score-card{grid-template-columns:1fr;justify-items:center;text-align:center}.mobile-app-card{grid-template-columns:78px minmax(0,1fr)}.mobile-app-card img{width:78px;height:78px;border-radius:18px}.legal-card{padding:18px}.legal-card h1{font-size:23px}.visual-track{grid-template-columns:1fr}.visual-step{min-height:86px}.visual-step:not(:last-child):after{content:"↓";right:auto;top:auto;bottom:-16px}.view-selector{align-items:stretch;flex-direction:column}.health-question{grid-template-columns:1fr auto auto}.health-question legend{grid-column:1/-1}.coordinate-picker{min-height:230px}}
@media(max-width:390px){.stats-grid,.grid-3,.grid-4{grid-template-columns:1fr}.topbar-title .eyebrow{display:none}.auth-footer{flex-direction:column;gap:7px}}
@media(max-width:1000px){.academy-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.academy-toolbar,.academy-module-grid{grid-template-columns:1fr}.academy-stats{grid-template-columns:1fr 1fr}.academy-module-card{min-height:220px}.lesson-deck-summary{display:grid}.lesson-deck-summary p{text-align:left}.lesson-slide-stage,.lesson-slide{min-height:0}.lesson-slide-copy{min-height:0;padding:17px}.lesson-slide-copy h3{font-size:18px}.lesson-diagram{grid-template-columns:1fr;padding:11px}.diagram-icon{width:58px;height:58px;margin:0 auto;border-radius:18px}.diagram-path{grid-template-columns:1fr}.diagram-path>span{grid-template-columns:25px 1fr;align-items:center;justify-items:start;text-align:left}.diagram-path>span:not(:last-child):after{content:"↓";right:auto;top:auto;bottom:-9px;left:18px}.lesson-slide-nav{grid-template-columns:1fr 1fr}.lesson-slide-nav label{grid-column:1/-1;grid-row:1}.lesson-source{font-size:9px}.lesson-highlight-banner,.lesson-safety-banner{padding-inline:14px}.academy-stats>span{display:grid;gap:2px}}
@media(max-width:600px){.academy-card-actions{grid-template-columns:1fr}.archive-slide-stage{min-height:0}.archive-slide img{max-height:62vh}.archive-slide-toolbar{align-items:stretch;flex-direction:column}.archive-slide-toolbar .button{width:100%}}
@media(max-width:960px){.lesson-app-slide{grid-template-columns:1fr}.lesson-app-copy{padding:22px}.lesson-app-visual{min-height:440px;border-top:1px solid rgba(72,202,228,.15);border-left:0}.lesson-app-summary{grid-template-columns:1fr auto}.lesson-app-summary>p{grid-column:1/-1;grid-row:2}.lesson-modal-presenting .lesson-app-stage,.lesson-modal-presenting .lesson-app-slide{min-height:0}}
@media(max-width:600px){.modal.lesson-modal-active{width:100vw;max-height:100dvh;margin:0}.lesson-modal-active .modal-shell{min-height:100dvh;border-width:0;border-radius:0}.lesson-modal-active .modal-shell>header{position:sticky;z-index:10;top:0;padding:12px 14px;background:#082033}.lesson-modal-active .modal-shell h2{font-size:13px}.lesson-modal-active .modal-body{max-height:calc(100dvh - 67px);padding:9px 9px calc(12px + env(safe-area-inset-bottom))}.lesson-app{gap:9px}.lesson-app-summary{grid-template-columns:1fr;padding:10px}.lesson-app-summary>p{grid-column:auto;grid-row:auto;font-size:8px}.lesson-app-summary .button{width:100%}.lesson-app-slide{border-radius:16px}.lesson-app-copy{padding:18px 15px}.lesson-app-kicker{margin-bottom:13px}.lesson-app-copy h3{font-size:23px}.lesson-app-lead{font-size:10px}.lesson-app-points{margin-top:16px}.lesson-app-points>div{padding:9px}.lesson-app-points p{font-size:9px}.lesson-app-visual{min-height:350px;padding:44px 13px 16px}.visual-screen-label{left:13px;right:13px}.visual-screen-label strong{max-width:60%}.sim-readouts{grid-template-columns:1fr 1fr}.sim-readouts span:last-child{grid-column:1/-1}.pressure-water{height:205px}.nitrogen-model{grid-template-columns:105px minmax(0,1fr);gap:11px}.nitrogen-model>div{width:102px;height:155px}.nitrogen-model strong{font-size:28px}.nitrogen-model p{font-size:9px}.compass-dial{width:225px;height:225px}.gas-gauge{width:210px;height:210px}.lesson-equipment-map{grid-template-columns:1fr}.equipment-core,.lesson-equipment-map>p{grid-column:auto}.lesson-signal-board{grid-template-columns:1fr}.signal-hand{grid-row:auto;min-height:95px}.lesson-table-model{overflow-x:auto}.lesson-table-model header,.lesson-table-model>div{min-width:430px}.route-grid{height:230px}.lesson-operation-board{grid-template-columns:1fr}.lesson-operation-board header{grid-column:auto}.operation-radar{min-height:260px}.lesson-operation-board ol{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-decision-board{grid-template-columns:52px minmax(0,1fr)}.decision-alert{width:50px;height:50px;border-radius:15px}.lesson-sequence-board{grid-template-columns:1fr}.sequence-symbol{margin:0 auto}.lesson-sequence-board>p{grid-column:auto}.lesson-app-nav{grid-template-columns:1fr 1fr;padding:8px}.lesson-app-nav label{grid-column:1/-1;grid-row:1}.lesson-completion{align-items:stretch;flex-direction:column}.lesson-completion .button{width:100%}.lesson-source{font-size:8px}.lesson-modal-presenting .modal-shell>header{position:absolute;padding:0}.lesson-modal-presenting .modal-body{max-height:100vh;height:100vh}.lesson-modal-presenting .lesson-app-summary{grid-template-columns:1fr;padding-right:48px}.lesson-modal-presenting .lesson-app-summary>div>strong,.lesson-modal-presenting .lesson-app-summary .lesson-app-code{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.approval-history { margin-top: .6rem; max-width: 32rem; white-space: normal; }
.approval-history summary { cursor: pointer; font-weight: 600; }
.approval-history article { padding: .65rem 0; border-bottom: 1px solid #d5e3eb; overflow-wrap: anywhere; }
.approval-history small { display: block; line-height: 1.5; }
.overview-shortcut { cursor: pointer; }
.overview-shortcut:focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }
.guard-access-form{grid-template-columns:minmax(150px,1fr) minmax(155px,.9fr) minmax(190px,1.2fr) auto auto}
@media(max-width:1180px){.guard-access-form{grid-template-columns:1fr 1fr}.guard-access-form>div:nth-child(3){display:grid}}
@media(max-width:600px){.guard-access-form{grid-template-columns:1fr}.guard-access-form .button{width:100%}}
