@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{color:#101828;font-synthesis:none;text-rendering:optimizelegibility;--ink:#101828;--muted:#5c6675;--panel:#fbfcfe;--line:#c8d1dc;--blue:#1f5f8b;--green:#22705c;--red:#b42318;--amber:#b45309;background:#f2f5f7;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{background:#f2f5f7;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,.header-actions a{min-height:36px;color:var(--ink);cursor:pointer;white-space:nowrap;background:linear-gradient(#fff,#e2e8ef);border:1px solid #9aa8b7;border-radius:4px;padding:8px 12px;font-weight:800;text-decoration:none}button:hover,.header-actions a:hover{background:linear-gradient(#fff,#d4dde7)}button:disabled{cursor:not-allowed;opacity:.55}input,select{width:100%;color:var(--ink);background:#fff;border:1px solid #9aa8b7;border-radius:4px;padding:9px 10px}button:focus-visible,input:focus-visible,select:focus-visible,.header-actions a:focus-visible{outline-offset:2px;outline:3px solid #1f5f8b47}label{color:#263241;gap:6px;font-size:13px;font-weight:800;display:grid}h1,h2,p{margin-top:0}.auth-shell{background:linear-gradient(#0a0f1994,#0a0f19c2),radial-gradient(circle at 18% 20%,#ffffff2e,#0000 28%),linear-gradient(135deg,#25364a,#101828 58%,#741827);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border:1px solid #ffffff80;border-radius:24px;width:min(430px,100%);padding:34px;box-shadow:0 28px 80px #00000059}.auth-logo{width:178px;max-width:100%;margin:0 auto 24px;display:block}.auth-eyebrow{color:var(--red);letter-spacing:1.2px;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800}.auth-card h1{color:#111827;margin:0 0 10px;font-size:30px;line-height:1.15}.auth-subtext{color:#6b7280;margin:0 0 24px;font-size:15px;line-height:1.5}.auth-card label{margin-bottom:14px;display:block}.auth-card input{border-color:#d1d5db;border-radius:14px;margin-top:7px;padding:14px 15px}.auth-card input:focus-visible{border-color:var(--red);outline:none;box-shadow:0 0 0 4px #b423181f}.auth-row{justify-content:space-between;align-items:center;gap:12px;margin:2px 0 20px;display:flex}.auth-check{color:#4b5563;align-items:center;gap:8px;font-size:13px;margin:0!important;display:flex!important}.auth-check input{width:auto;margin:0}.link-button{min-height:auto;color:var(--red);box-shadow:none;background:0 0;border:0;padding:0;font-size:13px;font-weight:800}.link-button:hover{color:#8f1f16;background:0 0}.auth-primary{background:var(--red);color:#fff;border:0;border-radius:14px;width:100%;min-height:48px;box-shadow:0 12px 28px #b4231847}.auth-primary:hover{background:#8f1f16}.auth-message{color:#6b7280;min-height:20px;margin-top:12px;font-size:13px;line-height:1.4}.auth-message.ok{color:#147a41}.auth-message.error{color:var(--red)}.auth-footer{color:#6b7280;text-align:center;margin-top:22px;font-size:12px;line-height:1.5}.briefing-shell{width:min(1520px,100%);margin:0 auto;padding:12px}.briefing-header,.briefing-panel{background:#fbfcfef7;border:1px solid #9aa8b7;border-radius:6px;box-shadow:0 3px 14px #1018280f}.briefing-header{border-left:6px solid var(--red);justify-content:space-between;align-items:end;gap:18px;padding:16px;display:flex}.briefing-header span,.panel-title span,.flight-card span{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.briefing-header h1,.panel-title h2{margin:3px 0 0;line-height:1.1}.briefing-header h1{font-size:clamp(24px,3vw,34px)}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.page-tabs{background:#fff;border:1px solid #9aa8b7;border-radius:6px;flex-wrap:wrap;gap:6px;margin-top:10px;padding:8px;display:flex}.page-tabs button{min-height:34px;box-shadow:none;background:0 0;border-color:#0000}.page-tabs button.active{color:var(--blue);background:#e7eef5;border-color:#8aa1b8}.status-row{gap:8px;margin-top:10px;display:grid}.user-chip{min-height:36px;color:var(--muted);background:#fff;border:1px solid #c8d1dc;align-items:center;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.briefing-grid{grid-template-columns:360px minmax(0,1fr);gap:12px;margin-top:12px;display:grid}.briefing-grid.single-page{grid-template-columns:1fr}.briefing-panel{margin-top:12px;padding:16px}.briefing-grid .briefing-panel{margin-top:0}.controls-panel{align-content:start;gap:13px;display:grid}.briefing-grid.single-page .controls-panel{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start}.briefing-grid.single-page .file-drop,.briefing-grid.single-page .upload-list{min-height:100%}.file-drop{background:#fff;border:1px dashed #8fa1b5;padding:12px}.file-drop span,.upload-list p,.airport-card p,.notam-card p,.pirep-card p,.flight-card p{color:var(--muted);line-height:1.45}.file-drop input{margin-top:4px}.status-box,.warning-stack span{color:#7c2d12;background:#fff7ed;border:1px solid #f0bf77;padding:9px 10px;font-size:13px;font-weight:700;line-height:1.4}.dashboard-panel{gap:14px;display:grid}.dashboard-primary{background:#f8fafc;border:1px solid #cbd6e2;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.dashboard-primary button{color:#fff;background:#b42318;border-color:#841d16;min-height:44px}.dashboard-primary button:hover{background:#8f1f16}.dashboard-primary small,.status-card p{color:var(--muted);font-weight:700;line-height:1.4}.status-card-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.status-card{border:1px solid var(--line);background:#fff;border-radius:6px;gap:8px;padding:12px;display:grid}.status-card span{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.status-card strong{font-size:30px;line-height:1}.status-card button{justify-self:start}.upload-list{border:1px solid var(--line);background:#fff;gap:8px;padding:10px;display:grid}.upload-list div{border-top:1px solid #e2e8f0;gap:2px;padding-top:8px;display:grid}.upload-list small,.airport-heading small{color:var(--muted);font-weight:800}.panel-title{justify-content:space-between;align-items:start;gap:14px;margin-bottom:12px;display:flex}.flight-card-grid,.airport-grid,.notam-grid,.pirep-grid,.runway-airport-grid,.runway-card-grid{gap:10px;display:grid}.flight-card-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.flight-card,.airport-card,.notam-card,.pirep-card,.runway-airport-card,.runway-option{border:1px solid var(--line);background:#fff;border-radius:4px;padding:12px}.flight-card>div:first-child,.airport-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.flight-card strong,.airport-heading strong{font-size:19px}.flight-card dl{grid-template-columns:120px 1fr;gap:7px 12px;margin:0 0 10px;display:grid}.flight-card dt{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.flight-card dd{margin:0;font-weight:700}.card-actions{border-top:1px solid #e6ebf1;justify-content:flex-end;margin-top:12px;padding-top:10px;display:flex}.warning-stack{gap:8px;margin-top:12px;display:grid}.airport-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.airport-card p,.notam-card p,.pirep-card p,.flight-card p,.runway-airport-card p,.runway-option p{overflow-wrap:anywhere;margin:0}.airport-card p+p,.notam-card p+p,.pirep-card p+p,.runway-airport-card p+p{border-top:1px solid #e6ebf1;margin-top:8px;padding-top:8px}.airport-card b{color:var(--ink)}.notam-card b{min-width:92px;color:var(--blue);display:inline-block}.notam-card span{color:var(--amber);font-weight:800}.airport-heading span{color:var(--red);background:#fef3f2;border:1px solid #f3a8a2;padding:4px 7px;font-size:12px;font-weight:800}.needs-update{border-color:#f04438;box-shadow:inset 4px 0 #f04438}.notam-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.pirep-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.runway-picker-form{grid-template-columns:repeat(6,minmax(130px,1fr)) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.runway-flight-source{grid-column:1/-1}.runway-airport-grid{grid-template-columns:repeat(auto-fit,minmax(390px,1fr))}.runway-airport-card{gap:10px;display:grid}.atis-box{color:var(--muted);background:#f5f9fc;border:1px solid #bfd2e5;padding:10px;line-height:1.45}.atis-box strong,.runway-notams strong,.runway-notam-list b{color:var(--ink);margin-bottom:5px;display:block}.muted-box{background:#f8fafc;border-color:#d8dee6}.runway-card-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.runway-option{gap:6px;display:grid;box-shadow:inset 4px 0 #94a3b8}.runway-option>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.runway-option span{color:var(--blue);background:#eef6ff;border:1px solid #9bb7d1;padding:3px 5px;font-size:11px;font-weight:800}.runway-option small{color:var(--muted);font-weight:800}.runway-option.ok{box-shadow:inset 4px 0 0 var(--green)}.runway-option.caution{box-shadow:inset 4px 0 0 var(--amber)}.runway-option.exceeds{box-shadow:inset 4px 0 0 var(--red);background:#fff7f6}.runway-notam-list{border-top:1px solid #e6ebf1;padding-top:8px}.runway-notam-list p{color:var(--muted);line-height:1.4}.runway-notam-list p+p{margin-top:5px}.runway-more{justify-self:start}.runway-notams{border-top:1px solid #e6ebf1;padding-top:10px}.runway-notams p{color:var(--muted);line-height:1.4}.runway-notams p+p{margin-top:6px}.pirep-card small{color:var(--muted);margin-top:8px;font-weight:800;display:block}@media (width<=980px){.briefing-header,.briefing-grid{grid-template-columns:1fr;display:grid}.header-actions{justify-content:start}}@media (width<=640px){.briefing-shell{padding:8px}.header-actions,.panel-title,.flight-card>div:first-child,.airport-heading{justify-content:stretch;display:grid}.flight-card dl{grid-template-columns:1fr;gap:3px}.airport-grid,.notam-grid,.pirep-grid,.runway-airport-grid,.runway-card-grid,.runway-picker-form{grid-template-columns:1fr}}
