:root,[data-theme=night]{--bg:#0b1422;--surface:#142235;--surface-strong:#1f3350;--border:#1f3350;--text:#f3f6fa;--text-muted:#b5c3d4;--accent:#8fd3ff;--accent-text:#06111d;--header-sky:#0e1d33;--hero-back:#1a3556;--hero-front:#13294a;--warning-bg:#2a2110;--warning-border:#5c4516;--warning-text:#ffd58a;--pending:#ffb547;--danger:#ff8a8a;--day-free:#1f3350;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=day]{--bg:#f4f6fa;--surface:#fff;--surface-strong:#e3eaf2;--border:#dce4ee;--text:#14202e;--text-muted:#4a5868;--accent:#1f5fa8;--accent-text:#fff;--header-sky:#dcebf7;--hero-back:#a9c8e3;--hero-front:#86aed3;--warning-bg:#fff7e6;--warning-border:#f5d9a0;--warning-text:#7a4b00;--pending:#e08a00;--danger:#b42318;--day-free:#e3eaf2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:400 16px/1.45 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}button{font:inherit;color:inherit}.muted{color:var(--text-muted)}.small{font-size:13px}.splash{place-items:center;min-height:100dvh;margin:0;font-size:32px;font-weight:800;display:grid}.shell{min-height:100dvh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.page{flex-direction:column;gap:16px;max-width:560px;margin:0 auto;padding:16px;display:flex}.page__title{letter-spacing:-.02em;margin:8px 0 0;font-size:28px;font-weight:800}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}.card__title{margin:0 0 12px;font-size:16px}.empty{flex-direction:column;gap:6px;padding:20px 16px;display:flex}.empty p{margin:0}.bottom-nav{padding:8px 4px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav__tab{min-height:48px;color:var(--text-muted);flex-direction:column;align-items:center;gap:2px;font-size:12px;text-decoration:none;display:flex}.bottom-nav__tab.active{color:var(--accent);font-weight:700}.bottom-nav__icon{display:flex;position:relative}.badge{background:var(--pending);color:#2a1a05;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-4px;right:-10px}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:14px;font-weight:600}.input{border:1px solid var(--border);background:var(--surface);width:100%;height:48px;color:var(--text);border-radius:12px;padding:0 14px;font-size:16px}.input:focus-visible,.button:focus-visible,.icon-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.input-with-action{display:block;position:relative}.input-with-action .input{padding-right:52px}.icon-button{width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.button{cursor:pointer;border:0;border-radius:12px;height:48px;font-size:16px;font-weight:700}.button:disabled{opacity:.6;cursor:default}.button--primary{background:var(--accent);color:var(--accent-text)}.button--secondary{border:1px solid var(--border);background:0 0}.form-error{color:var(--danger);margin:0;font-size:14px}.segmented{background:var(--bg);border-radius:14px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.segmented__option{cursor:pointer;background:0 0;border:0;border-radius:10px;height:40px}.segmented__option[aria-checked=true]{background:var(--text);color:var(--bg);font-weight:700}.login{flex-direction:column;min-height:100dvh;display:flex}.login__hero{background:var(--header-sky);align-items:flex-end;height:34dvh;min-height:200px;display:flex}.login__hero svg{width:100%;height:100%;display:block}.login__form{flex-direction:column;flex:1;gap:16px;width:100%;max-width:420px;margin:0 auto;padding:0 24px 32px;display:flex}.login__title{letter-spacing:-.03em;margin:-8px 0 0;font-size:44px;font-weight:800}.login__tagline{color:var(--text-muted);margin:-8px 0 8px}.login__hint{text-align:center;color:var(--text-muted);margin:0;font-size:14px}.page--home{padding-top:0}.home-header{padding:calc(24px + env(safe-area-inset-top)) 16px 72px;background:var(--header-sky);justify-content:space-between;align-items:flex-start;margin:0 -16px;display:flex;position:relative;overflow:hidden}.home-header>div,.avatar{z-index:1;position:relative}.home-header__date{color:var(--text-muted);text-transform:capitalize;margin:0;font-size:14px}.home-header__hello{letter-spacing:-.02em;margin:2px 0 0;font-size:30px;font-weight:800}.home-header__mountains{width:100%;height:110px;position:absolute;inset:auto 0 0}.avatar{border:2px solid var(--accent);background:var(--surface);border-radius:22px;place-items:center;width:44px;height:44px;font-weight:800;text-decoration:none;display:grid}.banner{border-radius:14px;align-items:center;gap:10px;padding:12px 14px;font-size:15px;text-decoration:none;display:flex}.banner--warning{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.banner--pending{background:var(--warning-bg);border:1px solid var(--warning-border)}.banner__action{margin-left:auto;font-weight:700}.banner--pending svg{color:var(--pending);margin-left:auto}.banner__count{background:var(--pending);color:#2a1a05;border-radius:10px;place-items:center;min-width:32px;height:32px;font-weight:800;display:grid}.section-head{justify-content:space-between;align-items:baseline;display:flex}.section-head h2{margin:0;font-size:20px}.text-link{color:var(--accent);font-size:15px;font-weight:700;text-decoration:none}.housings-section{flex-direction:column;gap:12px;margin-top:8px;display:flex}.legend{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px;margin:0;font-size:13px;display:flex}.dot{border-radius:3px;width:14px;height:6px;margin-left:4px;display:inline-block}.dot--booked,.strip__day--booked{background:var(--accent)}.dot--pending,.strip__day--pending{background:repeating-linear-gradient(135deg, var(--pending) 0 3px, transparent 3px 5px)}.dot--option,.strip__day--option{background:0 0;box-shadow:inset 0 0 0 1.5px #c4b5fd}.housing-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.housing-card{flex-direction:column;gap:12px;display:flex}.housing-card__head{align-items:center;gap:12px;display:flex}.housing-card__art{flex-shrink:0;width:56px;height:56px;position:relative}.housing-card__art svg{border-radius:12px;display:block}.housing-card__dot{border:2px solid var(--surface);border-radius:7px;width:14px;height:14px;position:absolute;bottom:-4px;right:-4px}.housing-card__text{flex-direction:column;gap:2px;min-width:0;display:flex}.housing-card__name{font-size:16px;font-weight:700}.housing-card__status{font-size:14px}.chip{background:var(--surface-strong);border-radius:8px;align-self:flex-start;margin-top:4px;padding:3px 8px;font-size:12px;font-weight:600}.strip{grid-template-columns:repeat(14,minmax(0,1fr));gap:3px;display:grid}.strip__day{border-radius:4px;height:8px}.strip__day--free{background:var(--day-free)}.button--link{place-items:center;margin-top:6px;text-decoration:none;display:grid}.page-head{align-items:center;gap:8px;margin-top:8px;display:flex}.page-head .page__title{margin:0}.back-link{width:40px;height:40px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:20px;flex-shrink:0;place-items:center;text-decoration:none;display:grid}.form{flex-direction:column;gap:16px;display:flex}.fieldset{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.fieldset .muted.small{margin:0}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form>.muted.small{margin:0}.theme-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.theme-picker__option{cursor:pointer;text-align:left;border:2px solid var(--border);background:var(--surface);border-radius:12px;padding:0;overflow:hidden}.theme-picker__option[aria-checked=true]{border-color:var(--accent)}.theme-picker__option svg{width:100%;height:56px;display:block}.theme-picker__label{white-space:nowrap;align-items:center;gap:4px;min-width:0;padding:8px 6px;font-size:12px;font-weight:600;display:flex}.theme-picker__dot{border-radius:4px;flex-shrink:0;width:8px;height:8px}.housing-card{text-decoration:none}.page__title--small{font-size:22px}.page-head__meta{margin:0}.notice{background:var(--surface);border:1px solid var(--accent);border-radius:12px;margin:0;padding:12px 14px;font-size:14px}.calendar{flex-direction:column;gap:12px;display:flex}.calendar__nav{justify-content:space-between;align-items:center;display:flex}.calendar__month{text-transform:capitalize;margin:0;font-size:17px}.round-button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:20px;place-items:center;width:40px;height:40px;font-size:22px;line-height:1;display:grid}.round-button:disabled{opacity:.35;cursor:default}.round-button--accent{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar__weekday{text-align:center;color:var(--text-muted);padding-bottom:2px;font-size:12px}.day{aspect-ratio:1;cursor:pointer;background:var(--bg);border:0;border-radius:10px;min-height:40px;font-size:15px;font-weight:600}.day:disabled{cursor:default}.day:disabled:not(.day--booked):not(.day--pending):not(.day--option){opacity:.35}.day--booked{background:var(--accent);color:var(--accent-text)}.day--pending{background:repeating-linear-gradient(135deg, var(--pending) 0 4px, var(--warning-bg) 4px 8px);color:var(--text)}.day--option{box-shadow:inset 0 0 0 2px #c4b5fd}.day--mine{text-underline-offset:3px;text-decoration:underline}.day--selected{background:var(--text);color:var(--bg);box-shadow:none}.dot--selected{background:var(--text)}.sheet{bottom:calc(84px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex;position:sticky;box-shadow:0 8px 24px #00000040}.sheet__head{justify-content:space-between;align-items:flex-start;display:flex}.sheet__head p{margin:0}.sheet__dates{font-size:20px;font-weight:800}.sheet__actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.text-button{cursor:pointer;background:0 0;border:0;padding:4px}.summary{position:relative}.summary p{margin:0}.summary__dates{font-size:18px;font-weight:800}.summary__edit{position:absolute;top:18px;right:16px}.form-card{flex-direction:column;gap:14px;display:flex}.form-card .muted.small{margin:0}.stepper{justify-content:space-between;align-items:center;display:flex}.stepper__controls{align-items:center;gap:14px;display:flex}.stepper__value{text-align:center;min-width:20px;font-size:17px;font-weight:700}.capacity{background:var(--day-free);border-radius:3px;height:6px;overflow:hidden}.capacity__bar{background:var(--accent);height:100%;display:block}select.input{appearance:auto}.textarea{resize:vertical;height:auto;padding:12px 14px;font-family:inherit}.parties{flex-direction:column;gap:12px;display:flex}.parties .card__title,.parties>.muted.small{margin:0}.parties__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.parties__item{background:var(--bg);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.parties__item>div{flex-direction:column;display:flex}.parties__name{font-weight:700}.parties__remove{color:var(--danger);font-size:14px;font-weight:600}.parties__form{flex-direction:column;gap:12px;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip-choice{border:2px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;display:flex}.chip-choice[aria-checked=true]{border-color:var(--accent)}.chip-choice__name{font-size:15px;font-weight:700}.chip-choice__detail{color:var(--text-muted);font-size:12px}
