@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}:root{--ink-900:#0e1b27;--ink-800:#16293c;--ink-700:#22384c;--ink-600:#364e63;--ink-500:#5a7286;--ink-400:#8499ab;--ink-300:#b1c0cd;--ink-200:#d6dfe7;--ink-100:#ebeff3;--shell-pad:20px;--paper:#f4f1eb;--paper-2:#ebe6dc;--paper-3:#ddd6c7;--accent-700:#ad5d05;--accent-600:#d77508;--accent-500:#f08810;--accent-400:#f5a544;--accent-300:#fac17b;--accent-200:#fce0b8;--accent-100:#fdf0dc;--bg:var(--ink-900);--surface:var(--ink-800);--surface-solid:var(--ink-700);--surface-alt:var(--ink-800);--surface-hover:var(--ink-600);--border:#ffffff14;--border-strong:#ffffff29;--text:var(--paper);--text-muted:var(--ink-300);--text-dim:var(--ink-400);--primary:var(--accent-500);--primary-hover:var(--accent-600);--primary-soft:#f0881024;--primary-glow:none;--on-primary:var(--ink-900);--hyrox:var(--accent-500);--hyrox-soft:#f0881024;--kraft:var(--ink-300);--kraft-soft:#b1c0cd1f;--ausdauer:#2f9e6b;--ausdauer-soft:#2f9e6b24;--mobility:var(--ink-400);--mobility-soft:#8499ab1f;--simulation:#d4a017;--simulation-soft:#d4a01724;--success:#2f9e6b;--success-soft:#2f9e6b24;--error:#c5392f;--error-soft:#c5392f29;--warning:#d4a017;--warning-soft:#d4a01724;--radius:12px;--radius-sm:6px;--radius-xs:4px;--radius-pill:999px;--shadow:0 8px 24px #0e1b2773;--shadow-lg:0 8px 24px #0e1b2799;--font:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", "SF Mono", Menlo, Consolas, monospace;--ease:cubic-bezier(.2, .8, .2, 1);--dur-fast:.12s;--dur:.2s;--w-shell:1180px;--w-content:980px;--w-form:760px;--w-board:1400px;--w-dialog-sm:420px;--w-dialog:520px;--w-dialog-lg:640px;--w-workout:640px;--z-dropdown:100;--z-float:150;--z-menu:200;--z-overlay:9000;--z-dialog:9500;--z-modal:10000;--z-toast:10100}.mono,.stat-value,.timer-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}*{box-sizing:border-box}html,body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;min-height:100dvh;margin:0;padding:0;font-size:15px;line-height:1.55}#root{max-width:var(--w-shell);padding:calc(var(--shell-pad) + env(safe-area-inset-top,0px)) calc(var(--shell-pad) + env(safe-area-inset-right,0px)) calc(var(--shell-pad) + env(safe-area-inset-bottom,0px)) calc(var(--shell-pad) + env(safe-area-inset-left,0px));min-height:100dvh;margin:0 auto}main{zoom:var(--reading-zoom,1)}:root.zoom-widens main{width:calc(100% / var(--reading-zoom,1))}.view-wide,.view-content,.view-form{width:100%}.view-content{max-width:var(--w-content);margin-inline:auto}.view-form{max-width:var(--w-form);margin-inline:auto}.help-body p{margin:0 0 10px}.help-body p:last-child{margin-bottom:0}.help-body ol,.help-body ul{margin:0 0 12px;padding-left:22px}.help-body li{margin:0 0 7px}.help-body li:last-child{margin-bottom:0}.help-body h3{color:var(--text);margin:18px 0 8px;font-size:14px;font-weight:700}.help-body>h3:first-child{margin-top:0}.card{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.card-hover{cursor:pointer;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease)}.card-hover:hover{border-color:var(--primary);background:var(--surface-hover)}.btn{border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.01em;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:7px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:background .18s,border-color .18s,opacity .18s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:not(:disabled):hover{background:var(--primary-hover);color:var(--paper)}.btn-secondary{background:var(--surface-alt);color:var(--text);border:1px solid var(--border)}.btn-secondary:not(:disabled):hover{border-color:var(--border-strong);background:var(--surface-hover)}.btn-ghost{color:var(--text-muted);background:0 0;padding:8px 12px}.btn-ghost:not(:disabled):hover{color:var(--text);background:var(--surface-alt)}.btn-danger{background:var(--error-soft);color:#e8837a;border:1px solid #c5392f59}.btn-danger:not(:disabled):hover{background:var(--error);color:var(--paper)}.btn-sm{padding:6px 13px;font-size:12px}.btn-lg{padding:13px 28px;font-size:16px;font-weight:700}.btn-full{width:100%}.input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);outline:none;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.input:focus{border-color:var(--primary)}.input::placeholder{color:var(--text-dim)}select.input{cursor:pointer}.label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.form-group{margin-bottom:18px}.type-badge{text-transform:uppercase;letter-spacing:.07em;border-radius:4px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.type-hyrox{background:var(--hyrox-soft);color:var(--hyrox)}.type-kraft{background:var(--kraft-soft);color:var(--kraft)}.type-ausdauer{background:var(--ausdauer-soft);color:var(--ausdauer)}.type-mobility{background:var(--mobility-soft);color:var(--mobility)}.type-simulation{background:var(--simulation-soft);color:var(--simulation)}.progress-bar{background:var(--surface-alt);border-radius:999px;height:5px;overflow:hidden}.progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .5s}.check-item{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:9px 13px;transition:border-color .15s,background .15s;display:flex}.check-item:hover{border-color:var(--border-strong)}.check-item.checked{border-color:var(--primary);background:var(--primary-soft)}.check-item input[type=checkbox]{display:none}.checkmark{border:1.5px solid var(--border-strong);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;transition:all .15s;display:flex}.check-item.checked .checkmark{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.app-header{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:16px;height:56px;margin-bottom:24px;padding:0 20px;display:flex}.app-header .logo{flex-shrink:0;align-items:center;gap:10px;display:flex}.app-header .logo-mark{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;font-size:16px;font-weight:600;line-height:1;display:flex}.app-header .logo-byline,.logo-byline{letter-spacing:-.01em;text-transform:none;color:var(--text-dim);white-space:nowrap;transition:color var(--dur) var(--ease);align-items:center;font-size:12px;font-weight:500;line-height:1;text-decoration:none;display:flex}.app-header .logo-byline{border-left:1px solid var(--border);align-self:stretch;margin:12px 0;padding-left:10px}.logo-byline:hover{color:var(--text)}.header-nav{flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.nav-btn{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);letter-spacing:.01em;background:0 0;border:none;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.nav-btn:hover{color:var(--text);background:var(--surface-alt)}.nav-btn.active{color:var(--primary);background:var(--primary-soft);font-weight:700}.week-nav{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.week-nav h2{margin:0;font-size:17px;font-weight:700}.week-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.day-card{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:6px;min-height:105px;padding:10px 8px;transition:border-color .18s,background .18s;display:flex;position:relative}.day-card:hover:not(.rest-day){border-color:var(--primary);background:var(--surface-alt)}.day-card.rest-day{opacity:.35;cursor:default}.day-card.completed{border-color:var(--success);background:var(--success-soft)}.day-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700}.day-title{font-size:12px;font-weight:700;line-height:1.3}.day-duration{color:var(--text-muted);font-size:11px}.workout-section{margin-bottom:16px}.workout-section-header{cursor:pointer;background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:12px 16px;transition:border-color .15s;display:flex}.workout-section-header:hover{border-color:var(--border-strong)}.workout-section-title{letter-spacing:.01em;flex:1;font-size:14px;font-weight:700}.workout-section-body{margin-top:6px}.exercise-table{border-collapse:collapse;width:100%}.exercise-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);background:var(--surface);padding:9px 13px;font-size:10px;font-weight:700}.exercise-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:11px 13px;font-size:13px}.exercise-table tr:last-child td{border-bottom:none}.exercise-table tr:hover td{background:var(--surface-alt)}.week-ov-scroll{-webkit-overflow-scrolling:touch;border-radius:var(--radius);overflow-x:auto}@media (width>=769px){.week-ov-scroll{--board-w:min(var(--w-board), calc((100vw - 48px) / var(--reading-zoom,1)));width:var(--board-w);margin-inline:calc(50% - var(--board-w) / 2)}}.week-ov-grid{grid-template-columns:repeat(7,minmax(190px,1fr));gap:8px;min-width:1340px;display:grid}.week-ov-col{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;min-width:0;min-height:160px;padding:10px;transition:border-color .15s,background .15s;display:flex;overflow:hidden}.week-ov-col:hover{border-color:var(--primary);background:var(--surface-alt)}.week-ov-col.week-ov-rest{opacity:.35;cursor:default}.week-ov-col.week-ov-rest:hover{border-color:var(--border);background:var(--surface-solid)}.week-ov-col.week-ov-done{border-color:var(--success);background:var(--success-soft)}.week-ov-day-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:6px;display:flex}.week-ov-day-name{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:800}.week-ov-type-row{align-items:center;gap:6px;margin-bottom:6px;display:flex}.week-ov-rest-body{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.week-ov-table{border-collapse:collapse;width:100%;margin-top:4px;font-size:11px}.week-ov-table th{text-align:left;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);padding:3px 4px 4px;font-size:9px;font-weight:700}.week-ov-table td{color:var(--text);vertical-align:top;border-bottom:1px solid #ffffff0a;padding:4px;font-size:11px;line-height:1.35;overflow:hidden}.week-ov-table tr:last-child td{border-bottom:none}.week-ov-table td:first-child{text-overflow:ellipsis;white-space:nowrap;width:50%;max-width:0;font-weight:600;overflow:hidden}.week-ov-table td:not(:first-child){color:var(--text-muted);white-space:nowrap;width:17%}.coaching-tip{background:var(--primary-soft);border:1px solid #f0881047;border-left:3px solid var(--primary);border-radius:var(--radius-sm);color:var(--text);margin-top:14px;padding:14px 16px;font-size:13px;line-height:1.65}.coaching-tip-label{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px;font-size:10px;font-weight:700}.pr-row{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:14px;margin-bottom:7px;padding:12px 16px;display:flex}.pr-exercise{flex:1;font-size:14px;font-weight:500}.pr-value{color:var(--primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:900}.pr-unit{color:var(--text-muted);font-size:12px}.pr-date{color:var(--text-dim);font-size:11px}.spinner{border:2px solid var(--surface-alt);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-center{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:60px 20px;font-size:13px;display:flex}.alert{border-radius:var(--radius-sm);margin-bottom:14px;padding:11px 15px;font-size:13px;font-weight:500}.alert-error{background:var(--error-soft);color:#e8837a;border:1px solid #c5392f59}.alert-success{background:var(--success-soft);color:#52c091;border:1px solid #2f9e6b59}.alert-info{background:var(--primary-soft);color:var(--accent-400);border:1px solid #f0881047}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.stat-card{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;padding:16px 14px}.stat-value{color:var(--primary);font-variant-numeric:tabular-nums;font-size:30px;font-weight:900;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:11px;font-weight:700}.page-title{letter-spacing:-.3px;margin:0 0 5px;font-size:24px;font-weight:700}.page-subtitle{color:var(--text-muted);margin:0 0 24px;font-size:13px}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-title{letter-spacing:.01em;margin:0;font-size:15px;font-weight:700}.tag{background:var(--surface-alt);color:var(--text-muted);border:1px solid var(--border);border-radius:3px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.divider{background:var(--border);height:1px;margin:18px 0}.empty-state{text-align:center;color:var(--text-muted);padding:56px 20px}.empty-state-icon{color:var(--text-dim);justify-content:center;margin-bottom:12px;display:flex}.empty-state h3{color:var(--text);margin:0 0 7px;font-size:17px;font-weight:700}.empty-state p{margin:0;font-size:13px}.header-nav,.desktop-only{display:none}.menu-zoom{flex-direction:column;gap:8px;padding:8px 4px 10px;display:flex}.menu-zoom-label{color:var(--text-muted);align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.menu-zoom-levels{gap:4px;display:flex}.menu-zoom-btn{border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;color:var(--text-muted);font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;flex:1;padding:7px 2px;font-size:12px;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s}.menu-zoom-btn:hover{color:var(--text);background:var(--surface-alt)}.menu-zoom-btn.active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.admin-tabs{z-index:20;background:var(--bg);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;margin:0 0 20px;padding:10px 0;display:flex;position:sticky;top:0;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font);white-space:nowrap;cursor:pointer;background:0 0;flex:none;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.admin-tab:hover{color:var(--text);background:var(--surface-alt)}.admin-tab.active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.admin-tab-badge{background:var(--primary);min-width:18px;height:18px;color:var(--ink-900);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}@media (width<=560px){.admin-tab{padding:9px 11px}.admin-tab .admin-tab-label{display:none}.admin-tab.active .admin-tab-label{display:inline}}.hamburger{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:flex}.hamburger span{background:var(--text);border-radius:2px;width:22px;height:2px;transition:background .15s;display:block}.hamburger:hover span{background:var(--primary)}.mobile-menu{z-index:var(--z-menu);background:#0009;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.mobile-menu-panel{background:var(--surface-solid);border-left:1px solid var(--border);width:240px;height:100%;padding:calc(24px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) 16px;flex-direction:column;gap:4px;display:flex}.mobile-nav-btn{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text);font-family:var(--font);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:12px 16px;font-size:15px;font-weight:500;transition:background .15s;display:flex}.mobile-nav-btn:hover{background:var(--surface-alt)}.mobile-nav-btn.active{color:var(--primary);background:var(--primary-soft);font-weight:700}@media (width<=768px){#root{--shell-pad:10px}.app-header{padding:0 14px}.week-grid{grid-template-columns:repeat(3,1fr)}.card{padding:16px}.page-title{font-size:20px}.btn-lg{padding:12px 22px;font-size:15px}}@media (width<=480px){.week-grid,.stat-grid{grid-template-columns:repeat(2,1fr)}}.aw-overlay{background:var(--bg);height:100dvh;z-index:var(--z-overlay);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.aw-topbar{padding:calc(12px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) 12px calc(20px + env(safe-area-inset-left,0px));background:var(--surface-solid);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.aw-timer-total{font-variant-numeric:tabular-nums;color:var(--primary);letter-spacing:.04em;font-size:22px;font-weight:900;line-height:1.1}.aw-phase-badge{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-top:2px;font-size:11px;font-weight:700}.aw-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;min-height:0;padding:16px calc(16px + env(safe-area-inset-right,0px)) calc(32px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));max-width:var(--w-workout);box-sizing:border-box;flex-direction:column;flex:1;gap:12px;width:100%;margin:0 auto;display:flex;overflow-y:auto}.aw-exercise-card{background:var(--surface-solid);border:2px solid var(--primary);border-radius:var(--radius);box-shadow:var(--primary-glow);flex-shrink:0;padding:24px 20px 20px}.aw-exercise-name{letter-spacing:-.3px;margin-bottom:6px;font-size:26px;font-weight:900;line-height:1.2}.aw-exercise-meta{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin-bottom:16px;font-size:13px;display:flex}.aw-exercise-timer{font-variant-numeric:tabular-nums;color:var(--text);text-align:center;letter-spacing:.02em;margin:16px 0;font-size:52px;font-weight:900;line-height:1}.aw-action-btn{width:100%;border-radius:var(--radius)!important;height:72px!important;font-size:18px!important;font-weight:900!important}.aw-rest-card{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex-shrink:0;padding:28px 20px}.aw-rest-countdown{font-variant-numeric:tabular-nums;color:var(--warning);margin:8px 0;font-size:72px;font-weight:900;line-height:1}.aw-upcoming-panel{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);flex-shrink:0;overflow:hidden}.aw-upcoming-toggle{width:100%;color:var(--text-muted);font-family:var(--font);cursor:pointer;text-align:left;letter-spacing:.02em;background:0 0;border:none;justify-content:space-between;align-items:center;padding:14px 16px;font-size:13px;font-weight:700;display:flex}.aw-upcoming-toggle:hover{background:var(--surface-alt)}.scroll-top-btn{right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:var(--z-float);border:1px solid var(--border-strong);background:var(--surface-solid);width:44px;height:44px;color:var(--text-muted);box-shadow:var(--shadow);cursor:pointer;animation:fadeIn var(--dur) var(--ease);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed}.scroll-top-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--surface-hover)}.scroll-top-btn:active{transform:translateY(1px)}.aw-dialog-backdrop{z-index:var(--z-dialog);background:#000000b8;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.aw-dialog{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;padding:28px 24px calc(36px + env(safe-area-inset-bottom,0px));width:100%;max-width:var(--w-dialog);box-shadow:var(--shadow-lg)}.aw-dialog-sm{max-width:var(--w-dialog-sm)}.aw-dialog-lg{max-width:var(--w-dialog-lg)}.aw-dialog-scroll{max-height:85vh;overflow-y:auto}@media (width>=540px){.aw-dialog-backdrop{align-items:center;padding:20px}.aw-dialog{border-radius:var(--radius);padding:28px 24px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.rec-row{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.rec-body{flex:240px;min-width:0}.rec-action{flex:none}@media (width<=600px){.rec-action{flex-basis:100%;width:100%}}@media (display-mode:standalone){body{-webkit-user-select:none;user-select:none}input,textarea,select,[contenteditable]{-webkit-user-select:text;user-select:text}}.pwa-hint{left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:var(--z-float);background:var(--surface-solid);border:1px solid var(--border-strong);border-radius:var(--radius);max-width:480px;box-shadow:var(--shadow-lg);animation:fadeIn var(--dur) var(--ease);align-items:flex-start;gap:12px;margin-inline:auto;padding:14px 16px;display:flex;position:fixed}.pwa-hint-text{color:var(--text);flex:1;font-size:13px;line-height:1.45}.pwa-hint-text strong{font-weight:700}.pwa-hint-text span{color:var(--text-muted)}.pwa-hint-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;line-height:0}.pwa-hint-close:hover{color:var(--text)}.pwa-update{left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));top:calc(12px + env(safe-area-inset-top,0px));z-index:var(--z-float);background:var(--surface-solid);border:1px solid var(--primary);border-radius:var(--radius);max-width:480px;box-shadow:var(--shadow-lg);animation:fadeIn var(--dur) var(--ease);align-items:center;gap:12px;margin-inline:auto;padding:12px 14px;font-size:13px;display:flex;position:fixed}.pwa-update-text{flex:1}
