@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexSans-Regular.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/IBMPlexSans-Medium.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/IBMPlexSans-SemiBold.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/IBMPlexSans-Bold.woff2) format("woff2")}:root{color-scheme:light;--bg0: #0f2a22;--bg1: #16352c;--bg2: #1f463a;--ink: #f3f7f2;--muted: #b7cfc4;--accent: #f0c35a;--accent-ink: #1a2e18;--ok: #7dcea0;--warn: #e8a87c;--danger: #e07a7a;--glass: rgba(255, 255, 255, .06);--line: rgba(243, 247, 242, .14);--radius: 18px;--font-ui: "IBM Plex Sans", system-ui, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-ui);--font-body: var(--font-ui);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-ui);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#2f6b55 0%,transparent 55%),radial-gradient(900px 500px at 110% 10%,#3d5a3a 0%,transparent 50%),linear-gradient(165deg,var(--bg0),var(--bg1) 45%,#0c211b);background-attachment:fixed}button,input,select,textarea{font:inherit}a{color:var(--accent)}.app-shell{width:min(440px,100%);margin:0 auto;min-height:100dvh;padding:1.1rem 1.1rem calc(5.5rem + var(--safe-bottom));position:relative}.brand-lockup{display:flex;flex-direction:column;gap:.15rem;animation:rise .52s ease both}.brand-lockup .product{font-family:var(--font-display);font-weight:700;font-size:clamp(1.7rem,6vw,2.15rem);letter-spacing:-.02em;line-height:1.05}.brand-lockup .tagline{color:var(--muted);font-size:.92rem}.brand-wordmark{display:block;width:min(280px,78vw);height:auto}.brand-wordmark--compact{width:min(168px,52vw)}.brand-mark{display:block;width:1.75rem;height:1.75rem;flex-shrink:0}.product-subtitle{font-family:var(--font-display);font-weight:600;font-size:clamp(1.35rem,5vw,1.7rem);letter-spacing:-.02em;color:var(--ink);margin-top:.15rem}.product-subtitle--inline{font-size:1.15rem;margin-top:0;align-self:flex-end;padding-bottom:.12rem}.brand-header-row{display:flex;align-items:flex-end;gap:.45rem}.brand-page-row{display:flex;align-items:center;gap:.55rem}.brand-page-row .product{font-size:clamp(1.45rem,5.5vw,1.85rem)}.hero-panel{margin-top:1.4rem;padding:1.35rem 1.2rem 1.5rem;border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:linear-gradient(160deg,rgba(255,255,255,.08),transparent 42%),var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:rise .64s ease both}.clock-line{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;color:var(--muted);font-size:.86rem}.timer-face{margin:1rem 0 1.25rem;font-family:var(--font-display);font-size:clamp(2.6rem,12vw,3.4rem);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.timer-face.running{animation:pulseGlow 2.4s ease-in-out infinite}.primary-actions{display:grid;gap:.75rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;padding:.95rem 1.2rem;font-weight:600;cursor:pointer;transition:transform .14s ease,filter .14s ease,background .16s ease}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink);font-size:1.05rem}.btn-secondary{background:#ffffff1a;color:var(--ink);border:1px solid var(--line)}.btn-danger{background:#e07a7a33;color:#ffd5d5;border:1px solid rgba(224,122,122,.45)}.field{display:grid;gap:.35rem;margin-bottom:.85rem}.field label{font-size:.8rem;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border-radius:12px;border:1px solid var(--line);background:#00000038;color:var(--ink);padding:.75rem .85rem}.chip-row{display:flex;flex-wrap:wrap;gap:.45rem}.chip{border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);padding:.4rem .75rem;font-size:.82rem;cursor:pointer}.chip.active{background:#f0c35a2e;color:var(--accent);border-color:#f0c35a80}.nav-bar{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(440px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;padding:.55rem .6rem calc(.55rem + var(--safe-bottom));background:#0c211beb;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20}.nav-bar a{text-decoration:none;color:var(--muted);text-align:center;font-size:.72rem;font-weight:500;padding:.35rem .2rem;border-radius:12px}.nav-bar a.active{color:var(--accent);background:#f0c35a1f}.section{margin-top:1.25rem;animation:rise .48s ease both}.section h2{margin:0 0 .65rem;font-family:var(--font-display);font-size:1.25rem;font-weight:600}.list{display:grid;gap:.55rem}.list-item{border:1px solid var(--line);border-radius:var(--radius);padding:.85rem .95rem;background:var(--glass)}.list-item strong{display:block;margin-bottom:.2rem}.muted{color:var(--muted);font-size:.86rem}.banner{margin:.85rem 0 0;padding:.65rem .8rem;border-radius:12px;font-size:.86rem}.banner.info{background:#7dcea026;color:var(--ok)}.banner.warn{background:#e8a87c29;color:var(--warn)}.banner.error{background:#e07a7a29;color:#ffc9c9}.login-screen{min-height:100dvh;display:grid;align-content:center;padding:1.5rem 1.2rem 2rem;width:min(420px,100%);margin:0 auto}.login-screen .brand-wordmark{width:min(320px,88vw)}.login-screen .product-subtitle{font-size:clamp(1.55rem,6vw,2rem)}.login-screen form{margin-top:1.75rem;animation:rise .7s ease both}.top-meta{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.35rem}.ghost-link{background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline;padding:0}.admin-shell{width:min(560px,100%)}.list-link{display:block;text-decoration:none;color:inherit;transition:border-color .16s ease,background .16s ease}.list-link:hover{border-color:#f0c35a73;background:#f0c35a0f}.check-row{display:flex;align-items:center;gap:.55rem;color:var(--muted);font-size:.9rem}.subhead{margin:0 0 .75rem;font-family:var(--font-display);font-size:1.05rem;font-weight:600}.day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.day-cell{display:grid;gap:.25rem;font-size:.72rem;color:var(--muted);text-align:center}.day-cell input{width:100%;border-radius:10px;border:1px solid var(--line);background:#00000038;color:var(--ink);padding:.45rem .2rem;text-align:center}.tag-swatch{display:inline-block;width:.7rem;height:.7rem;border-radius:999px;margin-right:.35rem;vertical-align:middle}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 24px rgba(240,195,90,.35)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.team-shell .section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.65rem}.team-shell .section-head h2{margin:0}.team-shell .range-toggle{display:inline-flex;gap:.25rem;border:1px solid var(--line);border-radius:10px;padding:.15rem;background:var(--glass)}.team-shell .range-toggle button{border:0;background:transparent;color:var(--muted);padding:.35rem .7rem;border-radius:8px;cursor:pointer;font-size:.82rem}.team-shell .range-toggle button.active{background:#f0c35a2e;color:var(--accent)}.team-shell .member-card-head{display:grid;gap:.15rem;width:100%;text-align:left;background:none;border:0;color:inherit;cursor:pointer;padding:0;font:inherit}.team-shell .member-meta{display:block;margin-top:.25rem}.team-shell .member-toggle{display:block;margin-top:.35rem;text-decoration:underline}.team-shell .booking-lines{list-style:none;margin:.65rem 0 0;padding:.55rem 0 0;border-top:1px solid var(--line);display:grid;gap:.35rem}.team-shell .booking-lines li{font-size:.84rem;color:var(--muted)}.team-shell .member-table-wrap{display:none}@media (min-width: 900px){.team-shell.app-shell{width:min(1100px,100%)}.team-shell .member-cards{display:none}.team-shell .member-table-wrap{display:block;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--glass)}.team-shell .member-table{width:100%;border-collapse:collapse;font-size:.88rem;font-variant-numeric:tabular-nums}.team-shell .member-table th,.team-shell .member-table td{padding:.55rem .75rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.team-shell .member-table th{color:var(--muted);font-weight:500;font-size:.78rem;letter-spacing:.02em}.team-shell .member-table tr:last-child td{border-bottom:0}.team-shell .member-table tr.expanded td{background:#ffffff08}.team-shell .member-expand{font-weight:600;color:var(--ink);text-decoration:none}.team-shell .member-table .booking-lines{margin:0;padding:0;border:0}.team-shell .member-month-bookings{display:none}}.team-shell .member-month-link{margin:.55rem 0 0;font-size:.86rem}.team-shell .month-nav{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.85rem}.team-shell .month-nav .btn{padding:.45rem .75rem;font-size:.82rem;border-radius:10px;background:var(--glass);color:var(--ink);border:1px solid var(--line)}.team-shell .trend-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-top:.65rem}.team-shell .trend-cell{border:1px solid var(--line);border-radius:12px;padding:.55rem .65rem;background:var(--glass);display:grid;gap:.15rem}.team-shell .saldo-plus{color:var(--ok)}.team-shell .saldo-minus{color:var(--warn)}
