@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-800-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-800-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/outfit-400-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/outfit-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/outfit-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/outfit-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/outfit-900-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/outfit-900-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg-primary:#f5f5f7;--bg-secondary:#ffffff;--text-primary:#1d1d1f;--text-secondary:#86868b;--glass-bg:rgba(255,255,255,0.7);--glass-border:rgba(255,255,255,0.5);--glass-shadow:0 4px 24px rgba(0,0,0,0.04);--glass-shadow-lg:0 12px 48px rgba(0,0,0,0.08);--accent-color:#0071e3;--accent-hover:#0077ED;--danger-color:#ff3b30;--success-color:#34c759;--warning-color:#ff9f0a;--surface-1:#ffffff;--surface-2:#f2f2f7;--surface-3:#e5e5ea;--border-color:rgba(0,0,0,0.1);--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-pill:9999px;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--text-xs:0.7rem;--text-sm:0.8rem;--text-base:0.9rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--z-map:0;--z-fab:1000;--z-nav:1100;--z-sheet:2000;--z-modal:9000;--z-toast:9500;--blob-1:rgba(0,113,227,0.15);--blob-2:rgba(94,92,230,0.15);--blob-3:rgba(50,173,230,0.15);--mobile-bottom-padding:0px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}@media (prefers-color-scheme:dark){:root{--bg-primary:#000000;--bg-secondary:#1c1c1e;--text-primary:#f5f5f7;--text-secondary:#86868b;--glass-bg:rgba(28,28,30,0.7);--glass-border:rgba(255,255,255,0.1);--glass-shadow:0 4px 24px rgba(0,0,0,0.2);--glass-shadow-lg:0 12px 48px rgba(0,0,0,0.4);--accent-color:#2997ff;--accent-hover:#3b9fff;--danger-color:#ff453a;--success-color:#30d158;--warning-color:#ffd60a;--surface-1:#1c1c1e;--surface-2:#2c2c2e;--surface-3:#3a3a3c;--border-color:rgba(255,255,255,0.12);--blob-1:rgba(41,151,255,0.1);--blob-2:rgba(94,92,230,0.1);--blob-3:rgba(100,210,255,0.1)}}:root.theme-night{--bg-primary:#000000;--bg-secondary:#0a0000;--text-primary:#ff3b30;--text-secondary:#cc2922;--glass-bg:rgba(20,0,0,0.8);--glass-border:rgba(255,59,48,0.3);--glass-shadow:0 4px 24px rgba(255,59,48,0.1);--glass-shadow-lg:0 12px 48px rgba(255,59,48,0.2);--accent-color:#ff3b30;--accent-hover:#ff453a;--danger-color:#ff6961;--success-color:#ff8a80;--warning-color:#ffab91;--surface-1:#140000;--surface-2:#1f0000;--surface-3:#2a0000;--border-color:rgba(255,59,48,0.25);--blob-1:rgba(255,59,48,0.05);--blob-2:rgba(200,30,20,0.05);--blob-3:rgba(255,100,100,0.05)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,Yu Gothic UI,Meiryo,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color .3s ease,color .3s ease}body,html{max-width:100vw;overflow-x:clip;overscroll-behavior-x:none}h1,h2,h3,h4,h5,h6{font-family:Outfit,-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,Yu Gothic UI,Meiryo,sans-serif;letter-spacing:-.02em}.background-blobs{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.blob{position:absolute;filter:blur(80px);border-radius:50%;animation:float 20s ease-in-out infinite}.blob-1{top:-10%;left:-10%;width:50vw;height:50vw;background:var(--blob-1)}.blob-2{top:20%;right:-10%;width:40vw;height:40vw;background:var(--blob-2);animation-delay:-5s}.blob-3{bottom:-20%;left:20%;width:60vw;height:60vw;background:var(--blob-3);animation-delay:-10s}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.app-container{display:flex;flex-direction:row;min-height:100dvh;width:100%;padding-bottom:var(--mobile-bottom-padding)}.main-content{flex:1 1;padding:2rem;width:100%}.app-container>.main-content,.app-container>main{min-width:0}@media (max-width:1023px){:root{--mobile-bottom-padding:calc(70px + var(--safe-bottom))}.main-content{padding:var(--space-4)}}@media (max-width:599px){.app-container{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.blob{animation:none}}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg)}.glass-input{background:rgba(255,255,255,.6);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:.75rem 1rem;color:var(--text-primary);font-family:inherit;font-weight:500;transition:all .2s ease}@media (prefers-color-scheme:dark){.glass-input{background:var(--surface-2)}}.theme-night .glass-input{background:var(--surface-2)}.glass-input:focus{outline:none;box-shadow:0 0 0 3px rgba(0,113,227,.3);border-color:var(--accent-color);background:var(--bg-secondary)}.glass-button{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);padding:.75rem 1.25rem;border-radius:var(--radius-md);color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--glass-shadow)}.glass-button:hover{transform:translateY(-1px);box-shadow:var(--glass-shadow-lg);background:var(--bg-secondary)}.glass-button:active{transform:scale(.98)}.glass-button.primary{background:var(--accent-color);color:white;border:none;border-radius:var(--radius-pill)}.glass-button.primary:hover{background:var(--accent-hover);box-shadow:0 4px 16px rgba(0,113,227,.4)}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:10px;opacity:.3}@media screen and (max-width:1023px){.glass-input,input,select,textarea{font-size:16px!important}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.5rem 2rem;box-shadow:var(--glass-shadow);flex-wrap:wrap;gap:1rem}@media (max-width:1023px){.page-header{margin-top:var(--safe-top);flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-md)}.page-header-icon{width:2.25rem;height:2.25rem;font-size:1rem;border-radius:var(--radius-sm)}.page-header-title-box{gap:var(--space-3);min-width:0}.page-title{font-size:var(--text-lg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-subtitle{display:none}.page-header .glass-button{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);white-space:nowrap;flex-shrink:0}}.page-header-title-box{display:flex;align-items:center;gap:1rem}.page-header-icon{width:3.5rem;height:3.5rem;background:linear-gradient(135deg,var(--accent-color) 0,var(--accent-hover) 100%);color:white;border-radius:var(--radius-md);font-size:1.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 16px rgba(0,113,227,.3)}.page-title{font-size:1.875rem;font-weight:900}.page-subtitle{font-size:.875rem;color:var(--text-secondary);font-weight:700;margin-top:.25rem}.global-modal-row{display:flex;gap:1rem}@media (max-width:599px){.global-modal-row{flex-direction:column;gap:.5rem}}.global-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:var(--z-modal);padding:5vh 1rem 1rem;overflow-y:auto;overscroll-behavior:contain}.global-modal-container{background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg);border-radius:var(--radius-lg);width:100%;max-width:36rem;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:modalEnter .2s ease-out}@keyframes modalEnter{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bottomSheetEnter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width:1023px){.global-modal-overlay{padding:0;align-items:flex-end}.global-modal-container{max-width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:bottomSheetEnter .3s cubic-bezier(.175,.885,.32,1.275);border-bottom:none}}.global-modal-header{padding:1.5rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.global-modal-title{font-size:1.25rem;font-weight:800}.global-modal-close-btn{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;transition:color .2s}.global-modal-close-btn:hover{color:var(--text-primary)}.global-modal-body{padding:1.5rem;overflow-y:auto;flex:1 1}.global-modal-body::-webkit-scrollbar{width:6px}.global-modal-body::-webkit-scrollbar-thumb{background:rgba(156,163,175,.3);border-radius:9999px}.global-modal-footer{padding:1.5rem;border-top:1px solid var(--glass-border);background:rgba(255,255,255,.2);gap:.75rem;flex-shrink:0}.global-modal-footer,.modal-actions{display:flex;justify-content:flex-end}.modal-actions{gap:1rem;margin-top:2rem}.modal-footer-buttons{display:flex;gap:1rem;width:100%;align-items:center}.global-mobile-fab{display:none;position:fixed;bottom:calc(20px + var(--safe-bottom));right:16px;width:56px;height:56px;border-radius:50%;background:var(--accent-color);color:white;border:none;box-shadow:0 4px 12px rgba(0,113,227,.4);z-index:var(--z-fab);font-size:1.25rem;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,left .3s,right .3s}.global-mobile-fab:active{transform:scale(.95)}@media (max-width:1023px){.global-mobile-fab{display:flex}}.global-bottom-sheet-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:calc(var(--z-sheet) - 1);opacity:0;pointer-events:none;transition:opacity .3s ease}.global-bottom-sheet-backdrop.open{opacity:1;pointer-events:auto}.global-bottom-sheet{position:fixed;left:0;right:0;bottom:-100%;background:var(--surface-1);color:var(--text-primary);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border-top:1px solid var(--border-color);z-index:var(--z-sheet);padding:var(--space-4) var(--space-5) calc(var(--space-7) + var(--safe-bottom));box-shadow:0 -4px 20px rgba(0,0,0,.3);transition:bottom .4s cubic-bezier(.175,.885,.32,1);display:flex;flex-direction:column;max-height:85vh;overflow-y:auto}.global-bottom-sheet.open{bottom:0}.global-bottom-sheet-handle{width:40px;height:4px;background:var(--glass-border);border-radius:2px;margin:0 auto 1rem;cursor:pointer}.search-sheet-form{margin-bottom:var(--space-4)}.search-sheet-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text-secondary);font-size:1.1rem;cursor:pointer;padding:.25rem;line-height:1}.search-sheet-filters{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.search-sheet-actions{display:flex;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.search-sheet-inline{display:flex;flex-wrap:wrap;align-items:center}.search-sheet-inline .search-sheet-form{margin-bottom:0;flex:1 1 220px}.dock-search-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 3px;border-radius:999px;background:var(--danger-color);color:#fff;font-size:10px;font-weight:800;line-height:16px;text-align:center}@media (prefers-color-scheme:dark){.global-modal-footer{background:rgba(0,0,0,.1)}}.page-shell{padding:var(--space-6);min-height:100dvh;color:var(--text-primary)}@media (max-width:1023px){.page-shell{padding:var(--space-4);padding-bottom:calc(var(--space-6) + var(--mobile-bottom-padding))}}.surface-card{background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--glass-shadow)}.surface-card-inset{background:var(--surface-2);border-radius:var(--radius-md);padding:var(--space-4)}.surface-card-title{font-size:var(--text-md);font-weight:800;border-bottom:1px solid var(--border-color);padding-bottom:var(--space-2);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.stat-tile{background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center}.stat-tile-value{font-size:var(--text-2xl);font-weight:900;color:var(--accent-color);line-height:1.2}.stat-tile-label{color:var(--text-secondary);font-size:var(--text-base);margin-top:var(--space-1)}.surface-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;border-bottom:1px dashed var(--border-color)}.surface-row:last-child{border-bottom:none}.muted{color:var(--text-secondary)}.tap-target{min-width:44px;min-height:44px;display:inline-flex}.empty-state,.tap-target{align-items:center;justify-content:center}.empty-state{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-7) var(--space-4);text-align:center;color:var(--text-secondary)}.empty-state-icon{font-size:2.5rem;opacity:.4}.empty-state-title{font-weight:800;color:var(--text-primary)}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-container{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--mobile-bottom-padding) + var(--space-5) + var(--safe-bottom));z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);width:min(calc(100vw - 2rem),420px);pointer-events:none}@media (min-width:1024px){.toast-container{left:auto;right:var(--space-6);transform:none;bottom:var(--space-6)}}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-primary);border:1px solid var(--border-color);border-left:4px solid var(--accent-color);box-shadow:var(--glass-shadow-lg);font-size:var(--text-base);font-weight:600;pointer-events:auto;animation:toast-in .2s ease-out}.toast-success{border-left-color:var(--success-color)}.toast-error{border-left-color:var(--danger-color)}.toast-info{border-left-color:var(--accent-color)}.toast-close{margin-left:auto;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-md);padding:var(--space-1)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-toolbar{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-5);padding:var(--space-2) 0}.page-toolbar-search{position:relative;flex:1 1 220px;min-width:0}.page-toolbar-search .glass-input{width:100%;padding-left:2.5rem}.page-toolbar-search-icon{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.page-toolbar-controls{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}@media (max-width:599px){.page-toolbar{gap:var(--space-2);margin-bottom:var(--space-4)}.page-toolbar-search{flex:1 1 100%}.page-toolbar-controls{width:100%}.page-toolbar-controls>*{flex:1 1;min-width:0}}@media (min-width:600px) and (max-width:1023px){.main-content,.page-shell{padding:var(--space-5)}.page-shell{padding-bottom:calc(var(--space-6) + var(--mobile-bottom-padding))}}.tab-bar{display:flex;gap:var(--space-1);align-items:center;overflow-x:auto;scrollbar-width:none;padding:var(--space-2) 0;margin-bottom:var(--space-4);border-bottom:1px solid var(--border-color)}.tab-bar::-webkit-scrollbar{display:none}.tab-bar-item{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);min-height:44px;background:transparent;color:var(--text-secondary);font:inherit;font-weight:700;font-size:var(--text-base);white-space:nowrap;cursor:pointer;border:none;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.tab-bar-item:hover{color:var(--text-primary)}.tab-bar-item-active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.tab-bar-badge{font-size:var(--text-xs);font-weight:800;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-secondary)}.tab-bar-item-active .tab-bar-badge{background:var(--accent-color);color:#fff}.record-cards{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.record-table-scroll{display:none}@media (min-width:600px){.record-cards{display:none}.record-table-scroll{display:block;overflow-x:auto;background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-lg)}}.record-card{background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.record-card-clickable{cursor:pointer}.record-card-clickable:active{background:var(--surface-2)}.record-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);min-width:0}.record-card-title{font-weight:800;font-size:var(--text-md);min-width:0;overflow-wrap:anywhere}.record-card-badge{flex-shrink:0}.record-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary);min-width:0;overflow-wrap:anywhere}.record-card-body{font-size:var(--text-base);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.record-card-actions,.record-row-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.record-card-actions{border-top:1px solid var(--border-color);padding-top:var(--space-3);margin-top:var(--space-1)}.record-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.record-table th{text-align:left;font-size:var(--text-xs);font-weight:800;color:var(--text-secondary);letter-spacing:.04em;white-space:nowrap;position:sticky;top:0;background:var(--surface-1);z-index:1}.record-table td,.record-table th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.record-table td{vertical-align:middle}.record-table tr:last-child td{border-bottom:none}.record-row-clickable{cursor:pointer}.record-icon-button,.record-row-clickable:hover{background:var(--surface-2)}.record-icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease}.record-icon-button:hover{color:var(--text-primary)}.record-icon-button-danger:hover{color:var(--danger-color);border-color:var(--danger-color)}@media (min-width:1024px){.tab-bar-mobile-only{display:none}}.filter-chips{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;flex:1 1 auto}.filter-chips::-webkit-scrollbar{display:none}.filter-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);min-height:40px;white-space:nowrap;border-radius:var(--radius-pill);border:1px solid var(--border-color);background:var(--surface-1);color:var(--text-secondary);font:inherit;font-size:var(--text-base);font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.filter-chip:hover{color:var(--text-primary)}.filter-chip-active{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.heatmap-scale{display:flex;gap:3px;padding:0 var(--space-4);margin-bottom:var(--space-1);font-size:var(--text-xs);color:var(--text-secondary);text-align:center}.heatmap-scale>span{flex:1 1;min-width:0}.heatmap-card{background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.heatmap-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:44px;padding:0;border:none;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.heatmap-card-name{font-weight:800;overflow-wrap:anywhere}.heatmap-bar{display:flex;gap:3px;margin-top:var(--space-2)}.heatmap-bar-month{flex:1 1;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px}.heatmap-bar-month>span{height:22px;border-radius:2px;display:block}.touring-replay{display:flex;flex-direction:column;height:100%;width:100%;min-height:0}.touring-replay>.leaflet-container{flex:1 1;min-height:240px}.touring-controlbar{flex-shrink:0;background:var(--surface-1);border-top:1px solid var(--border-color);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.touring-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);text-align:center}.touring-stats-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.touring-stats-row span{font-size:var(--text-xs)}.touring-stats-row strong{font-size:var(--text-base);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.touring-timeline-labels{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-1)}.touring-timeline-labels strong{color:var(--text-primary);font-size:var(--text-md);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.touring-timeline input[type=range]{height:32px;accent-color:var(--accent-color)}@media (max-width:599px){.touring-stats-row{grid-template-columns:repeat(2,1fr);gap:var(--space-2) var(--space-4)}}.date-selector{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-5)}.date-selector input[type=date]{padding:var(--space-2) var(--space-3);min-height:40px}@media (max-width:599px){.date-selector{gap:var(--space-2)}.date-selector .filter-chips{order:1;width:100%}.date-selector input[type=date]{order:2;flex:1 1 auto;min-width:0}.date-selector>.glass-button{order:3}}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}@media (max-width:1023px){:root{--sticky-offset:var(--safe-top)}.main-content,.page-shell{padding-left:var(--space-4);padding-right:var(--space-4)}}@media (min-width:1024px){:root{--sticky-offset:0px}}.heatmap-series+.heatmap-series{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--border-color)}.heatmap-series-label{font-size:var(--text-sm);font-weight:700;color:var(--text-secondary)}.stat-tile{min-width:0}.stat-tile-value{overflow-wrap:anywhere}@media (max-width:599px){.stat-tile{padding:var(--space-4) var(--space-3)}.stat-tile-value{font-size:var(--text-xl)}.stat-tile-label{font-size:var(--text-sm)}.surface-card{padding:var(--space-4)}.surface-card-title{font-size:var(--text-base)}}.Navigation_desktopNav__mb_ck{display:flex;flex-direction:column;width:260px;flex-shrink:0;height:calc(100vh - 2rem);position:sticky;top:1rem;overflow:hidden;align-self:flex-start}.Navigation_navHeader__S_TxI{padding:1.5rem 1.5rem .5rem;display:flex;justify-content:space-between;align-items:center}.Navigation_themeToggleBtn__2RC0p{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;transition:color .2s}.Navigation_themeToggleBtn__2RC0p:hover{color:var(--text-primary)}.Navigation_logo__ZzKRw{font-size:2rem;font-weight:900;background:linear-gradient(135deg,var(--accent-color),#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.Navigation_navLinks__AFel0{flex:1 1;overflow-y:auto}.Navigation_navFooter__eA1fL,.Navigation_navLinks__AFel0{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.Navigation_navFooter__eA1fL{border-top:1px solid var(--glass-border)}.Navigation_navItem__yXCkf{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:1rem;color:var(--text-secondary);text-decoration:none;font-weight:700;transition:all .2s ease}.Navigation_navItem__yXCkf:hover{background:rgba(255,255,255,.4);color:var(--text-primary)}.Navigation_active__SA7aP{background:rgba(255,255,255,.8);color:var(--accent-color);box-shadow:0 4px 12px rgba(0,0,0,.05);border:1px solid rgba(255,255,255,.5)}.Navigation_icon__UHXWw{font-size:1.2rem;width:24px;text-align:center}.Navigation_logoutBtn__gSOZU{background:transparent;border:none;cursor:pointer;width:100%;color:#ef4444}.Navigation_logoutBtn__gSOZU:hover{background:rgba(239,68,68,.1)}.Navigation_mobilePillNav__UFjyG,.Navigation_moreMenuBackdrop__oUXTC,.Navigation_moreMenuSheet__i9IQ8{display:none}@media (max-width:1023px){.Navigation_desktopNav__mb_ck{display:none}.Navigation_mobilePillNav__UFjyG{display:flex;align-items:center;justify-content:center;gap:8px;position:fixed;bottom:calc(12px + var(--safe-bottom));left:12px;right:12px;z-index:var(--z-nav);pointer-events:none}@media (min-width:600px){.Navigation_mobilePillNav__UFjyG{bottom:calc(16px + var(--safe-bottom))}}.Navigation_pillContainer__K_s43{display:flex;position:relative;pointer-events:auto;width:100%;min-width:0;max-width:460px;justify-content:space-between;background:rgba(40,40,40,.4);border-radius:9999px;padding:6px;gap:4px;box-shadow:0 4px 12px rgba(0,0,0,.4);align-items:center;max-width:100%;overflow-x:auto;scrollbar-width:none}.Navigation_pillContainer__K_s43::-webkit-scrollbar{display:none}.Navigation_pillContainer__K_s43>*{position:relative;z-index:1}@media (prefers-color-scheme:light){html:not(.theme-night) .Navigation_pillContainer__K_s43{background:rgba(255,255,255,.4);box-shadow:0 4px 12px rgba(0,0,0,.15);border:1px solid rgba(0,0,0,.05)}}.Navigation_pillItem__ViTyd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1 1;min-width:0;min-height:48px;padding:4px 2px;border-radius:20px;color:#a0a0a0;font-size:.625rem;font-weight:700;text-decoration:none;transition:color .2s ease,background .2s ease;white-space:nowrap;border:none;background:transparent;cursor:pointer}@media (prefers-color-scheme:light){html:not(.theme-night) .Navigation_pillItem__ViTyd{color:#64748b}}.Navigation_pillActive__8b6E3{color:var(--accent-color)!important;background:rgba(0,113,227,.12)}.Navigation_pillIcon__6d24x{font-size:1.125rem}.Navigation_pillText__WBSin{max-width:100%;overflow:hidden;text-overflow:ellipsis}.Navigation_pillAddButton__Uk7Ex{flex:0 0 auto;width:52px;height:52px;margin:0 4px;border-radius:50%;border:none;background:var(--accent-color);color:#fff;font-size:1.25rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,113,227,.45);display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.Navigation_pillAddButton__Uk7Ex:active{transform:scale(.94)}.Navigation_searchIsland___a1Tt{position:relative;flex:0 0 auto;width:52px;height:52px;border-radius:50%;border:none;pointer-events:auto;background:rgba(40,40,40,.4);color:#fff;font-size:1.125rem;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.Navigation_searchIsland___a1Tt:active{transform:scale(.94)}.Navigation_searchIsland___a1Tt i{position:relative;z-index:1}@media (prefers-color-scheme:light){html:not(.theme-night) .Navigation_searchIsland___a1Tt{background:rgba(255,255,255,.4);box-shadow:0 4px 12px rgba(0,0,0,.15);color:var(--text-primary)}}.Navigation_moreMenuBackdrop__oUXTC{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2000;opacity:0;pointer-events:none;transition:opacity .3s ease}.Navigation_moreMenuOpen__DD5ar.Navigation_moreMenuBackdrop__oUXTC{opacity:1;pointer-events:auto}.Navigation_moreMenuSheet__i9IQ8{display:flex;position:fixed;left:0;right:0;bottom:-100%;background:var(--surface-1);color:var(--text-primary);border-top:1px solid var(--border-color);border-top-left-radius:20px;border-top-right-radius:20px;z-index:var(--z-sheet);padding:1rem 1.5rem calc(2.5rem + var(--safe-bottom));box-shadow:0 -4px 20px rgba(0,0,0,.3);transition:bottom .4s cubic-bezier(.175,.885,.32,1);flex-direction:column}.Navigation_moreMenuOpen__DD5ar.Navigation_moreMenuSheet__i9IQ8{bottom:0}.Navigation_moreMenuHandle__31W0U{width:40px;height:4px;background:var(--glass-border);border-radius:2px;margin:0 auto 1rem;cursor:pointer}.Navigation_moreMenuContent___PZFT{display:flex;flex-direction:column;gap:.5rem}.Navigation_moreMenuItem__dY0z1{display:flex;align-items:center;padding:1rem;border-radius:12px;background:var(--glass-bg);color:var(--text-primary);text-decoration:none;font-weight:700;border:none;font-size:1rem;cursor:pointer;text-align:left}.Navigation_moreMenuIcon__44ETp{width:24px;margin-right:12px;text-align:center;color:var(--text-secondary)}.Navigation_moreMenuLogout__9G_xB{color:#ef4444;margin-top:.5rem}.Navigation_moreMenuLogout__9G_xB .Navigation_moreMenuIcon__44ETp{color:#ef4444}.Navigation_modeToggle__dSPY8{background:var(--surface-2);border:1px solid var(--accent-color);margin-bottom:.5rem}.Navigation_modeToggle__dSPY8 .Navigation_moreMenuIcon__44ETp{color:var(--accent-color)}.Navigation_modeToggleHint__JHAE7{display:block;font-size:.75rem;font-weight:700;color:var(--text-secondary);margin-top:2px}}@media (prefers-color-scheme:dark){.Navigation_navItem__yXCkf:hover{background:rgba(0,0,0,.2)}.Navigation_active__SA7aP{background:rgba(30,41,59,.8);border-color:rgba(255,255,255,.1)}}.Navigation_tabletRail__bjsSq{display:none}@media (min-width:600px) and (max-width:1023px){.Navigation_tabletRail__bjsSq{display:flex;flex-direction:column;gap:var(--space-1);position:sticky;top:var(--space-3);align-self:flex-start;width:76px;flex-shrink:0;padding:var(--space-2);margin:var(--space-3) 0 0 var(--space-3);background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);max-height:calc(100dvh - var(--space-6));overflow-y:auto}.Navigation_railItem__sgCuH{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:var(--space-2) 2px;border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;font-size:.625rem;font-weight:700;transition:background .2s ease,color .2s ease}.Navigation_railItem__sgCuH i{font-size:1.125rem}.Navigation_railItem__sgCuH:hover{background:var(--surface-2);color:var(--text-primary)}.Navigation_railActive__m3jc5{background:var(--accent-color);color:#fff}.Navigation_railText__qIKpM{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}