@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{--app-frame-max-width: 1440px;--app-frame-inline-gutter: 1rem;--bg: #080809;--bg-elevated: #101012;--bg-panel: #141416;--bg-panel-strong: #1a1a1d;--bg-soft: #0d0d0f;--surface-accent: rgba(255, 122, 26, .1);--text: #eceef2;--text-strong: #ffffff;--muted: #9b9ca4;--line: rgba(255, 255, 255, .07);--line-strong: rgba(255, 255, 255, .14);--card-text: #f6f7f9;--card-text-muted: #b4b6be;--brand: #ff7a1a;--brand-deep: #ff5a1f;--brand-soft: rgba(255, 122, 26, .18);--success: #56d39a;--danger: #ff6b6b;--shadow: 0 28px 64px rgba(0, 0, 0, .28);--activity-bike: #3dd9b5;--activity-brick: #76c741;--activity-hyrox: #ff8787;--activity-race: var(--brand);--activity-run: #dfd660;--activity-strength: #c4ccda;--activity-swim: #46c2ff;--activity-default: #c4ccda;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at top left,rgba(255,122,26,.06),transparent 20%),linear-gradient(180deg,#070708,#0b0b0d)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.18),transparent 72%);mask-image:linear-gradient(180deg,rgba(0,0,0,.18),transparent 72%)}::selection{background:#ff7a1a42}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid rgba(255,122,26,.72);outline-offset:3px}code{font-family:Cascadia Code,Consolas,Courier New,monospace}#root{min-height:100vh}a{color:inherit}table{width:100%;border-collapse:collapse}th,td{padding:.85rem .9rem;border-bottom:1px solid var(--line);text-align:left}th{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.app-frame{position:relative;width:min(var(--app-frame-max-width),calc(100% - (var(--app-frame-inline-gutter) * 2)));margin:0 auto;padding:1rem 0 3rem}.app-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border:1px solid rgba(255,255,255,.03);border-radius:28px;background:#ffffff03}.site-header,.dashboard-hero,.auth-layout,.toolbar-card,.overview-grid,.calendar-grid,.hero-stat-grid,.overview-primary,.overview-rail,.stack-grid,.button-row,.session-list,.calendar-session-stack,.event-grid,.phase-track,.legend-list,.auth-form,.toolbar-tabs,.toolbar-actions,.calendar-nav,.dialog-meta,.dialog-body,.page-shell,.hero-copy,.hero-actions{display:grid;gap:1rem}.page-shell{gap:1.1rem}.plan-shell{position:relative}.page-brand,.page-brand-copy,.page-plan-summary{display:grid}.page-brand{grid-template-columns:auto 1fr;align-items:center;gap:.75rem}.page-brand-copy,.page-plan-summary{gap:.2rem}.site-header{grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);align-items:end;gap:1rem;padding:.8rem 0 1.25rem}.site-brand,.site-header-copy{display:grid;gap:.3rem}.site-brand{grid-template-columns:auto 1fr;align-items:center;gap:.85rem}.brand-mark{width:.95rem;height:3rem;border-radius:999px;background:var(--brand);box-shadow:none}.brand-mark--compact{width:.75rem;height:2.2rem}.floating-navbar{position:sticky;top:1rem;z-index:12}.floating-navbar__bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.7rem;align-items:center;padding:.56rem 1rem;border-radius:999px;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--bg-panel) 70%,transparent);box-shadow:0 24px 58px #0000004d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.floating-navbar__bar .page-brand{gap:.6rem}.floating-navbar__bar .page-brand-copy{gap:.08rem}.floating-navbar__bar .brand-mark--compact{width:.65rem;height:1.8rem}.floating-navbar__bar .page-app-title{font-size:1rem}.floating-navbar__bar .site-kicker{line-height:1}.floating-navbar__brand{min-width:0}.floating-navbar__tabs{display:flex;align-items:center;justify-content:center;gap:1rem}.floating-nav-button{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.3rem .78rem;border:0;border-radius:999px;background:transparent;color:var(--card-text-muted)}.floating-nav-button:hover{background:#ff7a1a1f;color:var(--text-strong)}.floating-nav-button--active{background:#ff7a1a47;color:var(--text-strong)}.floating-navbar__actions{display:flex;align-items:center;justify-content:end;gap:.3rem}.floating-navbar__menu-toggle,.floating-navbar__close-toggle{display:none;width:2.1rem;height:2.1rem;padding:0;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--text-strong)}.floating-navbar__menu-toggle:hover,.floating-navbar__close-toggle:hover{background:#ff7a1a1f}.floating-navbar__menu-toggle{flex-direction:column;gap:.24rem}.floating-navbar__menu-line{width:.9rem;height:2px;border-radius:999px;background:currentColor}.floating-navbar__close-toggle{font-size:.95rem}.floating-navbar__user-menu{display:flex}.floating-navbar__user-menu .user-menu-trigger{width:2.1rem;height:2.1rem;font-size:.76rem}.floating-navbar__mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto 1fr auto;gap:1.5rem;padding:1rem;background:var(--bg-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);will-change:transform,opacity}.floating-navbar__mobile-menu[data-state=opening],.floating-navbar__mobile-menu[data-state=open]{animation:floating-navbar-mobile-in .26s cubic-bezier(.22,1,.36,1) forwards}.floating-navbar__mobile-menu[data-state=closing]{animation:floating-navbar-mobile-out .26s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}.floating-navbar__mobile-header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.floating-navbar__mobile-links{display:grid;align-content:start;gap:.85rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.12)}.floating-nav-button--stacked{width:100%;justify-content:start;text-align:left;padding:.85rem 1rem;font-size:1rem}.floating-navbar__mobile-footer{display:flex;align-items:end;justify-content:stretch;min-height:6rem}.floating-navbar__mobile-footer .user-menu{width:100%}.floating-navbar__mobile-footer .user-menu-trigger{width:100%;border-radius:18px}.floating-navbar__mobile-footer .user-menu-panel{top:auto;right:0;bottom:calc(100% + .75rem);width:100%}@keyframes floating-navbar-mobile-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes floating-navbar-mobile-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-title,.page-app-title,.page-plan-summary h2,.panel-card h2,.panel-card h1,.panel-card h3,.panel-card h4,.dashboard-hero h2,.auth-card h1,.auth-card h2,.session-dialog h2{font-family:IBM Plex Sans,Segoe UI,sans-serif;font-weight:500;letter-spacing:-.02em}.site-title{margin:0;font-size:clamp(2rem,3.6vw,3.6rem);line-height:.98;font-weight:500}.page-app-title{margin:0;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1}.page-plan-summary h2{margin:0;font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.02}.site-kicker,.eyebrow,.metric-label,.phase-badge{margin:0;color:var(--brand);font-size:.6rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.site-summary,.muted-copy,.status-copy,.rest-note,.hero-meta-card p,.feature-copy,.field-help{color:var(--muted)}.panel-card,.calendar-week,.week-focus-day,.calendar-day,.session-inline-card,.session-button,.mini-panel,.info-card,.zone-card,.phase-card,.dialog-panel,.hero-stat,.hero-meta-card,.notice-card{color:var(--card-text)}.info-card{display:flex;flex-direction:column;gap:.45rem}.panel-card .muted-copy,.calendar-week .muted-copy,.week-focus-day span,.calendar-day span,.event-card p,.phase-card p,.field-help,.rest-note,.session-button-meta,.session-inline-date{color:var(--card-text-muted)}.panel-card .content{font-size:.92rem;color:var(--card-text-muted)}.site-summary{margin:0;max-width:36rem;font-size:.96rem;line-height:1.55}.site-badge,.event-countdown,.week-stat,.session-chip,.session-chip--recovery,.view-tab,.week-link,.identity-chip,.primary-button,.secondary-button,.ghost-button,.dialog-close,.legend-chip{font-size:.84rem;font-weight:500}.site-badge,.identity-chip,.event-priority,.week-stat,.session-chip,.session-chip--recovery,.legend-chip,.phase-badge{width:fit-content;border:1px solid var(--line);border-radius:999px;padding:.35rem .62rem;background:#ffffff08}.site-badge{color:var(--text)}.auth-layout,.overview-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.85fr)}.panel-card,.dashboard-hero,.session-dialog{border:1px solid var(--line);border-radius:22px;background:var(--bg-panel);box-shadow:0 18px 40px #00000038}.panel-card{padding:1.15rem}.state-card{max-width:760px}.state-card--error{border-color:#ff6b6b59}.dashboard-hero{grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);gap:1rem;padding:1.2rem;background:var(--bg-panel)}.hero-actions{align-content:start}.user-menu{position:relative}.user-menu-trigger{width:3rem;height:3rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,122,26,.28);border-radius:50%;background:linear-gradient(180deg,#ff7a1a3d,#ff7a1a24);color:var(--text-strong);font-size:1rem;font-weight:600;letter-spacing:.02em;box-shadow:inset 0 1px #ffffff14;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.user-menu-trigger:hover,.user-menu-trigger[aria-expanded=true]{border-color:#ff7a1a7a;background:linear-gradient(180deg,#ff7a1a4d,#ff5a1f2e)}.user-menu-panel{position:absolute;top:calc(100% + .75rem);right:0;z-index:5;width:min(18rem,calc(100vw - 3rem));display:grid;gap:.85rem;padding:.95rem;border:1px solid var(--line-strong);border-radius:18px;background:#101012f5;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.user-menu-email{margin:0;margin-left:.5rem;color:var(--card-text-muted);font-size:.75rem;line-height:1.5;overflow-wrap:anywhere}.user-menu-actions{display:grid;gap:.45rem}.user-menu-action{width:100%;display:flex;align-items:center;justify-content:start;padding:.78rem .88rem;border:1px solid var(--line);border-radius:14px;background:#ffffff08;color:var(--text);font-size:.86rem;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}.user-menu-action:hover{transform:translateY(-1px);border-color:#ff7a1a52;background:#ff7a1a14}.user-menu-action--danger{color:#ffb3b3}.user-menu-action--danger:hover{border-color:#ff6b6b52;background:#ff6b6b14;color:#ffd6d6}.hero-summary,.feature-copy{margin:0;font-size:.95rem;line-height:1.5}.hero-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-stat{gap:.3rem;padding:.9rem;min-height:100%;background:#ffffff06}.hero-stat strong,.hero-stat span{display:block}.hero-meta-card{padding:.9rem;border:1px solid var(--line);border-radius:18px;background:#ffffff05}.hero-meta-card p,.field-help,.event-card p,.dialog-panel p,.dialog-panel .rich-copy,.status-copy{margin:0}.button-row--stacked{gap:.6rem}.toolbar-card{gap:0;padding:0;align-items:stretch;overflow:hidden}.primary-button,.secondary-button,.ghost-button,.dialog-close,.session-inline-card,.session-button{border:1px solid transparent;border-radius:16px;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}.secondary-button,.ghost-button,.dialog-close{padding:.72rem .92rem;background:#ffffff05;border-color:var(--line);color:var(--text)}.primary-button{padding:.76rem .98rem;background:var(--brand);color:#130b04}.secondary-button:hover,.dialog-close:hover,.ghost-button:hover,.primary-button:hover,.session-button:hover,.session-inline-card:hover{transform:translateY(-1px)}.ghost-button{background:transparent;color:var(--muted)}.section-heading{display:grid;gap:.22rem;margin-bottom:.85rem}.section-heading h3,.dashboard-hero h2,.panel-card h2,.panel-card h1,.panel-card h3,.panel-card h4,.auth-card h1,.auth-card h2,.session-dialog h2{margin:0}.section-heading--split{grid-template-columns:minmax(0,1fr) auto;align-items:start}.section-heading--split p{margin-bottom:.3rem}.today-heading-meta{display:grid;gap:.4rem;justify-items:end;text-align:right}.anchor-week-grid,.event-grid,.phase-track{display:grid;gap:.75rem}.anchor-week-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.event-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.phase-track{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.week-focus-day,.mini-panel,.info-card,.zone-card,.event-card,.dialog-panel,.notice-card,.calendar-day,.phase-card{border:1px solid var(--line);border-radius:18px;background:#ffffff06;padding:.9rem}.week-focus-day,.calendar-day,.session-inline-card,.session-button,.event-card,.mini-panel,.zone-card,.phase-card,.dialog-panel{display:grid;gap:.45rem}.event-card,.phase-card{align-content:start;gap:.35rem;padding:.78rem .82rem;font-size:.86rem}.phase-card{min-height:100%;grid-template-rows:auto auto 1fr auto}.week-focus-day{align-content:start}.session-inline-card,.session-button{width:100%;text-align:left;position:relative;padding:.82rem .82rem .82rem 1.64rem;background:color-mix(in srgb,var(--session-accent, var(--activity-default)) 11%,var(--bg-panel) 89%);border-color:color-mix(in srgb,var(--session-accent, var(--activity-default)) 30%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--session-accent, var(--activity-default)) 10%,rgba(255,255,255,.02))}.session-inline-card:before,.session-button:before{content:"";position:absolute;left:.76rem;top:.72rem;bottom:.72rem;width:.2rem;border-radius:999px;background:var(--session-accent, var(--activity-default))}.session-inline-date,.session-button-meta{font-size:.6rem}.session-button-summary,.event-priority,.week-stat,.field-help{font-size:.78rem}.session-inline-card strong,.session-button strong,.calendar-day strong,.week-focus-day strong,.event-card strong,.phase-card h4,.hero-stat strong{color:var(--card-text);font-weight:500}.event-card strong,.phase-card h4,.phase-card>strong{font-size:.92rem;line-height:1.25}.phase-card h4,.phase-card p{margin:0}.event-card p,.phase-card p{font-size:.8rem;line-height:1.4}.session-button{gap:.3rem}.session-list,.calendar-session-stack{gap:.55rem}.week-focus-day .session-list{align-content:start}.session-button-topline,.event-card-header,.calendar-day-header,.day-summary-header,.toolbar-actions,.calendar-header-meta,.dialog-header{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline}.event-card-header{gap:.5rem;align-items:center}.phase-card-header{display:flex;justify-content:space-between;gap:.65rem;align-items:center}.text-list{margin:0;padding-left:1rem}.action-list li,.text-list li{margin-bottom:.45rem}.action-list li:last-child,.text-list li:last-child{margin-bottom:0}.coach-note,.focus-note{display:flex;flex-direction:column;gap:.6rem;margin-top:1rem;padding:.85rem .95rem;border:1px solid rgba(255,122,26,.18);border-radius:18px;background:#ff7a1a0b;font-size:.8rem;color:var(--card-text-muted)}.coach-note--calendar p:last-child{margin-bottom:0}.event-priority,.week-stat,.session-chip,.session-chip--recovery,.legend-chip,.phase-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;padding:.28rem .56rem;line-height:1}.phase-badge{align-self:start;justify-self:start;flex-shrink:0;white-space:nowrap}.phase-hours{margin-top:auto;padding-top:.2rem}.week-stat{flex:0 0 auto;white-space:nowrap}.week-stat--recovery,.session-chip--recovery{border-color:#ffd1663d;background:#ffd1661f;color:#ffe39a}.session-chip,.legend-chip{border-color:color-mix(in srgb,var(--session-accent, var(--activity-default)) 5%,var(--line));background:color-mix(in srgb,var(--session-accent, var(--activity-default)) 5%,var(--bg-panel));color:color-mix(in srgb,var(--session-accent, var(--activity-default)) 50%,var(--card-text-muted))}.session-chip--muted{border-color:var(--line);background:#ffffff0a;color:var(--text)}.legend-list{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.calendar-shell{width:min(100%,1120px);margin-inline:auto;overflow:clip}.calendar-today-jump{position:fixed;left:50%;transform:translate(-50%,-.35rem);z-index:11;padding:.3rem .72rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg-elevated);font-size:.72rem;font-weight:600;letter-spacing:.12em;box-shadow:0 16px 28px #0000003d;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .18s ease,transform .18s ease,top .3s cubic-bezier(.4,0,.2,1),visibility 0s linear .18s}.calendar-today-jump--visible{transform:translate(-50%);opacity:1;pointer-events:auto;visibility:visible;transition:opacity .18s ease,transform .18s ease,top .3s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s}.calendar-today-jump:hover{background:var(--brand-deep)}.calendar-summary-strip,.calendar-day-list{display:grid;gap:.75rem}.calendar-summary-strip{grid-template-columns:repeat(auto-fit,minmax(11rem,max-content));margin-top:.2rem}.calendar-week-marker{display:flex;justify-content:flex-start;gap:.9rem;align-items:center;padding:.1rem 0 .2rem}.calendar-week-marker--past{opacity:.45}.calendar-week-marker-copy{display:flex;align-items:center;gap:.5rem;flex:0 0 auto;min-width:0}.calendar-week-marker-rule{flex:1 1 auto;min-width:2rem;height:1px;background:color-mix(in srgb,var(--muted) 55%,transparent)}.calendar-week-marker--current .calendar-week-label{color:var(--brand)}.calendar-week-marker--current .calendar-week-info{border-color:color-mix(in srgb,var(--brand) 72%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand)}.calendar-week-marker--current .calendar-week-marker-rule{background:color-mix(in srgb,var(--brand) 55%,transparent)}.week-marker-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:fit-content;border:1px solid var(--line);border-radius:999px;padding:.12rem .42rem;background:#ffffff08;font-size:.6rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;line-height:1}.week-marker-chip--muted{border-color:var(--line);background:#ffffff0a;color:var(--text)}.week-marker-chip--recovery{border-color:#ffd1663d;background:#ffd1661f;color:#ffe39a}.calendar-week-label{margin:0;color:var(--muted);font-size:.68rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.calendar-week-info{position:relative;display:inline-flex;align-items:center;justify-content:center;width:.95rem;height:.95rem;border:1px solid color-mix(in srgb,var(--muted) 72%,transparent);border-radius:999px;background:color-mix(in srgb,var(--muted) 10%,transparent);color:var(--muted);font-size:.58rem;font-weight:600;line-height:1;cursor:help}.calendar-week-info:after{content:attr(data-tooltip);position:absolute;left:0;top:calc(100% + .5rem);width:min(22rem,72vw);padding:.65rem .75rem;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#0a0e18f5;color:var(--text);font-size:.8rem;font-weight:400;letter-spacing:normal;line-height:1.45;text-transform:none;box-shadow:0 20px 32px #00000047;opacity:0;pointer-events:none;transform:translateY(-.25rem);transition:opacity .16s ease,transform .16s ease;z-index:2}.calendar-week-info:hover:after,.calendar-week-info:focus-visible:after{opacity:1;transform:translateY(0)}.timeline-session-count{color:var(--card-text-muted);font-size:.78rem;line-height:1.35}.timeline-day{min-height:0;display:grid;gap:.45rem;align-content:start;scroll-margin-top:1.25rem}.timeline-day{padding:0 0 .15rem}.timeline-day--start{padding-top:.1rem}.timeline-day--past{opacity:.45}.timeline-day--today{scroll-margin-top:1.5rem;gap:.75rem}.timeline-day--today .timeline-day-divider-copy{padding:.2rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--brand) 15%,transparent);box-shadow:inset 0 0 0 1px var(--brand)}.timeline-day--today .timeline-day-divider{gap:0}.timeline-day--today .timeline-day-divider-copy,.timeline-day--today .timeline-flag--today{position:relative;z-index:1}.timeline-day-divider{display:flex;align-items:center;vertical-align:middle;flex-wrap:wrap;gap:.7rem}.timeline-day-divider-copy{display:inline-flex;align-items:center;gap:.65rem;flex-wrap:wrap;flex:0 0 auto;min-width:0}.timeline-day-date{color:var(--text-strong);font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}.timeline-day--today .timeline-day-date{color:var(--brand)}.timeline-day-rule{flex:1 1 auto;min-width:2rem;height:1px;background:#ffffff1a}.timeline-day-flags{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.timeline-flag{border-color:transparent}.timeline-flag--today{background:color-mix(in srgb,var(--brand) 15%,transparent);color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);font-size:.6rem}.timeline-day--today .timeline-flag--today{margin-left:-1px}.timeline-day--today .timeline-day-rule{background:var(--brand)}.calendar-rest-state{display:grid;align-content:center;min-height:4.55rem;padding:.82rem .82rem .82rem 1.64rem;border:1px solid var(--line);border-radius:16px;background:#ffffff05}.rest-note{margin:0}.notice-card{background:#ffffff0a}.notice-error{border-color:#ff6b6b47;background:#ff6b6b14}.auth-page{min-height:calc(100vh - 10rem);align-items:center}.auth-page-header{width:100%}.auth-card,.auth-sidecar{min-height:100%}.auth-card{padding:1.4rem}.auth-sidecar{background:#ffffff05}.auth-redirect-card p{margin:.35rem 0 0}.auth-form{margin:1rem 0 .8rem}.field-label{font-size:.84rem;font-weight:500}.text-input{width:100%;padding:.82rem .92rem;border:1px solid var(--line-strong);border-radius:14px;background:#ffffff06;color:var(--text)}.text-input::placeholder{color:#7b8697}.status-copy{font-size:.84rem}.success-copy{color:var(--success)}.error-copy{color:var(--danger)}.table-scroll{overflow-x:auto}.compact-list,.rich-copy p,.dialog-panel h3{margin:0}.rich-copy{display:grid;gap:.5rem}.rich-copy ul,.rich-copy ol{margin:0;padding-left:1.2rem}.modal-backdrop{--modal-edge-padding: 1.25rem;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--modal-edge-padding);background:#04060ad1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.session-dialog{width:min(760px,100%);max-height:min(88vh,calc(100vh - (var(--modal-edge-padding) * 2)),860px);max-height:min(88dvh,calc(100dvh - (var(--modal-edge-padding) * 2)),860px);display:grid;gap:0;overflow:auto;padding:0;border-color:color-mix(in srgb,var(--session-accent, var(--line)) 2%,var(--line));border-radius:24px;background:color-mix(in srgb,var(--session-accent, var(--bg-panel)) 2%,var(--bg-panel));box-shadow:0 26px 54px #00000057;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--session-accent, var(--brand)) 42%,#353841 58%) rgba(255,255,255,.06);color-scheme:dark}.session-dialog::-webkit-scrollbar{width:12px}.session-dialog::-webkit-scrollbar-track{background:#ffffff0a}.session-dialog::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:color-mix(in srgb,var(--session-accent, var(--brand)) 34%,#2f3137 66%);background-clip:padding-box}.session-dialog::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--session-accent, var(--brand)) 48%,#363942 52%);background-clip:padding-box}.session-dialog::-webkit-scrollbar-corner{background:transparent}.session-dialog .dialog-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:0;padding:1.05rem 1.1rem .95rem;border-bottom:1px solid color-mix(in srgb,var(--session-accent, var(--brand)) 2%,var(--line))}.dialog-title-block{display:grid;gap:.3rem;min-width:0}.dialog-header .muted-copy{color:var(--card-text-muted)}.dialog-body{gap:.75rem;padding:1rem 1.1rem 1.1rem}.dialog-meta{grid-template-columns:repeat(auto-fit,minmax(0,max-content));gap:.55rem}.dialog-panel{padding:.9rem .95rem;border-radius:16px;border-color:color-mix(in srgb,var(--session-accent, var(--line)) 3%,var(--line));background:color-mix(in srgb,var(--session-accent, var(--bg-panel)) 3%,var(--bg-panel-strong));box-shadow:none}.dialog-panel h3{font-size:.92rem;margin-bottom:.4rem;color:color-mix(in srgb,var(--session-accent, var(--text-strong)) 5%,var(--card-text))}.dialog-panel p,.dialog-panel li{font-size:.8rem;color:color-mix(in srgb,var(--session-accent, var(--text)) 10%,var(--card-text-muted));margin-left:1.2rem}.session-dialog .dialog-close{width:auto;height:auto;padding:.1rem;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;align-self:start;justify-self:end;background:transparent;border-color:transparent;color:var(--card-text-muted)}.session-dialog .dialog-close svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.6}.session-dialog .dialog-close:hover,.session-dialog .dialog-close:focus-visible{background:transparent;border-color:transparent;color:var(--text-strong)}@media(max-width:1160px){.site-header,.dashboard-hero,.auth-layout,.overview-grid,.toolbar-card{grid-template-columns:1fr}.hero-stat-grid,.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){:root{--app-frame-inline-gutter: .5rem}.modal-backdrop{--modal-edge-padding: .5rem}.app-frame{width:min(100%,calc(100% - (var(--app-frame-inline-gutter) * 2)));padding:.75rem 0 2rem}.floating-navbar{top:.75rem}.site-brand{align-items:start}.site-title{font-size:clamp(1.8rem,10vw,2.8rem)}.hero-stat-grid,.calendar-grid,.anchor-week-grid,.event-grid,.phase-track,.legend-list{grid-template-columns:1fr}.section-heading--split,.calendar-header,.dialog-header,.calendar-day-header,.day-summary-header,.session-button-topline,.event-card-header,.toolbar-actions{display:grid}.calendar-week-marker{display:flex;align-items:center}.timeline-day-flags{justify-content:start}.timeline-day-divider{align-items:center}.user-menu-panel{width:min(18rem,calc(100vw - 2rem))}.session-dialog .dialog-header{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:1200px){.floating-navbar{top:1rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}.floating-navbar[data-hidden=true]{transform:translateY(calc(-100% - 1.5rem))}.floating-navbar__bar{grid-template-columns:minmax(0,1fr) auto}.floating-navbar__tabs,.floating-navbar__user-menu{display:none}.floating-navbar__menu-toggle,.floating-navbar__close-toggle{display:inline-flex}.floating-navbar__mobile-menu{padding:.9rem}.floating-navbar__mobile-footer .user-menu-panel{width:100%}}
