
:root{
 --navy:#081b34;--navy2:#0f315d;--gold:#d5a62e;--gold2:#efd06d;--cream:#fbf8ef;
 --bg:#edf2f7;--panel:#fff;--line:#d9e1ea;--text:#162235;--muted:#6b7989;
 --green:#1d8a58;--red:#c51f2c;--red2:#8d1018;--redsoft:#fff1f2;
 --shadow:0 14px 36px rgba(8,27,52,.12)
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text)}
body{overscroll-behavior:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.topbar{
 position:fixed;z-index:50;top:0;left:0;right:0;height:calc(78px + env(safe-area-inset-top));
 padding:calc(8px + env(safe-area-inset-top)) 18px 8px;
 background:linear-gradient(135deg,var(--navy),#0c2b51);border-bottom:4px solid var(--gold);
 display:flex;align-items:center;justify-content:space-between;color:white
}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{width:72px;height:52px;object-fit:contain;object-position:left center}
.brand-text{min-width:0}
.app-title{font-size:18px;font-weight:950;letter-spacing:1.2px}
.brand-sub{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--gold2);margin-top:2px}
.top-actions{display:flex;align-items:center;gap:8px}
.aircraft-pill{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.1);color:#fff;border-radius:12px;padding:10px 14px;font-weight:900;min-height:44px}
.icon-btn{width:44px;height:44px;border:0;border-radius:12px;background:rgba(255,255,255,.10);color:#fff;font-size:22px}
.shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh;padding-top:calc(78px + env(safe-area-inset-top))}
.sidebar{
 position:fixed;top:calc(78px + env(safe-area-inset-top));left:0;bottom:0;width:245px;background:#fff;border-right:1px solid var(--line);
 padding:14px;display:flex;flex-direction:column;gap:12px;overflow-y:auto
}
.active-card{background:linear-gradient(145deg,var(--navy),var(--navy2));color:#fff;border-radius:16px;padding:14px;box-shadow:var(--shadow)}
.eyebrow{font-size:10px;font-weight:950;letter-spacing:1.2px;color:var(--muted)}
.active-card .eyebrow{color:rgba(255,255,255,.6)}
.tail{font-size:24px;font-weight:950;margin-top:4px}
.model{font-size:12px;opacity:.77;margin-top:2px}
.section-nav{display:flex;flex-direction:column;gap:6px}
.nav-btn{
 min-height:43px;border:1px solid transparent;background:transparent;border-radius:11px;padding:10px 11px;
 display:flex;align-items:center;justify-content:space-between;font-weight:850;color:var(--text)
}
.nav-btn.active{background:#f7ebbd;border-color:#e6ce70;color:var(--navy)}
.nav-count{font-size:10px;color:var(--muted);margin-left:8px}
.emergency-button{
 margin-top:auto;position:sticky;bottom:58px;border:0;background:linear-gradient(145deg,var(--red),var(--red2));color:#fff;border-radius:15px;
 min-height:66px;padding:10px 12px;display:flex;align-items:center;gap:11px;text-align:left;box-shadow:0 10px 24px rgba(197,31,44,.27);
 border:2px solid #ffb3b8
}
.emergency-icon{width:36px;height:36px;border-radius:50%;background:white;color:var(--red);font-size:25px;font-weight:1000;display:grid;place-items:center}
.emergency-button strong{display:block;font-size:15px;letter-spacing:.6px}
.emergency-button small{display:block;font-size:10px;opacity:.82;margin-top:2px}
.reset-btn{border:1px solid #e7c5c8;background:#fff8f8;color:#9b2630;padding:11px;border-radius:12px;font-weight:900;min-height:44px}
.content{grid-column:2;padding:20px 22px 28px;min-width:0}
.content-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:13px}
.content-head h1{font-size:30px;margin:4px 0 0;color:var(--navy)}
.progress-badge{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-weight:950;color:var(--navy)}
.panel{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);min-height:420px}
.check-item{display:grid;grid-template-columns:52px 1fr;border-bottom:1px solid var(--line);background:#fff;min-height:64px}
.check-item:last-child{border-bottom:0}
.check-item.checked{background:#f4faf7}
.check-hit{display:grid;place-items:center;border-right:1px solid var(--line)}
.check-circle{width:29px;height:29px;border:2px solid #9ba9b9;border-radius:8px;display:grid;place-items:center;background:#fff;color:#fff;font-weight:950}
.check-item.checked .check-circle{background:var(--green);border-color:var(--green)}
.check-copy{padding:12px 15px}
.item-label{font-size:12px;font-weight:950;color:var(--navy);letter-spacing:.2px}
.item-value{font-size:18px;font-weight:720;line-height:1.25;margin-top:2px}
.check-item.checked .item-value{text-decoration:line-through;color:#72808e}
.empty-state{min-height:420px;display:grid;place-items:center;text-align:center;padding:30px;color:var(--muted)}
.empty-state h2{color:var(--navy);margin:8px 0 0}
.empty-logo{width:150px;max-height:100px;object-fit:contain}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}
.hidden{display:none!important}
.backdrop{position:absolute;inset:0;background:rgba(3,13,27,.62);backdrop-filter:blur(5px)}
.modal-card{position:relative;width:min(800px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:21px;padding:20px;box-shadow:0 30px 85px rgba(0,0,0,.28)}
.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.modal-header h2{margin:3px 0 0;font-size:28px;color:var(--navy)}
.close-btn{border:0;width:42px;height:42px;border-radius:11px;background:#edf2f7;color:var(--navy);font-size:24px}
.aircraft-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.aircraft-choice{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;text-align:left;min-height:130px;box-shadow:0 6px 16px rgba(0,0,0,.04)}
.aircraft-choice:hover{border-color:var(--gold)}
.aircraft-choice .tail{color:var(--navy);font-size:28px}
.aircraft-choice .model{color:var(--muted);opacity:1}
.status-ready{display:inline-block;margin-top:12px;background:#e7f5ed;color:var(--green);font-size:11px;font-weight:950;padding:5px 8px;border-radius:999px}
.emergency-modal{padding:10px}
.emergency-card{width:min(900px,98vw);background:#fff;border:3px solid var(--red);padding:0;overflow:hidden}
.emergency-top{background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;padding:16px 18px;display:flex;align-items:flex-start;justify-content:space-between;position:sticky;top:0;z-index:4}
.emergency-kicker{font-size:10px;font-weight:950;letter-spacing:1.5px;color:#ffd0d3}
.emergency-top h2{font-size:27px;margin:3px 0 0}
.emergency-aircraft{font-size:12px;margin-top:4px;opacity:.85}
.emergency-close{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:white;font-size:24px}
.emergency-home{padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.emergency-type{border:1px solid #efb9bd;background:#fff7f7;border-radius:14px;padding:14px;text-align:left;color:var(--red2);min-height:70px;font-weight:900;display:flex;align-items:center;justify-content:space-between;gap:10px}
.emergency-type span:last-child{font-size:20px}
.emergency-detail{padding:0 16px 16px}
.emergency-detail-head{display:flex;align-items:center;gap:10px;padding:12px 0}
.back-emergency{border:1px solid #efb9bd;background:#fff7f7;color:var(--red2);border-radius:10px;padding:9px 11px;font-weight:900}
.emergency-detail h3{margin:0;color:var(--red2);font-size:23px}
.emergency-detail .check-item{border:1px solid #efd1d4;border-bottom:0}
.emergency-detail .check-item:first-of-type{border-radius:13px 13px 0 0}
.emergency-detail .check-item:last-child{border-bottom:1px solid #efd1d4;border-radius:0 0 13px 13px}
.edit-card{width:min(860px,97vw)}
.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.edit-grid label{font-size:12px;font-weight:900;color:var(--navy)}
select,input,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff}
.section-tools{display:grid;grid-template-columns:1.3fr auto auto auto;gap:8px;margin-bottom:14px}
.edit-row{display:grid;grid-template-columns:180px 1fr auto 38px;gap:8px;margin-bottom:8px;align-items:stretch}
.edit-row textarea{min-height:58px;resize:vertical}
.remove-item{border:0;background:#fff0f0;color:var(--red);border-radius:9px;min-width:44px;min-height:44px;font-size:20px}
.reorder-controls{display:flex;flex-direction:column;gap:5px}
.move-item{border:1px solid var(--line);background:#f7f9fb;color:var(--navy);border-radius:9px;min-width:44px;min-height:31px;font-weight:950;font-size:16px;line-height:1}
.move-item:disabled{opacity:.28;cursor:default}
.edit-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}
.primary-btn,.secondary-btn,.danger-btn{padding:11px 14px;border-radius:11px;font-weight:900}
.primary-btn{border:0;background:var(--navy);color:#fff}
.secondary-btn{border:1px solid var(--line);background:#fff;color:var(--navy)}
.danger-btn{border:1px solid #e8c2c6;background:#fff5f5;color:var(--red)}
.popover{position:fixed;right:18px;top:calc(72px + env(safe-area-inset-top));background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;min-width:220px;z-index:90;box-shadow:var(--shadow)}
.popover button,.import-label{display:block;width:100%;text-align:left;border:0;background:#fff;padding:11px;border-radius:9px;color:var(--text);font-weight:750}
.import-label input{display:none}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:220;background:var(--navy);color:#fff;padding:11px 16px;border-radius:12px;font-weight:850;box-shadow:var(--shadow)}

@media(max-width:900px){
 .shell{grid-template-columns:210px 1fr}.sidebar{width:210px;padding:11px}.content{padding:15px}.item-value{font-size:16px}
 .brand-logo{width:62px}
}
@media(max-width:760px){
 .topbar{height:calc(72px + env(safe-area-inset-top));padding-left:10px;padding-right:10px}
 .brand-logo{width:54px;height:42px}.app-title{font-size:15px}.brand-sub{font-size:8px}
 .shell{grid-template-columns:180px 1fr;padding-top:calc(72px + env(safe-area-inset-top))}
 .sidebar{top:calc(72px + env(safe-area-inset-top));width:180px;padding:9px}
 .active-card{padding:10px}.tail{font-size:20px}.model{font-size:10px}
 .nav-btn{min-height:38px;padding:8px 9px;font-size:13px}
 .emergency-button{min-height:60px;padding:8px}.emergency-icon{width:30px;height:30px}
 .content{padding:12px}.content-head h1{font-size:25px}.item-value{font-size:15px}
 .check-item{grid-template-columns:46px 1fr;min-height:58px}.check-copy{padding:10px 12px}
 .aircraft-choices{grid-template-columns:1fr 1fr}
 .emergency-home{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .brand-text{display:none}.aircraft-pill{max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:9px 10px}
 .shell{display:block;padding-top:calc(72px + env(safe-area-inset-top))}
 .sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;width:auto;height:78px;z-index:45;padding:7px;border-right:0;border-top:1px solid var(--line);display:flex;flex-direction:row;align-items:center;overflow-x:auto;overflow-y:hidden;background:#fff}
 .active-card,.reset-btn{display:none}.section-nav{display:flex;flex-direction:row;gap:6px}.nav-btn{display:inline-flex;width:auto;white-space:nowrap}
 .emergency-button{position:sticky;right:7px;bottom:auto;min-width:132px;min-height:54px;margin:0 0 0 4px;padding:7px 9px;border-radius:12px}
 .emergency-button small{display:none}.emergency-button strong{font-size:12px}.emergency-icon{width:28px;height:28px}
 .content{padding:11px 10px 94px}.content-head h1{font-size:23px}
 .aircraft-choices{grid-template-columns:1fr}
 .emergency-home{grid-template-columns:1fr}
 .edit-grid,.section-tools{grid-template-columns:1fr}.edit-row{grid-template-columns:minmax(100px,.8fr) minmax(145px,1.3fr) auto 44px}.move-item{min-width:40px}
}
