@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";#fmt-av-portal *,#fmt-av-portal *:before,#fmt-av-portal *:after{box-sizing:border-box}#fmt-av-portal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#1a1a2e;max-width:900px}#fmt-av-portal input:not([type=checkbox]):not([type=radio]):not([type=range]),#fmt-av-portal select,#fmt-av-portal textarea{font-size:16px}.fmt-av-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.fmt-av-title{margin:0;font-size:20px;font-weight:700;color:#1a1a2e}.fmt-av-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:opacity .12s,background .12s;text-decoration:none;line-height:1.4;-webkit-tap-highlight-color:rgba(0,115,170,.18);touch-action:manipulation}.fmt-av-btn:hover{opacity:.82}.fmt-av-btn:active{transform:translateY(1px)}.fmt-av-btn:disabled{opacity:.45;cursor:not-allowed}.fmt-av-btn-primary{background:#0073aa;color:#fff}.fmt-av-btn-primary:active{background:#0b587f;color:#fff}.fmt-av-btn-secondary{background:#f0f0f1;color:#1a1a2e;border-color:#c3c4c7}.fmt-av-btn-secondary:active{background:#dcdcde;color:#1a1a2e}.fmt-av-btn-danger{background:#d63638;color:#fff}.fmt-av-btn-danger:active{background:#b91c1c;color:#fff}.fmt-av-btn-warning{background:#d97706;color:#fff}.fmt-av-btn-warning:active{background:#b45309;color:#fff}.fmt-av-btn-ghost{background:transparent;color:#0073aa;border-color:#0073aa}.fmt-av-btn-ghost:active{background:#e0efff;color:#0b587f}.fmt-av-calendar-wrap{margin-bottom:4px}.fmt-av-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.fmt-av-cal-range-label{font-weight:600;font-size:14px;color:#3a3a3a}.fmt-av-calendars{display:flex;flex-wrap:wrap;gap:12px;max-width:100%}.fmt-av-month{border:1px solid #ccd0d4;border-radius:8px;padding:10px;width:220px;flex-shrink:0;background:#fff;box-shadow:0 1px 3px #00000012}.fmt-av-month-header{text-align:center;font-weight:700;font-size:13px;color:#3a3a3a;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #f0f0f0}.fmt-av-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.fmt-av-cal-dow{text-align:center;font-size:10px;font-weight:700;color:#888;padding:3px 0 4px;text-transform:uppercase}.fmt-av-cal-day{position:relative;text-align:center;padding:4px 1px 3px;border-radius:4px;font-size:12px;cursor:default;min-height:30px;line-height:1;border:1px solid transparent}.fmt-av-cal-day.is-today{font-weight:800;border:none!important}.fmt-av-cal-day.is-past{color:#bbb}.fmt-av-cal-day.is-future{cursor:pointer}.fmt-av-cal-day.is-future:not(.has-shift):hover{background:#f0f7ff;border-color:#b3d4ff}.fmt-av-cal-day.is-future:active{transform:translateY(1px);background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.fmt-av-cal-day.is-season-disabled{background:#f8fafc!important;color:#9ca3af!important;border-color:#e5e7eb!important;cursor:not-allowed!important}.fmt-av-cal-day.has-shift{cursor:pointer}.fmt-av-cal-day.has-shift:hover{filter:brightness(.93)}.fmt-av-cal-day.is-day1{border-radius:4px 0 0 4px}.fmt-av-cal-day.is-day2{border-radius:0 4px 4px 0}.fmt-av-cal-day.state-pending{background:#fdfec7;border-color:#f5da0b;color:#767c00}.fmt-av-cal-day.state-reserve{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.fmt-av-cal-day.state-provisional{background:#ede9fe;border-color:#8b5cf6;color:#4c1d95}.fmt-av-cal-day.state-confirmed{background:#d1fae5;border-color:#10b981;color:#064e3b}.fmt-av-cal-day.state-cancelled{background:#f3f4f6;border-color:#9ca3af;color:#9ca3af;text-decoration:line-through}.fmt-av-cal-day.state-cover_requested{background:#ffe1de;border-color:#ef4444;color:#7f1d1d}.fmt-av-cal-day.is-draft-open-shift{overflow:hidden;border:1px dotted #8b5cf6}.fmt-av-cal-day.is-draft-open-shift:before{content:"";position:absolute;top:-3px;left:-4px;width:10px;height:10px;background:linear-gradient(140deg,transparent calc(50% - 1.5px),#8b5cf6 calc(50% - 1.5px),#8b5cf6 calc(50% + 1.5px),transparent calc(50% + 1.5px));pointer-events:none;z-index:1}.fmt-av-cal-day.is-draft-open-shift:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(125deg,#8b5cf61f 0,#8b5cf61f 8px,#8b5cf600 8px,#8b5cf600 16px),linear-gradient(180deg,#8b5cf629,#8b5cf614 40%,#8b5cf600 75%);opacity:.5;pointer-events:none;z-index:0;animation:fmtDraftOpenShimmer 5.8s linear infinite}.fmt-av-cal-day.is-draft-open-shift .day-num,.fmt-av-cal-day.is-draft-open-shift .fmt-av-shift-pip{position:relative;z-index:2}.fmt-av-cal-day.is-cover-opportunity{border-style:dotted!important;border-width:2px!important;border-color:#ef444480!important;overflow:visible;background:repeating-linear-gradient(135deg,#ef444411 0,#ef444411 6px,#fff0 6px,#fff0 12px),#ffe5e285!important}.fmt-av-cal-day.is-cover-opportunity .day-num,.fmt-av-cal-day.is-cover-opportunity .fmt-av-shift-pip{position:relative;z-index:2}.fmt-av-cal-day.is-cover-opportunity:after{content:"";position:absolute;top:-35%;left:-60%;width:45%;height:170%;background:linear-gradient(120deg,#fff0,#ffffff6b 48%,#fff0);transform:rotate(10deg);pointer-events:none;z-index:1;animation:fmtCoverShimmer 2.2s linear infinite}.fmt-av-cal-day.is-cover-opportunity.is-day1:after{animation-delay:.5s}.fmt-av-cal-day.is-cover-opportunity.is-day1:before{content:"✦";position:absolute;top:-5px;left:-3px;font-size:9px;line-height:1;color:#fffffff2;text-shadow:0 0 4px rgba(255,255,255,.85),0 0 6px rgba(239,68,68,.55);pointer-events:none;z-index:3;animation:fmtCoverTwinkle 1.6s ease-in-out infinite}@keyframes fmtCoverShimmer{0%{left:-70%;opacity:0}15%{opacity:1}55%{opacity:.95}to{left:130%;opacity:0}}@keyframes fmtCoverTwinkle{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}@keyframes fmtDraftOpenShimmer{0%{background-position:0 0,0 0}to{background-position:36px 0,0 0}}.fmt-av-cal-day .day-num{display:block}.fmt-av-shift-pip{display:block;width:4px;height:4px;border-radius:50%;background:currentColor;margin:2px auto 0;opacity:.55}.fmt-av-cover-note{display:block;font-size:9px;font-weight:700;line-height:1.1;margin-top:2px;white-space:nowrap}.fmt-av-cover-claim{display:block;font-size:9px;line-height:1.1;white-space:nowrap}.fmt-av-legend{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0 18px}.fmt-av-legend-item{display:flex;align-items:center;gap:5px;font-size:12px;color:#555}.fmt-av-dot{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid transparent;flex-shrink:0}.fmt-av-dot.state-pending{background:#fef3c7;border-color:#f1f50b}.fmt-av-dot.state-reserve{background:#dbeafe;border-color:#3b82f6}.fmt-av-dot.state-provisional{background:#ede9fe;border-color:#8b5cf6}.fmt-av-dot.state-confirmed{background:#d1fae5;border-color:#10b981}.fmt-av-dot.state-cancelled{background:#f3f4f6;border-color:#9ca3af}.fmt-av-dot.state-cover_requested{background:#fee2e2;border-color:#ef4444}.fmt-av-dot.state-draft_open{background:#ede9fe;border-color:#8b5cf6}.fmt-av-section{margin-top:20px}.fmt-av-section-title{font-size:15px;font-weight:700;color:#1a1a2e;margin:0 0 10px;display:flex;align-items:center;gap:8px}summary.fmt-av-section-title{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}summary.fmt-av-section-title::-webkit-details-marker{display:none}summary.fmt-av-section-title:before{content:"▶";font-size:9px;color:#888;margin-right:2px}details[open]>summary.fmt-av-section-title:before{content:"▼"}.fmt-av-count-badge{display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:20px;height:20px;padding:0 6px}.fmt-av-count-badge:empty{display:none}.fmt-av-cover-list{display:flex;flex-wrap:wrap;gap:10px}.fmt-av-cover-subsection{width:100%}.fmt-av-cover-subtitle{margin:2px 0 8px;font-size:13px;font-weight:700;color:#334155}.fmt-av-cover-card{border:1px solid #ef4444;border-radius:8px;background:#fff5f5;padding:12px 14px;min-width:200px;max-width:260px;display:flex;flex-direction:column;gap:4px}.fmt-av-cover-card--draft{border-style:dotted;border-color:#9ca3af;background:#fafafa;color:#334155}.fmt-av-cover-card--draft .cover-heading{font-weight:700;font-size:13px;line-height:1.35;color:#334155}.fmt-av-cover-card--draft .cover-dates{color:#475569}.fmt-av-cover-card--draft .cover-meta{color:#64748b}.fmt-av-cover-card .cover-dates{font-weight:700;font-size:13px}.fmt-av-cover-card .cover-meta{font-size:12px;color:#666;line-height:1.5}.fmt-av-cover-card .cover-actions{margin-top:8px}.fmt-av-no-cover{color:#888;font-size:13px;font-style:italic}.fmt-av-prefs-section{border:1px solid #e0e0e0;border-radius:8px;padding:12px 14px}.fmt-av-prefs-section[open]>summary{margin-bottom:12px}.fmt-av-prefs-grid{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.fmt-av-prefs-row{margin-top:10px;padding-top:10px;border-top:1px solid #e8e8e8;display:flex;flex-direction:column;gap:6px}.fmt-av-pref-label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#3a3a3a}.fmt-av-pref-label input[type=number]{padding:5px 8px;border:1px solid #c3c4c7;border-radius:4px;font-size:13px;background:#fff;font-weight:400}.fmt-av-pref-note{font-size:12px;color:#666;line-height:1.5}.fmt-av-pref-check{flex-direction:row;align-items:center;font-weight:400}.fmt-av-pref-check input{width:16px;height:16px;margin:0}.fmt-av-calendar-subscribe{border:1px solid #d9e4ec;border-radius:8px;background:#f8fbff;padding:14px}.fmt-av-subscribe-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-family:inherit;color:#0b3d5b;font-weight:700;font-size:13px;text-align:left;padding:8px 10px;border:1px solid #c1d8e8;border-radius:8px;background:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .12s ease,box-shadow .12s ease;margin-top:2px;-webkit-tap-highlight-color:rgba(0,115,170,.18);touch-action:manipulation}.fmt-av-subscribe-link:hover{border-color:#0073aa;box-shadow:0 0 0 2px #0073aa21}.fmt-av-subscribe-link:active{transform:translateY(1px);background:#e0efff;border-color:#0073aa}.fmt-av-subscribe-link:focus-visible{outline:none;border-color:#0073aa;box-shadow:0 0 0 2px #0073aa33}.fmt-av-subscribe-link__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#e9f4fb;color:#0b587f}.fmt-av-subscribe-help{margin:10px 0 14px;font-size:12px;line-height:1.55;color:#3f4d57}.fmt-av-copy-feedback{margin:6px 0 0;font-size:12px;font-weight:600;line-height:1.4}.fmt-av-copy-feedback--ok{color:#0f5132}.fmt-av-copy-feedback--error{color:#842029}.fmt-av-subscribe-link+.fmt-av-subscribe-help{margin-top:10px}.fmt-av-subscribe-help+.fmt-av-subscribe-link{margin-top:2px}.fmt-av-msg{margin-top:14px;padding:10px 14px;border-radius:6px;font-weight:600;font-size:13px}.fmt-av-msg.is-success{background:#d1fae5;color:#064e3b;border:1px solid #6ee7b7}.fmt-av-msg.is-error{background:#fee2e2;color:#7f1d1d;border:1px solid #fca5a5}.fmt-av-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;display:flex;align-items:center;justify-content:center}.fmt-av-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000007a}.fmt-av-modal{position:relative;background:#fff;border-radius:10px;box-shadow:0 10px 40px #00000038;width:440px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow-y:auto;display:flex;flex-direction:column}.fmt-av-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid #f0f0f0}.fmt-av-modal-title{font-size:16px;font-weight:700;color:#1a1a2e}.fmt-av-modal-close{background:none;border:none;font-size:22px;cursor:pointer;color:#888;line-height:1;padding:0 2px;-webkit-tap-highlight-color:rgba(0,115,170,.18);touch-action:manipulation}.fmt-av-modal-close:hover{color:#1a1a2e}.fmt-av-modal-close:active{transform:translateY(1px);color:#0b3d5b}.fmt-av-modal-body{padding:16px 20px;flex:1}.fmt-av-modal-footer{padding:12px 20px 16px;display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #f0f0f0}.fmt-av-field{margin-bottom:14px}.fmt-av-field:last-child{margin-bottom:0}.fmt-av-modal-notice{margin-bottom:14px;padding:12px 14px;border-radius:6px;border:1px solid #f5c2c7;background:#fff4f4;color:#7f1d1d;font-weight:600;line-height:1.45}.fmt-av-field label{display:block;font-weight:600;font-size:13px;margin-bottom:4px;color:#3a3a3a}.fmt-av-field input,.fmt-av-field select,.fmt-av-field textarea{width:100%;padding:7px 10px;border:1px solid #c3c4c7;border-radius:5px;font-size:13px;background:#fff}.fmt-av-field textarea{resize:vertical;min-height:70px}.fmt-av-field input:focus,.fmt-av-field select:focus,.fmt-av-field textarea:focus{outline:none;border-color:#0073aa;box-shadow:0 0 0 2px #0073aa2e}.fmt-av-field .field-error{border-color:#d63638!important}.fmt-av-info-grid{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;font-size:13px;margin-bottom:16px;background:#f9f9f9;border-radius:6px;padding:12px 14px}.fmt-av-info-grid .info-label{color:#888;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.fmt-av-info-grid .info-value{color:#1a1a2e}.fmt-av-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border:1px solid transparent}.fmt-av-badge.state-pending{background:#fef3c7;color:#92400e;border-color:#f59e0b}.fmt-av-badge.state-reserve{background:#dbeafe;color:#1e40af;border-color:#93c5fd}.fmt-av-badge.state-provisional{background:#ede9fe;color:#5b21b6;border-color:#c4b5fd}.fmt-av-badge.state-confirmed{background:#d1fae5;color:#065f46;border-color:#6ee7b7}.fmt-av-badge.state-cancelled{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.fmt-av-badge.state-cover_requested{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.fmt-av-cal-day.is-selected{background:#dbeafe!important;border-color:#0073aa!important;color:#0a4b7c!important;font-weight:700}.fmt-av-batch-section{margin:12px 0 16px;border:1px solid #0073aa;border-radius:8px;background:#f0f7ff;overflow:hidden}.fmt-av-batch-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 14px;background:#e0efff;border-bottom:1px solid #b3d4f5;font-size:13px;color:#0a4b7c}.fmt-av-batch-title{font-weight:700;display:flex;align-items:center;gap:8px}.fmt-av-batch-header-actions{display:flex;gap:8px;flex-wrap:wrap}.fmt-av-btn-sm{padding:4px 10px;font-size:12px}.fmt-av-batch-table{width:100%;border-collapse:collapse;font-size:13px}.fmt-av-batch-table th{padding:7px 12px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#555;border-bottom:1px solid #b3d4f5}.fmt-av-batch-table td{padding:6px 12px;border-bottom:1px solid #d4e8f9;vertical-align:middle}.fmt-av-batch-table tr:last-child td{border-bottom:none}.fmt-av-batch-table input[type=date]{padding:4px 8px;border:1px solid #b3d4f5;border-radius:4px;font-size:13px;background:#fff;max-width:100%}.fmt-av-batch-table .day1-label,.fmt-av-batch-table .day2-label{display:block;margin-top:3px;font-size:11px;line-height:1.2}.fmt-av-batch-table .day1-label.day1-label--draft-open,.fmt-av-batch-table .day2-label.day2-label--draft-open{color:#6d28d9;font-weight:700}.fmt-av-batch-table .day2-label{color:#555;font-size:12px}.fmt-av-batch-table .fmt-av-batch-remove{background:none;border:none;color:#aaa;cursor:pointer;font-size:18px;line-height:1;padding:0 4px;-webkit-tap-highlight-color:rgba(0,115,170,.18);touch-action:manipulation}.fmt-av-batch-table .fmt-av-batch-remove:hover{color:#d63638}.fmt-av-batch-table .fmt-av-batch-remove:active{transform:translateY(1px);color:#b91c1c}@media (max-width: 640px){.fmt-av-calendars{flex-direction:column;gap:10px}.fmt-av-month{width:100%;max-width:100%;flex-shrink:1}.fmt-av-batch-header-actions{width:100%}.fmt-av-batch-header-actions .fmt-av-btn-sm{flex:1 1 100%;justify-content:center}.fmt-av-batch-table th,.fmt-av-batch-table td{padding:6px 8px}.fmt-av-batch-table input[type=date]{width:100%}}.fmt-av-batch-footer{padding:10px 14px;display:flex;justify-content:flex-end;border-top:1px solid #b3d4f5}.fmt-av-shift-list{margin:8px 0 0;padding-left:18px;max-height:210px;overflow:auto}.fmt-av-shift-list li{margin:4px 0;font-size:13px}.fmt-av-shift-list-empty{margin:8px 0 0;color:#666;font-size:13px;font-style:italic}#fmt-av-portal .fmt-av-cal-day.state-cover_requested{background:#ffe1de!important;border-color:#ef4444!important;color:#7f1d1d!important}#fmt-av-portal .fmt-av-cal-day.is-cover-opportunity{border-color:#ef444494!important;background:#ffe5e285!important}#fmt-av-portal .fmt-av-cover-card{border-color:#ef4444!important;background:#fff5f5!important}#fmt-av-portal .fmt-av-badge.state-cover_requested{background:#fee2e2!important;color:#991b1b!important;border-color:#fca5a5!important}#fmt-av-portal .fmt-av-dot.state-cover_requested{background:#fee2e2!important;border-color:#ef4444!important}:root{--bg: #f0f4f8;--surface-1: #ffffff;--surface-2: #f7f9fc;--ink: #0d1f2d;--muted: #526070;--brand: #0056b3;--brand-2: #0891b2;--ok: #16a34a;--warn: #d97706;--idle: #64748b;--danger: #dc2626;--card: #ffffff;--line: #dce6ef;--shadow-sm: 0 1px 3px rgba(13, 31, 45, .08), 0 1px 2px rgba(13, 31, 45, .05);--shadow-md: 0 4px 12px rgba(13, 31, 45, .1), 0 2px 4px rgba(13, 31, 45, .06);--shadow-lg: 0 10px 28px rgba(13, 31, 45, .12), 0 4px 8px rgba(13, 31, 45, .06);--radius-sm: 6px;--radius: 12px;--radius-lg: 16px;--radius-xl: 20px;--bar-h: 56px;--nav-h: 64px;--safe-b: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}html,body,#root{max-width:100%;overflow-x:hidden}body{font-family:Inter,sans-serif;font-size:15px;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{font-family:Inter,sans-serif;margin:0 0 .35rem;letter-spacing:-.02em;line-height:1.2}h1{font-size:1.35rem}h2{font-size:1.05rem}h3{font-size:.95rem;font-family:Inter,sans-serif;font-weight:700}p{margin:.15rem 0;color:var(--muted);font-size:.88rem;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){font-size:16px}:where(button,a,[role=button],.btn,.btn-group__item,.chip,.note-toggle,.selected-asset__clear,.app-bar__back,.app-bar__home-link,.app-bar__avatar--interactive,.app-bar__avatar-popover-action,.bottom-nav__item,.course-date-picker__day,.media-upload__dropzone):not([disabled]){touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,86,179,.18)}:where(button,a,[role=button],.btn,.btn-group__item,.chip,.note-toggle,.selected-asset__clear,.app-bar__back,.app-bar__home-link,.app-bar__avatar--interactive,.app-bar__avatar-popover-action,.bottom-nav__item,.course-date-picker__day,.media-upload__dropzone):not([disabled]):active{filter:brightness(.94)}.screen{width:min(1024px,100%);max-width:100%;margin:0 auto;padding:.75rem .875rem calc(var(--nav-h) + var(--safe-b) + 1rem);display:grid;gap:.75rem;overflow-x:clip}img,svg,video,canvas,iframe{max-width:100%}.app-bar{position:sticky;top:0;z-index:20;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);height:var(--bar-h);display:flex;align-items:center;gap:.6rem;padding:0 .875rem;margin:-.75rem -.875rem 0}.app-bar__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:0;background:transparent;color:var(--ink);cursor:pointer;flex-shrink:0;transition:background .12s}.app-bar__back:hover{background:var(--bg)}.app-bar__title{font-family:Inter,sans-serif;font-weight:700;font-size:1rem;color:var(--ink);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-bar__brand{display:flex;align-items:center;gap:.45rem;min-width:0;flex:1}.app-bar__home-link{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;color:var(--muted);border:1px solid var(--line);background:var(--surface-2);flex-shrink:0;transition:background .12s ease,color .12s ease,border-color .12s ease}.app-bar__home-link:hover{color:var(--ink);border-color:#c9d8e8;background:#eef4fb}.app-bar__pill{font-size:.72rem;font-weight:600;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:.2rem .55rem;color:var(--muted);flex-shrink:0}.app-bar__avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;font-size:.72rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.03em}.app-bar__avatar-menu{position:relative;display:flex;align-items:center}.app-bar__avatar--interactive{border:0;cursor:pointer}.app-bar__avatar-popover{position:absolute;right:0;top:calc(100% + .45rem);width:min(320px,calc(100vw - 1.5rem));max-width:calc(100vw - 1.5rem);border:1px solid var(--line);background:var(--surface-1);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:.7rem;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;z-index:22}.app-bar__avatar-menu:hover .app-bar__avatar-popover,.app-bar__avatar-menu:focus-within .app-bar__avatar-popover{opacity:1;pointer-events:auto;transform:translateY(0)}.app-bar__avatar-popover-title{margin:0 0 .45rem;font-size:.76rem;font-weight:700;color:var(--ink);letter-spacing:.04em;text-transform:uppercase}.app-bar__avatar-popover-empty{margin:0;font-size:.8rem;color:var(--muted)}.app-bar__avatar-popover-actions{margin-top:.7rem;display:grid;gap:.45rem}.app-bar__avatar-popover-action{width:100%;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.78rem;font-weight:700;min-height:36px;padding:.5rem .8rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,opacity .12s ease}.app-bar__avatar-popover-action:hover{background:var(--surface-1)}.app-bar__avatar-popover-action:disabled{opacity:.7;cursor:wait}.app-bar__avatar-popover-action--danger{border-color:#dc262647;color:var(--danger);background:#fee2e2}.app-bar__avatar-popover-action--danger:hover{background:#fecaca}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nav-h) + var(--safe-b));padding-bottom:var(--safe-b);background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);display:flex;align-items:stretch;z-index:20}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.67rem;font-weight:600;color:var(--idle);text-decoration:none;border:0;background:transparent;cursor:pointer;transition:color .12s;padding:0 .25rem;letter-spacing:.02em}.bottom-nav__item:hover{color:var(--ink)}.bottom-nav__item--active{color:var(--brand)}.bottom-nav__icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.bottom-nav__badge{position:absolute;top:-8px;right:-6px;min-width:17px;height:17px;border-radius:999px;background:var(--danger);color:#fff;border:2px solid #fff;font-size:.58rem;font-weight:800;line-height:13px;text-align:center;padding:0 3px;box-shadow:var(--shadow-sm)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm)}.form-card{display:grid;gap:.8rem}.hero-card{border-radius:var(--radius-lg);padding:1.1rem;background:linear-gradient(140deg,#004a99,#0891b2);color:#f0faff;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:1rem}.hero-card p{color:#e0f4ffd9}.hero-card h2{color:#fff;font-size:1.1rem}.hero-card__body{flex:1;min-width:0}.hero-card__meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.hero-card__status-chip{font-size:.72rem;font-weight:700;background:#ffffff2e;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.18rem .55rem;text-transform:uppercase;letter-spacing:.04em;color:#e0f4ff}.availability-hero{border-radius:var(--radius-lg);padding:1rem 1.1rem;background:linear-gradient(135deg,#0b3a66,#0d6f8c 55%,#1d9aa8);color:#eefbff;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:.85rem;border:1px solid rgba(255,255,255,.15)}.availability-hero__icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.28);flex-shrink:0}.availability-hero__body{min-width:0;flex:1}.availability-hero__body h2{margin:0 0 .2rem;color:#fff}.availability-hero__body p{margin:0;color:#e9faffe6}.availability-hero__cta{border-radius:999px;padding:.22rem .62rem;font-size:.72rem;font-weight:700;background:#fff3;border:1px solid rgba(255,255,255,.32);color:#fff;letter-spacing:.03em;text-transform:uppercase}.progress-bar{height:5px;border-radius:999px;background:#ffffff38;overflow:hidden;margin-top:.55rem}.progress-bar__fill{height:100%;border-radius:999px;background:#fff;transition:width .5s cubic-bezier(.4,0,.2,1)}.progress-bar--neutral{background:var(--line)}.progress-bar--neutral .progress-bar__fill{background:var(--brand)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-card{height:130px;border-radius:var(--radius-lg)}.skeleton-hero{height:96px;border-radius:var(--radius-lg)}@keyframes toastIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.toast-root{position:fixed;top:calc(env(safe-area-inset-top,0px) + .5rem);left:0;right:0;padding:0 .5rem;margin:0 auto;z-index:2000;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;pointer-events:none}.toast-root--page-feedback{top:calc(env(safe-area-inset-top,0px) + .5rem);width:100%}.toast{width:min(560px,100%);border-radius:var(--radius);padding:.6rem .9rem;display:flex;align-items:flex-start;gap:.5rem;box-shadow:var(--shadow-md);font-size:.875rem;font-weight:600;line-height:1.35;animation:toastIn .18s ease forwards;pointer-events:auto;white-space:normal;overflow-wrap:anywhere}.toast--ok{background:#dcfce7;color:#15803d;border-left:3px solid var(--ok)}.toast--error{background:#7f1d1d;color:#fff;border-left:4px solid #fecaca;box-shadow:0 8px 24px #7f1d1d47}.toast--info{background:#dbeafe;color:#1d4ed8;border-left:3px solid var(--brand)}.btn{border:0;border-radius:var(--radius);background:var(--bg);color:var(--ink);font-family:Inter,sans-serif;font-weight:700;font-size:.875rem;padding:0 1rem;min-height:44px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:transform .1s ease,filter .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:rgba(0,86,179,.18);letter-spacing:.01em}.btn:hover{filter:brightness(.96)}.btn:active{transform:translateY(1px) scale(.98)}.btn--primary{background:linear-gradient(130deg,var(--brand) 0%,var(--brand-2) 100%);color:#f0faff;box-shadow:0 2px 8px #0056b347}.btn--primary:active{background:var(--brand);color:#fff;box-shadow:0 1px 4px #0056b338}.btn--primary:hover{filter:brightness(1.05);box-shadow:0 4px 14px #0056b359}.btn--ghost{background:transparent;border:1.5px solid var(--line);color:var(--ink)}.btn--ghost:hover{background:var(--bg);filter:none}.btn--ghost:active{background:var(--line)}.btn--danger{border-color:#dc262659;color:var(--danger)}.btn--danger:hover{background:#dc26260f}.btn--danger{background:#fee2e2;color:var(--danger)}.btn--danger:active{background:#dc2626;color:#fff}.btn--sm{min-height:36px;font-size:.8rem;padding:0 .75rem}.btn--wide{width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}.badge{display:inline-flex;align-items:center;gap:.28rem;border-radius:999px;padding:.22rem .6rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.badge--ok{background:#dcfce7;color:#15803d}.badge--warn{background:#fef3c7;color:#b45309}.badge--idle{background:#f1f5f9;color:#475569}.badge--count{background:var(--brand);color:#fff;font-size:.7rem}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:.5rem}.section-head h2{margin:0}.check-grid{display:grid;gap:.65rem}.check-card{display:grid;gap:.5rem;border-left:3px solid var(--line);padding-left:calc(1rem - 3px);transition:box-shadow .14s,transform .14s;cursor:pointer}.check-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.check-card--ok{border-left-color:var(--ok)}.check-card--warn{border-left-color:var(--warn)}.check-card--idle{border-left-color:var(--idle)}.check-card--ok.card{background:#f8fffe}.check-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.check-card__title{font-weight:700;font-size:.9rem;color:var(--ink);text-transform:capitalize;margin:0;line-height:1.3}.check-card__meta{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.8rem;margin-top:.1rem}.check-card__progress{margin:.25rem 0}.check-card__progress-label{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-bottom:.3rem;font-weight:600}.check-card__subs{list-style:none;padding:0;margin:0 0 .5rem;display:grid;gap:.25rem}.check-card__sub-row{display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;background:var(--surface-2);border-radius:var(--radius-sm)}.check-card__sub-label{flex:1;font-size:.78rem;font-weight:600;color:var(--ink-soft)}.check-card__sub-time{font-size:.72rem;color:var(--muted)}.check-card__sub-open{display:inline-flex;align-items:center;gap:.2rem;font-size:.75rem;font-weight:600;color:var(--brand);text-decoration:none;white-space:nowrap}.check-card__sub-open:hover{text-decoration:underline}.badge--sm{font-size:.65rem!important;padding:.1rem .35rem!important;line-height:1.3}label{display:grid;gap:.3rem;font-size:.875rem;font-weight:600;color:var(--ink)}.field{width:100%;border:1.5px solid var(--line);border-radius:var(--radius);padding:0 .85rem;height:48px;font:inherit;font-size:16px;color:var(--ink);background:var(--surface-1);transition:border-color .12s,box-shadow .12s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field:focus{outline:none;border-color:var(--brand-2);box-shadow:0 0 0 3px #0891b224}.field--textarea{height:auto;min-height:110px;padding:.7rem .85rem;resize:vertical}.field--json{height:auto;min-height:340px;padding:.7rem .85rem;font-family:SF Mono,Fira Mono,monospace;font-size:16px}.field--note{height:40px;font-size:16px;border-style:dashed;background:var(--surface-2)}.field--note:focus{background:var(--surface-1);border-style:solid}.field--note-flagged{border-color:var(--danger);border-style:dotted;background:#fff5f5}.field--note-flagged:focus{border-color:var(--danger);border-style:dotted;background:#fff}.field--textarea{font-size:16px}.media-upload{display:grid;gap:.55rem;min-width:0}.media-upload__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.media-upload__dropzone{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;width:100%;min-width:0;padding:.95rem 1rem;border:1px dashed color-mix(in srgb,var(--line) 82%,var(--brand) 18%);border-radius:var(--radius);background:linear-gradient(180deg,#0ea5e909,#0ea5e904);color:var(--ink);cursor:pointer;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease,transform .12s ease}.media-upload__dropzone:hover,.media-upload__dropzone:focus-visible{border-color:color-mix(in srgb,var(--brand) 42%,var(--line) 58%);background:linear-gradient(180deg,#0ea5e90f,#0ea5e906);box-shadow:0 0 0 3px #0ea5e914;transform:translateY(-1px)}.media-upload__dropzone:active{transform:translateY(1px);filter:brightness(.95)}.media-upload__dropzone--active{border-color:#3b82f6bf;background:linear-gradient(180deg,#3b82f614,#3b82f608);box-shadow:0 0 0 3px #3b82f61f}.media-upload__body{display:grid;gap:.15rem;min-width:0}.media-upload__body strong{font-size:.92rem}.media-upload__body span{color:var(--muted);font-size:.78rem;line-height:1.35}.media-upload__cta{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.45rem .7rem;background:#0ea5e91a;color:var(--brand);font-size:.75rem;font-weight:700}.media-upload__preview{display:grid;gap:.55rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:var(--surface-2);min-width:0}.media-upload__preview-item{display:grid;grid-template-columns:4.25rem minmax(0,1fr) auto;align-items:center;gap:.65rem;min-width:0}.media-upload__thumb{width:4.25rem;aspect-ratio:4 / 3;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);object-fit:cover;overflow:hidden}.media-upload__thumb--file{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.media-upload__preview-text{display:grid;gap:.1rem;min-width:0}.media-upload__preview-text strong{font-size:.8rem;word-break:break-word}.media-upload__preview-text span{color:var(--muted);font-size:.72rem}.media-upload__clear{border:0;background:transparent;color:var(--danger);font-weight:700;padding:0;cursor:pointer;white-space:nowrap}.slider-field{display:grid;gap:.65rem}.slider-field__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;border:0;padding:0;cursor:pointer;outline:none;background:linear-gradient(to right,var(--brand) 0%,var(--brand) var(--slider-pct, 0%),var(--line) var(--slider-pct, 0%),var(--line) 100%)}.slider-field__input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:2.5px solid var(--brand);box-shadow:0 1px 6px #0056b338;cursor:pointer;transition:transform .1s ease,box-shadow .12s ease}.slider-field__input::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 2px 12px #0056b352}.slider-field__input::-webkit-slider-thumb:active{transform:scale(1.05);box-shadow:0 0 0 5px #0056b31f}.slider-field__input::-moz-range-track{height:6px;border-radius:999px;background:var(--line);border:0}.slider-field__input::-moz-range-progress{height:6px;border-radius:999px;background:var(--brand)}.slider-field__input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:2.5px solid var(--brand);box-shadow:0 1px 6px #0056b338;cursor:pointer}.slider-field__labels{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:var(--muted);padding:0 2px}.slider-field__value{font-size:.92rem;font-weight:700;color:var(--brand);background:#0056b314;border-radius:8px;padding:.1rem .6rem;min-width:2.5rem;text-align:center;transition:color .12s}.question-list{display:grid;gap:5px}.question{border:1.5px solid var(--line);border-radius:var(--radius);padding:.85rem;background:var(--surface-2);position:relative;display:grid;gap:.5rem;transition:border-color .12s,background-color .12s,box-shadow .12s;scroll-margin-top:calc(var(--bar-h) + .9rem)}.question--required:before{content:"";position:absolute;top:0;left:0;width:14px;height:12px;background:linear-gradient(135deg,#dc2626f5,#b91c1cfa);clip-path:polygon(0 0,100% 0,0 100%);border-top-left-radius:var(--radius);box-shadow:0 1px #fff3 inset;pointer-events:none}.question--required.question--completed:before{background:linear-gradient(135deg,#f8717180,#ef444452);opacity:.72;box-shadow:none}.question:focus-within{border-color:#0891b285;background:#f7fcff;box-shadow:0 0 0 1px #0891b214,0 4px 14px #0891b20f}.question--invalid{border-color:#dc2626a6;background:#fff5f5}.question--invalid:focus-within{border-color:#dc2626e6;background:#fff2f2;box-shadow:0 0 0 1px #dc262614,0 4px 14px #dc262614}.question label{font-size:.875rem;font-weight:600}.question--check{padding-bottom:.5rem}.question-check-label{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;font-size:.875rem;font-weight:600;color:var(--ink-soft);-webkit-user-select:none;user-select:none;line-height:1.35}.question-check-label span{padding-top:1px}.checkbox-field{flex-shrink:0;width:18px;height:18px;margin-top:1px;cursor:pointer;accent-color:var(--brand)}.question-row{display:flex;gap:5px}.question-row>.question{flex:1;min-width:0}.note-toggle{background:none;border:none;font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;color:var(--muted);cursor:pointer;padding:0;display:flex;align-items:center;gap:.25rem;transition:color .12s;-webkit-tap-highlight-color:rgba(0,86,179,.18)}.note-toggle:hover{color:var(--brand-2)}.note-toggle:active{color:var(--brand);transform:translateY(1px)}.checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.certificate-candidates-panel{margin-top:.75rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);display:grid;gap:.65rem}.certificate-candidates-panel__head{margin-bottom:0}.certificate-candidates-panel__head h3{margin:0;font-size:.92rem}.certificate-candidates-panel__actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.certificate-candidates-panel__list{display:grid;gap:.45rem}.certificate-candidates-row{align-items:flex-start;padding:.55rem .6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1)}.certificate-candidates-row input[type=checkbox]{margin-top:.2rem;accent-color:var(--brand)}.certificate-candidates-row__text{flex:1;color:var(--ink);font-size:.84rem;line-height:1.35;word-break:break-word}.certificate-candidates-row--sent{opacity:.7}.certificate-candidates-row--sent .certificate-candidates-row__text{text-decoration:line-through}.certificate-candidates-row--missing-email{opacity:.82}.certificate-candidates-row__badge{display:inline-flex;margin-left:.45rem;padding:.12rem .4rem;border-radius:999px;background:#0f172a14;color:var(--muted);font-size:.72rem;font-weight:700;vertical-align:middle}.certificate-reg-panel{gap:.9rem;font-size:1rem;max-width:100%;min-width:0;overflow-x:clip}.certificate-reg-panel .hint{font-size:.92rem;line-height:1.45}.certificate-reg-section{display:grid;gap:.55rem;min-width:0}.certificate-reg-section__head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap;min-width:0}.certificate-reg-section__head h4{margin:0;font-size:1rem;min-width:0}.certificate-reg-section__tools{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:stretch;width:100%;min-width:0}.certificate-reg-section__tools .btn{flex:1 1 100%;min-width:0;justify-content:center;white-space:normal;text-align:center}.certificate-reg-table{display:grid;gap:.7rem;min-width:0}.certificate-reg-row{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:.7rem;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);min-width:0;max-width:100%}.certificate-reg-row__edit,.certificate-reg-row__status{grid-column:1;grid-row:1;align-self:start}.certificate-reg-row__status{display:inline-flex;align-items:center;justify-content:center;min-height:1.8rem;padding:.2rem .35rem;border-radius:999px;background:#0f172a14;color:var(--muted);font-size:.75rem;font-weight:800;writing-mode:vertical-rl;text-orientation:mixed}.certificate-reg-row--queued .certificate-reg-row__status{background:#f59e0b29;color:#92400e}.certificate-reg-row--submitted .certificate-reg-row__status{background:#22c55e26;color:#166534}.certificate-reg-row--failed .certificate-reg-row__status{background:#ef444421;color:#991b1b}.certificate-reg-row__candidate{grid-column:2;display:grid;gap:.26rem;min-width:0}.certificate-reg-row__candidate strong,.certificate-reg-row__candidate span{min-width:0;overflow-wrap:anywhere}.certificate-reg-row__candidate strong{display:inline-flex;align-items:center;gap:.35rem;color:var(--ink);font-size:1rem;line-height:1.25}.certificate-reg-row__candidate span{color:var(--muted);font-size:.92rem;line-height:1.32}.certificate-reg-row__verified{display:inline-flex;align-items:center;color:#15803d}.certificate-reg-row__verify-note{color:#b45309!important;font-weight:700}.certificate-reg-row__edit-grid{display:grid;gap:.55rem}.certificate-reg-row__edit-grid .field{min-height:2.75rem;font-size:1rem}.certificate-reg-row__cert{grid-column:1 / -1;display:grid;gap:.35rem;margin-top:.2rem;font-size:.92rem;font-weight:700;color:var(--muted);min-width:0}.certificate-reg-table__cert-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:2.85rem;font-size:1.08rem;letter-spacing:0;text-transform:uppercase}.certificate-reg-number-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;min-width:0}.certificate-reg-number-field__prefix{display:inline-flex;align-items:center;justify-content:center;min-width:2.9rem;padding:0 .8rem;border:1px solid var(--line);border-right:0;border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:var(--surface-2);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.08rem;font-weight:800;opacity:.5}.certificate-reg-number-field .certificate-reg-table__cert-input{border-top-left-radius:0;border-bottom-left-radius:0}.certificate-reg-number-field--locked{opacity:.5}.certificate-reg-number-field--locked .certificate-reg-table__cert-input{border:none}.certificate-reg-number-field--verified{border:3px solid #16a34a;border-radius:var(--radius-sm)}.certificate-reg-actions{display:grid;gap:.5rem}.certificate-submit-modal{width:min(94vw,560px)}.certificate-submit-modal__body{display:grid;gap:.85rem}.certificate-submit-modal__summary{display:flex;align-items:baseline;gap:.45rem;padding:.65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.certificate-submit-modal__summary strong{font-size:1.2rem}.certificate-submit-modal__check{align-items:flex-start;line-height:1.35}.certificate-submit-modal__check input{margin-top:.18rem;accent-color:var(--brand)}.inline-feedback--warning{border-color:#f59e0b57;background:#f59e0b1c;color:#78350f}@media (min-width: 760px){.certificate-reg-section__tools{width:auto;justify-content:flex-end}.certificate-reg-section__tools .btn{flex:0 1 auto;white-space:nowrap}.certificate-reg-row{grid-template-columns:2.25rem minmax(0,1.5fr) minmax(12rem,.75fr);align-items:center}.certificate-reg-row__cert{grid-column:3;margin-top:0}.certificate-reg-row__edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1.5px solid var(--line);border-radius:999px;padding:.32rem .65rem;display:inline-flex;gap:.3rem;align-items:center;background:var(--surface-1);font-size:.83rem;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s;color:var(--ink)}.chip__checkbox{width:14px;height:14px;margin:0;accent-color:var(--brand);pointer-events:none}.chips__meta{width:100%;font-size:.78rem;color:var(--muted);margin-top:.1rem}.chips__global-toggle{width:100%;font-size:.82rem;color:var(--muted);margin-bottom:.1rem}.chip--active{background:color-mix(in srgb,var(--choice-accent, #93c5fd) 16%,#ffffff);border-color:var(--choice-accent, #93c5fd);color:color-mix(in srgb,var(--choice-accent, #1e40af) 70%,var(--ink))}.chip:active{transform:translateY(1px)}.hint{font-size:.8rem;color:var(--muted);line-height:1.4}.btn-group{display:flex;gap:.4rem;flex-wrap:wrap}.btn-group__item{flex:1;min-width:0;border:1.5px solid var(--line);border-radius:var(--radius);padding:.6rem .75rem;background:var(--surface-1);font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;color:var(--muted);transition:border-color .1s,background .1s,color .1s,transform 80ms;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.3rem;-webkit-tap-highlight-color:rgba(0,86,179,.18)}.btn-group__item:hover{border-color:var(--brand-2);color:var(--ink);background:#f0f9ff}.btn-group__item:active{transform:translateY(1px) scale(.98)}.btn-group__item--active{border-color:var(--choice-accent, var(--brand));background:var(--choice-accent, var(--brand));color:#fff}.btn-group__item--active-ok{border-color:var(--choice-accent, var(--ok));background:var(--choice-accent, var(--ok));color:#fff}.btn-group__item--active-danger{border-color:var(--choice-accent, var(--danger));background:var(--choice-accent, var(--danger));color:#fff}.btn-group__item--active-warn{border-color:var(--choice-accent, var(--warn));background:var(--choice-accent, var(--warn));color:#fff}.btn-group__item.btn-group__item--active:hover,.btn-group__item.btn-group__item--active:active,.btn-group__item.btn-group__item--active:focus-visible{background:var(--choice-accent, var(--brand));border-color:var(--choice-accent, var(--brand));color:#fff}.btn-group__item.btn-group__item--active-ok:hover,.btn-group__item.btn-group__item--active-ok:active,.btn-group__item.btn-group__item--active-ok:focus-visible{background:var(--choice-accent, var(--ok));border-color:var(--choice-accent, var(--ok));color:#fff}.btn-group__item.btn-group__item--active-danger:hover,.btn-group__item.btn-group__item--active-danger:active,.btn-group__item.btn-group__item--active-danger:focus-visible{background:var(--choice-accent, var(--danger));border-color:var(--choice-accent, var(--danger));color:#fff}.btn-group__item.btn-group__item--active-warn:hover,.btn-group__item.btn-group__item--active-warn:active,.btn-group__item.btn-group__item--active-warn:focus-visible{background:var(--choice-accent, var(--warn));border-color:var(--choice-accent, var(--warn));color:#fff}.chip.chip--active:hover,.chip.chip--active:active,.chip.chip--active:focus-visible{background:color-mix(in srgb,var(--choice-accent, #93c5fd) 88%,#ffffff);border-color:var(--choice-accent, #93c5fd);color:color-mix(in srgb,var(--choice-accent, #1e40af) 70%,var(--ink))}.selected-asset{display:flex;align-items:center;gap:.6rem;border:1.5px solid var(--ok);border-radius:var(--radius);padding:.65rem .85rem;background:#f0fdf4}.selected-asset__info{flex:1;min-width:0}.selected-asset__name{font-weight:700;font-size:.9rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-asset__meta{font-size:.75rem;color:var(--muted);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-asset__clear{border:0;background:transparent;padding:.3rem;cursor:pointer;color:var(--muted);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s,color .12s}.selected-asset__clear:hover{background:#fee2e2;color:var(--danger)}.asset-lookup{display:grid;gap:.4rem}.asset-lookup__toggle{font-size:.875rem}.asset-lookup__menu{max-height:210px;overflow:auto;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface-1);box-shadow:var(--shadow-md)}.asset-lookup__menu .asset-lookup__toggle{padding:.5rem .7rem;border-bottom:1px solid var(--line)}.asset-lookup__meta{padding:.45rem .7rem;color:var(--muted);font-size:.83rem}.asset-lookup__item{width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:.55rem .7rem;display:grid;gap:.1rem;cursor:pointer;transition:background .1s}.asset-lookup__item:hover{background:var(--bg)}.asset-lookup__item:last-child{border-bottom:0}.asset-lookup__item span{font-size:.8rem;color:var(--muted)}.actions-footer{position:fixed;left:0;right:0;bottom:0;padding:.75rem .875rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom,.75rem));background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);display:grid;gap:.5rem;box-shadow:0 -2px 12px #00000012;z-index:30}.screen--has-footer{padding-bottom:calc(7rem + env(safe-area-inset-bottom,0px))}.history-list{display:grid;gap:0;margin-top:.5rem}.history-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:.5rem;align-items:center;padding:.55rem 0;border-bottom:1px solid var(--line)}.history-row:last-child{border-bottom:0}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot--ok{background:var(--ok)}.status-dot--warn{background:var(--warn)}.status-dot--idle{background:var(--idle)}.ok-text{color:var(--ok);font-weight:600;font-size:.875rem}.error-text{color:var(--danger);font-weight:600;font-size:.875rem}.inline-feedback{display:flex;align-items:flex-start;gap:.4rem;border-radius:var(--radius);padding:.55rem .75rem;font-size:.85rem;font-weight:600;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.inline-feedback--ok{background:#dcfce7;color:#15803d}.inline-feedback--error{background:#fff1f2;color:#7f1d1d;border:1px solid #fda4af;box-shadow:0 4px 12px #7f1d1d1f}.inline-feedback--info{background:#dbeafe;color:#1d4ed8}.login-screen{min-height:100svh;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;background:radial-gradient(900px 500px at -10% -5%,rgba(0,86,179,.3),transparent 55%),radial-gradient(800px 400px at 110% 10%,rgba(8,145,178,.25),transparent 50%),#0d1f2d}.login-logo{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1.5rem 1.25rem;color:#fff;text-align:center}.login-logo h1{font-size:1.5rem;color:#fff;margin:0}.login-logo p{color:#c8e1ffbf;font-size:.85rem;max-width:280px}.login-logo__icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand-2));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0056b380}.login-card{background:#ffffff12;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-xl);padding:1.5rem;width:min(400px,calc(100vw - 2rem));box-shadow:0 20px 60px #0006;display:grid;gap:1rem;margin-bottom:2rem}.login-card label{color:#dcf0ffe6}.login-card .field{background:#ffffff1a;border-color:#ffffff2e;color:#fff}.login-card .field::placeholder{color:#fff6}.login-card .field option{background:#0d2d45;color:#fff}.login-card .field:focus{border-color:#0891b2b3;box-shadow:0 0 0 3px #0891b233;background:#ffffff24}.login-remember{display:flex;align-items:center;gap:.5rem;color:#dcf0ffe6;font-size:.9rem}.login-remember input{accent-color:var(--brand-2)}.login-link{color:#c8e1ffeb;font-size:.88rem;font-weight:600;text-align:center;text-decoration:none;padding:.25rem 0}.login-link:hover{color:#fff;text-decoration:underline}pre{background:#f8fafc;border-radius:var(--radius);border:1px solid var(--line);padding:.85rem;overflow:auto;max-height:320px;margin:.4rem 0 0;font-size:.8rem;line-height:1.5;font-family:SF Mono,Fira Mono,Consolas,monospace}.section-label{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-top:.25rem}.section-label:after{content:"";flex:1;height:1px;background:var(--line)}.dashboard-greeting{margin:.15rem 0 .2rem;font-size:.86rem;color:var(--muted);letter-spacing:.01em}.dashboard-greeting strong{color:var(--ink)}.dev-note{display:flex;align-items:center;gap:.4rem;background:#fffbeb;border:1px dashed #f59e0b;border-radius:var(--radius-sm);padding:.38rem .65rem;font-size:.73rem;font-weight:600;color:#92400e;margin-bottom:.75rem}.weather-strip{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;padding:.25rem 0 0}.weather-item{display:flex;align-items:center;gap:.35rem;font-size:.875rem;font-weight:500;color:var(--ink)}.weather-item--secondary{font-size:.82rem;color:var(--muted)}.course-date-picker{border:1px solid #ccd0d4;border-radius:10px;padding:.75rem;background:#fff;box-shadow:0 1px 3px #00000012}.course-date-picker__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.course-date-picker__head .btn{min-height:32px;min-width:32px;padding:0}.course-date-picker__month{font-size:.9rem;color:#334155}.course-date-picker__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin-bottom:2px}.course-date-picker__weekdays span{text-align:center;font-size:.64rem;font-weight:700;color:#71717a;letter-spacing:.04em;text-transform:uppercase;padding:.22rem 0}.course-date-picker__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.course-date-picker__blank{display:block;min-height:34px}.course-date-picker__day{position:relative;border:1px solid transparent;border-radius:6px;min-height:34px;background:#f8fafc;color:#1f2937;font-size:.78rem;font-weight:600;cursor:pointer;transition:filter .12s,background .12s,border-color .12s,transform .1s}.course-date-picker__day:hover{background:#f0f7ff;border-color:#b3d4ff}.course-date-picker__day:active{transform:translateY(1px) scale(.98);background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.course-date-picker__day:focus-visible{outline:none;box-shadow:0 0 0 2px #0891b240}.course-date-picker__day--today{border-color:#0073aa}.course-date-picker__day--assigned{background:#d1fae5;border-color:#10b981;color:#064e3b}.course-date-picker__day--course{background:#eff6ff;border-color:#93c5fd;color:#1e3a8a}.course-date-picker__day--complete:after{content:"✓";position:absolute;top:2px;right:2px;width:13px;height:13px;border-radius:999px;background:#16a34a;color:#fff;font-size:9px;font-weight:800;line-height:13px;text-align:center;box-shadow:0 1px 3px #00000038}.course-date-picker__day--selected{background:linear-gradient(130deg,var(--brand) 0%,var(--brand-2) 100%);border-color:#0b63a8;color:#f0faff}.course-date-picker__day--selected.course-date-picker__day--assigned{box-shadow:inset 0 0 0 1px #fff6}.course-list{display:grid;gap:0;margin-top:.25rem}.course-row{display:grid;grid-template-columns:3rem minmax(0,1fr) auto auto;gap:.5rem .75rem;align-items:center;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.83rem}.course-row:last-child{border-bottom:0}.course-row__time{font-weight:700;color:var(--ink);font-size:.82rem;font-variant-numeric:tabular-nums}.course-row__name{font-weight:600;color:var(--ink)}.course-row__instructor{font-size:.78rem;color:var(--muted);grid-column:2;margin-top:-.3rem;padding-bottom:.1rem}.course-row__pax{font-size:.8rem;color:var(--muted);white-space:nowrap}.candidate-list{display:grid;gap:0;margin-top:.25rem}.candidate-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--line);font-size:.875rem}.candidate-row:last-child{border-bottom:0}.candidate-row__name{flex:1;font-weight:500;color:var(--ink);min-width:0;display:grid;gap:.12rem}.candidate-row__name>div:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-row__flags{display:flex;gap:.3rem;flex-shrink:0}.candidate-row__phone{font-size:.76rem;color:var(--muted);font-weight:500}.candidate-row--tooltip{position:relative}.candidate-row--tooltip:focus{outline:2px solid rgba(8,145,178,.35);outline-offset:2px}.candidate-row__tooltip{position:absolute;left:0;bottom:calc(100% + .45rem);width:min(270px,calc(100vw - 2rem));min-width:0;max-width:min(92vw,360px);background:var(--surface-1);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .75rem;box-shadow:var(--shadow-md);font-size:.77rem;line-height:1.35;display:grid;gap:.3rem;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;z-index:16}.candidate-row:hover .candidate-row__tooltip,.candidate-row:focus-within .candidate-row__tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.candidate-row__tooltip-name{font-weight:700;font-size:.82rem;color:var(--ink)}.candidate-row__tooltip-course{color:var(--muted);font-size:.73rem;margin-bottom:.1rem}.candidate-row__tooltip-item{color:var(--ink);word-break:break-word}.candidate-row__call{display:inline-flex;align-items:center;gap:.3rem;color:var(--brand);font-weight:700;width:fit-content}.candidate-row--detailed{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:.5rem;row-gap:.45rem}.candidate-row__details{grid-column:1 / -1;border-top:1px dashed var(--line);padding-top:.45rem;display:grid;gap:.26rem}.candidate-row__detail{font-size:.78rem;color:var(--ink);line-height:1.35;word-break:break-word}.flag{display:inline-flex;align-items:center;gap:.2rem;border-radius:999px;padding:.15rem .5rem;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.flag--u18{background:#fff7ed;color:#b45309;border:1px solid #fde68a}.flag--status{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.flag--priority{background:#fff7ed;color:#b45309;border:1px solid #fed7aa}.flag--medical{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}@media (max-width: 640px){.candidate-row{align-items:flex-start;flex-wrap:wrap}.candidate-row__name{order:2;width:100%;text-align:left}.candidate-row__flags{order:1;width:100%;min-width:0;justify-content:flex-start;flex-wrap:wrap;row-gap:.35rem;column-gap:.35rem}.candidate-list .flag{white-space:normal;overflow-wrap:anywhere;max-width:100%}}.instructor-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));margin-top:.25rem}.instructor-chip{position:relative;display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.instructor-chip__avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.03em}.instructor-chip__name{font-weight:600;font-size:.82rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instructor-chip__role{font-size:.72rem;color:var(--muted);margin-top:.05rem}.instructor-chip--tooltip{cursor:default}.instructor-chip--tooltip:focus{outline:2px solid rgba(8,145,178,.35);outline-offset:2px}.instructor-chip__tooltip{position:absolute;left:0;bottom:calc(100% + .5rem);width:min(240px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);background:var(--surface-1);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;font-size:.78rem;line-height:1.4;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:.35rem;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;z-index:15}.instructor-chip:hover .instructor-chip__tooltip,.instructor-chip:focus-within .instructor-chip__tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.instructor-chip__tooltip-header{display:flex;align-items:center;gap:.55rem;margin-bottom:.2rem}.instructor-chip__avatar--sm{width:28px;height:28px;font-size:.6rem;flex-shrink:0}.instructor-chip__tooltip-name{font-weight:700;font-size:.82rem;color:var(--ink)}.instructor-chip__tooltip-role{font-size:.72rem;color:var(--muted)}.instructor-chip__tooltip-shift{font-size:.75rem;color:var(--muted);padding-top:.1rem;border-top:1px solid var(--line)}.instructor-chip__tooltip-email{font-size:.75rem;color:var(--muted);word-break:break-all}.instructor-chip__call{display:inline-flex;align-items:center;gap:.3rem;color:var(--brand);font-weight:700;font-size:.78rem;width:fit-content}.tide-widget{display:flex;flex-direction:column;gap:.65rem}.tide-widget__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tide-widget__head-right{display:inline-flex;align-items:center;gap:.5rem}.tide-tabs{display:flex;background:var(--surface-2);border-radius:var(--radius-sm);padding:.18rem;gap:.15rem}.tide-tab{border:none;background:transparent;border-radius:calc(var(--radius-sm) - 2px);padding:.28rem .8rem;font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer;transition:background .14s,color .14s,box-shadow .14s;font-family:inherit}.tide-tab--active{background:var(--surface-1);color:var(--ink);box-shadow:var(--shadow-sm)}.tide-widget__credit{font-size:.72rem;color:var(--brand-2);font-weight:600;white-space:nowrap;flex-shrink:0}.fluvial-flag{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--line);background:var(--surface-2)}.fluvial-flag svg{width:18px;height:18px}.fluvial-flag--red{color:#b91c1c}.fluvial-flag--yellow{color:#ca8a04}.fluvial-flag--green{color:#15803d}.fluvial-flag--black{color:#111827}.tide-widget__body{display:flex;flex-direction:column;gap:.65rem}.tide-widget__info{display:flex;flex-direction:column;gap:.55rem}.tide-widget__footer{display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem;border-top:1px solid var(--line);padding-top:.5rem;margin-top:.1rem}.tide-chart{width:100%;height:auto;display:block;border-radius:var(--radius-sm);overflow:visible;background:var(--surface-2)}.tide-chart-placeholder{min-height:80px;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--muted);background:var(--surface-2);border-radius:var(--radius-sm)}.tide-state-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .45rem;border-radius:999px;background:var(--surface-2);color:var(--muted);border:1px solid var(--line);align-self:flex-start}.tide-state-badge--flood{background:#0056b31a;color:var(--brand);border-color:#0056b333}.tide-state-badge--ebb{background:#64748b1a;color:var(--idle);border-color:#64748b33}.tide-richmond-grid{display:flex;gap:.5rem;flex-wrap:wrap}.tide-richmond-stat{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .75rem;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);min-width:76px}.tide-richmond-stat__label{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.tide-richmond-stat__value{font-size:1.05rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.tide-richmond-stat__value--warn{color:var(--warn)}.tide-legend{display:flex;flex-wrap:wrap;gap:.75rem}.tide-legend__item{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;color:var(--muted)}.tide-legend__swatch{width:14px;height:4px;border-radius:2px;flex-shrink:0}.tide-legend__swatch--predicted{background:#47739a}.tide-legend__swatch--richmond{background:#16a34a}.tide-legend__swatch--observed{width:8px;height:8px;border-radius:50%;background:var(--ok)}.tide-hwlw-row{display:flex;flex-wrap:wrap;gap:.4rem}.tide-hwlw-chip{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.4rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--line);min-width:64px}.tide-hwlw-chip--hw{border-color:#0056b34d;background:#0056b30f}.tide-hwlw-chip--lw{border-color:var(--line);background:var(--surface-2)}.tide-hwlw-chip__type{font-size:.65rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tide-hwlw-chip--hw .tide-hwlw-chip__type{color:var(--brand)}.tide-hwlw-chip--lw .tide-hwlw-chip__type{color:var(--muted)}.tide-hwlw-chip__time{font-size:.9rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.tide-hwlw-chip__date{font-size:.67rem;color:var(--muted)}.tide-hwlw-chip__height{font-size:.82rem;font-weight:700;color:var(--ink)}.tide-widget__source{font-size:.68rem;color:var(--muted);margin:0;line-height:1.4}.tide-widget__source a{color:var(--muted);text-decoration:underline}.tide-flow-stamp{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex-shrink:0}.tide-flow-stamp__inner{position:relative;width:80px;height:93px;overflow:hidden;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2)}.tide-flow-stamp__inner iframe{position:absolute;top:0;left:0;width:382px;height:442px;border:none;transform:scale(.209);transform-origin:top left;pointer-events:none}.tide-flow-stamp__label{font-size:.62rem;color:var(--muted);text-decoration:none;white-space:nowrap}.tide-flow-stamp__label:hover{text-decoration:underline}.card--no-pad{padding:0;overflow:hidden}.card-header{padding:1rem 1rem .75rem}.card-footer-note{padding:.6rem 1rem;border-top:1px solid var(--line)}.weather-synopsis{padding:.6rem 1rem 0;margin:0;font-size:.82rem;color:var(--muted);line-height:1.5}.weather-synopsis__link{color:var(--brand);white-space:nowrap}.windy-embed{position:relative;display:block;height:280px;width:100%}.windy-embed iframe{width:100%;height:100%;border:0;display:block}.windy-scroll-guard{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:all;cursor:default}.rota-copy-btn{display:inline-flex;align-items:center;gap:.3rem;margin-left:.5rem;padding:.15rem .5rem;font-size:.72rem;font-weight:500;color:var(--brand);background:transparent;border:1px solid var(--brand);border-radius:var(--radius-sm);cursor:pointer;vertical-align:middle;line-height:1.4}.rota-copy-btn:hover{background:color-mix(in srgb,var(--brand) 8%,transparent)}.question--prefilled{border-color:var(--warn);border-style:dashed;background:color-mix(in srgb,var(--warn) 4%,var(--surface-1))}.question--prefilled input,.question--prefilled textarea,.question--prefilled select,.question--prefilled .field{border-color:var(--warn);border-style:dashed}.prefill-notice{font-size:.75rem;color:color-mix(in srgb,var(--warn) 80%,var(--ink));font-weight:500;margin:0 0 .35rem;padding:0}.btn--verify{display:inline-flex;align-items:center;gap:.35rem;margin-top:.4rem;padding:.4rem .9rem;border-radius:var(--radius);border:1.5px solid var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent);color:var(--ok);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.btn--verify:hover{background:color-mix(in srgb,var(--ok) 18%,transparent)}.asset-conflict-warn{display:flex;align-items:flex-start;gap:.4rem;background:color-mix(in srgb,var(--warn) 10%,#fff);border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-radius:var(--radius-sm);padding:.5rem .65rem;font-size:.8rem;color:color-mix(in srgb,var(--warn) 80%,var(--ink));margin-top:.4rem}.asset-conflict-warn svg{flex-shrink:0;margin-top:1px;color:var(--warn)}.asset-conflict-warn a{color:var(--brand);text-decoration:underline}.section-desc{font-size:.8rem;color:var(--muted);margin:.25rem 0 .5rem;line-height:1.5}.section-desc code{font-family:monospace;background:var(--surface-2);padding:.1em .3em;border-radius:3px;font-size:.85em}.cert-list{display:grid;gap:.42rem}.cert-list--compact .cert-row__label{font-size:.75rem}.cert-row{display:flex;align-items:center;justify-content:space-between;gap:.55rem}.cert-row__label{font-size:.82rem;color:var(--ink);font-weight:600}.cert-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.17rem .52rem;font-size:.72rem;font-weight:700;white-space:nowrap;border:1px solid transparent}.cert-pill--green{color:#166534;background:#dcfce7;border-color:#bbf7d0}.cert-pill--amber{color:#92400e;background:#fef3c7;border-color:#fde68a}.cert-pill--red{color:#991b1b;background:#fee2e2;border-color:#fecaca}.cert-pill--none{color:#475569;background:#f1f5f9;border-color:#e2e8f0}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d1f2d75;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:60}.dialog-card{width:min(620px,100%);max-height:88vh;overflow:auto;background:var(--surface-1);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:1rem;display:grid;gap:.85rem}.dialog-card--warning{border-color:#dc262659;box-shadow:0 20px 60px #7f1d1d2e}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dialog-close{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.dialog-close:hover{background:var(--bg)}.dialog-subtitle{margin:0;font-size:.82rem;color:var(--muted)}.dialog-section{display:grid;gap:.5rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.shift-list{display:grid;gap:.45rem}.shift-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.55rem .62rem;display:grid;gap:.15rem}.shift-row__date{font-size:.8rem;font-weight:700;color:var(--ink)}.shift-row__time{font-size:.78rem;color:var(--ink)}.shift-row__meta{font-size:.72rem;color:var(--muted)}.compliance-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}.compliance-table{width:100%;border-collapse:collapse;min-width:700px;font-size:.82rem}@media (max-width: 640px){.compliance-table{min-width:560px}.candidate-row__tooltip{right:0;left:auto;width:min(260px,calc(100vw - 2rem));max-width:calc(100vw - 2rem)}.instructor-chip__tooltip{right:0;left:auto;width:min(240px,calc(100vw - 2rem));max-width:calc(100vw - 2rem)}}.compliance-table th,.compliance-table td{padding:.55rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.compliance-table th{background:var(--surface-2);color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em}.compliance-table tr:last-child td{border-bottom:0}.compliance-instructor-name{font-weight:700;color:var(--ink)}.compliance-instructor-meta{font-size:.72rem;color:var(--muted);margin-top:.1rem}.notice-category{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;border:1px solid var(--line);padding:.18rem .48rem;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.notice-category--safety{color:#991b1b;background:#fee2e2;border-color:#fecaca}.notice-category--ntm{color:#92400e;background:#fef3c7;border-color:#fde68a}.notice-category--info{color:#075985;background:#e0f2fe;border-color:#bae6fd}.notice-home-card{gap:.7rem}.notice-home-list{max-height:220px;overflow-y:auto;padding-right:.15rem}.notice-home-list,.notice-list,.notice-target-list,.notice-audit,.notice-event-list{display:grid;gap:.55rem}.notice-home-row{display:grid;grid-template-columns:auto 1fr;gap:.2rem .55rem;align-items:center;width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.58rem .65rem;color:inherit;cursor:pointer;font:inherit;text-align:left;transition:border-color .14s ease,transform .14s ease,background .14s ease}.notice-home-row:hover{border-color:#c9d8e8;background:#eef4fb;transform:translateY(-1px)}.notice-home-row__title{min-width:0;color:var(--ink);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-home-row--read .notice-home-row__title{color:var(--muted);font-style:italic;font-weight:500}.notice-home-row__meta{grid-column:2;color:var(--muted);font-size:.74rem}.notice-home-row--read .notice-home-row__meta{font-style:italic}.notice-toggle{display:inline-flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.74rem;font-weight:700;white-space:nowrap}.notice-toggle input{accent-color:var(--brand)}.notice-editor{display:grid;gap:.75rem}.notice-field{display:grid;gap:.35rem;color:var(--ink);font-size:.82rem;font-weight:700}.notice-field-help{color:var(--muted);font-size:.7rem;font-weight:600;line-height:1.35}.notice-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.65rem}.notice-editor-toolbar{display:flex;gap:.35rem;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0;background:var(--surface-2);padding:.45rem}.notice-editor-toolbar button{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);cursor:pointer}.notice-editor-toolbar button:hover{border-color:#c9d8e8;background:#eef4fb}.notice-editor-body{min-height:190px;max-height:420px;overflow:auto;outline:none;border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius) var(--radius);background:#fff;padding:.8rem;font-weight:400}.notice-editor-body:focus{box-shadow:0 0 0 3px #0056b31f}.notice-editor-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}.notice-autosave-note{color:var(--muted);font-size:.76rem;text-align:right}.notice-target-controls{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}.notice-target-select{min-width:min(220px,100%);flex:1 1 180px}.notice-target-list{display:flex;flex-wrap:wrap}.notice-target-list--compact{gap:.3rem}.notice-target-chip{display:inline-flex;align-items:center;gap:.25rem;width:fit-content;border:1px solid #d5e2ef;border-radius:999px;background:#f8fbff;color:#334155;padding:.2rem .5rem;font-size:.72rem;font-weight:700}button.notice-target-chip{cursor:pointer}button.notice-target-chip:hover{color:var(--danger);border-color:#dc26263d;background:#fff1f2}.notice-row{display:grid;grid-template-columns:minmax(0,1fr);gap:.65rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.75rem}.notice-row__main{display:grid;gap:.28rem;min-width:0}.notice-row__main h3{margin:0}.notice-row__actions{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}.notice-row__audit{display:flex;gap:.45rem;flex-wrap:wrap;color:var(--muted);font-size:.74rem}.notice-modal{width:min(720px,100%);padding:0;overflow:hidden}.notice-modal .dialog-head{padding:1rem 1rem 0;align-items:flex-start}.notice-modal__body{max-height:min(58vh,560px);overflow:auto;margin:0 1rem;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.notice-modal__actions{position:sticky;bottom:0;background:linear-gradient(180deg,#ffffffe0,#fff 40%);border-top:1px solid var(--line);padding:.8rem 1rem 1rem}.rich-notice-body{color:var(--ink);font-size:.92rem;line-height:1.6;word-break:break-word}.rich-notice-body p,.rich-notice-body div,.rich-notice-body ul,.rich-notice-body ol,.rich-notice-body blockquote,.rich-notice-body pre{margin:0 0 .75rem}.rich-notice-body p,.rich-notice-body div{color:var(--ink);font-size:.92rem}.rich-notice-body strong,.rich-notice-body b{font-weight:800}.rich-notice-body ul,.rich-notice-body ol{padding-left:1.2rem}.rich-notice-body a{color:var(--brand);font-weight:700;text-decoration:underline}.rich-notice-body img{display:block;max-width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line);margin:.75rem 0}.rich-notice-body blockquote{border-left:4px solid var(--brand-2);background:#ecfeff;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.6rem .75rem;color:#164e63}.rich-notice-body pre,.rich-notice-body code{background:#f1f5f9;border-radius:var(--radius-sm)}.rich-notice-body pre{overflow:auto;padding:.75rem}.notice-audit-grid{display:grid;gap:.55rem}.notice-audit-person,.notice-event-row{display:grid;gap:.18rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:.62rem;color:var(--muted);font-size:.78rem}.notice-audit-person strong,.notice-event-row strong{color:var(--ink)}.notice-event-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.notice-event-row span{color:var(--ink);font-weight:800;text-transform:capitalize}.notice-event-row time{grid-column:1 / -1}@media (min-width: 740px){.windy-embed{height:340px}.screen{padding-left:1.25rem;padding-right:1.25rem}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.actions-footer{grid-template-columns:repeat(2,minmax(0,1fr));position:static;border-top:none;border-radius:var(--radius-lg);border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--card);box-shadow:var(--shadow-sm);padding:.75rem}.screen--has-footer{padding-bottom:1rem}.bottom-nav__item{font-size:.75rem}.notice-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.notice-row__audit{grid-column:1 / -1}.notice-event-row{grid-template-columns:1fr auto auto}.notice-event-row time{grid-column:auto}.tide-widget__body{flex-direction:row;align-items:flex-start;gap:1rem}.tide-widget__info{flex:0 0 210px;min-width:0}.tide-widget__chart-panel{flex:1;min-width:0}.tide-widget__chart-panel .tide-chart{width:100%;height:auto}}@media (min-width: 1024px){.bottom-nav{left:50%;transform:translate(-50%);width:1024px;border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0}}
