:root{color-scheme:light;--ink: #2b1a2f;--ink-soft: #6b5570;--ink-faint: #9c8aa0;--surface: #fdf7f7;--surface-raised: #ffffff;--surface-sunken: #f4ecee;--border: #ead9dd;--border-strong: #d9c2c8;--accent: #c4577c;--accent-soft: #fbe9ef;--accent-strong: #a13a5f;--accent-ink: #ffffff;--state-free: #3f9d68;--state-free-soft: #e8f5ed;--state-leave: #2f8f8a;--state-leave-soft: #e4f3f2;--state-standby: #c08a2e;--state-standby-soft: #faf0dd;--state-duty: #3d72c4;--state-duty-soft: #e9f0fb;--state-away: #8a7f95;--state-away-soft: #efecf2;--state-sick: #b8563f;--state-sick-soft: #fae9e5;--state-unknown: #c9bfcc;--state-unknown-soft: #f3eff4;--radius-sm: 10px;--radius: 16px;--radius-lg: 22px;--shadow-card: 0 1px 2px rgba(43, 26, 47, .06), 0 8px 24px rgba(43, 26, 47, .06);--shadow-dock: 0 -1px 0 var(--border), 0 -12px 32px rgba(43, 26, 47, .07);--dock-height: 64px;--page-gutter: 16px}:root.theme-dark{color-scheme:dark;--ink: #f3e9ee;--ink-soft: #bda8b6;--ink-faint: #8c7a88;--surface: #171018;--surface-raised: #221a24;--surface-sunken: #120c13;--border: #332836;--border-strong: #47394b;--accent: #e78aa8;--accent-soft: #38222c;--accent-strong: #f2a6bf;--accent-ink: #24121a;--state-free: #6fce97;--state-free-soft: #1b2f23;--state-leave: #62cac4;--state-leave-soft: #142d2c;--state-standby: #e0b463;--state-standby-soft: #2e2617;--state-duty: #77a8ef;--state-duty-soft: #1a2436;--state-away: #a99cb3;--state-away-soft: #262230;--state-sick: #e08a72;--state-sick-soft: #31201c;--state-unknown: #5b4f5e;--state-unknown-soft: #1d181f;--shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 28px rgba(0, 0, 0, .35);--shadow-dock: 0 -1px 0 var(--border), 0 -12px 32px rgba(0, 0, 0, .45)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}h1,h2,h3,h4{margin:0;font-weight:640;letter-spacing:-.01em}p{margin:0}ul{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.app-frame{position:relative;display:flex;flex-direction:column;height:100dvh;overflow:hidden}.app-wallpaper{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(90% 60% at 12% 0%,var(--accent-soft),transparent 70%),radial-gradient(70% 50% at 100% 8%,var(--state-leave-soft),transparent 72%);opacity:.85}.primary-tab-header{position:relative;z-index:1;flex:none;padding:max(12px,env(safe-area-inset-top)) var(--page-gutter) 8px}.primary-tab-header__accessible-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.primary-tab-header__titles{display:grid}.primary-tab-header__titles>span{grid-area:1 / 1;font-size:28px;font-weight:680;letter-spacing:-.02em;opacity:0;transform:translateY(4px);transition:opacity .22s ease,transform .22s ease}.primary-tab-header__titles>span.is-visible{opacity:1;transform:none}.app-frame__content{position:relative;z-index:1;flex:1;min-height:0}.primary-tab-pager{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}.primary-tab-pager::-webkit-scrollbar{display:none}.primary-tab-pager__page{flex:0 0 100%;height:100%;overflow-y:auto;scroll-snap-align:start;-webkit-overflow-scrolling:touch}.page{display:flex;flex-direction:column;gap:16px;padding:8px var(--page-gutter) calc(var(--dock-height) + env(safe-area-inset-bottom) + 24px)}.tab-dock{position:relative;z-index:2;flex:none;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;height:calc(var(--dock-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--surface-raised) 88%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-dock)}.tab-dock__indicator{position:absolute;top:6px;left:0;width:25%;height:34px;border-radius:var(--radius);background:var(--accent-soft);transform:translate(calc(var(--tab-progress, 0) * 100%));transition:background .2s ease}.tab-dock__item{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:11px;font-weight:560;color:var(--ink-faint);text-decoration:none;transition:color .18s ease}.tab-dock__item>span:first-child{font-size:17px;line-height:1.1}.tab-dock__item--active{color:var(--accent-strong)}.section-heading{font-size:13px;font-weight:620;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}.panel{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-card)}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel__name{display:flex;flex-direction:column;gap:2px;flex:1}.panel__name-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}.panel__name input{font:inherit;font-size:19px;font-weight:640;color:inherit;padding:4px 0;border:0;border-bottom:1px solid var(--border);background:none}.panel__name input:focus-visible{outline:none;border-bottom-color:var(--accent)}.panel__base{padding:4px 10px;border-radius:999px;background:var(--surface-sunken);font-size:13px;font-weight:620;letter-spacing:.04em}.panel__coverage{font-size:14px;color:var(--ink-soft)}.panel__coverage--empty{color:var(--ink-faint)}.panel__hint{font-size:13px;line-height:1.5;color:var(--ink-soft)}.panel__error{font-size:14px;color:var(--state-sick)}.panel__actions{display:flex;flex-wrap:wrap;gap:8px}.panel__paste summary{font-size:14px;font-weight:560;color:var(--accent-strong);cursor:pointer}.panel__paste textarea{width:100%;margin:8px 0;padding:10px;font:inherit;font-size:14px;color:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken);resize:vertical}.button{padding:10px 16px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:600;transition:transform .12s ease,opacity .12s ease}.button:active{transform:scale(.97)}.button:disabled{opacity:.55;cursor:default}.button--ghost{background:var(--surface-sunken);color:var(--ink)}.button--quiet{background:none;color:var(--ink-faint);padding-left:8px;padding-right:8px}.notice{padding:10px 14px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-strong);font-size:14px}.field{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px}.field select{font:inherit;font-size:14px;color:inherit;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken)}.field--switch input{width:20px;height:20px;accent-color:var(--accent)}.segmented{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface-sunken)}.segmented__option{flex:1;padding:8px;border:0;border-radius:999px;background:none;font-size:14px;text-transform:capitalize;color:var(--ink-soft)}.segmented__option--active{background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-card)}.empty-state{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;padding:48px 20px;color:var(--ink-soft)}.empty-state__mark{font-size:40px;color:var(--accent)}.empty-state h2{font-size:20px;color:var(--ink)}.empty-state__hint{font-size:13px;color:var(--ink-faint)}.next-window{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:var(--radius-lg);background:linear-gradient(160deg,var(--accent),var(--accent-strong));color:var(--accent-ink);box-shadow:var(--shadow-card)}.next-window__countdown{font-size:13px;font-weight:620;text-transform:uppercase;letter-spacing:.08em;opacity:.85}.next-window__range{font-size:23px;letter-spacing:-.02em;text-wrap:balance}.next-window__headline{font-size:16px;opacity:.95}.next-window__detail{font-size:14px;opacity:.85}.next-window__badge{align-self:flex-start;margin-top:6px;padding:4px 10px;border-radius:999px;background:#fff3;font-size:12px;font-weight:560}.summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.summary-tile{display:flex;flex-direction:column;gap:2px;align-items:center;padding:14px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised)}.summary-tile__value{font-size:21px;font-weight:660;letter-spacing:-.02em}.summary-tile__label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint)}.window-list{display:flex;flex-direction:column;gap:10px}.window-card{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border);border-left:4px solid var(--state-free);border-radius:var(--radius);background:var(--surface-raised);box-shadow:var(--shadow-card)}.window-card--evening,.window-card--morning{border-left-color:var(--state-standby)}.window-card--brief{border-left-color:var(--state-away)}.window-card__header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.window-card__header h4{font-size:16px}.window-card__days{font-size:12px;font-weight:620;color:var(--ink-faint)}.window-card__headline{font-size:14px;color:var(--ink-soft)}.window-card__days-list{display:flex;flex-direction:column;gap:4px;font-size:13px}.window-card__days-list li{display:flex;justify-content:space-between;gap:10px}.window-card__day-date{color:var(--ink)}.window-card__day-detail{color:var(--ink-faint);text-align:right}.window-card__footer{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:3px 9px;border-radius:999px;background:var(--surface-sunken);font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--ink-soft)}.chip--layover{background:var(--state-away-soft);color:var(--state-away)}.chip--tentative{background:var(--state-standby-soft);color:var(--state-standby)}.month-switch{display:flex;align-items:center;justify-content:space-between;gap:10px}.month-switch h2{font-size:17px}.month-switch button{width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:var(--surface-raised);font-size:18px;line-height:1}.month-switch button:disabled{opacity:.35;cursor:default}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;font-size:11px;font-weight:620;text-align:center;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;aspect-ratio:1;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised)}.calendar-cell--blank{border:0;background:none}.calendar-cell__day{font-size:14px;font-weight:560}.calendar-cell__states{display:flex;gap:3px}.calendar-cell__mark{position:absolute;top:2px;right:4px;font-size:10px;color:var(--accent)}.calendar-cell--matched{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.calendar-cell--whole-day,.calendar-cell--most-of-day{border-color:var(--accent)}.calendar-cell--tentative{border-style:dashed}.calendar-cell--today{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-cell--selected{background:var(--accent);color:var(--accent-ink)}.calendar-cell--selected .calendar-cell__mark{color:var(--accent-ink)}.state-dot{width:7px;height:7px;border-radius:50%;background:var(--state-unknown)}.state-dot--free{background:var(--state-free)}.state-dot--leave{background:var(--state-leave)}.state-dot--standby{background:var(--state-standby)}.state-dot--duty{background:var(--state-duty)}.state-dot--away{background:var(--state-away)}.state-dot--sick{background:var(--state-sick)}.state-dot--unknown{background:var(--state-unknown)}.day-detail{min-height:96px}.day-detail__hint{padding:20px;text-align:center;font-size:14px;color:var(--ink-faint)}.day-detail__card{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);box-shadow:var(--shadow-card)}.day-detail__card h3{font-size:16px}.day-detail__verdict{font-size:14px;color:var(--ink-soft)}.day-detail__verdict--yes{color:var(--accent-strong);font-weight:600}.day-detail__people{display:grid;grid-template-columns:1fr 1fr;gap:12px}.day-detail__overlap{font-size:13px;color:var(--ink-soft)}.day-detail__caution{font-size:13px;color:var(--state-sick)}.person-day{display:flex;flex-direction:column;gap:3px;font-size:13px}.person-day__name{display:flex;align-items:center;gap:6px;font-weight:620}.person-day__label{color:var(--ink-soft)}.person-day__station{font-size:11px;letter-spacing:.06em;color:var(--ink-faint)}.person-day__flights{margin-top:4px;display:flex;flex-direction:column;gap:2px;font-size:11px;color:var(--ink-faint)}.legend{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--ink-faint)}.legend__item{display:flex;align-items:center;gap:5px;text-transform:capitalize}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}.primary-tab-pager{scroll-behavior:auto}}
