:root{color:#2a2b2e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f5f6fa;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #2765c4}.checkouts-page{min-width:0}.checkout-filters{flex-wrap:wrap;align-items:end;gap:12px;margin-top:1.25rem;display:flex}.checkout-filters label{flex:220px;gap:5px;min-width:0;display:grid}.checkout-filters input,.checkout-filters select{box-sizing:border-box;width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px}.checkout-table th button{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:4px 0}.checkout-table-scroll{margin-top:1.25rem;overflow-x:auto}.checkout-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.checkout-table th,.checkout-table td{border-bottom:1px solid var(--border,#dce3eb);padding:8px 10px}.checkout-table th{background:#f4f6f8;font-weight:600}.checkout-table td:first-child,.checkout-table td:last-child{white-space:nowrap}.checkout-table .secondary-button{padding:5px 10px;font-size:13px}.checkout-table tr:has([aria-expanded=true]){background:#eef5ff}.checkout-records{gap:1rem;margin-top:1.25rem;display:grid}.checkout-record{border:1px solid var(--border,#dce3eb);border-radius:10px;min-width:0;padding:1rem}.checkout-record h3{margin-top:0}.checkout-record-heading{align-items:center;gap:18px;display:flex}.checkout-record-heading>div{overflow-wrap:anywhere;min-width:0}.checkout-record-heading p{margin-bottom:0}.checkout-clearance-medal{object-fit:contain;flex:none;width:88px;height:88px}@media (width<=700px){.checkout-record-heading{gap:12px}.checkout-clearance-medal{width:64px;height:64px}}.checkout-assessment{white-space:pre-wrap;overflow-wrap:anywhere}.checkout-actions{flex-wrap:wrap;gap:.65rem;margin-top:.75rem;display:flex}.checkout-form{margin-top:1.25rem}.checkout-form select,.checkout-form textarea,.checkout-record textarea{width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:.65rem}.documents-page{gap:16px;display:grid}.documents-tabs,.documents-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.documents-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.documents-list h2{margin-top:0}.documents-list p{overflow-wrap:anywhere}.document-description{white-space:pre-wrap}.document-form fieldset{border:0;gap:14px;min-width:0;padding:0;display:grid}.document-form label{gap:6px;display:grid}.document-form input,.document-form textarea,.document-form select{box-sizing:border-box;width:100%;min-width:0;font:inherit;border:1px solid #cbd5e1;border-radius:6px;padding:10px}.document-form textarea{resize:vertical;min-height:80px}.logbook-page{min-width:0}.logbook-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:16px;display:flex}.logbook-toolbar label{flex:0 320px;align-content:start;gap:6px;font-size:14px;font-weight:600;display:grid}.logbook-toolbar select{font:inherit;color:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:10px 12px}.logbook-counter{background:#eef5ff;border:1px solid #c9dcf5;border-radius:10px;gap:2px;min-width:220px;padding:10px 16px;display:grid}.logbook-counter span{color:#44546a;font-size:13px}.logbook-counter strong{font-variant-numeric:tabular-nums;color:#1f4f8f;font-size:26px}.logbook-counter small{color:#5a6270}.logbook-counter.is-low{background:#fff4e5;border-color:#f2c38b}.logbook-counter.is-low strong{color:#b54708}.logbook-notice{color:#067647;background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;margin:16px 0 0;padding:10px 12px}.logbook-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.logbook-filters{flex-wrap:wrap;align-items:end;gap:12px;margin-top:20px;display:flex}.logbook-filters label{gap:6px;min-width:0;font-size:14px;font-weight:600;display:grid}.logbook-filters input,.logbook-filters select{box-sizing:border-box;max-width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:10px 12px}.logbook-form{background:#fafbfc;border:1px solid #dce3eb;border-radius:10px;margin-top:20px;padding:16px}.logbook-form h3{margin:0}.logbook-form select,.logbook-form textarea{width:100%;min-width:0;font:inherit;color:#242424;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:10px 12px}.logbook-form small{font-weight:400}.logbook-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.logbook-form fieldset.logbook-crew,.logbook-form fieldset.logbook-times{border:1px solid #e3e7ed;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:12px}.logbook-form fieldset.logbook-crew{grid-template-columns:2fr 1fr}.logbook-form legend{padding:0 4px;font-size:14px;font-weight:700}.logbook-computed{color:#44546a;grid-column:1/-1;margin:0;font-size:14px}.logbook-computed strong{font-variant-numeric:tabular-nums;color:#242424}.logbook-form .logbook-landings input{max-width:120px}.logbook-table-scroll{margin-top:20px;overflow-x:auto}.logbook-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.logbook-table caption{text-align:left;padding-bottom:8px;font-weight:600}.logbook-table th,.logbook-table td{vertical-align:top;border:1px solid #dce3eb;padding:6px 8px}.logbook-table th{white-space:nowrap;background:#f4f6f8;font-weight:600}.logbook-table thead th[colspan]{text-align:center}.logbook-table td{white-space:nowrap}.logbook-pair{grid-template-rows:1fr 1fr;min-height:2.6em;display:grid}.logbook-pair>span+span{border-top:1px dashed #dce3eb}.logbook-number{text-align:right;font-variant-numeric:tabular-nums}.logbook-number.is-overdue{color:#b42318;font-weight:700}.logbook-settlement{min-width:150px;max-width:220px;white-space:normal!important}.logbook-settlement>span{margin-top:6px;display:block}.logbook-status{color:#1f4f8f;background:#eef5ff;border-radius:6px;padding:3px 7px;display:inline-block}.logbook-status.is-locked{color:#067647;background:#ecfdf3}.logbook-card-debit{color:#175cd3;font-size:14px}.logbook-remarks{overflow-wrap:anywhere;min-width:160px;max-width:280px;white-space:pre-wrap!important}.logbook-row-actions{gap:6px;display:flex}.logbook-table .secondary-button{padding:4px 10px;font-size:13px}.logbook-table tr.is-editing{background:#eef5ff}.logbook-maintenance-row{background:#f3f8ec}.logbook-maintenance-row td{vertical-align:middle}.logbook-maintenance-row small{color:#5a6270}@media (width<=600px){.logbook-filters label{flex:100%}.logbook-form fieldset.logbook-crew{grid-template-columns:1fr}.logbook-counter{flex:100%}}.brand{white-space:nowrap;align-items:center;gap:16px;font-size:20px;font-weight:700;display:flex}.brand-logo{flex-shrink:0;width:84px;height:auto;display:block}.muted,.page-heading p,.sidebar-heading p{color:#707277}.primary-button{color:#fff;background:#3474cb;border:0;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:12px 18px;font-weight:600;display:flex}.primary-button:hover:not(:disabled){background:#2862af}.outline-button{color:#286fc8;background:#fff;border:1px solid #aacafa;border-radius:12px;padding:5px 10px;font-size:12px;font-weight:600}.outline-button:hover:not(:disabled){background:#f0f6ff}.error{color:#a52d24;background:#fff1f0;border:1px solid #edbbb5;border-radius:8px;margin-bottom:16px;padding:12px}.text-link{color:#286fc8;font-weight:600}.session-timeout-overlay{z-index:1000;background:#0f19288f;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.session-timeout-dialog{box-sizing:border-box;background:#fff;border:1px solid #e3e7ed;border-radius:14px;width:min(460px,100%);padding:26px;box-shadow:0 18px 56px #0000003d}.session-timeout-dialog h2{margin:0 0 12px;font-size:21px}.session-timeout-dialog p{line-height:1.55}.session-timeout-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.session-timeout-actions .primary-button{flex:1}.session-timeout-error{color:#8f211b;background:#fff1f0;border:1px solid #edbbb5;border-radius:8px;padding:12px}.session-timeout-notice{color:#27476f;background:#f0f6ff;border:1px solid #c5d5eb;border-radius:8px;margin-bottom:16px;padding:12px}.session-timeout-error{z-index:1001;max-width:min(440px,100vw - 64px);position:fixed;bottom:16px;right:16px;box-shadow:0 4px 16px #00000026}.profile-page{gap:18px;max-width:800px;display:grid}.profile-page h2{font-size:18px}.profile-page .muted{margin-top:12px;font-size:13px}.profile-form{gap:16px;margin-top:20px;display:grid}.profile-form fieldset{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.profile-form label{gap:6px;font-size:14px;font-weight:600;display:grid}.profile-form input{width:100%;min-width:0;font:inherit;color:#242424;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:10px 12px}.profile-form .primary-button{justify-self:start}.profile-success{color:#176534;background:#edf9f1;border:1px solid #a7d7b6;border-radius:8px;padding:12px}.my-lessons,.safety-page{gap:18px;max-width:1100px;display:grid}.safety-page .my-lesson-heading>div{overflow-wrap:anywhere;min-width:0;max-width:100%}.safety-page h2,.safety-page h3,.safety-page li{overflow-wrap:anywhere}.safety-form fieldset{border:0;gap:14px;min-width:0;margin:16px 0;padding:0;display:grid}.safety-form label{gap:6px;min-width:0;font-size:14px;font-weight:600;display:grid}.safety-form input,.safety-form select,.safety-form textarea{width:100%;min-width:0;color:inherit;font:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:9px 10px}.safety-form textarea{resize:vertical}.safety-buttons{flex-wrap:wrap;gap:10px;display:flex}.safety-buttons a{text-decoration:none}.safety-details dd,.safety-entry p,.safety-history p{white-space:pre-wrap;overflow-wrap:anywhere}.safety-entry{background:#f7f8fa;border-radius:8px;margin:14px 0;padding:14px}.safety-history{padding-left:22px}.my-lessons h2{font-size:18px}.my-lessons h3{margin:18px 0 10px;font-size:15px}.my-lessons-filters{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.my-lessons-filters label{gap:6px;min-width:0;font-size:14px;font-weight:600;display:grid}.my-lessons-filters input,.my-lessons-filters select{color:inherit;font:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;min-width:0;max-width:100%;padding:8px}.my-lessons-list{margin:16px 0;padding:0;list-style:none}.my-lessons-list>li{border-bottom:1px solid #eceef2;padding:14px 0;font-size:14px}.my-lesson-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.my-lesson-details{min-width:0;margin-top:16px}.my-lessons-list a{text-decoration:none}.my-lessons-pagination,.signing-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.my-lessons-pagination{margin-top:16px;font-size:13px}.signing-version{gap:6px;margin:18px 0;font-weight:600;display:grid}.signing-version select{color:inherit;font:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;max-width:100%;padding:8px}.signing-details dd,.signing-assessments p{white-space:pre-wrap}.signing-assessments{gap:10px;padding:0;list-style:none;display:grid}.signing-assessments li{background:#f7f8fa;border-radius:8px;padding:12px;font-size:13px}.signature-list{gap:12px;padding:0;font-size:14px;list-style:none;display:grid}.signing-notice{background:#fff7df;border:1px solid #e6cc84;border-radius:8px;margin:12px 0;padding:12px;font-size:13px}.safety-page>.signing-notice{font-size:max(15px,1rem)}.profile-form .signing-confirm{align-items:flex-start;gap:10px;display:flex}.profile-form .signing-confirm input{flex:none;width:18px;height:18px;margin-top:2px}.lesson-registration{gap:18px;max-width:1100px;display:grid}.registration-blocks{min-width:0}.lesson-registration .registration-block{align-items:flex-start;gap:10px;margin:12px 0;display:flex}.lesson-registration .registration-block input{flex:none;width:18px;height:18px;margin-top:2px}.registration-block span{overflow-wrap:anywhere;min-width:0}.registration-block small{margin-top:5px;display:block}.lesson-registration fieldset{min-width:0;margin:0}.lesson-registration legend{padding:0 8px;font-size:16px;font-weight:700}.registration-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.lesson-registration label{gap:6px;min-width:0;font-size:13px;font-weight:600;display:grid}.lesson-registration input,.lesson-registration select,.lesson-registration textarea{width:100%;min-width:0;font:inherit;color:#242424;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:8px 10px}.lesson-registration select:disabled{background:#f1f3f6}.lesson-registration textarea{resize:vertical}.lesson-registration small{color:#707277;font-weight:400}.registration-wide{grid-column:1/-1}.registration-assessments details{border-bottom:1px solid #e4e5e8;padding:12px 0}.registration-assessments summary{cursor:pointer;font-weight:600}.registration-item{background:#f7f8fa;border-radius:8px;margin-top:14px;padding:12px}.registration-item h3{margin-bottom:10px;font-size:13px}.registration-item-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:10px;display:flex}.registration-item-controls label{align-items:center;gap:6px;display:flex}.registration-item-controls input[type=checkbox],.registration-item-controls input[type=radio]{flex:none;width:18px;height:18px;padding:0}.registration-item-controls select{flex:1}.registration-success{color:#176534;background:#edf9f1;border:1px solid #a7d7b6;border-radius:8px;padding:12px}@media (width>=701px){.lesson-registration label,.lesson-registration input,.lesson-registration select,.lesson-registration textarea,.lesson-registration small,.registration-item h3,.my-lessons label,.my-lessons input,.my-lessons select,.my-lessons textarea,.my-lessons small,.my-lessons .profile-form .muted,.safety-page label,.safety-page input,.safety-page select,.safety-page textarea,.safety-page small{font-size:15px}}@media (width<=700px){.registration-fields{grid-template-columns:minmax(0,1fr)}.registration-item-controls label:last-child{width:100%}.dashboard-stats-grid{grid-template-columns:minmax(0,1fr)}}.login-page{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login-story,.sidebar{background:radial-gradient(at 83% 10%,#1d3c73 0,#0000 42%),radial-gradient(at 0 100%,#103a3d 0,#0000 42%),#0d1b36}.login-story{color:#f7f9ff;flex-direction:column;min-height:100dvh;padding:32px;display:flex}.login-back-link{color:#b6c6e2;align-self:flex-start;align-items:center;gap:8px;font-size:15px;text-decoration:none;display:inline-flex}.login-back-link:hover{color:#fff;text-decoration:underline}.login-back-link svg{width:16px;height:16px}.login-story-main{width:100%;max-width:520px;margin:auto 0}.login-plane{color:#6fbd50;margin-bottom:28px;display:block}.login-plane svg{width:42px;height:42px;transform:rotate(-20deg)}.login-eyebrow{color:#72bf54;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:10px;font-size:15px;font-weight:700}.login-story h1{color:#fff;letter-spacing:-1.8px;margin-bottom:20px;font-size:clamp(42px,5.5vw,64px);line-height:1.08}.login-intro{color:#c6d1e2;max-width:420px;font-size:15px;line-height:1.65}.login-story-footer{color:#94afd5;font-size:15px}.login-panel{background:#f7f9fb;place-items:center;min-width:0;padding:40px 24px;display:grid}.login-panel-content{text-align:center;width:100%;max-width:360px}.login-logo{border-radius:9px;width:112px;max-width:100%;height:auto;margin:0 auto 24px;display:block}.login-panel h2{color:#1e355b;letter-spacing:-.45px;margin-bottom:6px;font-size:19px}.login-subtitle{color:#66758d;margin:0 auto 20px;font-size:15px;line-height:1.5}.login-card{text-align:left;background:#fff;border:1px solid #e7e9ed;border-radius:14px;width:100%;padding:22px 24px 20px;box-shadow:0 8px 24px #2434500c}.login-card form{gap:7px;display:grid}.login-card label{margin-top:1px;font-size:15px;font-weight:600}.login-card input{color:#2a2b2e;background:#fff;border:1px solid #dfe2e7;border-radius:5px;width:100%;min-width:0;padding:8px 10px;font-size:15px;display:block}.login-card input::placeholder{color:#858890}.login-card .primary-button{background:#2f56a5;border-radius:5px;width:100%;min-height:36px;margin-top:10px;font-size:15px;font-weight:500}.login-card .primary-button:hover:not(:disabled){background:#24468b}.login-help{color:#707277;border-top:1px solid #eceef2;margin-top:16px;padding-top:14px;font-size:15px;line-height:1.6}.session-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.session-screen .content-card{max-width:540px}.session-screen h1{margin-bottom:16px;font-size:22px}.workspace{grid-template-rows:56px 1fr;grid-template-columns:223px minmax(0,1fr);min-height:100dvh;transition:grid-template-columns .2s;display:grid}.topbar{z-index:10;background:#fff;border-bottom:1px solid #e4e5e8;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 15px;display:flex;position:sticky;top:0}.topbar-brand{align-items:center;display:flex}.menu-toggle{color:#64666b;background:0 0;border:0;padding:8px;display:none}.sidebar{color:#f7f9ff;border-right:1px solid #ffffff26;flex-direction:column;height:calc(100dvh - 56px);display:flex;position:sticky;top:56px;overflow-y:auto}.sidebar-heading{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:8px;padding:15px 10px 13px 14px;display:flex}.sidebar-heading-text{white-space:nowrap;min-width:0}.sidebar-collapse{color:#b6c6e2;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.sidebar-collapse:hover{color:#fff;background:#ffffff14}.sidebar-collapse svg{width:18px;height:18px}.sidebar-label{white-space:nowrap}@media (width>=701px){.workspace.is-sidebar-collapsed{grid-template-columns:64px minmax(0,1fr)}.sidebar.is-collapsed{overflow-x:hidden}.sidebar.is-collapsed .sidebar-heading{justify-content:center;padding:15px 0 13px}.sidebar.is-collapsed .sidebar-heading-text{display:none}.sidebar.is-collapsed nav a,.sidebar.is-collapsed .sidebar-footer button{justify-content:center;gap:0;padding-left:0;padding-right:0}.sidebar.is-collapsed .sidebar-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.sidebar-heading h2{font-size:18px}.sidebar-heading p{color:#b6c6e2;font-size:12px}.sidebar nav{flex-direction:column;gap:3px;padding:7px;display:flex}.sidebar nav a{border-radius:24px;align-items:center;gap:16px;min-height:42px;padding:12px 15px;text-decoration:none;display:flex}.sidebar nav svg,.sidebar-footer svg{color:#b6c6e2;flex-shrink:0}.sidebar nav a:hover{background:#ffffff14}.sidebar nav a[aria-current=page]{color:#fff;background:#ffffff26}.sidebar nav a[aria-current=page] svg{color:#72bf54}.sidebar a:focus-visible,.sidebar button:focus-visible{outline-color:#b6c6e2}.sidebar-footer{border-top:1px solid #ffffff26;margin-top:auto;padding:9px 7px}.sidebar-footer button{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-radius:24px;align-items:center;gap:16px;padding:10px 15px;display:flex}.sidebar-footer button:hover:not(:disabled){background:#ffffff14}.main-content{min-width:0;padding:18px 20px 40px}.page-heading{margin-bottom:12px}.page-heading h1{letter-spacing:-.4px;font-size:23px;font-weight:750;line-height:1.4}.page-heading p{margin-top:1px;font-size:13px}.news-panel,.content-card{background:#fff;border:1px solid #e9e9ed;border-radius:14px;padding:20px;box-shadow:0 2px 1px #00000020}.news-card{border:1px solid #f0f0f2;border-radius:36px;padding:20px 18px;box-shadow:0 2px 1px #00000028}.news-heading{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:5px;display:flex}.news-heading h2{font-size:16px;font-weight:750}.badge{color:#63676d;background:#f1f3f6;border-radius:12px;padding:2px 8px;font-size:11px}.news-card p{font-size:15px}.news-card hr{border:0;border-top:1px solid #ececee;margin:9px 0}.news-card h3{margin-bottom:2px;font-size:13px;font-weight:600}.news-section{margin-top:20px}.news-signoff{margin-top:22px}.news-list{gap:12px;margin-top:22px;display:grid}.news-list-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.news-list-heading h2{font-size:16px;font-weight:750}.news-list-heading a{text-decoration:none}.dashboard-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;margin-top:22px;display:grid}.dashboard-stats-grid>.news-card{min-width:0}.hours-card .news-list-heading{margin-bottom:12px}.hours-card .news-list-heading p{margin-top:4px}.dashboard-counts-card h2{font-size:16px;font-weight:750}.dashboard-counts{gap:14px;margin:22px 0 0;display:grid}.dashboard-counts>div{background:#f7f8fa;border-radius:10px;padding:14px}.dashboard-counts dt{color:#555a63;font-size:13px}.dashboard-counts dd{color:#172b4d;margin:4px 0 0;font-size:30px;font-weight:750;line-height:1.15}.dashboard-counts-card>.muted{margin-top:4px}.traffic-page{gap:12px;display:grid}.traffic-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.traffic-toggle{align-items:center;gap:8px;font-weight:600;display:inline-flex}.traffic-map{z-index:0;border:1px solid #e3e5e9;border-radius:12px;height:min(68vh,640px);min-height:360px;overflow:hidden}.traffic-marker{--plane:#3474cb;background:0 0;border:0}.traffic-marker svg{fill:var(--plane);stroke:#fff;stroke-width:1.6px;paint-order:stroke;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #0006);transition:transform .3s;display:block}.traffic-marker.is-club{--plane:#d13438}.traffic-marker.is-ground{--plane:#8a8d93}.leaflet-tooltip.traffic-airfield-label{box-shadow:none;color:#1f2a37;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;background:0 0;border:0;padding:0 0 0 2px;font-weight:700}.leaflet-tooltip.traffic-airfield-label:before{display:none}.traffic-ring-label{color:#2a5ea8;white-space:nowrap;pointer-events:none;background:#fffc;border-radius:4px;padding:0 4px;font-size:.7rem;font-weight:600;transform:translate(-50%,-50%)}.traffic-popup strong{margin-bottom:6px;font-size:14px;display:block}.traffic-popup dl{grid-template-columns:auto auto;gap:2px 12px;margin:0;display:grid}.traffic-popup dt{color:#707277}.traffic-popup dd{margin:0;font-weight:600}.traffic-legend{color:#555a63;flex-wrap:wrap;gap:8px 16px;font-size:12px;display:flex}.traffic-legend span{align-items:center;gap:6px;display:inline-flex}.traffic-key{background:#3474cb;border-radius:50%;width:12px;height:12px}.traffic-key.is-club{background:#d13438}.traffic-key.is-ground{background:#8a8d93}.traffic-note{font-size:12px}.traffic-table-wrap{overflow-x:auto}.traffic-table{border-collapse:collapse;width:100%;font-size:14px}.traffic-table caption{text-align:left;padding-bottom:8px;font-weight:700}.traffic-table th,.traffic-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #ececee;padding:7px 10px}.traffic-table thead th{color:#555a63;font-size:12px;font-weight:600}.traffic-table tbody th{font-weight:600}.traffic-table tbody th .badge{color:#a4262c;background:#fdf3f4;margin-left:8px}.traffic-table tr.is-club{background:snow}.hours-legend{color:#555a63;flex-wrap:wrap;gap:8px 16px;margin:8px 0;font-size:12px;display:flex}.hours-legend span{align-items:center;gap:6px;display:inline-flex}.hours-key{background:#2563eb;border-radius:3px;width:12px;height:12px}.hours-key.is-rental{background:#0e9f6e}.hours-average-key{border-top:2px dashed #2563eb;width:18px}.hours-average-key.is-rental{border-color:#0e9f6e}.hours-chart-scroll{overflow-x:auto}.hours-chart{width:100%;min-width:0;height:auto;display:block;overflow:visible}.hours-grid{stroke:#e7e9ee;stroke-width:1px}.hours-axis-label{fill:#707780;font-size:11px}.hours-bar.is-lesson{fill:#2563eb}.hours-bar.is-rental{fill:#0e9f6e}.hours-average-line{stroke-width:1.5px;stroke-dasharray:5 4;opacity:.9}.hours-average-line.is-lesson{stroke:#1d4ed8}.hours-average-line.is-rental{stroke:#087a55}.hours-average-summary{color:#555a63;margin-top:4px;font-size:13px!important}.news-item{--news-accent:#2563eb;border-left:5px solid var(--news-accent);border-radius:14px}.news-item.is-update{--news-accent:#0e9f6e}.news-item.is-important{--news-accent:#d13438;background:snow}.news-item h3{margin:0;font-size:15px;font-weight:700}.news-kind{color:color-mix(in srgb, var(--news-accent) 80%, black);background:color-mix(in srgb, var(--news-accent) 12%, white);font-weight:600}.news-pinned{font-weight:600}.news-meta{margin-bottom:6px;font-size:12px}.news-body{white-space:pre-line;overflow-wrap:anywhere}.news-body+.news-body{margin-top:8px}.syllabus-intro{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;font-size:13px;display:flex}.syllabus-intro p{max-width:70ch}.syllabus-intro a{text-decoration:none}.syllabus-toolbar{flex-wrap:wrap;gap:8px;margin:16px 0 12px;display:flex}.syllabus-search{flex:260px}.syllabus-search input{box-sizing:border-box;border:1px solid #d6d8dd;border-radius:6px;width:100%;padding:6px 10px;font-size:14px}.syllabus-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.syllabus-lesson{background:#fff;border:1px solid #e4e5e8;border-left:4px solid #2563eb;border-radius:10px}.syllabus-lesson.is-open{box-shadow:0 2px 6px #0000001a}.syllabus-lesson h2{font-size:inherit;margin:0}.syllabus-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.syllabus-toggle:hover{background:#f6f8fb}.syllabus-number{color:#1d4ed8;background:#e8effd;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:grid}.syllabus-title{flex:1;font-size:14px;font-weight:650}.syllabus-toggle .badge{flex:none}.syllabus-chevron{color:#63676d;flex:none;font-size:20px;line-height:1;transition:transform .15s}.syllabus-lesson.is-open .syllabus-chevron{transform:rotate(90deg)}.syllabus-panel{gap:14px;padding:4px 18px 18px 54px;font-size:13px;display:grid}.syllabus-section h3{text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;margin:0 0 4px;font-size:12px;font-weight:700}.syllabus-section p{white-space:pre-line;overflow-wrap:anywhere;margin:0}.syllabus-items{gap:2px;margin:0;padding:0;list-style:none;display:grid}.syllabus-items li{border-radius:6px;gap:10px;padding:5px 8px;display:flex}.syllabus-items li:nth-child(odd){background:#f7f8fa}.syllabus-items li.is-match{background:#fff4c2}.syllabus-code{font-variant-numeric:tabular-nums;color:#63676d;flex:none;min-width:34px;font-weight:600}.content-card h2{margin-bottom:10px;font-size:18px}.empty-state{text-align:center;padding:48px 24px}.empty-icon{color:#787f8b;background:#f1f3f7;border-radius:16px;place-items:center;width:56px;height:56px;margin:0 auto 18px;display:grid}.empty-icon svg{width:26px;height:26px}.empty-state p{color:#707277;max-width:470px;margin:0 auto 20px}.profile-details{margin:20px 0}.profile-details>div{border-bottom:1px solid #eceef2;grid-template-columns:160px 1fr;gap:16px;padding:12px 0;display:grid}.profile-details dt{color:#707277}.profile-details dd{overflow-wrap:anywhere;margin:0}.own-lesson-card{border-top:1px solid #eceef2;padding:10px 0}.own-lesson-card summary{cursor:pointer;font-weight:600}.own-lesson-card>h4{margin:16px 0 8px}.own-lesson-card-movements{overflow-x:auto}.own-lesson-card-movements table{border-collapse:collapse;width:100%;font-size:14px}.own-lesson-card-movements th,.own-lesson-card-movements td{text-align:left;vertical-align:top;border-bottom:1px solid #eceef2;padding:8px}.skip-link{z-index:20;color:#286fc8;background:#fff;padding:10px;position:fixed;top:-100px;left:12px}.skip-link:focus{top:8px}.planning{grid-template-rows:auto minmax(0,1fr);grid-template-columns:236px minmax(0,1fr);gap:12px 16px;height:calc(100vh - 150px);min-height:520px;display:grid}.planning-toolbar{background:#fff;border:1px solid #e9e9ed;border-radius:10px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;padding:8px 12px;display:flex}.planning-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.planning-toolbar-actions .week-badge{margin-left:0}.toolbar-button{color:inherit;background:#fff;border:1px solid #d6d8dd;border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-weight:600;display:flex}.toolbar-button:hover,.icon-button:hover{background:#f1f3f6}.toolbar-button svg{width:18px;height:18px}.toolbar-arrows{gap:2px;display:flex}.icon-button{color:#424549;background:0 0;border:0;border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.icon-button svg{width:18px;height:18px}.planning-range{font-size:17px;font-weight:600}.week-badge{color:#0f6cbd;background:#ebf3fc;border-radius:12px;margin-left:auto;padding:3px 10px;font-size:12px;font-weight:600}.mini-calendar{background:#fff;border:1px solid #e9e9ed;border-radius:10px;align-self:start;padding:10px}.mini-calendar-header{align-items:center;margin-bottom:6px;display:flex}.mini-calendar-header h2{flex:1;padding-left:4px;font-size:14px;font-weight:600}.mini-calendar-row{border-radius:4px;grid-template-columns:repeat(7,1fr);display:grid}.mini-calendar-row.is-selected-week{background:#cfe4fa}.mini-calendar-weekdays span{text-align:center;padding:4px 0;font-size:12px;font-weight:600}.mini-day{aspect-ratio:1;color:#242424;background:0 0;border:0;border-radius:50%;margin:1px;font-size:12px}.mini-day:hover{background:#e6effa}.mini-day.is-outside{color:#8a8d93}.mini-day.is-selected{outline-offset:-1px;outline:1px solid #0f6cbd;font-weight:700}.mini-day.is-today{color:#fff;background:#0f6cbd;font-weight:700}.week-view{background:#fff;border:1px solid #e9e9ed;border-radius:10px;overflow:auto}.week-grid{--time-col:56px}.week-header,.week-body{display:grid}.week-header{z-index:3;background:#fff;border-bottom:1px solid #d6d8dd;position:sticky;top:0}.week-corner{color:#616161;text-align:right;flex-direction:column;justify-content:space-between;padding:8px 4px 6px;font-size:11px;display:flex}.week-day-header{border-left:1px solid #e4e5e8}.week-day-label{color:#424242;padding:8px 10px 6px;font-size:13px}.week-day-label strong{font-size:18px;font-weight:600}.week-day-header.is-today .week-day-label{color:#0f6cbd;box-shadow:inset 0 3px #0f6cbd}.view-switch{border:1px solid #d6d8dd;border-radius:6px;display:flex;overflow:hidden}.view-switch button{color:#424549;background:#fff;border:0;padding:6px 14px;font-weight:600}.view-switch button+button{border-left:1px solid #d6d8dd}.view-switch button:hover{background:#f1f3f6}.view-switch button[aria-pressed=true]{color:#0f6cbd;background:#ebf3fc}.day-link{color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;padding:0}.day-link:hover{color:#0f6cbd;text-decoration:underline}.month-view{background:#fff;border:1px solid #e9e9ed;border-radius:10px;min-height:0;overflow:auto}.month-loading{color:#616161;padding:12px}.month-grid{grid-template-columns:repeat(7,minmax(110px,1fr));display:grid}.month-weekday{z-index:1;text-align:center;background:#fff;border-bottom:1px solid #d6d8dd;padding:10px;font-weight:600;position:sticky;top:0}.month-day{border-bottom:1px solid #e4e5e8;border-right:1px solid #e4e5e8;min-width:0;min-height:130px;padding:6px}.month-day.is-outside{background:#f5f6f8}.month-day.is-today{box-shadow:inset 0 3px #0f6cbd}.month-day-link{color:#424549;background:0 0;border:0;border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:6px;font-weight:600;display:grid}.month-day-link:hover{color:#0f6cbd;background:#ebf3fc}.month-day.is-outside .month-day-link{color:#707277}.month-day.is-today .month-day-link{color:#fff;background:#0f6cbd}.month-events{gap:5px;margin:0;padding:0;list-style:none;display:grid}.month-events li{min-width:0}.month-event{border:0;border-left:3px solid var(--event-accent,#0f6cbd);background:var(--event-bg,#dce9f9);width:100%;color:var(--event-text,#0b3f72);text-align:left;border-radius:4px;flex-direction:column;align-items:flex-start;gap:2px;padding:6px;font-size:13px;display:flex}.month-event>span,.month-event>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.month-event-time{font-size:12px}.month-event.is-open{background:repeating-linear-gradient(135deg, var(--event-bg) 0 8px, #fff 8px 14px);outline:1px dashed var(--event-accent);outline-offset:-1px}.month-event.is-block{color:#3b3b3b;background:repeating-linear-gradient(135deg,#eeeff1 0 6px,#e2e4e8 6px 12px);border-left-color:#8a8d93}.month-event.is-draft{outline-offset:-1px;outline:1px dashed #0f6cbd}.month-event.is-past{opacity:.55}.month-event:hover,.month-event:focus-visible{filter:brightness(.97);opacity:1}.aircraft-header{border-top:4px solid #0000;flex-direction:column;gap:1px;margin:-8px -10px 0;padding:6px 10px 0;display:flex}.planning-side{flex-direction:column;align-self:start;gap:12px;min-width:0;display:flex}.planning-side>.mini-calendar{align-self:stretch}.aircraft-legend{background:#fff;border:1px solid #e9e9ed;border-radius:10px;padding:10px 14px}.aircraft-legend h2{margin-bottom:6px;font-size:14px;font-weight:600}.aircraft-legend ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.aircraft-legend li{align-items:center;gap:8px;font-size:13px;display:flex}.aircraft-legend .legend-toggle>span:last-child:not(.activity-pill){color:#707277;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.legend-heading{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.legend-heading h2{margin-bottom:0}.legend-reset{white-space:nowrap;font:inherit;color:#0f6cbd;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:12px}.legend-reset:hover{text-decoration:underline}.legend-toggle{width:100%;min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;margin:-3px -6px;padding:3px 6px;transition:opacity .15s,filter .15s,background-color .15s;display:flex}.legend-toggle:hover{background:#f3f4f6}.legend-toggle:focus-visible{outline-offset:1px;outline:2px solid #0f6cbd}.legend-toggle[aria-pressed=false]{filter:grayscale();opacity:.5}.legend-toggle[aria-pressed=false] strong{-webkit-text-decoration:line-through #9a9ca1;text-decoration:line-through #9a9ca1}.activity-legend .legend-toggle{width:auto;max-width:100%}.activity-legend .legend-toggle[aria-pressed=false] .activity-pill{text-decoration:line-through}.aircraft-swatch{box-sizing:border-box;border-left:4px solid;border-radius:3px;flex:none;width:12px;height:12px}.aircraft-header strong{color:#242424;font-size:16px;font-weight:700}.aircraft-header span{font-size:12px}.aircraft-header small{color:#707277;font-size:11px}.planning-main{grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;display:grid}.planning-main>:only-child{grid-row:1/-1}.planning-notices{gap:8px;min-width:0;display:grid}.planning-notices .reservation-popover-error{overflow-wrap:anywhere;margin:0}.planning-notice{color:#616161;background:#fff;border:1px solid #e9e9ed;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:6px 12px;font-size:13px;display:flex}.planning-notice.is-error{color:#a4262c;background:#fdf3f4;border-color:#f1bbbc}.planning-event{z-index:1;box-sizing:border-box;border:1px solid #fff;border-left:4px solid;border-radius:4px;flex-direction:column;padding:3px 6px;font-size:11px;line-height:1.3;display:flex;position:absolute;overflow:hidden}.planning-event strong{font-size:12px}.activity-pill{--activity-color:#6b7280;box-sizing:border-box;background:color-mix(in srgb, var(--activity-color) 14%, white);max-width:100%;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--activity-color) 38%, white);color:color-mix(in srgb, var(--activity-color) 78%, black);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-self:flex-start;align-items:center;gap:4px;padding:0 7px 0 5px;font-size:10px;font-weight:700;line-height:16px;display:inline-flex;overflow:hidden}.activity-pill:before{content:"";background:var(--activity-color);width:7px;height:7px;box-shadow:0 0 0 2px color-mix(in srgb, var(--activity-color) 25%, transparent);border-radius:50%;flex:none}.planning-event .activity-pill{margin-bottom:1px;display:block}.planning-event .activity-pill:before{vertical-align:0;margin-right:4px;display:inline-block}.reservation-popover-details .activity-pill{padding:0 9px 0 7px;font-size:12px;line-height:20px}.activity-legend li{min-width:0}.activity-legend .activity-pill{font-size:11px;line-height:18px}.planning-event span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.planning-event{background:var(--event-bg,#dce9f9);border-left-color:var(--event-accent,#0f6cbd);color:var(--event-text,#0b3f72)}.planning-event.is-block{color:#3b3b3b;background:repeating-linear-gradient(135deg,#eeeff1 0 6px,#e2e4e8 6px 12px)}.planning-event.is-editable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.planning-event.is-editable:focus-visible{outline-offset:1px;z-index:2;outline:2px solid #0f6cbd}.planning-event.is-dragging{z-index:2;cursor:grabbing;opacity:.92;box-shadow:0 6px 16px #0000002e}.week-view.is-dragging,.week-view.is-dragging *{cursor:grabbing}.planning-event-handle{cursor:ns-resize;height:7px;position:absolute;left:0;right:0}.planning-event-handle.is-start{top:-1px}.planning-event-handle.is-end{bottom:-1px}.planning-event.is-editable:hover .planning-event-handle.is-end:after{content:"";opacity:.35;background:currentColor;border-radius:2px;width:24px;height:3px;margin-left:-12px;position:absolute;bottom:2px;left:50%}.planning-message{color:#616161;background:#fff;border:1px solid #e9e9ed;border-radius:10px;align-content:start;justify-items:center;gap:12px;padding:32px;display:grid}.week-all-day{border-top:1px solid #e4e5e8;height:26px}.week-times{position:relative}.week-times span{color:#616161;font-size:11px;position:absolute;right:8px;transform:translateY(-50%)}.week-times span:first-child{transform:translateY(2px)}.week-times span:last-child{transform:translateY(calc(-100% - 2px))}.week-day-column{border-left:1px solid #e4e5e8;position:relative}.week-slot{background-image:linear-gradient(90deg,#eceef1 50%,#0000 0);background-position:0;background-repeat:repeat-x;background-size:6px 1px;border-bottom:1px solid #e4e5e8}.week-now{z-index:2;pointer-events:none;background:#c4314b;height:2px;position:absolute;left:-1px;right:0}.week-now:before{content:"";background:#c4314b;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-5px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.planning-event.is-openable{cursor:pointer}.planning-event.is-openable.is-editable{cursor:grab}.reservation-popover{z-index:20;box-sizing:border-box;background:#fff;border-radius:14px;padding:16px 18px 18px;font-size:14px;position:fixed;box-shadow:0 10px 32px #0003,0 0 0 1px #0000000f}.reservation-popover-arrow{background:#fff;width:14px;height:14px;position:absolute;transform:translateY(-50%)rotate(45deg);box-shadow:1px -1px #0000000f}.reservation-popover.is-left .reservation-popover-arrow{right:-7px}.reservation-popover.is-right .reservation-popover-arrow{left:-7px;box-shadow:-1px 1px #0000000f}.reservation-popover-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.reservation-popover-header h2{flex:1;font-size:22px;font-weight:500}.reservation-popover-dot{border-radius:5px;flex:none;width:16px;height:16px}.reservation-popover-details{gap:10px;margin:0;display:grid}.reservation-popover-details>div{grid-template-columns:28px 1fr;align-items:start;display:grid}.reservation-popover-details dt{color:#424549}.reservation-popover-details dt svg{width:18px;height:18px}.reservation-popover-details dd{flex-direction:column;gap:2px;margin:0;display:flex}.reservation-popover-details .is-muted{color:#616161;font-size:13px}.reservation-popover-actions{border-top:1px solid #e4e5e8;flex-wrap:wrap;gap:10px;margin-top:14px;padding-top:14px;display:flex}.reservation-popover-actions .primary-button,.secondary-button,.danger-button{border-radius:18px;padding:8px 16px;font-size:14px;font-weight:600}.secondary-button{color:#0f6cbd;background:#fff;border:1px solid #d6d8dd}.secondary-button:hover:not(:disabled){background:#f1f3f6}.danger-button{color:#fff;background:#c4314b;border:0}.danger-button:hover:not(:disabled){background:#a4262c}.reservation-popover button:disabled{opacity:.6}.reservation-popover-confirm p{margin:14px 0 0}.reservation-popover-note{color:#616161;border-top:1px solid #e4e5e8;margin:14px 0 0;padding-top:12px;font-size:13px}.rental-clearance-notice{color:#684500;overflow-wrap:anywhere;background:#fff8e6;border:1px solid #e0a43b;border-radius:8px;padding:12px;font-size:13px}.rental-clearance-notice p{margin:8px 0}.reservation-popover-error{color:#a4262c;margin:12px 0 0;font-size:13px}.reservation-form{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.reservation-form label{color:#424549;gap:4px;font-size:12px;font-weight:600;display:grid}.reservation-form textarea{resize:vertical;min-height:60px;line-height:1.4}.reservation-popover-notes{white-space:pre-wrap;overflow-wrap:anywhere;color:#424549}.reservation-form input,.reservation-form select,.reservation-form textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;color:#242424;background:#fff;border:1px solid #d6d8dd;border-radius:6px;padding:6px 8px;font-size:14px;font-weight:400}.reservation-form-times{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.reservation-form-times label{min-width:0}.reservation-form-static{gap:4px;margin:0;font-size:14px;display:grid}.reservation-form-static span{color:#424549;font-size:12px;font-weight:600}.reservation-form-aircraft{align-items:center;gap:8px;display:flex}.reservation-form-aircraft select{flex:1;min-width:0}.reservation-popover-dot.is-new{box-sizing:border-box;background:#fff;border:2px dashed #3474cb}.planning-new{border-radius:6px;gap:6px;padding:7px 14px;font-size:14px}.planning-new:disabled{opacity:.5;cursor:not-allowed}.planning-hint{color:#6b4e00;background:#fff4ce;border-radius:6px;margin:0;padding:6px 12px;font-size:13px;font-weight:500}.week-view.is-selectable .week-day-column{cursor:cell}.planning-event.is-draft{z-index:3;border:2px dashed var(--event-accent,#3474cb);color:#0b3f72;pointer-events:auto;cursor:default;background:#3474cb24;box-shadow:0 4px 12px #0000001f}.planning-event.is-open{background:repeating-linear-gradient(135deg, var(--event-bg,#dce9f9) 0 8px, #fff 8px 14px);outline:1px dashed var(--event-accent,#0f6cbd);outline-offset:-1px}.reservation-popover-badge{color:#6b4e00;background:#fff4ce;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.reservation-form-check{align-items:center;gap:8px;font-weight:500;flex-direction:row!important;display:flex!important}.reservation-form-check input{width:auto;margin:0}@media (width<=900px){.planning{grid-template-columns:minmax(0,1fr);height:auto}.mini-calendar{max-width:320px}.week-view{height:70vh}}@media (width<=700px){.workspace{grid-template-rows:56px auto 1fr;grid-template-columns:minmax(0,1fr)}.topbar{grid-column:1;padding:0 10px}.brand{white-space:normal;gap:8px;font-size:15px;line-height:1.2}.brand-logo{width:64px}.brand>span{max-width:125px}.menu-toggle{margin-right:3px;display:flex}.sidebar-collapse{display:none}.sidebar{border-bottom:1px solid #ffffff26;border-right:0;height:auto;display:none;position:static}.sidebar.is-open{display:flex}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sidebar nav a{gap:10px;padding:11px 12px;font-size:13px}.main-content{padding:20px 14px}.news-panel{padding:12px}.news-card{border-radius:22px;padding:18px 14px}.syllabus-toggle{gap:8px;padding:10px}.syllabus-toggle .badge{display:none}.syllabus-panel{padding:4px 12px 14px}.login-page{grid-template-columns:minmax(0,1fr)}.login-story{min-height:300px;padding:20px 24px 22px}.login-story-main{padding:32px 0}.login-plane{margin-bottom:14px}.login-plane svg{width:34px;height:34px}.login-story h1{font-size:38px}.login-panel{min-height:520px;padding:40px 20px}.login-card{padding:22px 20px 18px}.profile-details>div{grid-template-columns:1fr;gap:4px}}.planning.is-phone{flex-direction:column;gap:10px;height:auto;min-height:0;padding-bottom:76px;display:flex}.phone-toolbar{background:#fff;border:1px solid #e9e9ed;border-radius:10px;align-items:center;gap:4px;padding:6px 8px;display:flex}.phone-toolbar .planning-range{font-size:16px}.phone-toolbar .planning-range:first-letter{text-transform:uppercase}.phone-toolbar .week-badge{margin-left:2px}.phone-toolbar .toolbar-button{margin-left:auto;padding:6px 10px}.day-strip{background:#fff;border:1px solid #e9e9ed;border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:6px 4px;display:grid}.day-strip button{color:inherit;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px 0;font-size:11px;display:flex}.day-strip button>span:first-child{color:#707277}.day-strip strong{border-radius:50%;place-items:center;width:34px;height:34px;font-size:16px;font-weight:600;display:grid}.day-strip .is-today strong{color:#0f6cbd;box-shadow:inset 0 0 0 1.5px #0f6cbd}.day-strip button[aria-pressed=true] strong{color:#fff;box-shadow:none;background:#0f6cbd}.day-strip-dots{gap:3px;height:6px;display:flex}.day-strip-dots i{border-radius:50%;width:6px;height:6px}.planning.is-phone .view-switch button{flex:1;padding:8px 14px}.planning.is-phone .planning-hint{text-align:center}.planning.is-phone .week-view{height:68dvh}.agenda{flex-direction:column;gap:8px;display:flex}.agenda-date{padding:2px 2px 0;font-size:15px;font-weight:600}.agenda-date:first-letter{text-transform:uppercase}.agenda-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.agenda-card{border:0;border-left:5px solid var(--event-accent,#0f6cbd);width:100%;color:inherit;font:inherit;text-align:left;background:#fff;border-radius:12px;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:12px 14px;display:grid;box-shadow:0 1px 2px #0000000f,0 0 0 1px #e9e9ed}.agenda-card:active{background:#f6f7f9}.agenda-card.is-open{background:repeating-linear-gradient(135deg, #fff 0 10px, var(--event-bg,#dce9f9) 10px 13px)}.agenda-card.is-block{background:repeating-linear-gradient(135deg,#f6f7f8 0 6px,#eceef1 6px 12px);border-left-color:#8a8d93}.planning-event.is-past,.agenda-card.is-past{opacity:.55}.planning-event.is-past:hover,.planning-event.is-past:focus-visible,.agenda-card.is-past:hover,.agenda-card.is-past:focus-visible{opacity:.8}.agenda-time{color:#707277;flex-direction:column;font-size:13px;display:flex}.agenda-time strong{color:#242424;font-size:16px;font-weight:650}.agenda-body{color:#424549;flex-direction:column;gap:3px;min-width:0;font-size:13px;display:flex}.agenda-body>span:not(.agenda-title){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agenda-title{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.agenda-title strong{color:var(--event-text,#0b3f72);font-size:15px}.agenda-title .activity-pill{padding:0 9px 0 7px;font-size:12px;line-height:20px}.agenda-empty{text-align:center;color:#616161;background:#fff;border:1px dashed #d6d8dd;border-radius:12px;margin:0;padding:28px 16px;font-size:14px;line-height:1.6}.planning-fab{right:18px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:15;color:#fff;background:#3474cb;border:0;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:fixed;box-shadow:0 6px 18px #3474cb73}.planning-fab svg{width:26px;height:26px}.planning-fab:disabled{opacity:.5}.sheet-backdrop{z-index:19;background:#14161a61;animation:.2s ease-out sheet-fade;position:fixed;inset:0}.reservation-popover.is-sheet{overscroll-behavior:contain;max-height:88dvh;padding:10px 18px calc(20px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;animation:.22s ease-out sheet-up;bottom:0;left:0;right:0;overflow-y:auto}.reservation-popover.is-sheet:before{content:"";background:#d6d8dd;border-radius:2px;width:40px;height:4px;margin:0 auto 12px;display:block}.reservation-popover.is-sheet .reservation-popover-actions .primary-button,.reservation-popover.is-sheet .reservation-popover-actions .secondary-button,.reservation-popover.is-sheet .reservation-popover-actions .danger-button{flex:1;padding:11px 16px}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.sheet-backdrop,.reservation-popover.is-sheet{animation:none}.workspace,.traffic-marker svg{transition:none}}@media (width<=640px){input,select,textarea{font-size:16px!important}.main-content{padding:14px 12px 24px}.page-heading{margin-bottom:8px}.page-heading h1{font-size:21px}}.agenda-notes{color:#616161;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-style:italic;overflow:hidden}
