:root{--catlap-yellow: #fef100;--catlap-blue: #00a3e6;--catlap-pink: #f4519d;--catlap-purple: #9b3de6;--catlap-green: #66c343;--catlap-orange: #ff7b25;--catlap-brown: #9c4d18;--catlap-black: #000000;--accent-log: #ff9b6b;--accent-monitor: #22c55e;--accent-charts: #6bc3e6;--accent-troubleshoot: #b89de6;--accent-conditions: #8bc363;--accent-planner: #f4c373;--accent-fuel: #e6a86b;--accent-analysis: #f48bb1;--accent-debrief: #9ca3af;--accent-gps: #6bc3e6;--page-bg: linear-gradient(135deg, #0f0f1a 0%, #1a1a2e 50%, #16213e 100%);--card-bg: rgba(255, 255, 255, .05);--card-bg-solid: #1e1e32;--card-border: rgba(255, 255, 255, .1);--card-border-hover: rgba(255, 255, 255, .15);--ink: #ffffff;--ink-bright: #ffffff;--ink-soft: rgba(255, 255, 255, .9);--ink-muted: rgba(255, 255, 255, .6);--max-width: 1100px;--border-radius: 12px;--border-radius-sm: 8px;--border-radius-lg: 14px;--input-bg: rgba(255, 255, 255, .1);--input-border: rgba(255, 255, 255, .2);--input-text: #ffffff;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 20px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3)}.site-nav{background:linear-gradient(135deg,#00000080,#14142399);border-bottom:1px solid rgba(255,255,255,.12);padding:.85rem 1rem;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 12px #00000026}.site-nav-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.site-nav-brand{font-weight:700;font-size:.9rem;color:var(--ink-bright);text-decoration:none;letter-spacing:-.02em;transition:all .2s ease;white-space:nowrap;position:relative}.site-nav-brand:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:2px;background:linear-gradient(90deg,#6bc3e6,#b89de6);transition:width .2s ease}.site-nav-brand:hover:after{width:100%}.site-nav-links{display:flex;gap:.25rem;align-items:center}.site-nav-link{padding:.5rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500;color:var(--ink-muted);text-decoration:none;transition:all .15s ease}.site-nav-link:hover{color:var(--ink-soft);background:#ffffff0f}.site-nav-link.active{color:var(--ink-bright);background:#ffffff1a}.site-nav-settings{display:flex;align-items:center;justify-content:center;padding:.45rem;border-radius:6px;color:var(--ink-muted);text-decoration:none;transition:all .15s ease;margin-left:auto}.site-nav-settings:hover{color:var(--ink-soft);background:#ffffff0f}.site-nav-settings svg{display:block}@media (max-width: 700px){.site-nav{padding:.6rem .75rem}.site-nav-inner{gap:.5rem}.site-nav-brand{font-size:.8rem}.site-nav-links{gap:.15rem}.site-nav-link{padding:.4rem .5rem;font-size:.75rem}.site-nav-settings{padding:.4rem}.site-nav-settings svg{width:16px;height:16px}}*{box-sizing:border-box}html,body{overflow-x:hidden;width:100%}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--page-bg);background-attachment:fixed;color:var(--ink-soft);min-height:100vh}.page-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:var(--space-xl);padding-top:var(--space-md);width:100%;box-sizing:border-box}.page-header{text-align:center;margin-bottom:var(--space-xl);width:100%;max-width:600px}.page-tag{display:inline-block;padding:.35rem .85rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border-radius:20px;background:linear-gradient(135deg,#fef1001a,#fef1000d);border:1px solid rgba(254,241,0,.2);color:var(--catlap-yellow);margin-bottom:var(--space-md)}.page-title{font-size:clamp(1.8rem,5vw,2.5rem);font-weight:800;color:var(--ink-bright);margin:0 0 var(--space-sm);letter-spacing:-.02em}.page-subtitle{font-size:.95rem;color:var(--ink-muted);line-height:1.5;max-width:450px;margin:0 auto}.page-section{width:100%;max-width:600px;margin:0 auto var(--space-xl) auto}.page-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);margin-bottom:var(--space-md);text-align:center;display:flex;align-items:center;justify-content:center;gap:var(--space-md)}.page-section-title:before,.page-section-title:after{content:"";height:1px;width:40px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15))}.page-section-title:after{background:linear-gradient(90deg,rgba(255,255,255,.15),transparent)}.card-modern{background:linear-gradient(180deg,#ffffff0a,#ffffff03);border:1px solid rgba(255,255,255,.08);border-radius:var(--border-radius-lg);padding:var(--space-lg);position:relative;overflow:hidden;transition:all var(--transition-normal)}.card-modern:hover{background:linear-gradient(180deg,#ffffff0f,#ffffff05);border-color:var(--card-border-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-accent{position:relative}.card-accent:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent-color, var(--catlap-yellow));opacity:.5;transition:opacity var(--transition-normal)}.card-accent:hover:before{opacity:1}.card-grid{display:grid;gap:var(--space-md);width:100%}.card-grid-2{grid-template-columns:repeat(2,1fr)}.card-grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 600px){.card-grid-2,.card-grid-3{grid-template-columns:1fr}}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;font-weight:600;font-size:.9rem;margin-bottom:var(--space-sm);color:var(--ink-soft)}.form-hint{font-size:.8rem;color:var(--ink-muted);margin-top:var(--space-xs)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem var(--space-md);background:#ffffff0d;border:1px solid var(--card-border);border-radius:var(--border-radius-sm);color:var(--ink-soft);font-size:1rem;font-family:inherit;transition:all var(--transition-fast)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:#fff3;background:#ffffff14}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--catlap-yellow);background:#ffffff1a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;font-family:inherit;border-radius:var(--border-radius-sm);border:1px solid transparent;cursor:pointer;transition:all var(--transition-normal);text-decoration:none}.btn-primary{background:var(--catlap-yellow);color:var(--catlap-black);border-color:var(--catlap-yellow)}.btn-primary:hover{background:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:#ffffff0d;color:var(--ink-soft);border-color:var(--card-border)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--card-border-hover);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink-soft);border-color:transparent}.btn-ghost:hover{background:#ffffff0d}.btn-sm{padding:.4rem .75rem;font-size:.8rem}.btn-lg{padding:.85rem 1.5rem;font-size:1rem}.metric-card{background:#ffffff08;border:1px solid var(--card-border);border-radius:var(--border-radius);padding:var(--space-md);text-align:center}.metric-value{font-size:2rem;font-weight:800;color:var(--ink-bright);line-height:1.1}.metric-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin-top:var(--space-xs)}.metric-unit{font-size:.9rem;font-weight:400;color:var(--ink-muted)}.metric-card[data-color=green]{border-color:#66c3434d}.metric-card[data-color=green] .metric-value{color:var(--catlap-green)}.metric-card[data-color=blue]{border-color:#6bc3e64d}.metric-card[data-color=blue] .metric-value{color:var(--accent-charts)}.metric-card[data-color=orange]{border-color:#f4c3734d}.metric-card[data-color=orange] .metric-value{color:var(--accent-planner)}.metric-card[data-color=pink]{border-color:#f48bb14d}.metric-card[data-color=pink] .metric-value{color:var(--accent-analysis)}.badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .6rem;font-size:.75rem;font-weight:600;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.badge-success{background:#22c55e26;color:#86efac}.badge-warning{background:#fbbf2426;color:#fcd34d}.badge-error{background:#ef444426;color:#fca5a5}.badge-info{background:#6bc3e626;color:#7dd3fc}.toggle-group{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:#ffffff08;border:1px solid var(--card-border);border-radius:var(--border-radius-sm)}.toggle-group-label{font-size:.85rem;color:var(--ink-muted);margin-right:var(--space-sm)}.toggle-btn{padding:.4rem .75rem;font-size:.85rem;border:1px solid var(--card-border);border-radius:6px;background:transparent;color:var(--ink-soft);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.toggle-btn:hover{background:#ffffff0d}.toggle-btn.active{background:var(--catlap-yellow);color:var(--catlap-black);border-color:var(--catlap-yellow);font-weight:600}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-muted{color:var(--ink-muted)}.text-bright{color:var(--ink-bright)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.full-width{width:100%}.max-w-sm{max-width:400px}.max-w-md{max-width:600px}.max-w-lg{max-width:800px}.max-w-xl{max-width:1000px}.crew-shell{max-width:var(--max-width);margin:0 auto;padding:var(--space-lg) var(--space-md) var(--space-2xl);display:flex;flex-direction:column;gap:var(--space-lg);overflow-x:hidden}.crew-header{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.crew-header>div:first-child{display:flex;flex-direction:column;gap:var(--space-xs)}.crew-tag{display:inline-block;padding:.35rem .85rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border-radius:20px;background:linear-gradient(135deg,#fef1001a,#fef1000d);border:1px solid rgba(254,241,0,.2);color:var(--catlap-yellow);width:fit-content}.crew-title{font-size:clamp(1.8rem,4vw,2.5rem);margin:0;font-weight:800;text-transform:lowercase;color:var(--ink-bright);letter-spacing:-.02em}.crew-subtitle{margin:0;font-size:.95rem;max-width:500px;color:var(--ink-muted);line-height:1.5}.crew-warning{font-size:.8rem;font-weight:600;color:var(--catlap-orange)}.crew-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.1fr);gap:var(--space-lg)}@media (max-width: 900px){.crew-grid{grid-template-columns:minmax(0,1fr)}.crew-header{flex-direction:column;align-items:flex-start}}.card{background:linear-gradient(180deg,#ffffff0a,#ffffff03);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--border-radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-md);border:1px solid var(--card-border);overflow:hidden;max-width:100%;box-sizing:border-box;transition:all var(--transition-normal)}.card:hover{border-color:var(--card-border-hover)}.card h2{margin:0 0 var(--space-sm);font-size:1.15rem;font-weight:700;text-transform:lowercase;color:var(--ink-bright);letter-spacing:-.01em}.card small{font-size:.8rem;color:var(--ink-muted)}.inline-fields{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem;align-items:flex-end;max-width:100%}.form-field{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem;min-width:0;max-width:100%}.form-field label{font-weight:600;color:var(--ink-muted)}.form-field input,.form-field select,.form-field textarea{font:inherit;padding:.35rem .5rem;border-radius:6px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--input-text);min-width:0;max-width:100%;box-sizing:border-box}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--catlap-yellow);box-shadow:0 0 0 2px #fef10033}.form-field textarea{min-height:60px;resize:vertical}button{font:inherit;font-weight:600;border-radius:6px;border:1px solid rgba(255,255,255,.2);padding:.5rem 1rem;cursor:pointer;background:#ffffff1a;color:var(--ink-soft);box-shadow:none;transition:background .15s}button:hover{background:#fff3;transform:none;box-shadow:none}button:active{background:#ffffff40}button.primary{background:var(--catlap-blue);border-color:#0082b480;color:#fff}button.primary:hover{background:#0090c0}button.secondary{background:#ffffff1a;color:var(--ink-soft);border:1px solid var(--card-border)}button.secondary:hover{background:#fff3}.time-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;font-size:.9rem}.time-pill{padding:.25rem .6rem;border-radius:999px;border:1px solid var(--card-border);background:#ffffff1a;font-weight:600;color:var(--ink-soft)}.time-pill strong{font-weight:800;color:var(--catlap-yellow)}.assist-table-wrapper{margin-top:.75rem;max-height:380px;overflow:auto;border-radius:8px;border:1px solid var(--card-border);background:#0003}table{width:100%;max-width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}thead{position:sticky;top:0;background:#1e1e32f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}th,td{padding:.4rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:top;text-align:left}th{color:var(--catlap-yellow);font-weight:700}td{color:var(--ink-soft)}th:nth-child(1),td:nth-child(1){width:60px;white-space:nowrap}th:nth-child(2),td:nth-child(2){width:120px;white-space:nowrap}.assist-plan-cell{min-width:240px}.assist-plan-cell[contenteditable=true]{outline:none;border-radius:4px}.assist-plan-cell:focus-visible{box-shadow:0 0 0 2px var(--catlap-pink)}.plan-table-wrapper{margin-top:.75rem;max-height:380px;overflow:auto;border-radius:8px;border:1px solid var(--card-border);background:#0003}.plan-table{width:100%;border-collapse:collapse;font-size:.8rem}.plan-table thead{position:sticky;top:0;background:var(--card-bg-solid);z-index:1}.plan-table th{color:var(--catlap-pink);font-weight:600}.plan-table th,.plan-table td{padding:.3rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);text-align:left;vertical-align:top}.plan-row-current{background:#66c34340}.plan-row-current td{border-bottom-color:#66c34366;color:#fff}.plan-speed-slow{font-weight:700;color:var(--catlap-green)}.plan-speed-average{font-weight:700;color:var(--catlap-blue)}.plan-speed-fast{font-weight:700;color:var(--catlap-orange)}.plan-gear-cell{white-space:normal}.gear-tag{display:inline-block;margin:0 .15rem .15rem 0;padding:.1rem .35rem;border-radius:999px;border:1px solid var(--catlap-pink);font-size:.7rem;background:#f4519d33;color:var(--catlap-pink)}.hour-row-current{background:#66c34333}.hour-row-current td{border-bottom-color:#66c34366}.log-form{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.log-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}@media (max-width: 600px){.log-grid{grid-template-columns:1fr;gap:.5rem}}.log-checkbox-row{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.85rem}.log-checkbox-row label{display:flex;align-items:center;gap:.3rem;cursor:pointer}.log-checkbox-row input[type=checkbox]{width:auto}.log-actions{display:flex;justify-content:flex-start;gap:.75rem;flex-wrap:wrap;margin-top:.25rem;align-items:center}.log-status{font-size:.8rem;color:var(--ink-muted)}.log-summary{margin-top:.75rem;padding:.5rem .6rem;border-radius:8px;background:#fef1001a;border:1px solid rgba(254,241,0,.2);font-size:.8rem;display:flex;flex-wrap:wrap;gap:.75rem;color:var(--ink-soft)}.log-summary strong{font-weight:800;color:var(--catlap-yellow)}.log-table-wrapper{margin-top:.75rem;max-height:320px;overflow:auto;border-radius:8px;border:1px solid var(--card-border);background:#0003}.fuel-buttons{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin-top:.5rem}.fuel-btn{font:inherit;font-size:.85rem;font-weight:500;border-radius:6px;border:1px solid rgba(255,255,255,.2);padding:.6rem .75rem;cursor:pointer;background:#ffffff1a;color:var(--ink-soft);text-align:center;transition:background .15s}.fuel-btn:hover{background:#fff3}.fuel-btn.food-fuel{background:#66c34333;border-color:#66c34366;color:#90ee90}.fuel-btn.food-fuel:hover{background:#66c3434d}.fuel-btn.liquid-fuel{background:#00a3e633;border-color:#00a3e666;color:#87ceeb}.fuel-btn.liquid-fuel:hover{background:#00a3e64d}.fuel-btn.hybrid-fuel{background:#9b3de633;border-color:#9b3de666;color:plum}.fuel-btn.hybrid-fuel:hover{background:#9b3de64d}.fuel-btn.other-fuel{background:#ffffff14;border-color:#ffffff26;color:var(--ink-muted)}.fuel-btn.other-fuel:hover{background:#ffffff26}.fuel-summary{margin-top:.5rem;font-size:.85rem;color:var(--ink-muted)}.fuel-reset-btn{margin-top:.5rem;background:#b4000033;border-color:#b4000066;color:#faa}.fuel-reset-btn:hover{background:#b400004d}.log-table td:nth-child(1){width:60px}.log-table td:nth-child(2){width:80px}.log-table td:nth-child(3){width:80px}.log-table td:nth-child(4){width:80px}.log-table td:nth-child(5){width:80px}.stats-card{margin-top:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem 1.75rem;align-items:flex-start}.stat-block-wide{grid-column:1 / -1}.stat-block{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.6rem}.stat-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;opacity:.8}.stat-main{display:flex;align-items:baseline;gap:.25rem}.stat-value{font-size:1.6rem;font-weight:700}.stat-unit{font-size:.9rem;opacity:.8}.stat-meta{margin-top:.25rem;display:flex;flex-direction:column;gap:.25rem}.stat-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem}.stat-line-label{font-size:.8rem;opacity:.85}.stat-line-value{font-size:.9rem;font-weight:500}.stat-line-badge{font-size:.7rem;font-weight:600;padding:.15rem .4rem;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#00000026;white-space:nowrap}.stat-badge-good{background:#00b47826;border-color:#00b47899}.stat-badge-low{background:#f0b40026;border-color:#f0b40099}.stat-badge-high{background:#dc505026;border-color:#dc505099}@media (max-width: 700px){.stats-grid{grid-template-columns:1fr}.stat-block{padding:.9rem 1rem}.stat-value{font-size:1.4rem}}.chart-wrapper{margin-top:.75rem;background:#0003;border-radius:10px;border:1px solid var(--card-border);padding:.5rem;height:260px;overflow:hidden;max-width:100%}.log-mood{font-weight:700}.mood-good{color:var(--catlap-green)}.mood-ok{color:var(--catlap-yellow)}.mood-bad{color:var(--catlap-pink)}.crew-footer-note{font-size:.75rem;margin-top:.25rem;color:var(--ink-muted)}.plan-table-wrapper{margin-top:.75rem}@media (max-width: 700px){.card-clock-plan .plan-table thead{display:none}.card-clock-plan .plan-table tr{display:block;margin-bottom:.75rem;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffff14;box-shadow:0 2px 4px #0000004d;padding:.6rem .75rem}.card-clock-plan .plan-table tr.plan-row-current{background:#66c34340;border-color:#66c34399;box-shadow:0 0 10px #66c3434d}.card-clock-plan .plan-table td{display:flex;align-items:baseline;justify-content:space-between;border-bottom:none;padding:.2rem 0;font-size:.85rem;color:#ffffffe6}.card-clock-plan .plan-table td:before{content:attr(data-label);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:#ffffff80;margin-right:.5rem}.card-clock-plan .plan-table td:first-child{font-weight:800;font-size:.95rem;color:#fff}.card-clock-plan .plan-table td:first-child:before{color:var(--catlap-yellow)}.card-clock-plan .plan-gear-cell{flex-wrap:wrap;gap:.25rem}.card-clock-plan .plan-gear-cell:before{margin-bottom:.15rem}.card-clock-plan .gear-tag{margin:0 .2rem .2rem 0;background:#ffffff26;color:#ffffffe6}.card-clock-plan .plan-table-wrapper{max-height:none;overflow-x:hidden}.card-clock-plan .plan-table{width:100%;table-layout:fixed}.card-clock-plan .plan-table tr{width:100%;max-width:100%;overflow:hidden}}.plan-controls{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem}.plan-controls button{font-size:.85rem;border-radius:6px}.lap-alert-banner{position:fixed;top:0;left:0;right:0;z-index:9999;display:none;justify-content:center;align-items:center;padding:1rem;font-size:1.5rem;font-weight:700;text-align:center;animation:alert-pulse .5s ease-in-out 3;box-shadow:0 4px 20px #0000004d}.alert-2min{background:var(--catlap-orange);color:#fff}.alert-30sec{background:var(--catlap-pink);color:#fff;animation:alert-pulse .3s ease-in-out 5}.alert-content{display:flex;align-items:center;gap:1rem}.alert-icon{font-size:2rem}.alert-text{text-shadow:1px 1px 2px rgba(0,0,0,.3)}@keyframes alert-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.alert-toggle-container{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.alert-toggle-container label{font-size:.9rem}.test-alert-btn{font-size:.75rem;padding:.25rem .6rem;margin-left:.5rem;border-radius:4px}@media (max-width: 600px){.lap-alert-banner{font-size:1.25rem;padding:.75rem}.alert-icon{font-size:1.5rem}}.lap-brief{background:#ffffff14;border:2px solid var(--catlap-yellow);margin-bottom:1rem;overflow:hidden;max-width:100%}.lap-brief-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.2)}.lap-brief-header h2{margin:0;font-size:1.25rem;color:var(--catlap-yellow)}.lap-brief-countdown{display:flex;flex-direction:column;align-items:flex-end}.countdown-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.countdown-time{font-size:2.5rem;font-weight:800;font-family:Courier New,monospace;color:var(--catlap-yellow);line-height:1}.countdown-time.urgent{color:var(--catlap-pink);animation:countdown-pulse .5s ease-in-out infinite}@keyframes countdown-pulse{0%,to{opacity:1}50%{opacity:.6}}.lap-brief-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.lap-brief-section{padding:.75rem;background:#ffffff0d;border-radius:8px}.brief-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-bottom:.5rem}.brief-speed{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.brief-speed.speed-slow{color:var(--catlap-green)}.brief-speed.speed-average{color:var(--catlap-blue)}.brief-speed.speed-fast{color:var(--catlap-orange)}.brief-sublabel{font-size:.7rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.now-section{min-width:280px}.now-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.75rem}.now-stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.now-stat-value{font-size:1.1rem;font-weight:700;color:var(--ink-soft);line-height:1.2}.now-stat-label{font-size:.65rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:.2rem}.mood-trend-indicator{font-size:.6rem;opacity:.8}.now-stat-value.mood-up{color:var(--catlap-green)}.now-stat-value.mood-down{color:var(--catlap-orange)}.now-stat-value.mood-steady{color:var(--catlap-blue)}@media (max-width: 600px){.now-stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.now-stat-value{font-size:1rem}.now-stat-label{font-size:.6rem}}.brief-actions{display:flex;flex-wrap:wrap;gap:.35rem}.brief-action-tag{display:inline-block;padding:.2rem .5rem;font-size:.75rem;font-weight:600;background:var(--catlap-pink);color:#fff;border-radius:4px}.brief-no-actions{font-size:.8rem;opacity:.6;font-style:italic}.fuel-targets-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.fuel-target{text-align:center;padding:.5rem;background:#ffffff1a;border-radius:6px}.fuel-target-value{display:block;font-size:1.5rem;font-weight:700;color:var(--catlap-yellow)}.fuel-target-unit{font-size:.7rem;opacity:.7}.checklist-items{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.checklist-item{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;background:#ffffff1a;border-radius:4px;cursor:pointer;font-size:.8rem;transition:background .2s}.checklist-item:hover{background:#fff3}.checklist-item input[type=checkbox]{width:1.1rem;height:1.1rem;cursor:pointer}.checklist-item input[type=checkbox]:checked+span{text-decoration:line-through;opacity:.5}.checklist-item.highlight{background:var(--catlap-pink);font-weight:600}.checklist-reset-btn{margin-top:.5rem;font-size:.75rem;padding:.3rem .6rem;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;opacity:.7}.checklist-reset-btn:hover{opacity:1;background:#ffffff1a}@media (max-width: 800px){.lap-brief-grid{grid-template-columns:1fr}.countdown-time{font-size:2rem}.fuel-targets-grid{grid-template-columns:repeat(4,1fr)}.checklist-items{grid-template-columns:repeat(3,1fr)}}@media (max-width: 500px){.fuel-targets-grid,.checklist-items{grid-template-columns:1fr 1fr}}.race-day-btn{background:#ff6b3540;color:#ffaa80;font-weight:600;border:1px solid rgba(255,107,53,.5);border-radius:6px;padding:.5rem 1rem;font-size:.95rem;cursor:pointer;transition:background .15s}.race-day-btn:hover{background:#ff6b3559}.race-day-btn:active{background:#ff6b3566}.undo-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--ink-muted);font-size:.85rem;padding:.4rem .8rem}.undo-btn:hover{background:#ff646433;border-color:#ff646466;color:#ff6b6b}.duplicate-warning{margin-top:.75rem;padding:.75rem 1rem;background:#ffb40026;border:1px solid rgba(255,180,0,.4);border-radius:8px;color:#fc0;font-size:.9rem}.duplicate-warning strong{color:#fd4}.log-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.undo-btn{background:#ff6b6b33;border:1px solid rgba(255,107,107,.5);color:#ff6b6b;font-size:.85rem;padding:.4rem .8rem}.undo-btn:hover{background:#ff6b6b4d;box-shadow:0 2px 8px #ff6b6b4d}.undo-btn:disabled{opacity:.5;cursor:not-allowed}.duplicate-warning{margin-top:.75rem;padding:.6rem .8rem;border-radius:8px;background:#ffb40026;border:1px solid rgba(255,180,0,.5);color:var(--catlap-yellow);font-size:.85rem}.lap-health-container{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.lap-health-summary{width:100%}.health-panel{background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.08);padding:1rem;display:grid;grid-template-columns:auto 1fr auto;gap:1.25rem;align-items:center}.health-panel.health-empty{display:flex;justify-content:center;padding:2rem}.health-message{display:flex;align-items:center;gap:.5rem;color:var(--ink-muted);font-size:.85rem}.health-icon{font-size:1.25rem}.health-main{display:flex;align-items:center;gap:1rem}.health-score-ring{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;background:conic-gradient(var(--ring-color, var(--catlap-green)) calc(var(--ring-pct, 80) * 3.6deg),rgba(255,255,255,.1) 0deg)}.health-score-ring:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;background:var(--bg-card, #1a1a2e);border-radius:50%}.health-score-ring.good{--ring-color: var(--catlap-green)}.health-score-ring.warn{--ring-color: var(--catlap-orange)}.health-score-ring.bad{--ring-color: var(--catlap-pink)}.score-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;line-height:1}.score-value{font-size:1.5rem;font-weight:800;color:var(--ink-bright)}.score-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin-top:2px}.health-status{display:flex;flex-direction:column;gap:.35rem}.status-line{display:flex;align-items:center;gap:.5rem}.status-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.status-icon.good{background:#22c55e33;color:var(--catlap-green)}.status-icon.warn{background:#f9731633;color:var(--catlap-orange)}.status-icon.bad{background:#ec489933;color:var(--catlap-pink)}.status-text{font-size:.9rem;font-weight:600;color:var(--ink-soft)}.trend-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:10px;font-weight:500}.trend-badge.trend-up{background:#22c55e26;color:var(--catlap-green)}.trend-badge.trend-down{background:#ec489926;color:var(--catlap-pink)}.trend-badge.trend-flat{background:#ffffff14;color:var(--ink-muted)}.streak-badge{font-size:.7rem;color:var(--catlap-orange);font-weight:600}.lap-range{font-size:.7rem;color:var(--ink-muted)}.health-sparkline-section{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:0 1rem;border-left:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.08)}.sparkline-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}.health-sparkline{display:block}.health-macros{display:flex;flex-direction:column;gap:.6rem;min-width:180px}.health-macros .macro-bar{display:grid!important;grid-template-columns:1fr 45px!important;grid-template-rows:auto auto!important;gap:.15rem .5rem!important;align-items:center!important;height:auto!important;width:auto!important;background:transparent!important;border-radius:0!important;transition:none!important}.health-macros .macro-header{display:flex;justify-content:space-between;align-items:baseline;grid-column:1;grid-row:1}.health-macros .macro-name{font-size:.7rem;font-weight:600;color:var(--ink-soft)}.health-macros .macro-values{font-size:.65rem;color:var(--ink-muted)}.health-macros .macro-target{opacity:.6}.health-macros .macro-progress-track{grid-column:1;grid-row:2;height:6px;background:#ffffff14;border-radius:3px;position:relative;overflow:hidden}.health-macros .macro-progress-fill{height:100%;border-radius:3px;transition:width .3s ease}.health-macros .macro-bar.good .macro-progress-fill{background:linear-gradient(90deg,var(--catlap-green) 0%,#6bc363 100%)}.health-macros .macro-bar.warn .macro-progress-fill{background:linear-gradient(90deg,var(--catlap-orange) 0%,#f4a543 100%)}.health-macros .macro-bar.bad .macro-progress-fill{background:linear-gradient(90deg,var(--catlap-pink) 0%,#ec4899 100%)}.health-macros .macro-progress-marker{position:absolute;top:-2px;width:2px;height:10px;background:#fff6;border-radius:1px;transform:translate(-50%)}.health-macros .macro-pct{grid-column:2;grid-row:1 / 3;font-size:.75rem;font-weight:700;text-align:right}.health-macros .macro-bar.good .macro-pct{color:var(--catlap-green)}.health-macros .macro-bar.warn .macro-pct{color:var(--catlap-orange)}.health-macros .macro-bar.bad .macro-pct{color:var(--catlap-pink)}@media (max-width: 900px){.health-panel{grid-template-columns:1fr;gap:1rem}.health-main{justify-content:center}.health-sparkline-section{border-left:none;border-right:none;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);padding:1rem 0}.health-macros{width:100%;max-width:300px;margin:0 auto}}@media (max-width: 480px){.health-score-ring{width:60px;height:60px}.score-value{font-size:1.25rem}.health-macros{min-width:unset}}.pace-ladder-container{margin-top:.75rem;overflow:visible}.card:has(.pace-ladder-container){overflow:visible}.pace-ladder{display:flex;flex-direction:column;gap:4px;overflow:visible}.pace-ladder-row{display:flex;align-items:center;gap:.5rem;height:28px;position:relative}.pace-ladder-lap{width:35px;font-size:.75rem;font-weight:600;color:var(--ink-muted);text-align:right;flex-shrink:0}.pace-ladder-bar{flex:1;height:100%;position:relative;background:#ffffff0d;border-radius:4px;overflow:hidden}.pace-ladder-scale{position:absolute;top:0;bottom:0;width:1px;background:#ffffff1a}.pace-ladder-line{position:absolute;top:50%;height:3px;transform:translateY(-50%);border-radius:2px}.pace-line-on-time{background:var(--catlap-green)}.pace-line-small-miss{background:var(--catlap-orange)}.pace-line-big-miss{background:var(--catlap-pink)}.pace-ladder-plan{position:absolute;top:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:var(--catlap-blue);border:2px solid rgba(255,255,255,.8);z-index:2}.pace-ladder-actual{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;border-radius:50%;background:var(--catlap-yellow);border:2px solid rgba(0,0,0,.3);z-index:3}.pace-ladder-time{width:45px;font-size:.7rem;color:var(--ink-muted);flex-shrink:0}.pace-ladder-time.actual-time{color:var(--catlap-yellow);font-weight:600}.pace-ladder-empty{padding:1rem;text-align:center;color:var(--ink-muted);font-size:.85rem}.pace-ladder-legend{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;font-size:.7rem;color:var(--ink-muted)}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.25rem;vertical-align:middle}.legend-plan{background:var(--catlap-blue);border:2px solid rgba(255,255,255,.5)}.legend-actual{background:var(--catlap-yellow)}.legend-line{display:inline-block;width:20px;height:3px;border-radius:2px;margin-right:.25rem;vertical-align:middle}.legend-on-time{background:var(--catlap-green)}.legend-small-miss{background:var(--catlap-orange)}.legend-big-miss{background:var(--catlap-pink)}.pace-ladder-row[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:45px;top:50%;transform:translateY(-50%);background:#000000f2;color:#fff;padding:.4rem .6rem;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;z-index:1000;border:1px solid rgba(255,255,255,.2)}.pace-ladder-row:hover[data-tooltip]:after{opacity:1}@media (max-width: 500px){.pace-ladder-lap{width:28px;font-size:.65rem}.pace-ladder-time{width:38px;font-size:.6rem}}@media (max-width: 768px){*{max-width:100vw!important}html,body{overflow-x:hidden!important;width:100%!important}.crew-shell,.card,.lap-brief,table,.plan-table-wrapper,.chart-wrapper,.inline-fields,form{max-width:100%!important;overflow-x:hidden!important;box-sizing:border-box!important}.log-table-wrapper{max-width:100%!important;overflow-x:auto!important;box-sizing:border-box!important}img,canvas,svg{max-width:100%;height:auto}.card>*:not(.log-table-wrapper),.lap-brief>*:not(.log-table-wrapper){max-width:100%;overflow-x:hidden}}.page-nav{display:flex;gap:.75rem;margin-bottom:1rem}.nav-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--ink-soft);text-decoration:none;font-size:.9rem;font-weight:500;transition:background .15s,transform .1s}.nav-btn:hover{background:#ffffff26;transform:translateY(-1px)}.nav-btn:active{transform:translateY(0)}@media (max-width: 600px){.log-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.log-table-wrapper table{min-width:600px;table-layout:auto}.log-form+.log-summary+.log-table-wrapper table{min-width:500px}.log-table-wrapper th,.log-table-wrapper td{white-space:nowrap;padding:.4rem .6rem}.log-table-wrapper:after{content:"← scroll →";display:block;text-align:center;font-size:.7rem;color:var(--ink-muted);padding:.25rem;opacity:.6}}#logSubmitBtn{padding:1rem 2rem;font-size:1.1rem;font-weight:700;min-height:56px;min-width:160px;border-radius:8px;background:#00c85340;border:2px solid rgba(0,200,83,.5);color:#6f8}#logSubmitBtn:hover{background:#00c85359}#logSubmitBtn:active{background:#00c85366}#undoLastBtn{padding:.75rem 1.25rem;font-size:.95rem;min-height:48px;border-radius:8px}@media (max-width: 600px){#logSubmitBtn{width:100%;padding:1.25rem 2rem;font-size:1.2rem;min-height:64px}#undoLastBtn{width:100%;margin-top:.5rem}.log-actions{flex-direction:column}}.last-lap-confirmation{margin-top:.75rem;padding:.75rem 1rem;background:#00c85326;border:1px solid rgba(0,200,83,.3);border-radius:8px;font-size:.95rem;color:#a0ffb0;display:none}.last-lap-confirmation.show{display:block;animation:slideIn .3s ease-out}.last-lap-confirmation strong{color:#6f8}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.print-btn{padding:.4rem .8rem;font-size:.85rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--ink-soft)}.print-btn:hover{background:#fff3}@media print{.page-nav,.chart-wrapper,canvas,button,.nav-btn,.inline-fields,.pace-ladder-container,.intake-legend{display:none!important}body{background:#fff!important;color:#000!important}.crew-shell{max-width:100%!important;padding:.5in!important}.card{background:#fff!important;border:1px solid #ccc!important;box-shadow:none!important;page-break-inside:avoid;margin-bottom:1rem!important}.card h2{color:#000!important;border-bottom:2px solid black;padding-bottom:.25rem}.stat-value{color:#000!important}.stat-label,.stat-line-label{color:#333!important}.stat-line-value{color:#000!important}.stat-line-badge{background:#eee!important;color:#333!important}.crew-tag{background:#000!important;color:#fff!important}.crew-title{color:#000!important}.stats-card:after{content:"Printed: " attr(data-print-time);display:block;margin-top:1rem;font-size:.8rem;color:#666}}.fade-enter-active,.fade-leave-active{transition:opacity .25s ease}.fade-slide-enter-active,.fade-slide-leave-active{transition:opacity .3s ease,transform .3s ease}.fade-slide-enter-from{opacity:0;transform:translateY(20px)}.fade-slide-leave-to{opacity:0;transform:translateY(-10px)}.slide-down-enter-active,.slide-down-leave-active{transition:opacity .2s ease,transform .2s ease,max-height .2s ease}.slide-down-enter-from,.slide-down-leave-to{opacity:0;transform:translateY(-10px)}.pop-enter-active{transition:opacity .2s ease,transform .2s cubic-bezier(.175,.885,.32,1.275)}.pop-leave-active{transition:opacity .15s ease,transform .15s ease}.pop-enter-from{opacity:0;transform:scale(.9)}.pop-leave-to{opacity:0;transform:scale(.95)}.slide-right-enter-active,.slide-right-leave-active{transition:opacity .3s ease,transform .3s ease}.slide-right-enter-from,.slide-right-leave-to{opacity:0;transform:translate(100%)}.stagger-enter-active{transition:opacity .3s ease,transform .3s ease}.stagger-leave-active{transition:opacity .2s ease,transform .2s ease;position:absolute}.stagger-enter-from{opacity:0;transform:translate(-20px)}.stagger-leave-to{opacity:0;transform:translate(20px)}.stagger-move{transition:transform .3s ease}.card-enter-active{transition:opacity .4s ease,transform .4s ease}.card-leave-active{transition:opacity .2s ease}.card-enter-from{opacity:0;transform:translateY(30px)}.card-leave-to{opacity:0}.toast-container{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none;max-width:380px}.toast{background:var(--card-bg-solid);border:1px solid var(--card-border);border-radius:10px;padding:.875rem 1rem;box-shadow:0 8px 24px #0006;pointer-events:auto;display:flex;align-items:flex-start;gap:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast-icon{font-size:1.25rem;flex-shrink:0;margin-top:.1rem}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:.9rem;margin-bottom:.2rem}.toast-message{font-size:.85rem;color:var(--ink-muted);line-height:1.4}.toast-close{background:none;border:none;color:var(--ink-muted);cursor:pointer;padding:.25rem;margin:-.25rem -.25rem -.25rem 0;font-size:1rem;opacity:.6;transition:opacity .15s}.toast-close:hover{opacity:1}.toast.toast-success{border-left:3px solid var(--catlap-green)}.toast.toast-success .toast-icon{color:var(--catlap-green)}.toast.toast-warning{border-left:3px solid var(--catlap-orange)}.toast.toast-warning .toast-icon{color:var(--catlap-orange)}.toast.toast-error{border-left:3px solid var(--catlap-pink)}.toast.toast-error .toast-icon{color:var(--catlap-pink)}.toast.toast-info{border-left:3px solid var(--catlap-blue)}.toast.toast-info .toast-icon{color:var(--catlap-blue)}.loading-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.loading-spinner{width:48px;height:48px;border:3px solid var(--card-border);border-top-color:var(--catlap-yellow);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--ink-muted);font-size:.9rem}.skeleton{background:linear-gradient(90deg,var(--card-bg) 25%,rgba(255,255,255,.1) 50%,var(--card-bg) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:6px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text.short{width:40%}.skeleton-text.medium{width:70%}.skeleton-heading{height:1.5rem;width:50%;margin-bottom:1rem}.success-checkmark{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--catlap-green);color:#fff;font-size:.875rem;animation:success-pop .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes success-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;color:#fff}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.bounce{animation:bounce .5s cubic-bezier(.36,.07,.19,.97)}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}.glow-success{box-shadow:0 0 20px #66c34366;transition:box-shadow .3s ease}.glow-warning{box-shadow:0 0 20px #ff7b2566;transition:box-shadow .3s ease}.glow-error{box-shadow:0 0 20px #f4519d66;transition:box-shadow .3s ease}.card-interactive{transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.card-interactive:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.card-interactive:active{transform:translateY(0)}.hidden{display:none!important}.u-flex{display:flex}.u-flex-wrap{flex-wrap:wrap}.u-gap-05{gap:.5rem}.u-gap-1{gap:1rem}.u-gap-15{gap:1.5rem}.u-justify-between{justify-content:space-between}.u-align-center{align-items:center}.u-mb-05{margin-bottom:.5rem}.u-mt-05{margin-top:.5rem}.u-mt-025{margin-top:.25rem}.u-fs-085{font-size:.85rem}.u-opacity-08{opacity:.8}.u-grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.u-mb-15{margin-bottom:1.5rem}.muted-small{color:var(--ink-muted);font-size:.85rem}.screen-nav{background:#00000080;padding:.4rem 1rem;display:flex;align-items:center;justify-content:space-between;font-size:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.offline-indicator{position:fixed;bottom:1rem;right:1rem;z-index:1000;max-width:400px}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#000c;border:1px solid var(--card-border);border-radius:20px;font-size:.85rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000004d;transition:all .3s ease}.status-badge:hover{box-shadow:0 6px 16px #0006}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-online .status-dot{background:var(--catlap-green);box-shadow:0 0 8px var(--catlap-green)}.status-offline .status-dot{background:var(--ink-muted);animation:none}.status-syncing .status-dot{background:var(--catlap-blue);animation:pulse 1s ease-in-out infinite}.status-pending .status-dot{background:var(--catlap-yellow)}.status-online .status-text{color:var(--catlap-green)}.status-offline .status-text{color:var(--ink-muted)}.status-syncing .status-text{color:var(--catlap-blue)}.status-pending .status-text{color:var(--catlap-yellow)}.status-details{margin-top:.75rem;background:#000000e6;border:1px solid var(--card-border);border-radius:12px;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000004d}.detail-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;padding:.5rem 0}.detail-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.05)}.detail-icon{flex-shrink:0;font-size:1rem}.offline-message{color:var(--ink-muted)}.queue-message{color:var(--catlap-yellow)}.error-message{color:var(--catlap-pink)}.success-message{color:var(--catlap-green)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}@media (max-width: 768px){.offline-indicator{bottom:.5rem;right:.5rem;left:.5rem;max-width:none}.status-details{font-size:.8rem}}.export-button-wrapper{position:relative;display:inline-block}.export-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff1a;border:1px solid var(--card-border);border-radius:8px;color:var(--ink-soft);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.export-btn:hover:not(:disabled){background:#ffffff26;border-color:var(--catlap-yellow);transform:translateY(-1px)}.export-btn-primary{background:linear-gradient(135deg,var(--catlap-purple),var(--catlap-blue));border-color:transparent;color:#fff}.export-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #9333ea4d}.export-btn-minimal{background:transparent;border:none;padding:.25rem .5rem}.export-btn-disabled,.export-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.export-icon{font-size:1rem}.export-arrow{font-size:.7rem;opacity:.7;transition:transform .2s ease}.export-btn:hover .export-arrow{transform:translateY(2px)}.export-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:280px;background:#000000f2;border:1px solid var(--card-border);border-radius:12px;padding:.5rem;z-index:1000;box-shadow:0 8px 24px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-dropdown-header{padding:.5rem .75rem;font-size:.75rem;font-weight:600;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:.25rem}.export-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;background:transparent;border:none;border-radius:8px;color:var(--ink-soft);text-align:left;cursor:pointer;transition:all .2s ease}.export-option:hover:not(:disabled){background:#ffffff1a;transform:translate(4px)}.export-option:disabled{opacity:.6;cursor:not-allowed}.option-icon{font-size:1.25rem;flex-shrink:0}.option-text{flex:1}.option-title{font-weight:600;font-size:.9rem;margin-bottom:.1rem}.option-desc{font-size:.75rem;color:var(--ink-muted)}.dropdown-fade-enter-active,.dropdown-fade-leave-active{transition:opacity .2s ease,transform .2s ease}.dropdown-fade-enter-from{opacity:0;transform:translateY(-8px)}.dropdown-fade-leave-to{opacity:0;transform:translateY(-4px)}@media (max-width: 768px){.export-dropdown{left:0;right:auto;min-width:240px}}.template-picker{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:1rem}.template-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.template-picker-title{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--ink-soft)}.template-icon{font-size:1.2rem}.template-toggle{padding:.25rem .75rem;background:#ffffff0d;border:1px solid var(--card-border);border-radius:6px;color:var(--ink-muted);font-size:.75rem;cursor:pointer;transition:all .2s ease}.template-toggle:hover{background:#ffffff1a;border-color:var(--catlap-yellow);color:var(--ink-soft)}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;max-height:300px;overflow:hidden;transition:max-height .3s ease}.template-grid.expanded{max-height:1000px}.template-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#ffffff08;border:1px solid var(--card-border);border-radius:8px;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.template-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--catlap-yellow);opacity:1;transition:width .2s ease}.template-card:hover{background:#ffffff14;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.template-card:hover:before{width:6px}.template-card:active{transform:translateY(0)}.template-standard:before{background:var(--catlap-yellow)}.template-standard .template-card-name{color:var(--catlap-yellow)}.template-highcarb:before{background:var(--catlap-orange)}.template-highcarb .template-card-name{color:var(--catlap-orange)}.template-recovery:before{background:var(--catlap-blue)}.template-recovery .template-card-name{color:var(--catlap-blue)}.template-caffeine:before{background:var(--catlap-pink)}.template-caffeine .template-card-name{color:var(--catlap-pink)}.template-minimal:before{background:var(--catlap-green)}.template-minimal .template-card-name{color:var(--catlap-green)}.template-custom:before{background:var(--catlap-purple)}.template-custom .template-card-name{color:var(--catlap-purple)}.template-card-header{display:flex;justify-content:space-between;align-items:center}.template-card-name{font-weight:700;font-size:.9rem;color:var(--ink-soft)}.template-card-values{display:flex;flex-wrap:wrap;gap:.5rem}.template-value{font-size:.75rem;padding:.2rem .5rem;background:#ffffff1a;border-radius:4px;color:var(--ink-muted);font-weight:600}.template-card-desc{font-size:.75rem;color:var(--ink-muted);line-height:1.3}.template-picker-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05);text-align:center}.template-picker-footer small{color:var(--ink-muted);font-size:.75rem}.template-picker.compact{padding:.5rem;background:transparent;border:none}.template-picker.compact .template-grid{gap:.5rem;max-height:none}.template-picker.compact .template-card{padding:.75rem}@media (max-width: 768px){.template-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.template-card{padding:.75rem}.template-card-name{font-size:.85rem}}.install-prompt{position:fixed;bottom:0;left:0;right:0;z-index:2000;padding:0 1rem 1rem}.install-prompt-content{max-width:600px;margin:0 auto;display:flex;align-items:center;gap:1rem;padding:1rem;background:linear-gradient(135deg,#0f0f1afa,#1a1a2efa);border:1px solid var(--catlap-yellow);border-radius:12px;box-shadow:0 8px 32px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.install-prompt-icon{font-size:2rem;flex-shrink:0}.install-prompt-text{flex:1}.install-prompt-title{font-weight:700;font-size:1rem;color:var(--catlap-yellow);margin-bottom:.25rem}.install-prompt-desc{font-size:.85rem;color:var(--ink-muted);line-height:1.3}.install-prompt-actions{display:flex;gap:.5rem;flex-shrink:0}.install-btn{padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.install-btn-primary{background:var(--catlap-yellow);color:#000}.install-btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #fef10066}.install-btn-secondary{background:#ffffff1a;color:var(--ink-muted);border:1px solid var(--card-border)}.install-btn-secondary:hover{background:#ffffff26;color:var(--ink-soft)}.slide-up-enter-active,.slide-up-leave-active{transition:transform .3s ease,opacity .3s ease}.slide-up-enter-from,.slide-up-leave-to{transform:translateY(100%);opacity:0}@media (max-width: 768px){.install-prompt-content{flex-wrap:wrap;padding:.75rem}.install-prompt-actions{width:100%;justify-content:stretch}.install-btn{flex:1;font-size:.8rem}}@media (max-width: 480px){.install-prompt-content{gap:.75rem}.install-prompt-icon{font-size:1.5rem}.install-prompt-title{font-size:.9rem}.install-prompt-desc{font-size:.75rem}}.plan-required-overlay{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--page-bg)}.plan-required-content{text-align:center;max-width:400px}.plan-required-icon{font-size:4rem;margin-bottom:1.5rem}.plan-required-title{font-size:1.75rem;font-weight:700;margin-bottom:.75rem;color:var(--catlap-yellow)}.plan-required-text{color:var(--ink-muted);font-size:1rem;margin-bottom:2rem;line-height:1.5}.plan-required-btn{display:inline-block;background:var(--catlap-yellow);color:#000;padding:.875rem 2rem;border-radius:10px;text-decoration:none;font-weight:700;font-size:1rem;transition:transform .15s ease,box-shadow .15s ease}.plan-required-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #fef10040}.profile-tip-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:10px;padding:.75rem 1rem;margin:0 1rem 1rem;font-size:.875rem}.profile-tip-banner .tip-content{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.profile-tip-banner .tip-icon{font-size:1rem}.profile-tip-banner a{color:#60a5fa;text-decoration:underline}.profile-tip-banner a:hover{color:#93c5fd}.profile-tip-banner .dismiss-btn{background:transparent;border:none;color:var(--ink-muted);cursor:pointer;padding:.25rem;font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s ease}.profile-tip-banner .dismiss-btn:hover{opacity:1}@media (max-width: 600px){.profile-tip-banner{margin:.5rem;font-size:.8rem;padding:.6rem .75rem}}.user-avatar{position:relative;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #a0a0a0);font-weight:600;overflow:hidden;flex-shrink:0;-webkit-user-select:none;user-select:none}.user-avatar--editable{cursor:pointer;transition:transform var(--transition-fast, .15s) ease}.user-avatar--editable:hover{transform:scale(1.05)}.user-avatar--editable:focus{outline:2px solid var(--catlap-yellow, #f5c518);outline-offset:2px}.user-avatar__image{width:100%;height:100%;object-fit:cover}.user-avatar__initials{font-family:inherit;letter-spacing:.02em}.user-avatar__edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;opacity:0;transition:opacity var(--transition-fast, .15s) ease;color:#fff}.user-avatar--editable:hover .user-avatar__edit-overlay,.user-avatar--editable:focus .user-avatar__edit-overlay{opacity:1}.image-cropper-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000c;padding:1rem}.image-cropper{background:var(--surface-base, #1a1a1a);border-radius:12px;padding:1.5rem;max-width:400px;width:100%;box-shadow:var(--shadow-lg, 0 10px 40px rgba(0, 0, 0, .5))}.image-cropper__header{text-align:center;margin-bottom:1rem}.image-cropper__header h3{margin:0 0 .25rem;font-size:1.125rem;color:var(--text-primary, #ffffff)}.image-cropper__header p{margin:0;font-size:.875rem;color:var(--text-secondary, #a0a0a0)}.image-cropper__viewport{position:relative;margin:0 auto 1rem;overflow:hidden;border-radius:8px;background:#000;cursor:grab;touch-action:none}.image-cropper__viewport:active{cursor:grabbing}.image-cropper__image{pointer-events:none;will-change:transform;max-width:none!important;max-height:none!important;width:auto!important;height:auto!important}.image-cropper__image--dragging{transition:none}.image-cropper__mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at center,transparent 45%,rgba(0,0,0,.7) 45%)}.image-cropper__circle{position:absolute;top:50%;left:50%;width:90%;height:90%;transform:translate(-50%,-50%);border:2px dashed rgba(255,255,255,.5);border-radius:50%;pointer-events:none}.image-cropper__zoom{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:0 .5rem}.image-cropper__zoom-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #a0a0a0);cursor:pointer;transition:background var(--transition-fast, .15s) ease,color var(--transition-fast, .15s) ease}.image-cropper__zoom-btn:hover{background:var(--surface-hover, #3a3a3a);color:var(--text-primary, #ffffff)}.image-cropper__slider{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-elevated, #2a2a2a);border-radius:2px;cursor:pointer}.image-cropper__slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--catlap-yellow, #f5c518);cursor:pointer}.image-cropper__slider::-moz-range-thumb{width:16px;height:16px;border:none;border-radius:50%;background:var(--catlap-yellow, #f5c518);cursor:pointer}.image-cropper__presets{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem}.image-cropper__preset-btn{padding:.375rem .75rem;border:1px solid var(--border-color, #333);border-radius:6px;background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #a0a0a0);font-size:.8125rem;cursor:pointer;transition:background var(--transition-fast, .15s) ease,color var(--transition-fast, .15s) ease,border-color var(--transition-fast, .15s) ease}.image-cropper__preset-btn:hover{background:var(--surface-hover, #3a3a3a);color:var(--text-primary, #ffffff);border-color:var(--catlap-yellow, #f5c518)}.image-cropper__actions{display:flex;gap:.75rem}.image-cropper__btn{flex:1;padding:.75rem 1rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast, .15s) ease,opacity var(--transition-fast, .15s) ease}.image-cropper__btn--secondary{background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #a0a0a0)}.image-cropper__btn--secondary:hover{background:var(--surface-hover, #3a3a3a);color:var(--text-primary, #ffffff)}.image-cropper__btn--primary{background:var(--catlap-yellow, #f5c518);color:#000}.image-cropper__btn--primary:hover{background:#ffd43b}.image-cropper__btn:disabled{opacity:.5;cursor:not-allowed}.photo-upload-section{display:flex;align-items:center;gap:1rem;padding:1rem 0}.photo-upload-controls{display:flex;flex-direction:column;gap:.5rem}.photo-upload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border:1px solid var(--border-subtle, #333);border-radius:6px;background:var(--surface-elevated, #2a2a2a);color:var(--text-secondary, #a0a0a0);font-size:.875rem;cursor:pointer;transition:background var(--transition-fast, .15s) ease,border-color var(--transition-fast, .15s) ease,color var(--transition-fast, .15s) ease}.photo-upload-btn:hover{background:var(--surface-hover, #3a3a3a);border-color:var(--border-hover, #444);color:var(--text-primary, #ffffff)}.photo-upload-btn--remove{border-color:#522;color:#ff6b6b}.photo-upload-btn--remove:hover{background:#311;border-color:#622}.photo-upload-hint{font-size:.75rem;color:var(--text-tertiary, #666)}.banner-upload-section{display:flex;flex-direction:column;gap:1rem;padding:1rem 0}.banner-preview{width:100%;max-width:400px;aspect-ratio:4 / 1;border-radius:8px;overflow:hidden;background:#ffffff0d;border:1px solid var(--card-border)}.banner-preview img{width:100%;height:100%;object-fit:cover}.banner-preview--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.banner-preview__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--ink-muted);font-size:.85rem}.banner-preview__placeholder svg{opacity:.5}@media (max-width: 480px){.image-cropper{padding:1rem}.image-cropper__header h3{font-size:1rem}.photo-upload-section{flex-direction:column;align-items:flex-start}.banner-preview{max-width:100%}}
