.home-page .material-icon{font-family:Material Symbols Rounded;font-weight:700;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}.home-page{min-height:100vh;background:var(--accent-gradient, linear-gradient(135deg, #667eea 0%, #764ba2 100%));display:flex;flex-direction:column}.home-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-5) var(--ex-space-10);background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);position:sticky;top:0;z-index:var(--ex-z-dropdown)}.home-logo{color:var(--ex-text-inverse);font-size:28px;font-weight:var(--ex-font-weight-bold);margin:0;letter-spacing:-.02em}.home-header-nav{display:flex;align-items:center;gap:var(--ex-space-6)}.home-nav-link{color:#ffffffe6;text-decoration:none;font-size:15px;font-weight:var(--ex-font-weight-medium);transition:color var(--ex-transition-base)}.home-nav-link:hover{color:var(--ex-text-inverse)}.home-header-right{display:flex;align-items:center}.login-menu-container{position:relative}.login-menu-trigger{display:flex;align-items:center;gap:var(--ex-space-2);background:#fff3;color:var(--ex-text-inverse);border:1px solid rgba(255,255,255,.3);padding:10px var(--ex-space-4);border-radius:var(--ex-radius-lg);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base)}.login-menu-trigger:hover{background:#ffffff4d}.login-menu-trigger .material-icon{font-size:var(--ex-font-xl)}.login-menu-trigger .dropdown-arrow{font-size:var(--ex-font-lg);margin-left:var(--ex-space-1)}.login-menu-dropdown{position:absolute;top:calc(100% + var(--ex-space-2));right:0;background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);box-shadow:var(--ex-shadow-2xl);padding:var(--ex-space-6);width:320px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.login-menu-form{display:flex;flex-direction:column;gap:var(--ex-space-4)}.login-menu-error{background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);color:var(--ex-danger-hover);padding:10px var(--ex-space-3);border-radius:var(--ex-radius-md);font-size:13px}.login-menu-field{display:flex;flex-direction:column;gap:6px}.login-menu-field label{font-size:13px;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.login-menu-field input{padding:10px var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.login-menu-field input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.login-menu-field input:disabled{background:var(--ex-bg-tertiary);cursor:not-allowed}.login-menu-remember{display:flex;align-items:center;gap:var(--ex-space-2)}.login-menu-remember input[type=checkbox]{width:var(--ex-space-4);height:var(--ex-space-4);cursor:pointer}.login-menu-remember label{font-size:13px;color:var(--ex-text-secondary);cursor:pointer}.login-menu-submit{background:var(--accent-gradient, linear-gradient(135deg, var(--ex-primary) 0%, var(--ex-secondary) 100%));color:var(--ex-text-inverse);border:none;padding:var(--ex-space-3);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);cursor:pointer;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.login-menu-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--ex-primary-rgb),.4)}.login-menu-submit:disabled{opacity:.6;cursor:not-allowed}.login-menu-divider{height:1px;background:var(--ex-border-light);margin:var(--ex-space-1) 0}.login-menu-create{display:block;text-align:center;background:var(--ex-bg-tertiary);color:var(--ex-text-secondary);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);text-decoration:none;transition:background-color var(--ex-transition-base)}.login-menu-create:hover{background:var(--ex-bg-active)}.home-hero{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:80px var(--ex-space-10) 100px;text-align:center}.home-hero-content{max-width:700px}.home-hero-title{color:var(--ex-text-inverse);font-size:56px;font-weight:var(--ex-font-weight-bold);line-height:1.1;margin:0 0 var(--ex-space-6) 0;letter-spacing:-.03em}.home-hero-subtitle{color:#ffffffe6;font-size:var(--ex-font-xl);line-height:1.6;margin:0 0 var(--ex-space-10) 0;font-weight:var(--ex-font-weight-normal)}.home-hero-cta{display:inline-block;background:var(--ex-bg-primary);color:var(--ex-primary);padding:var(--ex-space-4) var(--ex-space-10);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);text-decoration:none;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.home-hero-cta:hover{transform:translateY(-2px);box-shadow:var(--ex-shadow-xl)}.home-features{background:var(--ex-bg-primary);padding:100px var(--ex-space-10)}.home-features-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ex-space-10)}.feature-card{text-align:center;padding:var(--ex-space-8) var(--ex-space-6)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:var(--accent-gradient, linear-gradient(135deg, var(--ex-primary) 0%, var(--ex-secondary) 100%));border-radius:var(--ex-radius-2xl);margin-bottom:var(--ex-space-6)}.feature-icon .material-icon{font-size:36px;color:var(--ex-text-inverse)}.feature-title{font-size:22px;font-weight:var(--ex-font-weight-semibold);color:var(--ex-bg-dark);margin:0 0 var(--ex-space-3) 0}.feature-description{font-size:var(--ex-font-md);line-height:1.6;color:var(--ex-text-tertiary);margin:0}.home-how-it-works{background:var(--ex-bg-secondary);padding:100px var(--ex-space-10)}.home-section-container{max-width:1000px;margin:0 auto;text-align:center}.home-section-title{font-size:40px;font-weight:var(--ex-font-weight-bold);color:var(--ex-bg-dark);margin:0 0 var(--ex-space-4) 0;letter-spacing:-.02em}.home-section-subtitle{font-size:var(--ex-font-lg);color:var(--ex-text-tertiary);max-width:600px;margin:0 auto 60px}.how-it-works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ex-space-12);text-align:left}.how-it-works-item{position:relative}.how-it-works-number{display:flex;align-items:center;justify-content:center;width:var(--ex-space-12);height:var(--ex-space-12);background:var(--accent-gradient, linear-gradient(135deg, var(--ex-primary) 0%, var(--ex-secondary) 100%));color:var(--ex-text-inverse);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-bold);border-radius:50%;margin-bottom:var(--ex-space-5)}.how-it-works-item h3{font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-bg-dark);margin:0 0 var(--ex-space-3) 0}.how-it-works-item p{font-size:15px;line-height:1.6;color:var(--ex-text-tertiary);margin:0}.home-cta-section{background:var(--accent-gradient, linear-gradient(135deg, var(--ex-primary) 0%, var(--ex-secondary) 100%));padding:80px var(--ex-space-10);text-align:center}.home-cta-content{max-width:600px;margin:0 auto}.home-cta-content h2{font-size:36px;font-weight:var(--ex-font-weight-bold);color:var(--ex-text-inverse);margin:0 0 var(--ex-space-4) 0}.home-cta-content p{font-size:var(--ex-font-lg);color:#ffffffe6;margin:0 0 var(--ex-space-8) 0;line-height:1.6}.home-cta-button{display:inline-block;background:var(--ex-bg-primary);color:var(--ex-primary);padding:var(--ex-space-4) var(--ex-space-10);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);text-decoration:none;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.home-cta-button:hover{transform:translateY(-2px);box-shadow:var(--ex-shadow-xl)}.home-footer{background:var(--ex-bg-dark);padding:var(--ex-space-8) var(--ex-space-10);text-align:center}.home-footer p{color:var(--ex-text-muted);font-size:var(--ex-font-base);margin:0}@media(max-width:1024px){.home-features-container{grid-template-columns:repeat(2,1fr);gap:var(--ex-space-8)}.how-it-works-grid{grid-template-columns:1fr;gap:var(--ex-space-10);max-width:500px;margin:0 auto;text-align:center}.how-it-works-number{margin-left:auto;margin-right:auto}}@media(max-width:768px){.home-header{padding:var(--ex-space-4) var(--ex-space-5)}.home-logo{font-size:var(--ex-font-2xl)}.home-nav-link{font-size:var(--ex-font-base)}.login-menu-trigger{padding:var(--ex-space-2) var(--ex-space-3);font-size:13px}.login-menu-trigger span:not(.material-icon){display:none}.login-menu-trigger .dropdown-arrow{display:none}.login-menu-dropdown{width:300px;padding:var(--ex-space-5);right:-10px}.home-hero{padding:60px var(--ex-space-5) 80px}.home-hero-title{font-size:40px}.home-hero-subtitle{font-size:var(--ex-font-lg)}.home-hero-cta{padding:14px var(--ex-space-8);font-size:var(--ex-font-md)}.home-features{padding:60px var(--ex-space-5)}.home-features-container{grid-template-columns:1fr;gap:var(--ex-space-6)}.feature-card{padding:var(--ex-space-6) var(--ex-space-4)}.feature-icon{width:60px;height:60px}.feature-icon .material-icon{font-size:var(--ex-font-3xl)}.feature-title{font-size:var(--ex-font-xl)}.home-how-it-works{padding:60px var(--ex-space-5)}.home-section-title{font-size:32px}.home-section-subtitle{font-size:var(--ex-font-md);margin-bottom:var(--ex-space-10)}.how-it-works-grid{gap:var(--ex-space-8)}.home-cta-section{padding:60px var(--ex-space-5)}.home-cta-content h2{font-size:28px}.home-cta-content p{font-size:var(--ex-font-md)}.home-cta-button{padding:14px var(--ex-space-8)}.home-footer{padding:var(--ex-space-6) var(--ex-space-5)}}@media(max-width:480px){.home-header{padding:var(--ex-space-3) var(--ex-space-4)}.home-logo{font-size:22px}.home-header-nav{gap:var(--ex-space-4)}.home-nav-link{font-size:13px}.login-menu-trigger{padding:var(--ex-space-2) 10px}.login-menu-trigger .material-icon{font-size:22px}.login-menu-dropdown{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;border-radius:var(--ex-radius-2xl) var(--ex-radius-2xl) 0 0;animation:slideUp var(--ex-transition-slow)}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.home-hero{padding:var(--ex-space-10) var(--ex-space-4) 60px}.home-hero-title{font-size:32px}.home-hero-subtitle{font-size:var(--ex-font-md);margin-bottom:var(--ex-space-8)}.home-hero-cta{display:block;padding:14px var(--ex-space-6);font-size:15px}.home-features{padding:var(--ex-space-12) var(--ex-space-4)}.feature-card{padding:var(--ex-space-5) var(--ex-space-3)}.feature-title{font-size:var(--ex-font-lg)}.feature-description{font-size:15px}.home-how-it-works{padding:var(--ex-space-12) var(--ex-space-4)}.home-section-title{font-size:26px}.how-it-works-number{width:var(--ex-space-10);height:var(--ex-space-10);font-size:var(--ex-font-lg)}.how-it-works-item h3{font-size:var(--ex-font-lg)}.how-it-works-item p{font-size:var(--ex-font-base)}.home-cta-section{padding:var(--ex-space-12) var(--ex-space-4)}.home-cta-content h2{font-size:var(--ex-font-2xl)}.home-cta-content p{font-size:15px}.home-cta-button{display:block;padding:14px var(--ex-space-6);font-size:15px}.home-footer p{font-size:13px}}@media(max-width:320px){.home-logo{font-size:var(--ex-font-xl)}.home-hero-title{font-size:28px}.home-hero-subtitle{font-size:15px}.home-section-title{font-size:var(--ex-font-2xl)}.home-cta-content h2{font-size:22px}}.who-its-for-page .material-icon{font-family:Material Symbols Rounded;font-weight:700;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}.who-its-for-page{min-height:100vh;background:var(--ex-bg-secondary);display:flex;flex-direction:column}.who-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-5) var(--ex-space-10);background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);border-bottom:1px solid rgba(255,255,255,.2)}.who-logo{color:var(--ex-text-inverse);font-size:28px;font-weight:var(--ex-font-weight-bold);text-decoration:none;letter-spacing:-.02em}.who-logo:hover{opacity:.9}.who-header-cta{background:var(--ex-bg-primary);color:var(--ex-primary);padding:10px var(--ex-space-6);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);text-decoration:none;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.who-header-cta:hover{transform:translateY(-1px);box-shadow:var(--ex-shadow-lg)}.who-hero{background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);padding:60px var(--ex-space-10) 80px;text-align:center}.who-hero h1{color:var(--ex-text-inverse);font-size:48px;font-weight:var(--ex-font-weight-bold);margin:0 0 var(--ex-space-4) 0;letter-spacing:-.03em}.who-hero p{color:#ffffffe6;font-size:var(--ex-font-xl);line-height:1.6;margin:0 auto;max-width:700px}.who-audiences{padding:80px var(--ex-space-10);flex:1}.who-audiences-container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:var(--ex-space-12)}.audience-card{background:var(--ex-bg-primary);border-radius:var(--ex-radius-2xl);padding:var(--ex-space-12);box-shadow:var(--ex-shadow-md);border:1px solid var(--ex-border-light)}.audience-card.featured{background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);border:none}.audience-card.featured h2,.audience-card.featured .audience-tagline,.audience-card.featured .benefit-item strong,.audience-card.featured .benefit-item p{color:var(--ex-text-inverse)}.audience-card.featured .audience-icon{background:#fff3}.audience-card.featured .benefit-check{color:#ffffffe6}.audience-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);border-radius:var(--ex-radius-2xl);margin-bottom:var(--ex-space-6)}.audience-icon .material-icon{font-size:36px;color:var(--ex-text-inverse)}.audience-card h2{font-size:32px;font-weight:var(--ex-font-weight-bold);color:var(--ex-bg-dark);margin:0 0 var(--ex-space-2) 0;letter-spacing:-.02em}.audience-tagline{font-size:var(--ex-font-lg);color:var(--ex-text-tertiary);margin:0 0 var(--ex-space-8) 0;font-style:italic}.audience-benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ex-space-6)}.benefit-item{display:flex;gap:var(--ex-space-4);align-items:flex-start}.benefit-check{font-size:var(--ex-font-2xl);color:var(--ex-primary);flex-shrink:0;margin-top:2px}.benefit-item strong{display:block;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-bg-dark);margin-bottom:var(--ex-space-1)}.benefit-item p{font-size:15px;line-height:1.6;color:var(--ex-text-tertiary);margin:0}.who-cta-section{background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);padding:80px var(--ex-space-10);text-align:center}.who-cta-content{max-width:600px;margin:0 auto}.who-cta-content h2{font-size:36px;font-weight:var(--ex-font-weight-bold);color:var(--ex-text-inverse);margin:0 0 var(--ex-space-4) 0}.who-cta-content p{font-size:var(--ex-font-lg);color:#ffffffe6;margin:0 0 var(--ex-space-8) 0;line-height:1.6}.who-cta-button{display:inline-block;background:var(--ex-bg-primary);color:var(--ex-primary);padding:var(--ex-space-4) var(--ex-space-10);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);text-decoration:none;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.who-cta-button:hover{transform:translateY(-2px);box-shadow:var(--ex-shadow-xl)}.who-footer{background:var(--ex-bg-dark);padding:var(--ex-space-8) var(--ex-space-10);text-align:center}.who-footer p{color:var(--ex-text-muted);font-size:var(--ex-font-base);margin:0}@media(max-width:1024px){.audience-benefits{grid-template-columns:1fr;gap:var(--ex-space-5)}}@media(max-width:768px){.who-header{padding:var(--ex-space-4) var(--ex-space-5)}.who-logo{font-size:var(--ex-font-2xl)}.who-header-cta{padding:var(--ex-space-2) var(--ex-space-4);font-size:13px}.who-hero{padding:var(--ex-space-10) var(--ex-space-5) 60px}.who-hero h1{font-size:36px}.who-hero p{font-size:17px}.who-audiences{padding:var(--ex-space-12) var(--ex-space-5)}.who-audiences-container{gap:var(--ex-space-8)}.audience-card{padding:var(--ex-space-8) var(--ex-space-6)}.audience-icon{width:60px;height:60px}.audience-icon .material-icon{font-size:var(--ex-font-3xl)}.audience-card h2{font-size:26px}.audience-tagline{font-size:var(--ex-font-md);margin-bottom:var(--ex-space-6)}.benefit-item{gap:var(--ex-space-3)}.benefit-check{font-size:var(--ex-font-xl)}.benefit-item strong{font-size:15px}.benefit-item p{font-size:var(--ex-font-base)}.who-cta-section{padding:60px var(--ex-space-5)}.who-cta-content h2{font-size:28px}.who-cta-content p{font-size:var(--ex-font-md)}.who-cta-button{padding:14px var(--ex-space-8)}.who-footer{padding:var(--ex-space-6) var(--ex-space-5)}}@media(max-width:480px){.who-header{padding:var(--ex-space-3) var(--ex-space-4)}.who-logo{font-size:22px}.who-hero{padding:var(--ex-space-8) var(--ex-space-4) var(--ex-space-12)}.who-hero h1{font-size:28px}.who-hero p{font-size:15px}.who-audiences{padding:var(--ex-space-8) var(--ex-space-4)}.who-audiences-container{gap:var(--ex-space-6)}.audience-card{padding:var(--ex-space-6) var(--ex-space-5)}.audience-icon{width:52px;height:52px;margin-bottom:var(--ex-space-4)}.audience-icon .material-icon{font-size:26px}.audience-card h2{font-size:22px}.audience-tagline{font-size:15px}.audience-benefits{gap:var(--ex-space-4)}.who-cta-section{padding:var(--ex-space-12) var(--ex-space-4)}.who-cta-content h2{font-size:var(--ex-font-2xl)}.who-cta-content p{font-size:15px}.who-cta-button{display:block;padding:14px var(--ex-space-6);font-size:15px}.who-footer p{font-size:13px}}@media(max-width:320px){.who-logo{font-size:var(--ex-font-xl)}.who-hero h1{font-size:var(--ex-font-2xl)}.audience-card h2{font-size:var(--ex-font-xl)}.who-cta-content h2{font-size:22px}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);padding:var(--ex-space-5)}.auth-card{background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);box-shadow:var(--ex-shadow-2xl);padding:var(--ex-space-10);width:100%;max-width:420px}.auth-title{font-size:var(--ex-font-3xl);font-weight:var(--ex-font-weight-bold);color:var(--ex-bg-dark);margin:0 0 var(--ex-space-2) 0;text-align:center}.auth-subtitle{font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);margin:0 0 var(--ex-space-8) 0;text-align:center}.auth-error{background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);color:var(--ex-danger);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-5);font-size:var(--ex-font-base)}.auth-form{display:flex;flex-direction:column;gap:var(--ex-space-5)}.form-group{display:flex;flex-direction:column;gap:var(--ex-radius-md)}.form-group label{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.form-group input{padding:var(--ex-space-3) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);transition:border-color var(--ex-transition-base)}.form-group input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.form-group input:disabled{background-color:var(--ex-bg-tertiary);cursor:not-allowed}.form-hint{font-size:var(--ex-font-sm);color:var(--ex-text-secondary);margin-top:var(--ex-space-1)}.form-group-checkbox{display:flex;align-items:center;gap:var(--ex-space-2)}.form-group-checkbox input[type=checkbox]{width:var(--ex-space-4);height:var(--ex-space-4);cursor:pointer}.form-group-checkbox label{font-size:var(--ex-font-base);color:var(--ex-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.auth-button{background:linear-gradient(135deg,var(--ex-primary) 0%,var(--ex-secondary) 100%);color:var(--ex-text-inverse);border:none;padding:var(--ex-space-3) var(--ex-space-6);border-radius:var(--ex-radius-md);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);cursor:pointer;transition:transform var(--ex-transition-base),box-shadow var(--ex-transition-base)}.auth-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--ex-shadow-lg)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:var(--ex-space-6);text-align:center}.auth-footer p{font-size:var(--ex-font-base);color:var(--ex-text-secondary);margin:0}.auth-footer a{color:var(--ex-primary);text-decoration:none;font-weight:var(--ex-font-weight-semibold)}.auth-footer a:hover{text-decoration:underline}@media(max-width:768px){.auth-container{padding:var(--ex-space-4)}.auth-card{padding:var(--ex-space-8) var(--ex-space-6);max-width:400px}.auth-title{font-size:28px}.auth-subtitle{font-size:var(--ex-font-lg);margin-bottom:var(--ex-space-6)}.form-group input{min-height:44px;font-size:var(--ex-font-md)}.auth-button{min-height:48px;font-size:var(--ex-font-md)}.form-group-checkbox input[type=checkbox]{width:var(--ex-space-5);height:var(--ex-space-5)}}@media(max-width:480px){.auth-container{padding:var(--ex-space-3);align-items:flex-start;padding-top:10vh}.auth-card{padding:var(--ex-space-6) var(--ex-space-5);border-radius:10px}.auth-title{font-size:var(--ex-font-2xl)}.auth-subtitle{font-size:var(--ex-font-md);margin-bottom:var(--ex-space-5)}.auth-error{padding:10px;font-size:13px;margin-bottom:var(--ex-space-4)}.auth-form{gap:var(--ex-space-4)}.form-group{gap:var(--ex-space-1)}.form-group label{font-size:13px}.form-group input{padding:var(--ex-space-3)}.form-hint{font-size:var(--ex-font-xs)}.form-group-checkbox{gap:10px}.form-group-checkbox label{font-size:13px}.auth-button{padding:14px var(--ex-space-6)}.auth-footer{margin-top:var(--ex-space-5)}.auth-footer p{font-size:13px}}@media(max-width:320px){.auth-container{padding:var(--ex-space-2)}.auth-card{padding:var(--ex-space-5) var(--ex-space-4)}.auth-title{font-size:22px}.auth-subtitle{font-size:var(--ex-font-base)}}.password-requirements{margin-top:var(--ex-space-2);padding:var(--ex-space-3);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-md);border:1px solid var(--ex-border-default)}.password-requirements.all-met{background:var(--ex-success-light);border-color:var(--ex-success-border)}.password-requirements-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--ex-space-2) var(--ex-space-4)}.password-requirement{display:flex;align-items:center;gap:var(--ex-space-1);font-size:var(--ex-font-sm);color:var(--ex-text-secondary);transition:color var(--ex-transition-fast)}.password-requirement.met{color:var(--ex-success)}.requirement-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.requirement-icon svg{transition:transform var(--ex-transition-fast)}.password-requirement.met .requirement-icon svg{transform:scale(1.1)}.requirement-label{white-space:nowrap}@media(max-width:480px){.password-requirements{padding:var(--ex-space-2)}.password-requirements-list{flex-direction:column;gap:var(--ex-space-1)}.password-requirement{font-size:var(--ex-font-xs)}}.verification-card{text-align:center;max-width:480px}.verification-icon{display:flex;align-items:center;justify-content:center;width:100px;height:100px;margin:0 auto var(--ex-space-6);background:linear-gradient(135deg,var(--ex-primary-light) 0%,var(--ex-secondary-light) 100%);border-radius:50%;color:var(--ex-primary)}.verification-icon svg{width:50px;height:50px}.verification-message{font-size:var(--ex-font-lg);color:var(--ex-text-primary);margin:0 0 var(--ex-space-3) 0;line-height:1.5}.verification-message strong{color:var(--ex-primary);word-break:break-all}.verification-instructions{font-size:var(--ex-font-base);color:var(--ex-text-secondary);margin:0 0 var(--ex-space-6) 0;line-height:1.5}.verification-note{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-2);padding:var(--ex-space-3);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-md);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);margin-bottom:var(--ex-space-5)}.verification-note svg{flex-shrink:0;color:var(--ex-primary)}.verification-alert{padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-5);font-size:var(--ex-font-sm)}.verification-alert.success{background:var(--ex-success-light);border:1px solid var(--ex-success-border);color:var(--ex-success)}.verification-alert.error{background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);color:var(--ex-danger)}.verification-actions{margin-bottom:var(--ex-space-6)}.verification-help{text-align:left;padding:var(--ex-space-4);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4)}.verification-help p{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin:0 0 var(--ex-space-2) 0}.verification-help ul{margin:0;padding-left:var(--ex-space-5)}.verification-help li{font-size:var(--ex-font-sm);color:var(--ex-text-secondary);margin-bottom:var(--ex-space-1)}.verification-help li:last-child{margin-bottom:0}.verification-success-icon{display:flex;align-items:center;justify-content:center;width:100px;height:100px;margin:0 auto var(--ex-space-6);background:var(--ex-success-light);border-radius:50%;color:var(--ex-success)}.verification-success-icon svg{width:50px;height:50px}.verification-loading{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-4)}.verification-spinner{width:48px;height:48px;border:4px solid var(--ex-border-default);border-top-color:var(--ex-primary);border-radius:50%;animation:spin 1s linear infinite}@media(max-width:480px){.verification-card{padding:var(--ex-space-6) var(--ex-space-5)}.verification-icon{width:80px;height:80px;margin-bottom:var(--ex-space-5)}.verification-icon svg{width:40px;height:40px}.verification-message{font-size:var(--ex-font-md)}.verification-instructions{font-size:var(--ex-font-sm)}.verification-note{flex-direction:column;gap:var(--ex-space-1);text-align:center}}.icon-picker{display:flex;flex-direction:column;gap:var(--ex-space-3)}.icon-search-wrapper{width:100%}.icon-search{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-family:inherit;transition:border-color var(--ex-transition-fast)}.icon-search:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:var(--ex-space-2);max-height:280px;overflow-y:auto;padding:var(--ex-space-1);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);background:var(--ex-bg-secondary)}.icon-grid::-webkit-scrollbar{width:var(--ex-space-2)}.icon-grid::-webkit-scrollbar-track{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-sm)}.icon-grid::-webkit-scrollbar-thumb{background:var(--ex-border-default);border-radius:var(--ex-radius-sm)}.icon-grid::-webkit-scrollbar-thumb:hover{background:var(--ex-border-dark)}.icon-option{width:44px;height:44px;border-radius:var(--ex-radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--ex-transition-fast);padding:0;background:var(--ex-bg-primary);display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-2xl);color:var(--ex-text-primary)}.icon-option:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-default);transform:scale(1.05)}.icon-option.selected{background:var(--ex-primary);color:var(--ex-text-inverse);border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.icon-picker-empty{text-align:center;padding:var(--ex-space-6);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);font-style:italic}.template-editor-v2{display:flex;flex-direction:column;height:70vh;max-height:70vh}.template-editor-error{background-color:var(--ex-danger-light);color:var(--ex-danger);padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);border:1px solid var(--ex-danger-border);margin-bottom:var(--ex-space-4)}.template-editor-v2 .ex-tabs{margin-bottom:var(--ex-space-4);flex-shrink:0}.template-editor-content{flex:1;overflow-y:auto;padding:var(--ex-space-1)}.template-editor-footer{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light);flex-shrink:0;margin-top:var(--ex-space-4)}.settings-grid{display:grid;gap:var(--ex-space-6)}.settings-section{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);border:1px solid var(--ex-border-light)}.settings-section h4{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.form-row{margin-bottom:var(--ex-space-3)}.form-row:last-child{margin-bottom:0}.form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-3)}.form-row.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--ex-space-3);align-items:center}.form-row.four-col{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--ex-space-3)}.sections-view{display:grid;grid-template-columns:300px 1fr;gap:var(--ex-space-4);height:100%}.sections-panel{display:flex;flex-direction:column;background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light);overflow:hidden}.sections-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-3);border-bottom:1px solid var(--ex-border-light);background:var(--ex-bg-primary)}.sections-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.add-section-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:var(--ex-primary);color:var(--ex-text-inverse);border-radius:var(--ex-radius-sm);cursor:pointer;transition:background-color var(--ex-transition-base)}.add-section-btn:hover{background:var(--ex-secondary)}.add-section-btn .material-icon{font-size:var(--ex-font-lg)}.sections-tree{flex:1;overflow-y:auto;padding:var(--ex-space-2)}.sections-empty{text-align:center;padding:var(--ex-space-6) var(--ex-space-3);color:var(--ex-text-secondary);font-size:var(--ex-font-sm)}.sections-empty p{margin:var(--ex-space-1) 0}.section-tree-list{display:flex;flex-direction:column;gap:2px}.section-tree-item{display:flex;flex-direction:column}.section-tree-node{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-2) 10px;border-radius:var(--ex-radius-sm);cursor:pointer;transition:background-color var(--ex-transition-fast)}.section-tree-node:hover{background:var(--ex-bg-tertiary)}.section-tree-node.selected{background:var(--ex-primary);color:var(--ex-text-inverse)}.section-tree-node.selected .section-numbering{color:#ffffffb3}.section-tree-node.selected .section-action-btn{color:#fffc}.section-tree-node.selected .section-action-btn:hover{color:var(--ex-text-inverse);background:#fff3}.section-tree-node.selected .section-action-btn.danger:hover{background:#ef44444d}.section-indent{display:inline-block;flex-shrink:0}.section-child-indicator{font-size:var(--ex-font-md);color:var(--ex-text-secondary);margin-right:2px}.section-name{flex:1;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section-numbering{font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.section-actions{display:flex;gap:2px;opacity:0;transition:opacity var(--ex-transition-fast)}.section-tree-node:hover .section-actions,.section-tree-node.selected .section-actions{opacity:1}.section-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;background:transparent;border-radius:3px;cursor:pointer;color:var(--ex-text-secondary);transition:background-color var(--ex-transition-fast),color var(--ex-transition-fast)}.section-action-btn:hover{background:var(--ex-bg-secondary);color:var(--ex-text-primary)}.section-action-btn.danger:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.section-action-btn:disabled{opacity:.3;cursor:not-allowed}.section-action-btn .material-icon{font-size:var(--ex-font-md)}.section-editor-panel{background:var(--ex-bg-primary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light);overflow-y:auto;padding:var(--ex-space-4)}.section-editor-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ex-text-secondary);text-align:center;padding:var(--ex-space-10)}.section-editor-placeholder .material-icon{font-size:48px;margin-bottom:var(--ex-space-3);opacity:.5}.section-editor-placeholder p{margin:0;font-size:var(--ex-font-base)}.section-editor h4{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.section-editor-grid,.section-template-editor{margin-bottom:var(--ex-space-5)}.template-code-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-2)}.template-code-header h5{margin:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.help-btn{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);border:1px solid var(--ex-border-light);background:var(--ex-bg-primary);border-radius:var(--ex-radius-sm);cursor:pointer;font-size:var(--ex-font-sm);color:var(--ex-text-secondary);transition:background-color var(--ex-transition-fast),border-color var(--ex-transition-fast)}.help-btn:hover{background:var(--ex-bg-secondary);border-color:var(--ex-primary);color:var(--ex-primary)}.help-btn .material-icon{font-size:var(--ex-font-md)}.section-overrides{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-md);padding:var(--ex-space-3);border:1px solid var(--ex-border-light)}.section-overrides h5{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.template-help-content{font-size:var(--ex-font-base)}.template-help-content section{margin-bottom:var(--ex-space-5)}.template-help-content section:last-child{margin-bottom:0}.template-help-content h4{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-primary)}.template-help-content table{width:100%;border-collapse:collapse}.template-help-content td{padding:var(--ex-space-2) var(--ex-space-2);border-bottom:1px solid var(--ex-border-light)}.template-help-content td:first-child{width:40%;font-family:monospace;font-size:var(--ex-font-sm);background:var(--ex-bg-secondary)}.template-help-content code{background:var(--ex-bg-tertiary);padding:2px var(--ex-space-2);border-radius:3px;font-size:var(--ex-font-sm)}.template-preview{padding:var(--ex-space-1)}.preview-header{margin-bottom:var(--ex-space-5)}.preview-header h4{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.preview-description{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.preview-settings{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--ex-space-2);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light);margin-bottom:var(--ex-space-5)}.preview-setting-group{display:flex;gap:var(--ex-space-2);font-size:var(--ex-font-sm)}.preview-setting-label{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary)}.preview-sections{margin-top:var(--ex-space-5)}.preview-sections h5{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.preview-empty{text-align:center;padding:var(--ex-space-10);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px dashed var(--ex-border-light)}.preview-section{margin-bottom:var(--ex-space-4);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);overflow:hidden}.preview-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px var(--ex-space-3);background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.preview-section-name{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.preview-section-meta{display:flex;gap:var(--ex-space-2)}.preview-tag{font-size:10px;padding:2px var(--ex-space-2);background:var(--ex-primary);color:var(--ex-text-inverse);border-radius:3px;text-transform:uppercase;font-weight:var(--ex-font-weight-medium)}.preview-section-template{padding:var(--ex-space-3);background:var(--ex-bg-primary)}.preview-section-template pre{margin:0;font-family:monospace;font-size:var(--ex-font-sm);white-space:pre-wrap;word-wrap:break-word;color:var(--ex-text-secondary)}.preview-section-children{padding:0 var(--ex-space-3) var(--ex-space-3) var(--ex-space-3);background:var(--ex-bg-primary)}@media(max-width:900px){.sections-view{grid-template-columns:1fr}.sections-panel{max-height:200px}}@media(max-width:768px){.form-row.two-col,.form-row.three-col,.form-row.four-col,.preview-settings{grid-template-columns:1fr}}@media(prefers-color-scheme:dark){.settings-section,.sections-panel,.sections-toolbar,.section-editor-panel{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.section-tree-node:hover{background:var(--ex-bg-active)}.section-action-btn:hover{background:var(--ex-bg-dark)}.section-overrides,.preview-settings,.preview-empty{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.preview-section{border-color:var(--ex-border-dark)}.preview-section-header{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.preview-section-template,.preview-section-children,.template-help-content td:first-child{background:var(--ex-bg-dark)}.template-help-content code{background:var(--ex-bg-active)}.help-btn{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.help-btn:hover{background:var(--ex-bg-active)}}.styles-editor{display:flex;flex-direction:column;gap:var(--ex-space-5)}.styles-info{padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-md);border-left:3px solid var(--ex-primary)}.styles-info p{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.settings-hint{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-sm);color:var(--ex-text-tertiary)}.styles-list{display:flex;flex-direction:column;gap:var(--ex-space-3)}.style-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-4);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light);align-items:center}.style-preview{min-height:var(--ex-space-10);display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-4);background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.style-controls{display:flex;flex-direction:column;gap:var(--ex-space-2)}.style-header{display:flex;align-items:center;gap:var(--ex-space-2)}.style-name{font-weight:var(--ex-font-weight-semibold);font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.style-options{display:flex;align-items:flex-end;gap:var(--ex-space-2);flex-wrap:wrap}.style-input-small{width:120px}.style-input-tiny{width:60px}.style-toggles{display:flex;gap:2px;align-items:flex-end;padding-bottom:var(--ex-space-1)}.style-toggle{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ex-border-default);background:var(--ex-bg-primary);border-radius:var(--ex-radius-sm);cursor:pointer;font-size:var(--ex-font-sm);color:var(--ex-text-secondary);transition:all var(--ex-transition-fast) ease}.style-toggle:hover{background:var(--ex-bg-secondary);border-color:var(--ex-border-dark)}.style-toggle.active{background:var(--ex-primary);border-color:var(--ex-primary);color:var(--ex-text-inverse)}.style-toggle strong{font-weight:var(--ex-font-weight-bold)}.style-toggle em{font-style:italic}.style-toggle u{text-decoration:underline}.form-row.five-col{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--ex-space-3)}@media(prefers-color-scheme:dark){.styles-info,.style-row{background:var(--ex-bg-dark)}.style-preview{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.style-toggle{background:var(--ex-bg-dark);border-color:var(--ex-border-dark);color:var(--ex-text-secondary)}.style-toggle:hover{background:var(--ex-bg-active)}.style-toggle.active{background:var(--ex-primary);border-color:var(--ex-primary);color:var(--ex-text-inverse)}}.template-code-textarea-container{position:relative}.template-code-textarea{width:100%;padding:var(--ex-space-3);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);background:var(--ex-bg-primary);color:var(--ex-text-primary);font-family:SF Mono,Monaco,Consolas,monospace;font-size:var(--ex-font-sm);line-height:1.5;resize:vertical;min-height:200px}.template-code-textarea:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.template-code-textarea::placeholder{color:var(--ex-text-muted)}.template-autocomplete-popup{position:absolute;z-index:var(--ex-z-dropdown);min-width:400px;max-width:500px;max-height:300px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg)}.template-autocomplete-item{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);cursor:pointer;transition:background-color var(--ex-transition-fast);align-items:center}.template-autocomplete-item:hover,.template-autocomplete-item.selected{background:var(--ex-primary);color:var(--ex-text-inverse)}.template-autocomplete-item.selected .template-var-desc,.template-autocomplete-item:hover .template-var-desc,.template-autocomplete-item.selected .template-var-category,.template-autocomplete-item:hover .template-var-category{color:#fffc}.template-var-name{font-family:SF Mono,Monaco,Consolas,monospace;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium)}.template-var-desc{font-size:var(--ex-font-sm);color:var(--ex-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-var-category{font-size:10px;color:var(--ex-text-tertiary);padding:2px var(--ex-space-2);background:var(--ex-bg-secondary);border-radius:3px;text-transform:uppercase;font-weight:var(--ex-font-weight-medium)}.template-autocomplete-item.selected .template-var-category,.template-autocomplete-item:hover .template-var-category{background:#fff3}@media(prefers-color-scheme:dark){.template-code-textarea{background:var(--ex-bg-dark);border-color:var(--ex-border-dark);color:var(--ex-text-primary)}.template-code-textarea:focus{border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.template-autocomplete-popup{background:var(--ex-bg-dark);border-color:var(--ex-border-dark);box-shadow:var(--ex-shadow-xl)}.template-var-category{background:var(--ex-bg-active);color:var(--ex-text-secondary)}}.admin-export-templates-section{padding:var(--ex-space-5);max-width:1200px;margin:0 auto}.admin-export-templates-header{margin-bottom:var(--ex-space-6)}.admin-export-templates-header h2{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.admin-export-templates-description{margin:0;color:var(--ex-text-secondary);font-size:var(--ex-font-sm)}.admin-export-templates-actions{display:flex;gap:var(--ex-space-3);margin-bottom:var(--ex-space-6)}.admin-export-templates-section .error-banner{background-color:var(--ex-danger-light);color:var(--ex-danger);padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4);font-size:var(--ex-font-sm);border:1px solid var(--ex-danger-border)}.admin-export-templates-section .success-banner{background-color:var(--ex-success-light);color:var(--ex-success);padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4);font-size:var(--ex-font-sm);border:1px solid var(--ex-success-border)}.admin-export-templates-section .template-loading{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-3);padding:var(--ex-space-10);color:var(--ex-text-secondary)}.admin-export-templates-section .template-group{margin-bottom:var(--ex-space-8)}.admin-export-templates-section .template-group h3{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);margin:0 0 var(--ex-space-4) 0;color:var(--ex-text-primary);padding-bottom:var(--ex-space-2);border-bottom:1px solid var(--ex-border-light)}.admin-export-templates-section .template-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--ex-space-4)}.admin-export-templates-section .template-card{background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.admin-export-templates-section .template-card:hover{border-color:var(--ex-primary);box-shadow:var(--ex-shadow-md)}.admin-export-templates-section .template-card.clickable{cursor:pointer}.admin-export-templates-section .template-card-header{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.admin-export-templates-section .template-card-header h4{margin:0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);flex:1;color:var(--ex-text-primary)}.admin-export-templates-section .built-in-badge{font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-2);background:var(--ex-primary);color:var(--ex-text-inverse);border-radius:var(--ex-radius-full);font-weight:var(--ex-font-weight-medium)}.admin-export-templates-section .template-card-description{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-xs);color:var(--ex-text-secondary);line-height:1.4}.admin-export-templates-section .template-card-meta{display:flex;flex-wrap:wrap;gap:var(--ex-space-2);margin-bottom:var(--ex-space-3)}.admin-export-templates-section .template-card-meta span{font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);border:1px solid var(--ex-border-default)}.admin-export-templates-section .template-card-sections{display:flex;flex-wrap:wrap;gap:var(--ex-space-2);margin-bottom:var(--ex-space-3)}.admin-export-templates-section .section-badge{font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-2);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary)}.admin-export-templates-section .section-badge.more{font-style:italic;opacity:.8}.admin-export-templates-section .template-card-actions{display:flex;gap:var(--ex-space-2);padding-top:var(--ex-space-3);border-top:1px solid var(--ex-border-default)}.admin-export-templates-section .template-card-actions .icon-btn{display:flex;align-items:center;justify-content:center;width:var(--ex-space-8);height:var(--ex-space-8);padding:0;border:none;background:transparent;border-radius:var(--ex-radius-sm);cursor:pointer;color:var(--ex-text-secondary);transition:background-color var(--ex-transition-fast),color var(--ex-transition-fast)}.admin-export-templates-section .template-card-actions .icon-btn:hover{background:var(--ex-bg-secondary);color:var(--ex-text-primary)}.admin-export-templates-section .template-card-actions .icon-btn.danger:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.admin-export-templates-section .empty-state{text-align:center;padding:var(--ex-space-16) var(--ex-space-5);color:var(--ex-text-secondary);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px dashed var(--ex-border-default)}.admin-export-templates-section .empty-state p{margin:var(--ex-space-2) 0}.template-editor{display:flex;flex-direction:column;gap:var(--ex-space-6);max-height:70vh;overflow-y:auto;padding:var(--ex-space-1)}.template-editor .error-message{background-color:var(--ex-danger-light);color:var(--ex-danger);padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);border:1px solid var(--ex-danger-border)}.template-editor-section{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);border:1px solid var(--ex-border-default)}.template-editor-section h4{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.template-editor-section .hint{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin:0 0 var(--ex-space-3) 0;line-height:1.4}.template-editor .form-row{margin-bottom:var(--ex-space-3)}.template-editor .form-row:last-child{margin-bottom:0}.template-editor .form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-3)}.template-editor .form-row.four-col{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--ex-space-3)}.template-editor-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-default)}@media(max-width:768px){.admin-export-templates-section .template-list,.template-editor .form-row.two-col,.template-editor .form-row.four-col{grid-template-columns:1fr}.admin-export-templates-actions{flex-direction:column}}.notification-icon-container{position:relative;z-index:var(--ex-z-toast, 900)}.btn-notification{background:var(--collections-overlay, rgba(255, 255, 255, .25));color:var(--collections-text, var(--ex-text-inverse, #ffffff));border:1px solid var(--collections-border, rgba(255, 255, 255, .3));width:40px;height:40px;padding:0;border-radius:var(--ex-radius-md, 6px);cursor:pointer;font-size:var(--ex-font-xl, 20px);transition:all var(--ex-transition-fast, .2s);display:flex;align-items:center;justify-content:center;position:relative}.btn-notification:hover{background:var(--collections-overlay-hover, rgba(255, 255, 255, .35));border-color:var(--collections-border, rgba(255, 255, 255, .5))}.notification-badge{position:absolute;top:-6px;right:-6px;background:var(--ex-danger, #ef4444);color:var(--ex-text-inverse, white);border-radius:var(--ex-radius-full, 10px);min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-xs, 11px);font-weight:var(--ex-font-weight-semibold, 600);padding:0 var(--ex-space-1, 5px);box-shadow:var(--ex-shadow-sm, 0 2px 4px rgba(0, 0, 0, .2))}.notifications-popup{position:absolute;top:calc(100% + var(--ex-space-2, 8px));right:0;width:320px;max-height:400px;background:var(--ex-bg-primary, white);border-radius:var(--ex-radius-xl, 12px);box-shadow:var(--ex-shadow-xl, 0 10px 40px rgba(0, 0, 0, .2));z-index:var(--ex-z-toast, 900);overflow:hidden;animation:popupSlideIn var(--ex-transition-fast, .2s) ease-out}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notifications-popup-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-4, 16px);border-bottom:1px solid var(--ex-border-light, #e5e7eb);background:var(--ex-bg-secondary, #f9fafb)}.notifications-popup-header h3{margin:0;font-size:var(--ex-font-base, 16px);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827)}.compose-notification-btn{background:none;border:none;color:var(--ex-text-tertiary, #6b7280);cursor:pointer;padding:var(--ex-space-1, 6px);border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast, .2s);font-size:var(--ex-font-lg, 18px)}.compose-notification-btn:hover{background:var(--ex-bg-hover, #e5e7eb);color:var(--ex-text-secondary, #374151)}.notifications-popup-content{max-height:340px;overflow-y:auto}.notifications-loading,.notifications-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-10, 40px) var(--ex-space-5, 20px);color:var(--ex-text-tertiary, #6b7280);gap:var(--ex-space-3, 12px)}.notifications-loading{cursor:progress}.notifications-empty .material-icon{font-size:var(--ex-font-3xl, 48px);opacity:.5}.notifications-empty p{margin:0;font-size:var(--ex-font-sm, 14px)}.spinner.small{width:24px;height:24px;border-width:3px}.notifications-list{display:flex;flex-direction:column}.notification-item{display:flex;align-items:center;padding:var(--ex-space-3, 12px) var(--ex-space-4, 16px);cursor:pointer;transition:background var(--ex-transition-fast, .2s);border-bottom:1px solid var(--ex-border-light, #f3f4f6)}.notification-item:hover{background:var(--ex-bg-secondary, #f9fafb)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:var(--ex-info-light, #f0f9ff)}.notification-item.unread:hover{background:var(--ex-info-light, #e0f2fe)}.notification-item-content{flex:1;min-width:0}.notification-item-header{display:flex;align-items:center;gap:var(--ex-space-2, 8px);margin-bottom:var(--ex-space-1, 4px)}.notification-title{font-size:var(--ex-font-sm, 14px);font-weight:var(--ex-font-weight-medium, 500);color:var(--ex-text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread-dot{width:8px;height:8px;background:var(--ex-primary, #3b82f6);border-radius:var(--ex-radius-full, 50%);flex-shrink:0}.notification-time{font-size:var(--ex-font-xs, 12px);color:var(--ex-text-tertiary, #6b7280);font-style:italic}.notification-dismiss-btn{background:none;border:none;color:var(--ex-text-muted, #9ca3af);cursor:pointer;padding:var(--ex-space-1, 6px);border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast, .2s);margin-left:var(--ex-space-2, 8px);font-size:var(--ex-font-base, 16px);opacity:0}.notification-item:hover .notification-dismiss-btn{opacity:1}.notification-dismiss-btn:hover{background:var(--ex-danger-light, #fee2e2);color:var(--ex-danger, #dc2626)}.notification-detail-modal{max-width:550px}.notification-detail-date{display:flex;flex-direction:column;gap:var(--ex-space-1, 4px);margin-bottom:var(--ex-space-5, 20px);padding-bottom:var(--ex-space-4, 16px);border-bottom:1px solid var(--ex-border-light, #e5e7eb)}.notification-relative-time{font-size:var(--ex-font-sm, 14px);color:var(--ex-text-tertiary, #6b7280);font-style:italic}.notification-full-date{font-size:var(--ex-font-xs, 12px);color:var(--ex-text-muted, #9ca3af)}.notification-detail-description{font-size:var(--ex-font-md, 15px);line-height:1.6;color:var(--ex-text-secondary, #374151)}.notification-detail-description p{margin:0 0 var(--ex-space-3, 12px) 0}.notification-detail-description p:last-child{margin-bottom:0}.notification-detail-description a{color:var(--ex-primary, #3b82f6);text-decoration:none}.notification-detail-description a:hover{text-decoration:underline}.notification-detail-no-description{color:var(--ex-text-muted, #9ca3af);font-style:italic;font-size:var(--ex-font-sm, 14px)}.notification-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--ex-space-5, 20px)}.notifications-composer-modal{max-width:500px}.success-message{background:var(--ex-success-light, #ecfdf5);border:1px solid var(--ex-success-border, #a7f3d0);color:var(--ex-success, #047857);padding:var(--ex-space-3, 12px);border-radius:var(--ex-radius-md, 6px);margin-bottom:var(--ex-space-4, 16px);font-size:var(--ex-font-sm, 14px)}.target-type-selector{display:flex;flex-direction:column;gap:var(--ex-space-2, 10px);margin-top:var(--ex-space-2, 8px)}.radio-label{display:flex;align-items:center;gap:var(--ex-space-2, 10px);cursor:pointer;font-size:var(--ex-font-sm, 14px);color:var(--ex-text-secondary, #374151)}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer}.form-help{display:block;margin-top:var(--ex-space-1, 6px);font-size:var(--ex-font-xs, 12px);color:var(--ex-text-tertiary, #6b7280)}.loading-inline{font-size:var(--ex-font-sm, 14px);color:var(--ex-text-tertiary, #6b7280);font-style:italic;padding:var(--ex-space-2, 8px) 0;cursor:progress}select{width:100%;padding:var(--ex-space-2, 10px) var(--ex-space-3, 12px);border:1px solid var(--ex-border-default, #d1d5db);border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-sm, 14px);font-family:inherit;background:var(--ex-bg-primary, white);cursor:pointer;transition:border-color var(--ex-transition-fast, .2s)}select:focus{outline:none;border-color:var(--ex-primary, #667eea);box-shadow:var(--ex-shadow-focus, 0 0 0 3px rgba(102, 126, 234, .1))}select:disabled{background:var(--ex-bg-tertiary, #f3f4f6);cursor:not-allowed}@media(max-width:768px){.notifications-popup{position:fixed;top:auto;right:1em;left:1em;width:auto;max-width:none;bottom:80px}.notification-item{padding:var(--ex-space-3, 12px) var(--ex-space-3, 14px);min-height:60px}.btn-notification,.compose-notification-btn{min-width:44px;min-height:44px;padding:var(--ex-space-2, 10px)}.notification-dismiss-btn{opacity:1;min-width:36px;min-height:36px}.notification-detail-modal{max-width:95%}.notifications-composer-modal .form-group input,.notifications-composer-modal .form-group textarea,.notifications-composer-modal select{min-height:44px;font-size:var(--ex-font-base, 16px)}.radio-label{min-height:44px;padding:var(--ex-space-2, 8px) 0}.radio-label input[type=radio]{width:20px;height:20px}}@media(max-width:480px){.notifications-popup{right:1em;left:1em;max-width:none;bottom:60px;max-height:60vh;border-radius:var(--ex-radius-lg, 10px)}.notifications-popup-header{padding:var(--ex-space-3, 12px)}.notifications-popup-header h3{font-size:var(--ex-font-sm, 14px)}.notifications-popup-content{max-height:50vh}.notification-item{padding:var(--ex-space-2, 10px) var(--ex-space-3, 12px)}.notification-title{font-size:var(--ex-font-xs, 13px)}.notification-time{font-size:var(--ex-font-xs, 11px)}.notifications-loading,.notifications-empty{padding:var(--ex-space-8, 30px) var(--ex-space-4, 16px)}.notifications-empty .material-icon{font-size:var(--ex-font-2xl, 40px)}.notifications-empty p{font-size:var(--ex-font-xs, 13px)}.notification-modal-overlay{padding:0}.notification-detail-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.notification-detail-date{margin-bottom:var(--ex-space-4, 16px);padding-bottom:var(--ex-space-3, 12px)}.notification-relative-time{font-size:var(--ex-font-xs, 13px)}.notification-detail-description{font-size:var(--ex-font-sm, 14px)}.notifications-composer-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.target-type-selector{gap:var(--ex-space-2, 8px)}.radio-label{font-size:var(--ex-font-xs, 13px)}.form-help{font-size:var(--ex-font-xs, 11px)}.success-message,.error-message{padding:var(--ex-space-2, 10px);font-size:var(--ex-font-xs, 13px)}}@media(max-width:320px){.notifications-popup{right:.5em;left:.5em;bottom:50px;max-height:50vh}.notification-item{padding:var(--ex-space-2, 8px) var(--ex-space-2, 10px)}.notification-title{font-size:var(--ex-font-xs, 12px)}}.theme-panel{padding:var(--ex-space-4) 0}.theme-panel-section{margin-bottom:var(--ex-space-6)}.theme-panel-section:last-child{margin-bottom:0}.theme-panel-section-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin-bottom:var(--ex-space-3)}.theme-panel-section-description{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin-bottom:var(--ex-space-3)}.theme-selector{display:flex;flex-direction:column;gap:var(--ex-space-2)}.theme-option{display:flex;align-items:center;padding:var(--ex-space-3) var(--ex-space-4);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);background:var(--ex-bg-primary);cursor:pointer;transition:all var(--ex-transition-fast)}.theme-option:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-dark)}.theme-option.selected{border-color:var(--ex-primary);background:var(--ex-bg-active)}.theme-option-radio{width:18px;height:18px;border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-full);margin-right:var(--ex-space-3);display:flex;align-items:center;justify-content:center;flex-shrink:0}.theme-option.selected .theme-option-radio{border-color:var(--ex-primary)}.theme-option-radio:after{content:"";width:10px;height:10px;border-radius:var(--ex-radius-full);background:var(--ex-primary);opacity:0;transition:opacity var(--ex-transition-fast)}.theme-option.selected .theme-option-radio:after{opacity:1}.theme-option-content{flex:1}.theme-option-name{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.theme-option-description{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin-top:2px}.mode-selector{display:flex;gap:var(--ex-space-2)}.mode-option{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);background:var(--ex-bg-primary);cursor:pointer;transition:all var(--ex-transition-fast)}.mode-option:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-dark)}.mode-option.selected{border-color:var(--ex-primary);background:var(--ex-bg-active)}.mode-option-icon{font-size:var(--ex-font-2xl);color:var(--ex-text-secondary);margin-bottom:var(--ex-space-1)}.mode-option.selected .mode-option-icon{color:var(--ex-primary)}.mode-option-label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.theme-preview{display:flex;gap:var(--ex-space-2);padding:var(--ex-space-4);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);background:var(--ex-bg-secondary)}.theme-preview-swatch{width:32px;height:32px;border-radius:var(--ex-radius-md);border:1px solid var(--ex-border-light)}.sync-option{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);background:var(--ex-bg-primary);cursor:pointer;transition:all var(--ex-transition-fast)}.sync-option:hover{background:var(--ex-bg-hover)}.sync-option-checkbox{width:18px;height:18px;border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--ex-transition-fast)}.sync-option-checkbox.checked{background:var(--ex-primary);border-color:var(--ex-primary)}.sync-option-checkbox .material-icon{font-size:var(--ex-font-sm);color:var(--ex-text-inverse);opacity:0;transition:opacity var(--ex-transition-fast)}.sync-option-checkbox.checked .material-icon{opacity:1}.sync-option-content{flex:1}.sync-option-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.sync-option-description{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin-top:2px}.theme-panel-footer{display:flex;justify-content:flex-end;gap:var(--ex-space-2);margin-top:var(--ex-space-6);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-default)}.user-badge-container{position:relative}.user-badge{width:40px;height:40px;border-radius:var(--ex-radius-full);background:var(--collections-overlay, rgba(255, 255, 255, .25));border:1px solid var(--collections-border, rgba(255, 255, 255, .3));color:var(--collections-text, var(--ex-text-inverse));font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-base)}.user-badge:hover{background:var(--collections-overlay-hover, rgba(255, 255, 255, .35));border-color:var(--collections-border, rgba(255, 255, 255, .5))}.user-badge-initial{line-height:1}.user-badge-dropdown{position:absolute;top:calc(100% + var(--ex-space-2));right:0;background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);min-width:180px;z-index:1000;overflow:hidden;transition:background-color var(--ex-transition-base),border-color var(--ex-transition-base)}.user-badge-dropdown-header{padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary)}.user-badge-username{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.user-badge-dropdown-divider{height:1px;background:var(--ex-border-default)}.user-badge-dropdown-item{display:flex;align-items:center;gap:var(--ex-space-2-5);width:100%;padding:var(--ex-space-3) var(--ex-space-4);background:transparent;border:none;color:var(--ex-text-primary);font-size:var(--ex-font-sm);cursor:pointer;transition:background-color var(--ex-transition-fast);text-align:left}.user-badge-dropdown-item:hover{background-color:var(--ex-bg-hover)}.user-badge-dropdown-item .material-icon{font-size:var(--ex-font-lg);color:var(--ex-text-secondary)}.notification-settings{display:flex;flex-direction:column;gap:var(--ex-space-6);padding:var(--ex-space-4) 0}.notification-settings__section{display:flex;flex-direction:column;gap:var(--ex-space-4);padding:var(--ex-space-4);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg)}.notification-settings__section--master{background:var(--ex-bg-secondary)}.notification-settings__section-title{display:flex;align-items:center;gap:var(--ex-space-2);margin:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.notification-settings__section-title .material-icon{font-size:var(--ex-font-lg);color:var(--ex-text-secondary)}.notification-settings__row{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-4)}.notification-settings__row-content{display:flex;align-items:flex-start;gap:var(--ex-space-3);flex:1}.notification-settings__icon{font-size:var(--ex-font-2xl);color:var(--ex-primary);flex-shrink:0}.notification-settings__row-text{display:flex;flex-direction:column;gap:var(--ex-space-1)}.notification-settings__row-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.notification-settings__row-description{font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.notification-settings__category-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ex-space-3)}.notification-settings__subsection{display:flex;flex-direction:column;gap:var(--ex-space-2)}.notification-settings__label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.notification-settings__hint{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.notification-settings__day-chips{display:flex;flex-wrap:wrap;gap:var(--ex-space-2)}.notification-settings__day-chip{padding:var(--ex-space-1) var(--ex-space-3);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-full);cursor:pointer;transition:all var(--ex-transition-fast)}.notification-settings__day-chip:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-dark)}.notification-settings__day-chip--selected{color:var(--ex-primary);background:var(--ex-info-light);border-color:var(--ex-primary)}.notification-settings__day-chip--selected:hover{background:var(--ex-info-light)}.notification-settings__weekday-chips{display:flex;gap:var(--ex-space-1)}.notification-settings__weekday-chip{width:40px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);cursor:pointer;transition:all var(--ex-transition-fast)}.notification-settings__weekday-chip:hover{background:var(--ex-bg-hover)}.notification-settings__weekday-chip--selected{color:var(--ex-text-inverse);background:var(--ex-primary);border-color:var(--ex-primary)}.notification-settings__weekday-chip--selected:hover{background:var(--ex-primary)}.notification-settings__time-range{display:flex;align-items:center;gap:var(--ex-space-4)}.notification-settings__time-input{display:flex;align-items:center;gap:var(--ex-space-2)}.notification-settings__time-input label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.notification-settings__time-input .ex-input{width:120px}.notification-settings__actions{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}@media(prefers-color-scheme:dark){.notification-settings__section{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.notification-settings__section--master{background:var(--ex-bg-tertiary)}.notification-settings__row-title{color:var(--ex-text-primary)}.notification-settings__day-chip,.notification-settings__weekday-chip{background:var(--ex-bg-tertiary);border-color:var(--ex-border-dark);color:var(--ex-text-secondary)}.notification-settings__actions{border-top-color:var(--ex-border-dark)}}.ex-modal .notification-settings{padding:0}.custom-color-picker{display:flex;flex-direction:column;gap:var(--ex-space-5);padding:var(--ex-space-5);background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);border:1px solid var(--ex-border-light);width:520px;max-width:calc(100vw - var(--ex-space-8))}.custom-color-picker-header h4{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.custom-color-picker-description{margin:0;font-size:13px;color:var(--ex-text-tertiary);line-height:var(--ex-line-height-normal)}.custom-color-picker-panels{display:flex;gap:var(--ex-space-4)}.color-panel{flex:1;display:flex;flex-direction:column;gap:var(--ex-space-2)}.color-panel-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);text-transform:uppercase;letter-spacing:.05em}.color-panel-canvas-wrapper{position:relative;border-radius:var(--ex-radius-lg);overflow:hidden;border:2px solid var(--ex-border-light);cursor:crosshair}.color-panel-canvas{display:block;width:100%;height:auto;aspect-ratio:4/3}.color-marker{position:absolute;width:16px;height:16px;border:2px solid white;border-radius:var(--ex-radius-full);box-shadow:0 0 0 1px #0000004d,0 2px 4px #0003;transform:translate(-50%,-50%);pointer-events:none}.color-panel-preview{display:flex;align-items:center;gap:var(--ex-space-2)}.color-preview-swatch{width:32px;height:32px;border-radius:var(--ex-radius-md);border:2px solid var(--ex-border-light);flex-shrink:0}.color-hex-input{flex:1;padding:var(--ex-space-2) 10px;border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:13px;font-family:var(--ex-font-mono);text-transform:uppercase;color:var(--ex-text-secondary);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base)}.color-hex-input:focus{outline:none;border-color:var(--ex-primary)}.custom-color-picker-result{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg)}.color-result-label{font-size:13px;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.color-result-swatch{width:48px;height:32px;border-radius:var(--ex-radius-md);border:2px solid var(--ex-border-light);display:flex;overflow:hidden}.color-result-swatch .swatch-half{width:50%;height:100%}.color-result-swatch .swatch-light{border-radius:var(--ex-radius-sm) 0 0 var(--ex-radius-sm)}.color-result-swatch .swatch-dark{border-radius:0 var(--ex-radius-sm) var(--ex-radius-sm) 0}.custom-color-picker-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-2);padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}.custom-color-cancel-btn{padding:10px var(--ex-space-4);background:var(--ex-bg-tertiary);color:var(--ex-text-secondary);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-base)}.custom-color-cancel-btn:hover{background:var(--ex-bg-active)}.custom-color-confirm-btn{display:flex;align-items:center;gap:var(--ex-space-2);padding:10px var(--ex-space-4);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-base)}.custom-color-confirm-btn:hover:not(:disabled){background:var(--ex-primary-hover)}.custom-color-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.custom-color-confirm-btn .material-icon{font-size:var(--ex-font-lg)}@media(max-width:480px){.custom-color-picker{padding:var(--ex-space-4);gap:var(--ex-space-4)}.custom-color-picker-panels{flex-direction:column}.color-panel-canvas{aspect-ratio:16/9}.custom-color-picker-actions{flex-direction:column}.custom-color-cancel-btn,.custom-color-confirm-btn{width:100%;justify-content:center}}.collection-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.collection-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.collection-field{display:flex;flex-direction:column;gap:var(--ex-space-2)}.collection-field label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.collection-input{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.collection-input:focus{outline:none;border-color:var(--ex-primary)}.collection-textarea{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);font-family:inherit;resize:vertical;transition:border-color var(--ex-transition-fast)}.collection-textarea:focus{outline:none;border-color:var(--ex-primary)}.color-scheme-picker{display:flex;flex-direction:column;gap:var(--ex-space-4);max-height:320px;overflow-y:auto;overflow-x:visible;padding:var(--ex-space-2);margin:calc(-1 * var(--ex-space-1))}.color-scheme-picker::-webkit-scrollbar-track{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-sm)}.color-scheme-picker::-webkit-scrollbar-thumb{background:var(--ex-border-default);border-radius:var(--ex-radius-sm)}.color-scheme-picker::-webkit-scrollbar-thumb:hover{background:var(--ex-border-dark)}.color-scheme-category-label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.color-scheme-swatch{width:36px;height:36px;border-radius:var(--ex-radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--ex-transition-fast);padding:0;display:flex;overflow:hidden;background:transparent}.color-scheme-swatch:hover{transform:scale(1.1);box-shadow:var(--ex-shadow-lg)}.custom-colors-category{margin-top:var(--ex-space-2);padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}.custom-color-swatch-wrapper{position:relative;display:inline-block}.custom-color-swatch-wrapper:hover .custom-color-delete-btn{opacity:1}.custom-color-delete-btn{position:absolute;top:-6px;right:-6px;width:18px;height:18px;padding:0;border:none;border-radius:var(--ex-radius-full);background:var(--ex-danger);color:var(--ex-text-inverse);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--ex-transition-fast),background-color var(--ex-transition-fast);z-index:2}.custom-color-delete-btn:hover{background:var(--ex-danger-border)}.custom-color-delete-btn .material-icon{font-size:var(--ex-font-xs)}.add-custom-color-btn{width:36px;height:36px;border-radius:var(--ex-radius-md);border:2px dashed var(--ex-border-default);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ex-text-muted);transition:all var(--ex-transition-fast)}.add-custom-color-btn:hover{border-color:var(--ex-primary);color:var(--ex-primary);background:var(--ex-bg-secondary)}.add-custom-color-btn .material-icon{font-size:var(--ex-font-xl)}.custom-color-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal, 1000);animation:fadeIn var(--ex-transition-fast) ease-out;padding:var(--ex-space-4)}.custom-color-picker-overlay .custom-color-picker{animation:slideIn var(--ex-transition-fast) ease-out;max-height:calc(100vh - var(--ex-space-8));overflow-y:auto}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.collection-actions{display:flex;justify-content:flex-end;padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-default)}.collection-save-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.collection-save-btn:hover{background:var(--ex-primary-dark)}.completion-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.section-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.completion-toggle{padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:2px solid var(--ex-border-default)}.toggle-label{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-3);cursor:pointer}.toggle-text{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.completion-statuses-section{display:flex;flex-direction:column;gap:var(--ex-space-4)}.completion-statuses-header{display:flex;justify-content:space-between;align-items:center}.completion-statuses-header h4{margin:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.add-status-btn{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.add-status-btn:hover{background:var(--ex-primary-dark)}.add-status-btn .material-icon{font-size:var(--ex-font-base)}.status-form{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:2px solid var(--ex-border-default);display:flex;flex-direction:column;gap:var(--ex-space-3)}.status-form-field{display:flex;flex-direction:column;gap:var(--ex-space-1)}.status-form-field label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.status-form-field input[type=text],.status-form-field textarea{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);font-family:inherit;transition:border-color var(--ex-transition-fast)}.status-form-field input[type=text]:focus,.status-form-field textarea:focus{outline:none;border-color:var(--ex-primary)}.status-form-field textarea{resize:vertical;min-height:60px}.status-color-picker{display:flex;flex-direction:column;gap:var(--ex-space-2)}.status-color-swatches{display:flex;gap:var(--ex-space-1);flex-wrap:wrap}.status-color-swatch{width:28px;height:28px;border-radius:var(--ex-radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--ex-transition-fast);position:relative}.status-color-swatch:hover{transform:scale(1.1)}.status-color-swatch.selected{border-color:var(--ex-text-primary);box-shadow:0 0 0 2px var(--ex-bg-primary),0 0 0 4px var(--ex-primary)}.status-color-custom{display:flex;align-items:center;gap:var(--ex-space-2)}.status-color-input{width:36px;height:28px;border:none;border-radius:var(--ex-radius-sm);cursor:pointer}.status-color-hex{width:80px;padding:var(--ex-space-1) var(--ex-space-2);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-xs);font-family:monospace;text-transform:uppercase}.status-color-hex:focus{outline:none;border-color:var(--ex-primary)}.status-form-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-2);margin-top:var(--ex-space-2)}.status-cancel-btn{padding:var(--ex-space-2) var(--ex-space-4);background:var(--ex-bg-tertiary);color:var(--ex-text-secondary);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.status-cancel-btn:hover{background:var(--ex-border-default)}.status-save-btn{padding:var(--ex-space-2) var(--ex-space-4);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.status-save-btn:hover:not(:disabled){background:var(--ex-primary-dark)}.status-save-btn:disabled{opacity:.5;cursor:not-allowed}.completion-statuses-list{display:flex;flex-direction:column;gap:var(--ex-space-2)}.empty-statuses-message{color:var(--ex-text-muted);font-size:var(--ex-font-xs);font-style:italic;text-align:center;padding:var(--ex-space-4)}.completion-status-item{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-primary);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);transition:all var(--ex-transition-fast)}.completion-status-item:hover{border-color:var(--ex-border-dark)}.completion-status-item.editing{border-color:var(--ex-primary);background:var(--ex-bg-secondary)}.status-color-indicator{width:16px;height:16px;border-radius:var(--ex-radius-sm);flex-shrink:0}.status-info{flex:1;min-width:0}.status-info .status-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.status-info .status-description{font-size:var(--ex-font-xs);color:var(--ex-text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-actions{display:flex;gap:var(--ex-space-1);opacity:0;transition:opacity var(--ex-transition-fast)}.completion-status-item:hover .status-actions{opacity:1}.status-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:var(--ex-radius-sm);cursor:pointer;color:var(--ex-text-muted);transition:all var(--ex-transition-fast)}.status-action-btn:hover:not(:disabled){background:var(--ex-bg-tertiary);color:var(--ex-text-secondary)}.status-action-btn:disabled{opacity:.3;cursor:not-allowed}.status-action-btn.delete:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.status-action-btn .material-icon{font-size:var(--ex-font-lg)}@media(max-width:768px){.status-actions{opacity:1}.collection-input,.collection-textarea{min-height:44px;font-size:var(--ex-font-base)}.collection-save-btn{min-height:44px;padding:var(--ex-space-3) var(--ex-space-5)}.status-form-field input[type=text],.status-form-field textarea{min-height:44px;font-size:var(--ex-font-base)}.status-cancel-btn,.status-save-btn,.add-status-btn{min-height:44px;padding:var(--ex-space-2) var(--ex-space-4)}.status-action-btn{width:36px;height:36px}.completion-status-item{padding:var(--ex-space-3)}}@media(max-width:480px){.collection-settings{gap:var(--ex-space-4)}.collection-field label{font-size:var(--ex-font-xs)}.collection-input,.collection-textarea{padding:var(--ex-space-3)}.color-scheme-picker{max-height:250px}.color-scheme-swatch{width:32px;height:32px;border-radius:var(--ex-radius-sm)}.color-scheme-row{gap:var(--ex-space-1)}.color-scheme-category-label{font-size:11px}.collection-actions{padding-top:var(--ex-space-3)}.collection-save-btn{width:100%}.completion-settings{gap:var(--ex-space-4)}.section-description{font-size:var(--ex-font-xs)}.completion-toggle{padding:var(--ex-space-2) var(--ex-space-3)}.toggle-text{font-size:var(--ex-font-xs)}.status-form{padding:var(--ex-space-3);gap:var(--ex-space-2)}.status-color-swatches{gap:var(--ex-space-2)}.status-color-swatch{width:32px;height:32px}.status-color-hex{width:70px;font-size:var(--ex-font-xs)}.status-form-actions{flex-direction:column}.status-cancel-btn,.status-save-btn{width:100%}.completion-status-item{padding:var(--ex-space-2);gap:var(--ex-space-2)}.status-info .status-title{font-size:var(--ex-font-xs)}.status-info .status-description{font-size:11px}.status-action-btn{width:32px;height:32px}.status-action-btn .material-icon{font-size:var(--ex-font-base)}}.editor-settings{display:flex;flex-direction:column;gap:var(--ex-space-6)}.editor-features-section{display:flex;flex-direction:column;gap:var(--ex-space-3)}.editor-features-section h4{margin:0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.subsection-description{font-size:var(--ex-font-xs);color:var(--ex-text-muted);margin:0;line-height:1.5}.feature-toggles{display:flex;flex-direction:column;gap:var(--ex-space-2);background:var(--ex-bg-secondary);padding:var(--ex-space-3);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light)}.feature-toggle{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ex-space-3);padding:var(--ex-space-2);border-radius:var(--ex-radius-md);transition:background-color var(--ex-transition-fast)}.feature-toggle:hover{background-color:var(--ex-bg-hover)}.feature-toggle-info{display:flex;flex-direction:column;gap:2px;flex:1}.feature-toggle .toggle-switch{flex-shrink:0;margin-top:2px}.feature-toggle-name{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.feature-toggle-description{font-size:var(--ex-font-xs);color:var(--ex-text-muted);line-height:1.4}.collection-features-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.collection-feature-item{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light)}.collection-feature-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--ex-space-4)}.collection-feature-info{display:flex;flex-direction:column;gap:var(--ex-space-1);flex:1}.collection-feature-name{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.collection-feature-description{font-size:var(--ex-font-xs);color:var(--ex-text-muted);line-height:1.5}.collection-feature-config{margin-top:var(--ex-space-4);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.capture-parent-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.capture-parent-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.capture-parent-hint{font-size:var(--ex-font-xs);color:var(--ex-text-muted);margin:0;line-height:1.5}.capture-parent-input-wrapper{position:relative}.capture-parent-input{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.capture-parent-input:focus{outline:none;border-color:var(--ex-primary)}.capture-parent-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:var(--ex-space-1);background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);max-height:200px;overflow-y:auto;z-index:var(--ex-z-dropdown)}.capture-parent-current{font-size:var(--ex-font-xs);color:var(--ex-success);margin:var(--ex-space-2) 0 0 0}@media(max-width:480px){.collection-feature-header{flex-direction:column;gap:var(--ex-space-3)}.collection-feature-item{padding:var(--ex-space-3)}.capture-parent-input{min-height:44px;font-size:var(--ex-font-base)}}[data-theme=dark] .custom-colors-category{border-top-color:var(--ex-border-default)}[data-theme=dark] .add-custom-color-btn{border-color:var(--ex-border-default);color:var(--ex-text-tertiary)}[data-theme=dark] .add-custom-color-btn:hover{border-color:var(--ex-primary);color:var(--ex-primary);background:var(--ex-bg-tertiary)}[data-theme=dark] .custom-color-delete-btn{background:var(--ex-danger)}[data-theme=dark] .custom-color-delete-btn:hover{background:var(--ex-danger-border)}@media(max-width:768px){.custom-color-delete-btn{opacity:1}}.global-calendar-page{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--ex-space-10);padding-bottom:var(--ex-space-6);max-width:1400px;margin:0 auto;width:100%;box-sizing:border-box;height:100%}.global-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-4) var(--ex-space-6);background:var(--ex-bg-hover);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--ex-radius-xl);margin-bottom:var(--ex-space-6);border:1px solid var(--ex-border-light)}.global-calendar-toolbar-left,.global-calendar-toolbar-right{display:flex;align-items:center;gap:var(--ex-space-4)}.global-calendar-title{margin:0;font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.global-calendar-subtitle{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.hide-completed-checkbox{display:flex;align-items:center;gap:var(--ex-space-2);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);-webkit-user-select:none;user-select:none}.hide-completed-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--ex-primary)}.hide-completed-checkbox span{white-space:nowrap}.global-calendar-view-toggle{display:flex;gap:var(--ex-space-1);background:var(--ex-bg-tertiary);padding:var(--ex-space-1);border-radius:var(--ex-radius-lg)}.view-toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:36px;border:none;border-radius:var(--ex-radius-lg);background:transparent;color:var(--ex-text-muted);cursor:pointer;transition:all var(--ex-transition-fast)}.view-toggle-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.view-toggle-btn.active{background:var(--ex-bg-primary);color:var(--ex-primary)}.view-toggle-btn .material-icon{font-size:var(--ex-font-xl)}.global-calendar-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--ex-bg-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--ex-radius-xl);margin-bottom:2em}.global-calendar-loading,.global-calendar-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4);color:var(--ex-text-muted)}.global-calendar-loading{cursor:progress}.global-calendar-loading .spinner{border-color:var(--ex-border-light);border-top-color:var(--ex-primary)}.global-calendar-error{color:var(--ex-danger)}.global-calendar-error .material-icon{font-size:var(--ex-space-12);opacity:.8}.btn-retry{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-bg-tertiary);color:var(--ex-text-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.btn-retry:hover{background:var(--ex-bg-hover)}.global-calendar-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-16) var(--ex-space-5);color:var(--ex-text-muted);text-align:center}.global-calendar-empty .material-icon{font-size:var(--ex-space-16);opacity:.6;margin-bottom:var(--ex-space-4);color:var(--ex-text-tertiary)}.global-calendar-empty p{font-size:var(--ex-font-lg);margin:0 0 var(--ex-space-2);color:var(--ex-text-primary)}.global-calendar-empty .hint{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.note-collection-indicator{display:inline-block;width:10px;height:10px;border-radius:var(--ex-radius-sm);margin-right:var(--ex-space-1);flex-shrink:0}.note-collection-dot{display:inline-block;width:var(--ex-space-2);height:var(--ex-space-2);border-radius:var(--ex-radius-full);margin-right:var(--ex-space-2);flex-shrink:0}.global-calendar-note-link{display:flex;align-items:center;gap:var(--ex-space-1)}.global-calendar-note-link .calendar-note-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-calendar-note-link .calendar-recurring-indicator{flex-shrink:0}.global-calendar-note-link .note-collection-indicator{margin-right:var(--ex-space-2)}.range-collection-badge{display:inline-block;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-inverse);background:var(--ex-overlay-light);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-sm);margin-right:var(--ex-space-2);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day-row.today,.calendar-day-row.today.weekend{background:var(--ex-success-light)!important}.calendar-day-num.today{background:var(--ex-success);color:var(--ex-text-inverse);border-radius:var(--ex-radius-full);width:28px;height:28px;display:flex;align-items:center;justify-content:center}.global-calendar-content .calendar-list-content{flex:1;overflow-y:auto}.global-calendar-content .calendar-traditional-content{flex:1;overflow-y:auto;padding:var(--ex-space-4);display:flex;flex-direction:column}.global-calendar-page .calendar-grid{flex:1;display:flex;flex-direction:column}.global-calendar-page .calendar-grid-row{flex:1;display:grid;grid-template-columns:repeat(7,1fr)}.global-calendar-page .calendar-grid-cell{height:auto;min-height:80px;flex:1}.global-calendar-page .calendar-grid-week{flex:1;display:flex;flex-direction:column}.global-calendar-content .calendar-range-bar,.global-calendar-content .calendar-range-label-button,.global-calendar-content .calendar-grid-range-bar{box-shadow:var(--ex-shadow-sm)}.global-calendar-page .calendar-range-label-button{box-shadow:var(--ex-shadow-md);font-weight:var(--ex-font-weight-semibold)}.global-calendar-page .calendar-range-label-button:hover{filter:brightness(1.1);box-shadow:var(--ex-shadow-lg)}.global-calendar-page .calendar-range-bar{box-shadow:0 0 0 1px var(--ex-border-light)}.global-calendar-page .calendar-nav-controls{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-nav-arrow{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light);color:var(--ex-text-tertiary)}.global-calendar-page .calendar-nav-arrow:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.global-calendar-page .calendar-month-picker-button{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light);color:var(--ex-text-tertiary)}.global-calendar-page .calendar-month-picker-button:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.global-calendar-page .calendar-month-header-static{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-month-name{color:var(--ex-text-primary)}.global-calendar-page .calendar-month-note-count{color:var(--ex-text-primary);background:var(--ex-bg-tertiary);font-weight:var(--ex-font-weight-medium)}.global-calendar-page .calendar-day-row{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-day-row:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-day-row.weekend{background:var(--ex-bg-tertiary)}.global-calendar-page .calendar-day-row.has-notes{background:var(--ex-bg-primary)}.global-calendar-page .calendar-day-row.has-notes.weekend{background:var(--ex-bg-secondary)}.global-calendar-page .calendar-day-row.today,.global-calendar-page .calendar-day-row.today.weekend{background:var(--ex-primary-light)!important}.global-calendar-page .calendar-day-number{border-right-color:var(--ex-border-light)}.global-calendar-page .calendar-day-num{color:var(--ex-text-primary);font-weight:var(--ex-font-weight-semibold)}.global-calendar-page .calendar-day-num.today{background:var(--ex-bg-primary);color:var(--ex-primary)}.global-calendar-page .calendar-day-weekday{color:var(--ex-text-muted)}.global-calendar-page .calendar-day-row.weekend .calendar-day-weekday{color:var(--ex-warning)}.global-calendar-page .calendar-note-link{background:var(--ex-bg-primary);border-color:var(--ex-border-light);color:var(--ex-text-primary);box-shadow:var(--ex-shadow-sm)}.global-calendar-page .calendar-note-link:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-default);transform:translate(var(--ex-space-1));box-shadow:var(--ex-shadow-md)}.global-calendar-page .calendar-note-link .material-icon{color:var(--ex-primary)}.global-calendar-page .calendar-note-title{color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium)}.global-calendar-page .calendar-note-description{color:var(--ex-text-tertiary)}.global-calendar-page .calendar-grid-header{background:var(--ex-bg-tertiary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-grid-header-cell{color:var(--ex-text-tertiary)}.global-calendar-page .calendar-grid-header-cell.weekend{color:var(--ex-warning)}.global-calendar-page .calendar-grid{border-color:var(--ex-border-light)}.global-calendar-page .calendar-grid-cell{background:var(--ex-bg-secondary);border-color:var(--ex-border-light)}.global-calendar-page .calendar-grid-cell:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-grid-cell.weekend{background:var(--ex-bg-tertiary)}.global-calendar-page .calendar-grid-cell.other-month{background:var(--ex-bg-tertiary);opacity:.6}.global-calendar-page .calendar-grid-cell.has-notes:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-grid-cell.today,.global-calendar-page .calendar-grid-cell.today.weekend{background:var(--ex-primary-light)}.global-calendar-page .calendar-grid-cell.expanded{background:var(--ex-bg-active)}.global-calendar-page .calendar-grid-day-number{color:var(--ex-text-primary)}.global-calendar-page .calendar-grid-day-number.today{background:var(--ex-bg-primary);color:var(--ex-primary)}.global-calendar-page .calendar-grid-note-indicator{background:var(--ex-primary);color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-semibold)}.global-calendar-page .calendar-grid-note-link{background:var(--ex-bg-primary);color:var(--ex-text-primary);border-radius:var(--ex-radius-sm);padding:var(--ex-space-1) var(--ex-space-2);box-shadow:var(--ex-shadow-xs);display:flex;align-items:center;gap:var(--ex-space-1)}.global-calendar-page .calendar-grid-note-link:hover{background:var(--ex-bg-hover);box-shadow:var(--ex-shadow-sm)}.global-calendar-page .calendar-grid-note-link.recurring{border-left:2px solid var(--ex-primary)}.global-calendar-page .calendar-grid-note-link .calendar-grid-note-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-calendar-page .calendar-grid-note-link .calendar-recurring-indicator{flex-shrink:0}.calendar-recurring-indicator{display:inline-flex;align-items:center;margin-left:var(--ex-space-1);color:var(--ex-primary);opacity:.7;flex-shrink:0}.calendar-recurring-indicator .material-icon,.calendar-recurring-indicator .material-icons{font-size:var(--ex-font-sm)}.global-calendar-page .calendar-grid-note-title{color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium)}.global-calendar-page .calendar-grid-more-notes{color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium);background:var(--ex-bg-tertiary);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-sm)}.global-calendar-page .calendar-grid-range-bars{background:var(--ex-bg-tertiary);border-bottom-color:var(--ex-border-light)}.global-calendar-page .calendar-grid-range-bar{box-shadow:var(--ex-shadow-sm);font-weight:var(--ex-font-weight-semibold)}.global-calendar-page .calendar-grid-range-bar:hover{filter:brightness(1.1);box-shadow:var(--ex-shadow-md)}.global-calendar-page .calendar-week-header{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-week-label h3{color:var(--ex-text-primary)}.global-calendar-page .calendar-nav-button{background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);color:var(--ex-text-tertiary)}.global-calendar-page .calendar-nav-button:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.global-calendar-page .calendar-today-button{background:var(--ex-primary-light);border:1px solid var(--ex-primary);color:var(--ex-primary)}.global-calendar-page .calendar-today-button:hover{background:var(--ex-primary-light);border-color:var(--ex-primary-hover)}.global-calendar-page .calendar-week-day-headers{border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-week-day-header{background:var(--ex-bg-secondary)}.global-calendar-page .calendar-week-day-header:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-week-day-header.is-today{background:var(--ex-primary-light)}.global-calendar-page .calendar-week-day-header .day-name{color:var(--ex-text-muted)}.global-calendar-page .calendar-week-day-header .day-number{color:var(--ex-text-primary)}.global-calendar-page .calendar-week-day-header.is-today .day-number{color:var(--ex-primary)}.global-calendar-page .calendar-week-column{border-right:1px solid var(--ex-border-light)}.global-calendar-page .calendar-week-column.is-today{background:var(--ex-primary-light)}.global-calendar-page .calendar-week-empty{color:var(--ex-text-muted)}.global-calendar-page .calendar-week-note-button{background:var(--ex-bg-primary);color:var(--ex-text-primary)}.global-calendar-page .calendar-week-note-button:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-day-header{background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.global-calendar-page .calendar-back-button{background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);color:var(--ex-text-tertiary)}.global-calendar-page .calendar-back-button:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.global-calendar-page .calendar-day-label h3{color:var(--ex-text-primary)}.global-calendar-page .calendar-day-empty{color:var(--ex-text-muted)}.global-calendar-page .calendar-day-empty .material-icon{opacity:.5}.global-calendar-page .calendar-day-empty p{color:var(--ex-text-tertiary)}.global-calendar-page .calendar-day-note-card{background:var(--ex-bg-primary)}.global-calendar-page .calendar-day-note-card:hover{background:var(--ex-bg-hover)}.global-calendar-page .calendar-day-note-card .note-title{color:var(--ex-text-primary)}.global-calendar-page .calendar-day-note-card .note-description{color:var(--ex-text-tertiary)}.draggable-calendar-note{cursor:grab;transition:opacity var(--ex-transition-fast),transform var(--ex-transition-fast)}.draggable-calendar-note:active{cursor:grabbing}.draggable-calendar-note.is-dragging{opacity:.4;transform:scale(.98)}.droppable-calendar-cell{height:100%;width:100%}.droppable-calendar-cell.drop-target{background:var(--ex-primary-light)!important;box-shadow:inset 0 0 0 2px var(--ex-primary);border-radius:var(--ex-radius-sm)}.calendar-grid-cell.drop-target{background:var(--ex-primary-light)!important;box-shadow:inset 0 0 0 2px var(--ex-primary)}.calendar-grid-cell.drop-target .calendar-grid-day-number{color:var(--ex-primary)}.calendar-grid-cell-inner{height:100%;width:100%;display:flex;flex-direction:column}.calendar-drag-overlay{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-darker);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);font-size:var(--ex-font-sm);color:var(--ex-text-inverse);max-width:200px;pointer-events:none;transform:rotate(2deg)}.calendar-drag-overlay-dot{width:var(--ex-space-2);height:var(--ex-space-2);border-radius:var(--ex-radius-full);flex-shrink:0}.calendar-drag-overlay-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-day-row.drop-target{background:var(--ex-primary-light)!important;box-shadow:inset 0 0 0 2px var(--ex-primary);border-radius:var(--ex-radius-sm)}.calendar-note-link-wrapper.is-dragging{opacity:.4}@media(max-width:768px){.global-calendar-page{padding:var(--ex-space-5)}.global-calendar-toolbar{flex-direction:column;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4)}.global-calendar-toolbar-left{flex-direction:column;align-items:center;text-align:center;gap:var(--ex-space-1)}.global-calendar-toolbar-right{width:100%;justify-content:center}}@media(max-width:480px){.global-calendar-page{padding:var(--ex-space-4)}.global-calendar-title{font-size:var(--ex-font-lg)}.hide-completed-checkbox span{font-size:var(--ex-font-sm)}}.calendar-date-field-filter{position:relative}.filter-toggle-button{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);color:var(--ex-text-primary);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.filter-toggle-button:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-default)}.filter-toggle-button.has-filter{background:var(--ex-primary-light);border-color:var(--ex-primary);color:var(--ex-primary)}.filter-toggle-button .filter-label{font-weight:var(--ex-font-weight-medium)}.filter-toggle-button .filter-count{font-size:var(--ex-font-xs);background:var(--ex-primary-light);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-full);color:var(--ex-primary)}.filter-dropdown{position:absolute;top:100%;right:0;margin-top:var(--ex-space-1);min-width:220px;max-height:320px;overflow-y:auto;background:var(--ex-bg-dark);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-xl);z-index:var(--ex-z-dropdown)}.filter-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-3);border-bottom:1px solid var(--ex-border-light)}.filter-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.5px}.filter-actions{display:flex;gap:var(--ex-space-1)}.filter-action-btn{padding:var(--ex-space-1) var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-muted);font-size:var(--ex-font-xs);cursor:pointer;transition:all var(--ex-transition-fast)}.filter-action-btn:hover:not(:disabled){background:var(--ex-bg-hover);color:var(--ex-text-primary)}.filter-action-btn:disabled{opacity:.4;cursor:default}.filter-list{padding:var(--ex-space-2) 0}.filter-group{margin-bottom:var(--ex-space-1)}.filter-group-header{padding:var(--ex-space-2) var(--ex-space-3) var(--ex-space-1);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.3px}.filter-item{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);cursor:pointer;transition:background var(--ex-transition-fast)}.filter-item:hover{background:var(--ex-bg-hover)}.filter-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--ex-primary)}.field-color-dot{width:10px;height:10px;border-radius:var(--ex-radius-full);flex-shrink:0}.field-name{font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.calendar-note-field-indicator{display:inline-flex;align-items:center;gap:var(--ex-space-1);margin-left:var(--ex-space-1)}.calendar-note-field-dot{width:6px;height:6px;border-radius:var(--ex-radius-full);flex-shrink:0}.calendar-week-view{display:flex;flex-direction:column;height:100%}.calendar-week-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-4) var(--ex-space-5);background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.calendar-week-label{display:flex;align-items:center;gap:var(--ex-space-3)}.calendar-week-label h3{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.calendar-nav-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-text-secondary);cursor:pointer;transition:all var(--ex-transition-fast)}.calendar-nav-button:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.calendar-today-button{padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-primary-light);border:1px solid var(--ex-primary);border-radius:var(--ex-radius-md);color:var(--ex-primary);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.calendar-today-button:hover{background:var(--ex-primary-light);border-color:var(--ex-primary-hover)}.calendar-week-grid{flex:1;display:flex;flex-direction:column;overflow:hidden}.calendar-week-day-headers{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--ex-border-light)}.calendar-week-day-header{display:flex;flex-direction:column;align-items:center;padding:var(--ex-space-3) var(--ex-space-2);background:var(--ex-bg-secondary);cursor:pointer;transition:background var(--ex-transition-fast)}.calendar-week-day-header:hover{background:var(--ex-bg-hover)}.calendar-week-day-header.is-today{background:var(--ex-primary-light)}.calendar-week-day-header .day-name{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.5px}.calendar-week-day-header .day-number{font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin-top:var(--ex-space-1)}.calendar-week-day-header.is-today .day-number{color:var(--ex-primary)}.calendar-week-columns{flex:1;display:grid;grid-template-columns:repeat(7,1fr);overflow-y:auto}.calendar-week-column{border-right:1px solid var(--ex-border-light);min-height:200px}.calendar-week-column:last-child{border-right:none}.calendar-week-column.is-today{background:var(--ex-primary-light)}.calendar-week-column-content{padding:var(--ex-space-2);display:flex;flex-direction:column;gap:var(--ex-space-1)}.calendar-week-empty{display:flex;align-items:center;justify-content:center;height:40px;color:var(--ex-text-muted)}.calendar-week-note{width:100%}.calendar-week-note.is-dragging{opacity:.4}.calendar-week-note-button{width:100%;padding:var(--ex-space-2);background:var(--ex-bg-tertiary);border:none;border-left:3px solid var(--ex-primary);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-sm);text-align:left;cursor:pointer;transition:all var(--ex-transition-fast);display:flex;align-items:center;gap:var(--ex-space-1)}.calendar-week-note-button:hover{background:var(--ex-bg-hover)}.calendar-week-note-button .note-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-week-note-button .calendar-recurring-indicator{flex-shrink:0}.calendar-day-view{display:flex;flex-direction:column;height:100%}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-4) var(--ex-space-5);background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.calendar-day-nav{display:flex;align-items:center;gap:var(--ex-space-2)}.calendar-back-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-text-secondary);cursor:pointer;transition:all var(--ex-transition-fast);margin-right:var(--ex-space-2)}.calendar-back-button:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.calendar-day-label{display:flex;align-items:center;gap:var(--ex-space-3)}.calendar-day-label h3{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.calendar-day-content{flex:1;overflow-y:auto;padding:var(--ex-space-5)}.calendar-day-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--ex-text-muted);gap:var(--ex-space-3)}.calendar-day-empty .material-icon{font-size:var(--ex-space-12);opacity:.5}.calendar-day-empty p{margin:0;font-size:var(--ex-font-md)}.calendar-day-notes-list{display:flex;flex-direction:column;gap:var(--ex-space-3);max-width:600px;margin:0 auto}.calendar-day-note{width:100%}.calendar-day-note.is-dragging{opacity:.4}.calendar-day-note-card{display:flex;flex-direction:column;gap:var(--ex-space-2);padding:var(--ex-space-4);background:var(--ex-bg-tertiary);border-left:4px solid var(--ex-primary);border-radius:var(--ex-radius-lg);cursor:pointer;transition:all var(--ex-transition-fast)}.calendar-day-note-card:hover{background:var(--ex-bg-hover);transform:translateY(-1px)}.calendar-day-note-card .note-main{display:flex;flex-direction:column;gap:var(--ex-space-1)}.calendar-day-note-card .note-main>.note-title,.calendar-day-note-card .note-main>.calendar-recurring-indicator{display:inline}.calendar-day-note-card .note-title{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.calendar-day-note-card .calendar-recurring-indicator{margin-left:var(--ex-space-2);vertical-align:middle}.calendar-day-note-card .note-description{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.calendar-day-note-card .note-meta{display:flex;align-items:center;gap:var(--ex-space-2)}.calendar-day-note-card .note-collection{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium)}@media(max-width:768px){.calendar-week-day-header .day-number{font-size:var(--ex-font-md)}.calendar-week-note-button{font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-2)}.calendar-day-notes-list{max-width:100%}}.recurrence-editor{display:flex;flex-direction:column;gap:var(--ex-space-4);padding:var(--ex-space-3) 0}.recurrence-enable-row{display:flex;align-items:center;gap:var(--ex-space-3)}.recurrence-toggle{display:flex;align-items:center;gap:var(--ex-space-2);cursor:pointer;font-size:var(--ex-font-base);color:var(--ex-text-primary)}.recurrence-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--ex-primary)}.recurrence-description{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);font-style:italic}.recurrence-presets{display:flex;align-items:center;gap:var(--ex-space-2);flex-wrap:wrap}.presets-label{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.preset-btn{padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.preset-btn:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-default);color:var(--ex-text-primary)}.recurrence-frequency-row{display:flex;align-items:center;gap:var(--ex-space-2);font-size:var(--ex-font-base);color:var(--ex-text-primary)}.interval-input{width:50px;padding:var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base);text-align:center}.frequency-select{padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base);cursor:pointer}.recurrence-days-row{display:flex;align-items:center;gap:var(--ex-space-3)}.days-label{font-size:var(--ex-font-base);color:var(--ex-text-primary)}.days-buttons{display:flex;gap:var(--ex-space-1)}.day-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-full);color:var(--ex-text-muted);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);cursor:pointer;transition:all var(--ex-transition-fast)}.day-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.day-btn.selected{background:var(--ex-primary-light);border-color:var(--ex-primary);color:var(--ex-primary)}.recurrence-monthly-row{display:flex;align-items:center;gap:var(--ex-space-2);font-size:var(--ex-font-base);color:var(--ex-text-primary)}.day-input{width:50px;padding:var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base);text-align:center}.recurrence-end-row{display:flex;align-items:center;gap:var(--ex-space-2);flex-wrap:wrap;font-size:var(--ex-font-base);color:var(--ex-text-primary)}.end-type-select{padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base);cursor:pointer}.end-count-row{display:flex;align-items:center;gap:var(--ex-space-2)}.count-input{width:60px;padding:var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base);text-align:center}.end-date-input{padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.recurrence-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-2);margin-top:var(--ex-space-2);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.action-btn{padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.action-btn.cancel{background:transparent;border:1px solid var(--ex-border-default);color:var(--ex-text-muted)}.action-btn.cancel:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.action-btn.save{background:var(--ex-primary);border:none;color:var(--ex-text-inverse)}.action-btn.save:hover{background:var(--ex-primary-hover)}.recurrence-editor-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--ex-overlay-light);display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal)}.recurrence-editor-modal{background:var(--ex-bg-dark);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);box-shadow:var(--ex-shadow-2xl);min-width:360px;max-width:480px;padding:var(--ex-space-5)}.recurrence-editor-modal .modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-4)}.recurrence-editor-modal .modal-header h3{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.recurrence-editor-modal .close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--ex-radius-md);color:var(--ex-text-muted);cursor:pointer;transition:all var(--ex-transition-fast)}.recurrence-editor-modal .close-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.recurrence-display{display:inline-flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.recurrence-display:hover{background:var(--ex-bg-hover);border-color:var(--ex-border-default);color:var(--ex-text-primary)}.recurrence-display .material-icon{font-size:var(--ex-font-md)}.calendar-note-recurring-indicator{display:inline-flex;align-items:center;margin-left:var(--ex-space-1);color:var(--ex-text-muted);font-size:var(--ex-font-sm)}.calendar-note-recurring-indicator .material-icon{font-size:var(--ex-font-base)}.calendar-sync-buttons{display:flex;gap:var(--ex-space-1)}.calendar-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--ex-overlay-light);display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal);padding:var(--ex-space-5)}.calendar-dialog{background:var(--ex-bg-dark);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);box-shadow:var(--ex-shadow-2xl);width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.calendar-dialog.import-dialog{max-width:600px}.calendar-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-4) var(--ex-space-5);border-bottom:1px solid var(--ex-border-light)}.calendar-dialog-header h2{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);display:flex;align-items:center;gap:var(--ex-space-3)}.calendar-dialog-header h2 .material-icon{font-size:var(--ex-font-2xl);color:var(--ex-primary)}.dialog-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--ex-radius-md);color:var(--ex-text-muted);cursor:pointer;transition:all var(--ex-transition-fast)}.dialog-close-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.calendar-dialog-content{flex:1;overflow-y:auto;padding:var(--ex-space-5)}.calendar-dialog-footer{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding:var(--ex-space-4) var(--ex-space-5);border-top:1px solid var(--ex-border-light)}.dialog-section{margin-bottom:var(--ex-space-5)}.dialog-section:last-child{margin-bottom:0}.dialog-section h3{margin:0 0 var(--ex-space-2);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.section-hint{margin:0 0 var(--ex-space-3);font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-2)}.section-header-row h3{margin:0}.toggle-all-btn{padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-muted);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.toggle-all-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.date-range-inputs{display:flex;align-items:center;gap:var(--ex-space-3)}.date-input-group{display:flex;flex-direction:column;gap:var(--ex-space-1);flex:1}.date-input-group label{font-size:var(--ex-font-xs);color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.5px}.dialog-date-input{padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);color:var(--ex-text-primary);font-size:var(--ex-font-base);width:100%;box-sizing:border-box}.dialog-date-input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.date-range-separator{color:var(--ex-text-muted);margin-top:var(--ex-space-5)}.collection-checkboxes{display:flex;flex-wrap:wrap;gap:var(--ex-space-2)}.collection-checkbox{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);cursor:pointer;transition:all var(--ex-transition-fast)}.collection-checkbox:hover{background:var(--ex-bg-hover)}.collection-checkbox input[type=checkbox]{width:14px;height:14px;accent-color:var(--ex-primary)}.collection-color-dot{width:10px;height:10px;border-radius:var(--ex-radius-full);flex-shrink:0}.collection-name{font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.option-checkboxes{display:flex;flex-direction:column;gap:var(--ex-space-2)}.option-checkbox{display:flex;align-items:center;gap:var(--ex-space-2);cursor:pointer;font-size:var(--ex-font-base);color:var(--ex-text-primary)}.option-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--ex-primary)}.export-summary .summary-stats{display:flex;gap:var(--ex-space-6)}.export-summary .stat{display:flex;flex-direction:column;align-items:center}.export-summary .stat-value{font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-primary)}.export-summary .stat-label{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.preview-toggle-btn{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);color:var(--ex-text-secondary);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.preview-toggle-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.preview-content{margin-top:var(--ex-space-3);max-height:200px;overflow:auto;background:var(--ex-bg-darker);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);padding:var(--ex-space-3)}.preview-content pre{margin:0;font-size:var(--ex-font-xs);font-family:var(--ex-font-mono);color:var(--ex-text-muted);white-space:pre-wrap;word-break:break-all}.dialog-btn{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-3) var(--ex-space-5);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.dialog-btn.primary{background:var(--ex-primary);border:none;color:var(--ex-text-inverse)}.dialog-btn.primary:hover:not(:disabled){background:var(--ex-primary-hover)}.dialog-btn.primary:disabled{opacity:.5;cursor:not-allowed}.dialog-btn.secondary{background:transparent;border:1px solid var(--ex-border-default);color:var(--ex-text-secondary)}.dialog-btn.secondary:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.file-drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-3);padding:var(--ex-space-10) var(--ex-space-5);border:2px dashed var(--ex-border-default);border-radius:var(--ex-radius-xl);background:var(--ex-bg-tertiary);text-align:center;cursor:pointer;transition:all var(--ex-transition-fast)}.file-drop-zone:hover{border-color:var(--ex-primary);background:var(--ex-primary-light)}.file-drop-zone.has-file{border-style:solid;border-color:var(--ex-primary)}.file-drop-zone .material-icon{font-size:var(--ex-space-12);color:var(--ex-text-muted)}.file-drop-zone p{margin:0;font-size:var(--ex-font-base);color:var(--ex-text-tertiary)}.file-drop-zone .file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-info{display:flex;align-items:center;gap:var(--ex-space-2)}.file-info .material-icon{font-size:var(--ex-font-2xl);color:var(--ex-primary)}.file-name{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.file-size{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.parse-error{display:flex;align-items:flex-start;gap:var(--ex-space-2);margin-top:var(--ex-space-3);padding:var(--ex-space-3);background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);border-radius:var(--ex-radius-md);color:var(--ex-danger);font-size:var(--ex-font-sm)}.parse-error .material-icon{font-size:var(--ex-font-lg);flex-shrink:0}.events-list{max-height:200px;overflow-y:auto;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-darker)}.event-item{display:flex;align-items:flex-start;gap:var(--ex-space-3);padding:var(--ex-space-3);border-bottom:1px solid var(--ex-border-light);cursor:pointer;transition:background var(--ex-transition-fast)}.event-item:hover{background:var(--ex-bg-hover)}.event-item:last-child{border-bottom:none}.event-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--ex-primary);margin-top:2px}.event-details{flex:1;min-width:0}.event-summary{display:block;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-date{display:flex;align-items:center;gap:var(--ex-space-2);margin-top:var(--ex-space-1);font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.event-recurring{display:inline-flex;align-items:center;gap:var(--ex-space-1);color:var(--ex-primary)}.event-recurring .material-icon{font-size:var(--ex-font-base)}.import-target{display:flex;flex-direction:column;gap:var(--ex-space-4)}.target-field{display:flex;flex-direction:column;gap:var(--ex-space-2)}.target-field label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-muted)}.dialog-select,.dialog-text-input{padding:var(--ex-space-3);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);color:var(--ex-text-primary);font-size:var(--ex-font-base);width:100%;box-sizing:border-box}.dialog-select:focus,.dialog-text-input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.field-hint{margin:0;font-size:var(--ex-font-xs);color:var(--ex-text-muted)}.import-progress{display:flex;flex-direction:column;gap:var(--ex-space-2)}.progress-bar{height:var(--ex-space-2);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--ex-primary);transition:width var(--ex-transition-slow)}.progress-text{font-size:var(--ex-font-sm);color:var(--ex-text-muted);text-align:center}.import-errors{padding:var(--ex-space-3);background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);border-radius:var(--ex-radius-lg)}.import-errors h4{margin:0 0 var(--ex-space-2);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-danger);display:flex;align-items:center;gap:var(--ex-space-2)}.import-errors h4 .material-icon{font-size:var(--ex-font-lg)}.import-errors ul{margin:0;padding:0 0 0 var(--ex-space-5);font-size:var(--ex-font-sm);color:var(--ex-danger)}.import-errors li{margin:var(--ex-space-1) 0}@media(max-width:600px){.calendar-dialog{max-width:100%;max-height:100%;border-radius:0}.date-range-inputs{flex-direction:column;gap:var(--ex-space-3)}.date-range-separator{display:none}.export-summary .summary-stats{flex-wrap:wrap}.collection-checkboxes{flex-direction:column}.collection-checkbox{width:100%}}.skip-link-container{position:absolute;top:0;left:0;z-index:var(--ex-z-max, 9999)}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;padding:var(--ex-space-3, 12px) var(--ex-space-6, 24px);background:var(--ex-bg-primary, #ffffff);color:var(--ex-primary, #0066cc);border:2px solid var(--ex-primary, #0066cc);border-radius:var(--ex-radius-sm, 4px);font-size:var(--ex-font-sm, 14px);font-weight:var(--ex-font-weight-semibold, 600);text-decoration:none;box-shadow:var(--ex-shadow-lg, 0 10px 25px rgba(0, 0, 0, .15));white-space:nowrap}.skip-link:focus{position:fixed;left:var(--ex-space-4, 16px);top:var(--ex-space-4, 16px);width:auto;height:auto;overflow:visible;outline:2px solid var(--ex-primary, #0066cc);outline-offset:2px;z-index:var(--ex-z-max, 9999)}.skip-link:hover{background:var(--ex-primary, #0066cc);color:var(--ex-text-inverse, #ffffff)}[data-theme=dark] .skip-link{background:var(--ex-bg-tertiary, #252542);color:var(--ex-primary, #6366f1);border-color:var(--ex-primary, #6366f1)}[data-theme=dark] .skip-link:hover{background:var(--ex-primary, #6366f1);color:var(--ex-text-inverse, #ffffff)}.skip-link-container .skip-link:nth-child(2):focus{top:60px}.skip-link-container .skip-link:nth-child(3):focus{top:104px}.collections-page{min-height:100vh;background:linear-gradient(135deg,var(--ex-bg-primary) 0%,var(--ex-bg-secondary) 100%);padding:0;overflow-x:hidden;box-sizing:border-box}.collections-header{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--ex-space-5) var(--ex-space-10);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ex-border-default);position:relative;z-index:200}.header-center{position:absolute;left:50%;transform:translate(-50%);display:flex;justify-content:center}.header-left h1{color:var(--ex-text-primary);margin:0;font-size:var(--ex-font-3xl);font-weight:var(--ex-font-weight-semibold)}.collections-container{padding:var(--ex-space-10);max-width:1400px;margin:0 auto}.collections-actions-bar{display:flex;align-items:center;margin-bottom:var(--ex-space-6)}.collections-actions-bar .btn-new-group{background:var(--btn-primary-bg);color:var(--ex-text-primary);border:1px solid rgba(255,255,255,.25);padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-lg);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base);display:flex;align-items:center;gap:var(--ex-space-2)}.collections-actions-bar .btn-new-group:hover{background:#ffffff40;border-color:#fff6}.collections-actions-bar .btn-new-group .material-icon{font-size:var(--ex-font-lg)}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:30px;padding:var(--ex-space-5) 0}.collection-card{cursor:pointer;transform:translateY(0);transition:transform .3s ease,z-index 0s;perspective:1000px;position:relative;z-index:1}.collection-card:hover{transform:translateY(-10px);z-index:101}.collection-book{position:relative;width:100%;height:280px;display:flex;border-radius:var(--ex-radius-sm) var(--ex-radius-lg) var(--ex-radius-lg) var(--ex-radius-sm);box-shadow:var(--ex-shadow-lg);transition:box-shadow var(--ex-transition-base)}.collection-card:hover .collection-book{box-shadow:var(--ex-shadow-xl)}.book-spine{width:40px;height:100%;border-radius:var(--ex-radius-sm) 0 0 var(--ex-radius-sm);box-shadow:-2px 0 8px #0003;display:flex;align-items:center;justify-content:center;position:relative}.book-spine:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:linear-gradient(to right,#0000001a,#ffffff0d,#0000000d);pointer-events:none}.book-title{writing-mode:vertical-rl;text-orientation:mixed;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-semibold);font-size:var(--ex-font-base);padding:var(--ex-space-2) 0;text-align:center;max-height:90%;overflow:hidden;text-overflow:ellipsis}.book-cover{flex:1;border-radius:0 var(--ex-radius-lg) var(--ex-radius-lg) 0;padding:var(--ex-space-6);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.book-cover:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 50%),linear-gradient(to bottom,#ffffff0d,#0000001a);pointer-events:none}.book-icon{color:var(--ex-text-inverse);font-size:80px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;text-shadow:0 2px 8px rgba(0,0,0,.2)}.collection-description-box{position:absolute;top:100%;left:0;right:0;background:var(--ex-bg-primary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);margin-top:var(--ex-space-2);box-shadow:var(--ex-shadow-lg);color:var(--ex-text-primary);font-size:var(--ex-font-base);line-height:1.5;z-index:100;animation:slideDown var(--ex-transition-base) ease-out;max-height:300px;overflow-y:auto;word-wrap:break-word;overflow-wrap:break-word}.collection-description-box::-webkit-scrollbar{width:var(--ex-space-2)}.collection-description-box::-webkit-scrollbar-track{background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm)}.collection-description-box::-webkit-scrollbar-thumb{background:var(--ex-border-default);border-radius:var(--ex-radius-sm)}.collection-description-box::-webkit-scrollbar-thumb:hover{background:var(--ex-text-muted)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.add-collection-card{height:280px;border:3px dashed var(--border-primary);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all var(--ex-transition-slow);color:var(--ex-text-secondary)}.add-collection-card:hover{background:var(--ex-bg-tertiary);border-color:var(--border-primary);transform:translateY(-5px)}.add-icon{font-size:48px;margin-bottom:var(--ex-space-3);line-height:1}.add-label{font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium)}.empty-state{text-align:center;padding:60px var(--ex-space-5);color:var(--ex-text-primary)}.empty-state p{font-size:var(--ex-font-lg);margin:var(--ex-space-3) 0;opacity:.9}.error-banner{background:#ef4444e6;color:var(--ex-text-inverse);padding:var(--ex-space-4) var(--ex-space-10);text-align:center;font-weight:var(--ex-font-weight-medium)}.loading-spinner{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;color:var(--ex-text-inverse);font-size:var(--ex-font-lg);gap:var(--ex-space-5);cursor:progress}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:var(--ex-text-inverse);border-radius:var(--ex-radius-full);animation:spin .8s linear infinite}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal);padding:var(--ex-space-5)}.modal-content{background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--ex-shadow-2xl)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-6) var(--ex-space-6) var(--ex-space-4);border-bottom:1px solid var(--ex-border-light)}.modal-header h2{margin:0;font-size:var(--ex-font-2xl);color:var(--ex-text-primary)}.modal-close{background:none;border:none;font-size:var(--ex-font-3xl);color:var(--ex-text-tertiary);cursor:pointer;line-height:1;padding:0;width:var(--ex-space-8);height:var(--ex-space-8);display:flex;align-items:center;justify-content:center;transition:color var(--ex-transition-base)}.modal-close:hover{color:var(--ex-text-primary)}.modal-body{padding:var(--ex-space-6)}.modal-footer{padding:var(--ex-space-4) var(--ex-space-6) var(--ex-space-6);display:flex;justify-content:flex-end;gap:var(--ex-space-3)}.form-group{margin-bottom:var(--ex-space-5)}.form-group label{display:block;margin-bottom:var(--ex-space-2);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.form-group input,.form-group textarea{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-family:inherit;transition:border-color var(--ex-transition-base)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.form-group textarea{resize:vertical;min-height:80px}.color-scheme-picker{display:flex;flex-direction:column;gap:var(--ex-space-4);max-height:320px;overflow-y:auto;padding-right:var(--ex-space-2)}.color-scheme-picker::-webkit-scrollbar{width:6px}.color-scheme-picker::-webkit-scrollbar-track{background:var(--ex-bg-tertiary);border-radius:3px}.color-scheme-picker::-webkit-scrollbar-thumb{background:var(--ex-border-default);border-radius:3px}.color-scheme-picker::-webkit-scrollbar-thumb:hover{background:var(--ex-text-muted)}.color-scheme-category{display:flex;flex-direction:column;gap:var(--ex-space-2)}.color-scheme-category-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.color-scheme-row{display:flex;flex-wrap:wrap;gap:var(--ex-space-2)}.color-scheme-swatch{width:36px;height:36px;border-radius:var(--ex-radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--ex-transition-base);padding:0;display:flex;overflow:hidden;background:transparent}.color-scheme-swatch:hover{transform:scale(1.1);box-shadow:var(--ex-shadow-md)}.color-scheme-swatch.selected{border-color:var(--ex-text-primary);box-shadow:0 0 0 2px var(--ex-bg-primary),0 0 0 4px var(--ex-text-primary);transform:scale(1.05)}.color-scheme-swatch .swatch-light,.color-scheme-swatch .swatch-dark{width:50%;height:100%}.color-scheme-swatch .swatch-light{border-radius:var(--ex-radius-sm) 0 0 var(--ex-radius-sm)}.color-scheme-swatch .swatch-dark{border-radius:0 var(--ex-radius-sm) var(--ex-radius-sm) 0}@media(max-width:480px){.color-scheme-picker{max-height:250px}.color-scheme-swatch{width:32px;height:32px;border-radius:var(--ex-radius-sm)}.color-scheme-row{gap:6px}.color-scheme-category-label{font-size:var(--ex-font-xs)}}.error-message{background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);color:var(--ex-danger);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4);font-size:var(--ex-font-base)}.warning-message{background:var(--ex-warning-light);border:1px solid var(--ex-warning-border);color:var(--ex-warning);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4);font-size:var(--ex-font-base)}.modal-danger .modal-header h2{color:var(--ex-danger)}.header-right{display:flex;align-items:center;gap:var(--ex-space-3);height:40px}.collections-tab-switcher{display:flex;position:relative;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:25px;padding:var(--ex-space-1);gap:0;border:1px solid rgba(255,255,255,.2)}.collections-tab-switcher:before{content:"";position:absolute;top:var(--ex-space-1);left:var(--ex-space-1);width:calc(50% - 4px);height:calc(100% - 8px);background:var(--ex-bg-primary);border-radius:20px;transition:transform var(--ex-transition-slow) cubic-bezier(.4,0,.2,1);box-shadow:var(--ex-shadow-sm);z-index:0}.collections-tab-switcher.four-tabs:before{width:calc(25% - 3px)}.collections-tab-switcher.four-tabs.calendar-active:before{transform:translate(100%)}.collections-tab-switcher.four-tabs.templates-active:before{transform:translate(200%)}.collections-tab-switcher.four-tabs.versions-active:before{transform:translate(300%)}.collections-tab-switcher.two-tabs:before{width:calc(50% - 4px)}.collections-tab-switcher.two-tabs.calendar-active:before{transform:translate(100%)}.calendar-tab{display:flex;align-items:center;gap:6px}.calendar-tab-badge{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#ff6b6b;color:var(--ex-text-inverse);border-radius:10px;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold);box-shadow:var(--ex-shadow-xs)}.collections-tab-btn.active .calendar-tab-badge{background:#e74c3c}.collections-tab-btn{position:relative;z-index:1;background:transparent;border:none;color:#fffc;padding:var(--ex-space-2) var(--ex-space-6);border-radius:20px;cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);transition:color var(--ex-transition-slow) ease;min-width:110px}.collections-tab-btn:hover:not(.active){color:var(--ex-text-inverse)}.collections-tab-btn.active{color:var(--ex-text-primary)}.content-slider-wrapper{overflow:hidden;width:100%}.content-slider{display:flex;width:200%;transition:transform .4s cubic-bezier(.4,0,.2,1)}.content-panel{width:50%;flex-shrink:0}.content-slider.two-panels{width:200%}.content-slider.two-panels .content-panel{width:50%}.content-slider.two-panels.show-calendar{transform:translate(-50%)}.content-slider.four-panels{width:400%}.content-slider.four-panels .content-panel{width:25%}.content-slider.four-panels.show-calendar{transform:translate(-25%)}.content-slider.four-panels.show-templates{transform:translate(-50%)}.content-slider.four-panels.show-versions{transform:translate(-75%)}.content-slider.five-panels{width:500%}.content-slider.five-panels .content-panel{width:20%}.content-slider.five-panels.show-calendar{transform:translate(-20%)}.content-slider.five-panels.show-templates{transform:translate(-40%)}.content-slider.five-panels.show-export-templates{transform:translate(-60%)}.content-slider.five-panels.show-versions{transform:translate(-80%)}.collections-panel .collections-container,.templates-panel .collections-container,.export-templates-panel .collections-container,.versions-panel .collections-container{padding:var(--ex-space-10);max-width:1400px;margin:0 auto}.calendar-panel{display:flex;flex-direction:column;height:calc(100vh - 80px);overflow:hidden}.collection-book{position:relative}.template-badge{position:absolute;top:-8px;right:-8px;background:#8b5cf6;color:var(--ex-text-inverse);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-xl);z-index:10;box-shadow:0 2px 8px #8b5cf666;pointer-events:none}.add-collection-buttons{display:flex;flex-direction:column;gap:var(--ex-space-3)}.from-template-btn{background:#ffffff26;color:var(--ex-text-inverse);border:2px solid rgba(255,255,255,.3);padding:var(--ex-space-3) var(--ex-space-5);border-radius:var(--ex-radius-md);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base)}.from-template-btn:hover{background:#ffffff40;border-color:#ffffff80}.admin-templates-section{padding:var(--ex-space-5) 0}.admin-templates-header{margin-bottom:var(--ex-space-6)}.admin-templates-header h2{color:var(--ex-text-primary);margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold)}.admin-templates-description{color:#fffc;font-size:var(--ex-font-base);margin:0}.template-browser-modal .ex-btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--border-primary)}.template-browser-modal .ex-btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover)}.template-browser-modal .ex-btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.template-browser-modal .ex-btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.template-browser-modal .ex-btn-primary:disabled{background:var(--btn-secondary-bg);color:var(--text-muted);opacity:.6}.template-browser-modal .error-message{background:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error)}.template-browser-modal .ex-input-wrapper label,.template-browser-modal .ex-form-helper{color:var(--text-secondary)}.template-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-10);gap:var(--ex-space-4);color:var(--ex-text-secondary);cursor:progress}.template-loading .spinner{border-color:var(--ex-border-light);border-top-color:var(--ex-primary)}.template-empty{text-align:center;padding:var(--ex-space-10) var(--ex-space-5);color:var(--ex-text-secondary)}.template-empty p{margin:var(--ex-space-2) 0}.template-grid{display:flex;gap:var(--ex-space-6);justify-content:center;flex-wrap:wrap;margin-bottom:var(--ex-space-6)}.template-card{display:flex;flex-direction:column;align-items:center;padding:0;border:none;background:transparent;cursor:pointer;transition:all var(--ex-transition-slow);text-align:center;width:auto}.template-card:hover{transform:translateY(-8px)}.template-card.selected .template-mini-book{box-shadow:0 0 0 3px var(--ex-primary),var(--ex-shadow-xl)}.template-mini-book{width:100px;height:140px;border-radius:var(--ex-radius-sm) var(--ex-radius-lg) var(--ex-radius-lg) var(--ex-radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:var(--ex-space-3);box-shadow:var(--ex-shadow-lg);position:relative;overflow:hidden;transition:box-shadow var(--ex-transition-slow) ease}.template-mini-book:before{content:"";position:absolute;top:0;left:0;width:8px;height:100%;background:#00000026}.template-mini-book:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffff26,#0000001a);pointer-events:none}.template-mini-book .material-icon{font-size:4em!important;color:var(--ex-text-inverse);text-shadow:0 2px 8px rgba(0,0,0,.2);position:relative;z-index:1}.template-card-info{flex:1}.template-card-name{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin-bottom:var(--ex-space-1);font-size:var(--ex-font-base)}.template-card-description{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);line-height:1.4;max-height:2.8em;overflow:hidden;text-overflow:ellipsis}.template-form{border-top:1px solid var(--ex-border-light);padding-top:var(--ex-space-5);margin-top:var(--ex-space-2)}.template-form .form-group{margin-bottom:0}.template-form .form-group label{color:var(--ex-text-secondary)}.template-form .form-group input{background:var(--ex-bg-primary);border:1px solid var(--ex-border-default)}.template-form .form-group input:focus{background:var(--ex-bg-primary);border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.setup-loading{padding:var(--ex-space-4) 0;color:var(--ex-text-tertiary);font-size:var(--ex-font-base);cursor:progress}.setup-questions{margin-bottom:var(--ex-space-5)}.setup-questions-header{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);margin-bottom:var(--ex-space-4);text-transform:uppercase;letter-spacing:.5px}.setup-question{margin-bottom:var(--ex-space-4)}.setup-question:last-child{margin-bottom:var(--ex-space-5)}.setup-question-checkbox .ex-checkbox-container{color:var(--ex-text-primary)}.setup-question-checkbox .ex-checkbox-input{background:var(--ex-bg-primary);border-color:var(--ex-border-default)}.setup-question-checkbox .ex-checkbox-input:checked{background:var(--ex-primary);border-color:var(--ex-primary)}.setup-question-select .ex-input-container label,.setup-question-text .ex-input-container label{color:var(--ex-text-secondary)}.setup-question-select .ex-select,.setup-question-text .ex-input{background:var(--ex-bg-primary);border:1px solid var(--ex-border-default)}.setup-question-select .ex-select:focus,.setup-question-text .ex-input:focus{background:var(--ex-bg-primary);border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.versions-panel{padding:var(--ex-space-5) 0}.versions-panel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px var(--ex-space-5);gap:var(--ex-space-4);color:#fffc;cursor:progress}.versions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--ex-space-6)}.versions-header h2{color:var(--ex-text-inverse);margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold)}.versions-description{color:#fffc;font-size:var(--ex-font-base);margin:0}.btn-create-version{display:flex;align-items:center;gap:var(--ex-space-2);background:var(--ex-bg-primary);color:var(--ex-primary);border:none;padding:var(--ex-space-2) var(--ex-space-5);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);cursor:pointer;transition:all var(--ex-transition-base)}.btn-create-version:hover{background:#ffffffe6;transform:translateY(-2px);box-shadow:var(--ex-shadow-md)}.versions-error{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:var(--ex-text-inverse);padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-lg);margin-bottom:var(--ex-space-5)}.versions-empty{text-align:center;padding:60px var(--ex-space-5);color:#fffc}.versions-empty p{margin:var(--ex-space-2) 0}.versions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--ex-space-5)}.version-card{background:var(--ex-bg-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--ex-radius-xl);border:1px solid var(--ex-border-light);overflow:hidden;transition:all var(--ex-transition-base)}.version-card:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:var(--ex-shadow-xl)}.version-card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-4) var(--ex-space-5);border-bottom:1px solid rgba(255,255,255,.1)}.version-number{color:var(--ex-text-primary);font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold)}.version-status{font-size:var(--ex-font-sm)}.status-sent{color:var(--ex-success);font-weight:var(--ex-font-weight-medium)}.status-draft{color:var(--ex-text-secondary)}.version-card-body{padding:var(--ex-space-4) var(--ex-space-5)}.version-info-row{color:var(--ex-text-primary);font-size:13px;margin-bottom:var(--ex-space-2)}.version-info-row:last-child{margin-bottom:0}.version-card-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-2);padding:var(--ex-space-3) var(--ex-space-5);border-top:1px solid rgba(255,255,255,.1);background:#0000001a}.btn-version-action{background:var(--btn-secondary-bg);border:1px solid var(--border-primary);color:var(--ex-text-secondary);padding:6px var(--ex-space-3);border-radius:var(--ex-radius-md);cursor:pointer;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base)}.btn-version-action.btn-edit:hover{background:var(--btn-secondary-hover);border-color:var(--btn-primary-hover)}.btn-version-action.btn-delete:hover{background:var(--ex-danger-light);border-color:var(--ex-danger-border);color:var(--ex-danger)}.modal-content.version-editor-modal{max-width:800px;width:100%;background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);max-height:90vh;display:flex;flex-direction:column;overflow-y:visible}.version-editor-body{flex:1;overflow-y:auto;padding:var(--ex-space-6)}.version-editor-error{background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);color:var(--ex-danger);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4)}.version-editor-sent-notice{background:var(--ex-success-light);border:1px solid var(--ex-success-border);color:var(--ex-success);padding:var(--ex-space-3);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-4)}.version-form-row{display:flex;gap:var(--ex-space-4);margin-bottom:var(--ex-space-5)}.version-form-group{flex:1}.version-form-group label{display:block;margin-bottom:var(--ex-space-2);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.version-form-group input{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);transition:border-color var(--ex-transition-base)}.version-form-group input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.version-form-group input:disabled{background:var(--ex-bg-tertiary);cursor:not-allowed}.version-notes-section{margin-bottom:var(--ex-space-6)}.version-notes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ex-space-3)}.version-notes-header h3{margin:0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.version-notes-actions{display:flex;align-items:center;gap:var(--ex-space-2)}.express-version-select{padding:6px var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:13px;color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;min-width:160px}.express-version-select:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.express-version-select:disabled{background:var(--ex-bg-tertiary);cursor:not-allowed;opacity:.6}.btn-add-note{display:flex;align-items:center;gap:var(--ex-space-1);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-default);color:var(--ex-text-primary);padding:6px var(--ex-space-3);border-radius:var(--ex-radius-md);font-size:13px;cursor:pointer;transition:all var(--ex-transition-base)}.btn-add-note:hover{background:var(--ex-bg-hover)}.version-notes-empty{color:var(--ex-text-muted);font-size:var(--ex-font-base);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);text-align:center;border:1px dashed var(--ex-border-light)}.version-notes-list{display:flex;flex-direction:column;gap:var(--ex-space-2)}.version-note-item{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg)}.version-note-info{display:flex;flex-direction:column;gap:2px}.version-note-name{font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.version-note-collection{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.btn-remove-note{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-1);display:flex;align-items:center;justify-content:center;transition:color var(--ex-transition-base)}.btn-remove-note:hover{color:var(--ex-danger)}.version-notification-section{margin-bottom:var(--ex-space-4)}.version-notification-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ex-space-3)}.version-notification-header h3{margin:0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.compose-controls{display:flex;align-items:center;gap:var(--ex-space-2)}.metadata-field-select{padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);font-size:13px;color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;min-width:150px}.metadata-field-select:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.metadata-field-select:disabled{background:var(--ex-bg-tertiary);cursor:not-allowed;opacity:.6}.btn-compose{display:flex;align-items:center;gap:6px;background:var(--ex-primary);color:var(--ex-text-inverse);border:none;padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-md);font-size:13px;font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-base)}.btn-compose:hover:not(:disabled){background:var(--ex-secondary)}.btn-compose:disabled{opacity:.5;cursor:not-allowed}.version-notification-textarea{width:100%;min-height:200px;padding:var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.6;resize:vertical}.version-notification-textarea:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.version-notification-textarea:disabled{background:var(--ex-bg-tertiary);cursor:not-allowed}.version-editor-footer{border-top:1px solid var(--ex-border-light);padding:var(--ex-space-4) var(--ex-space-6);display:flex;justify-content:flex-end;gap:var(--ex-space-3)}.btn-cancel{background:var(--ex-bg-tertiary);color:var(--ex-text-primary);border:none;padding:var(--ex-space-2) var(--ex-space-5);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-base)}.btn-cancel:hover{background:var(--ex-bg-hover)}.btn-save{background:var(--ex-primary);color:var(--ex-text-inverse);border:none;padding:var(--ex-space-2) var(--ex-space-5);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-base)}.btn-save:hover:not(:disabled){background:var(--ex-secondary)}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-send-notification{display:flex;align-items:center;gap:var(--ex-space-2);background:var(--ex-success);color:var(--ex-text-inverse);border:none;padding:var(--ex-space-2) var(--ex-space-5);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-base)}.btn-send-notification:hover:not(:disabled){filter:brightness(.9)}.btn-send-notification:disabled{opacity:.5;cursor:not-allowed}.note-selector-overlay{z-index:1100}.modal-content.note-selector-modal{max-width:500px;width:100%;background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);max-height:80vh;display:flex;overflow-y:visible;flex-direction:column}.note-selector-body{flex:1;overflow-y:auto;padding:var(--ex-space-5)}.note-selector-collections h3,.note-selector-notes h3{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-tertiary)}.note-selector-loading,.note-selector-empty{text-align:center;padding:var(--ex-space-10) var(--ex-space-5);color:var(--ex-text-muted)}.note-selector-loading{cursor:progress}.note-selector-list{display:flex;flex-direction:column;gap:var(--ex-space-1)}.note-selector-item{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);cursor:pointer;transition:all var(--ex-transition-base);text-align:left;width:100%}.note-selector-item:hover{background:var(--ex-bg-tertiary);border-color:var(--ex-border-default)}.note-selector-item .collection-color{width:var(--ex-space-3);height:var(--ex-space-3);border-radius:3px;flex-shrink:0}.note-selector-item .collection-name,.note-selector-item .note-path{flex:1;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-selector-item .chevron{color:var(--ex-text-muted);font-size:var(--ex-font-xl)}.note-selector-back{display:flex;align-items:center;gap:var(--ex-space-2);background:transparent;border:none;color:var(--ex-primary);padding:var(--ex-space-2) 0;margin-bottom:var(--ex-space-4);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium)}.note-selector-back:hover{color:var(--ex-secondary)}@media(max-width:768px){.collections-page{width:100%;max-width:100vw}.collections-header{padding:var(--ex-space-4) var(--ex-space-5);flex-direction:column;gap:var(--ex-space-4);text-align:center;box-sizing:border-box;width:100%}.header-center{position:static;transform:none;order:2}.header-left{order:1}.header-right{order:3}.header-left h1{font-size:var(--ex-font-2xl)}.collections-container{padding:var(--ex-space-5);box-sizing:border-box;width:100%;max-width:100%}.collections-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--ex-space-5);width:100%;box-sizing:border-box}.collection-book,.add-collection-card{height:240px}.book-cover-title{font-size:var(--ex-font-md)}.book-icon{font-size:60px}.book-spine{width:30px}.book-title{font-size:var(--ex-font-sm)}.modal-content{margin:0;max-height:90vh}.modal-header,.modal-body{padding:var(--ex-space-5)}.modal-footer{padding:var(--ex-space-4) var(--ex-space-5)}.collections-tab-btn{padding:var(--ex-space-2) var(--ex-space-4);min-width:90px;font-size:13px}.version-form-row{flex-direction:column}.versions-header{flex-direction:column;gap:var(--ex-space-4)}.versions-list{grid-template-columns:1fr}.form-group input,.form-group textarea{min-height:44px;font-size:var(--ex-font-md)}.color-option{width:40px;height:40px}}@media(max-width:480px){.collections-page{width:100%;max-width:100vw}.collections-header{padding:var(--ex-space-3) var(--ex-space-4);gap:var(--ex-space-3);box-sizing:border-box;width:100%}.header-left h1{font-size:var(--ex-font-xl);margin-bottom:var(--ex-space-1)}.user-info{font-size:var(--ex-font-sm)}.header-right{gap:var(--ex-space-2);flex-wrap:wrap;justify-content:center}.collections-container{padding:var(--ex-space-4);box-sizing:border-box;width:100%;max-width:100%}.collections-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--ex-space-4);width:100%;box-sizing:border-box}.collection-book,.add-collection-card{height:200px}.book-icon{font-size:48px}.book-spine{width:24px}.book-title{font-size:10px}.book-cover{padding:var(--ex-space-4)}.add-icon{font-size:36px;margin-bottom:var(--ex-space-2)}.add-label{font-size:var(--ex-font-base)}.collections-tab-switcher{width:100%}.collections-tab-btn{flex:1;padding:var(--ex-space-2) var(--ex-space-3);min-width:auto;font-size:var(--ex-font-sm)}.modal-overlay{padding:0}.modal-content{max-width:100%;max-height:100%;height:100%;border-radius:0}.modal-header{padding:var(--ex-space-4)}.modal-header h2{font-size:var(--ex-font-lg)}.modal-close{width:44px;height:44px}.modal-body{padding:var(--ex-space-4)}.modal-footer{padding:var(--ex-space-3) var(--ex-space-4);flex-direction:column}.modal-footer .ex-btn{width:100%}.form-group{margin-bottom:var(--ex-space-4)}.form-group label{font-size:13px}.color-picker{gap:var(--ex-space-2)}.color-option{width:36px;height:36px;border-radius:var(--ex-radius-md)}.version-editor-body{padding:var(--ex-space-4)}.version-notification-textarea{min-height:150px}.version-editor-footer{padding:var(--ex-space-3) var(--ex-space-4);flex-direction:column}.version-editor-footer button{width:100%}.note-selector-modal{max-height:100vh;height:100%}.note-selector-body{padding:var(--ex-space-4)}.note-selector-item{padding:14px;min-height:48px}.empty-state{padding:var(--ex-space-10) var(--ex-space-4)}.empty-state p{font-size:var(--ex-font-md)}.error-banner{padding:var(--ex-space-3) var(--ex-space-4);font-size:13px}}@media(max-width:320px){.collections-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--ex-space-3)}.collection-book,.add-collection-card{height:180px}.book-icon{font-size:40px}.book-spine{width:20px}.header-left h1{font-size:var(--ex-font-lg)}}.collection-group-section{margin-bottom:var(--ex-space-10)}.collection-group-section:last-child{margin-bottom:0}.collection-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-4);padding-bottom:var(--ex-space-3);border-bottom:2px solid var(--ex-border-light)}.collection-group-name{color:var(--ex-text-primary);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.1)}.collection-group-name-input{background:#ffffff26;border:2px solid rgba(255,255,255,.4);border-radius:var(--ex-radius-md);color:var(--ex-text-inverse);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold);padding:var(--ex-space-2) var(--ex-space-3);outline:none;min-width:200px}.collection-group-name-input:focus{border-color:#ffffffb3;background:#fff3}.collection-group-name-input::placeholder{color:#ffffff80}.collection-group-actions{display:flex;gap:var(--ex-space-2)}.ex-btn .collection-group-action-btn{background:var(--btn-secondary-bg);border:1px solid var(--border-primary);color:var(--btn-secondary-text);width:var(--ex-space-8);height:var(--ex-space-8);border-radius:var(--ex-radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-base)}.ex-btn .collection-group-action-btn:hover{background:var(--btn-secondary-hover);color:var(--ex-text-inverse)}.collection-group-action-btn .material-icon{font-size:var(--ex-font-lg);color:inherit!important}.collection-group-action-delete:hover{background:#ef44444d;border-color:#ef444480;color:#fca5a5}.btn-new-group{display:flex;align-items:center;gap:6px;background:#fff3;color:var(--ex-text-inverse);border:1px solid rgba(255,255,255,.3);padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-md);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base)}.btn-new-group:hover{background:#ffffff4d}.btn-new-group .material-icon{font-size:var(--ex-font-lg)}.create-group-modal{max-width:400px}.form-help-text{color:var(--ex-text-tertiary);font-size:13px;margin:0;line-height:1.5}@media(max-width:768px){.collection-group-section{margin-bottom:var(--ex-space-8)}.collection-group-header{flex-direction:column;align-items:flex-start;gap:var(--ex-space-3)}.collection-group-name{font-size:var(--ex-font-lg)}.collection-group-actions{align-self:flex-end}.btn-new-group{padding:var(--ex-space-2) var(--ex-space-3);font-size:13px}.btn-new-group .material-icon{font-size:var(--ex-font-md)}}@media(max-width:480px){.collection-group-section{margin-bottom:var(--ex-space-6)}.collection-group-name{font-size:var(--ex-font-md)}.collection-group-action-btn{width:28px;height:28px}.collection-group-action-btn .material-icon{font-size:var(--ex-font-md)}.btn-new-group{padding:6px var(--ex-space-2);font-size:var(--ex-font-sm)}}.collection-group-section.drag-over{background:#ffffff1a;border-radius:var(--ex-radius-xl);outline:2px dashed rgba(255,255,255,.4);outline-offset:-4px}.collection-group-section.drag-over .collections-grid{min-height:100px}.collection-drag-overlay{opacity:.9;transform:rotate(3deg);cursor:grabbing}.collection-drag-overlay .collection-card{box-shadow:var(--ex-shadow-2xl)}.collection-card[style*="opacity: 0.5"]{transition:opacity var(--ex-transition-base) ease}.btn-calendar{display:flex;align-items:center;gap:6px;background:#fff3;color:var(--ex-text-inverse);border:1px solid rgba(255,255,255,.3);padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-md);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base);position:relative}.btn-calendar:hover{background:#ffffff4d}.btn-calendar.active{background:#ffffff59;border-color:#ffffff80}.btn-calendar .material-icon{font-size:var(--ex-font-lg)}.calendar-badge{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#ff6b6b;color:var(--ex-text-inverse);border-radius:10px;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold);margin-left:var(--ex-space-1);box-shadow:var(--ex-shadow-xs)}.btn-global-search{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff3;color:var(--ex-text-inverse);border:1px solid rgba(255,255,255,.3);height:40px;padding:0 var(--ex-space-4);border-radius:var(--ex-radius-md);cursor:pointer;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);transition:all var(--ex-transition-base)}.btn-global-search:hover{background:#ffffff4d}.btn-global-search .material-icon{font-size:var(--ex-font-lg)}.global-search-overlay{z-index:1200}.global-search-modal{max-width:700px;width:100%;max-height:80vh;display:flex;flex-direction:column;background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);overflow:hidden}.global-search-header{display:flex;align-items:center;padding:var(--ex-space-4) var(--ex-space-5);border-bottom:1px solid var(--ex-border-light);gap:var(--ex-space-3)}.global-search-input-container{flex:1;display:flex;align-items:center;gap:var(--ex-space-3);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-2) 14px;transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.global-search-input-container:focus-within{border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus);background:var(--ex-bg-primary)}.global-search-input-container .material-icon{color:var(--ex-text-muted);font-size:var(--ex-font-xl)}.global-search-input{flex:1;border:none;background:transparent;font-size:var(--ex-font-md);color:var(--ex-text-primary);outline:none}.global-search-input::placeholder{color:var(--ex-text-muted)}.global-search-clear{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-1);display:flex;align-items:center;justify-content:center;transition:color var(--ex-transition-base)}.global-search-clear:hover{color:var(--ex-text-primary)}.global-search-header .modal-close{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-1);display:flex;align-items:center;justify-content:center;transition:color var(--ex-transition-base);font-size:var(--ex-font-2xl)}.global-search-header .modal-close:hover{color:var(--ex-text-primary)}.global-search-content{flex:1;overflow-y:auto;padding:0;min-height:300px;max-height:calc(80vh - 80px)}.global-search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px var(--ex-space-5);gap:var(--ex-space-4);color:var(--ex-text-tertiary);cursor:progress}.global-search-loading .spinner{width:32px;height:32px;border:3px solid var(--ex-border-light);border-top-color:var(--ex-primary)}.global-search-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px var(--ex-space-5);text-align:center;color:var(--ex-text-tertiary)}.global-search-empty .material-icon{font-size:48px;color:var(--ex-border-default);margin-bottom:var(--ex-space-3)}.global-search-empty p{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.global-search-empty .hint{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.global-search-results{padding:var(--ex-space-2) 0}.global-search-result-item{padding:var(--ex-space-4) var(--ex-space-5);cursor:pointer;border-bottom:1px solid var(--ex-bg-tertiary);transition:background-color var(--ex-transition-fast)}.global-search-result-item:hover{background-color:var(--ex-bg-secondary)}.global-search-result-item:last-child{border-bottom:none}.global-search-result-header{margin-bottom:var(--ex-space-2)}.result-collection-badge{display:inline-flex;align-items:center;gap:6px;padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-sm);color:var(--ex-text-inverse);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium)}.result-collection-badge .material-icon{font-size:var(--ex-font-base)}.global-search-result-note{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.global-search-result-note .material-icon{color:var(--ex-text-tertiary);font-size:var(--ex-font-lg)}.global-search-result-name{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-size:15px}.global-search-result-path{font-size:var(--ex-font-sm);color:var(--ex-text-muted);margin-left:var(--ex-space-1)}.global-search-result-matches{display:flex;flex-direction:column;gap:var(--ex-space-1);margin-left:26px}.global-search-result-match{display:flex;align-items:flex-start;gap:var(--ex-space-2)}.global-search-result-match .match-type-badge{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.global-search-result-match .match-type-badge .material-icon{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.global-search-result-match .match-context{font-size:13px;color:var(--ex-text-tertiary);line-height:1.4;word-break:break-word}@media(max-width:768px){.global-search-modal{max-width:100%;max-height:100%;height:100%;border-radius:0}.global-search-header{padding:var(--ex-space-3) var(--ex-space-4)}.global-search-input-container{padding:var(--ex-space-2) var(--ex-space-3)}.global-search-input{font-size:var(--ex-font-md)}.global-search-result-item{padding:14px var(--ex-space-4)}.btn-global-search{padding:var(--ex-space-2) var(--ex-space-3);font-size:13px}.btn-global-search .material-icon{font-size:var(--ex-font-md)}}@media(max-width:480px){.global-search-header{padding:var(--ex-space-3)}.global-search-result-matches{margin-left:0;margin-top:var(--ex-space-2)}.btn-global-search span{display:none}.btn-global-search{padding:var(--ex-space-2) var(--ex-space-2)}}.collections-page .notification-bell{background:#ffffff26!important;border:1px solid rgba(255,255,255,.2)!important;color:var(--ex-text-inverse)!important}.collections-page .notification-bell .material-icon{color:var(--ex-text-inverse)!important}.collections-page .notification-bell:hover{background:#ffffff40!important;color:var(--ex-text-inverse)!important}.collections-page .notification-bell:hover .material-icon,.collections-page .notification-bell.has-unread,.collections-page .notification-bell.has-unread .material-icon{color:var(--ex-text-inverse)!important}.content-slider.three-panels{width:300%}.content-slider.three-panels .content-panel{width:33.333%}.content-slider.three-panels.show-calendar{transform:translate(-33.333%)}.content-slider.three-panels.show-collaborators{transform:translate(-66.666%)}.content-slider.six-panels{width:600%}.content-slider.six-panels .content-panel{width:16.666%}.content-slider.six-panels.show-calendar{transform:translate(-16.666%)}.content-slider.six-panels.show-collaborators{transform:translate(-33.333%)}.content-slider.six-panels.show-templates{transform:translate(-50%)}.content-slider.six-panels.show-export-templates{transform:translate(-66.666%)}.content-slider.six-panels.show-versions{transform:translate(-83.333%)}.collaborators-panel{padding:var(--ex-space-10);max-width:1400px;margin:0 auto;min-height:calc(100vh - 80px)}.collaborators-layout{display:flex;gap:var(--ex-space-8)}.collaborators-layout.with-invitations .collaborators-main{flex:1;min-width:0}.collaborators-main{flex:1}.collaborators-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ex-space-6)}.collaborators-header h3{margin:0;color:var(--ex-text-primary);font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold)}.collaborators-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px var(--ex-space-5);background:#ffffff0d;border-radius:var(--ex-radius-xl);border:2px dashed var(--ex-border-light)}.collaborators-empty .empty-icon{font-size:64px;color:var(--ex-text-muted);margin-bottom:var(--ex-space-4)}.collaborators-empty h4{margin:0 0 var(--ex-space-3) 0;color:var(--ex-text-primary);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold)}.collaborators-empty p{margin:0 0 var(--ex-space-6) 0;color:var(--ex-text-secondary);max-width:400px;line-height:1.6}.collaborators-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--ex-space-4)}.collaborator-card{display:flex;align-items:center;gap:var(--ex-space-4);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);transition:all var(--ex-transition-base)}.collaborator-card:hover{background:var(--ex-bg-tertiary);border-color:var(--ex-border-default);box-shadow:var(--ex-shadow-md)}.collaborator-avatar{width:48px;height:48px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-lg);flex-shrink:0}.collaborator-info{flex:1;min-width:0}.collaborator-username{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-size:var(--ex-font-md);margin-bottom:2px}.collaborator-since{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.collaborator-menu-btn{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-2);border-radius:var(--ex-radius-md);transition:all var(--ex-transition-base);display:flex;align-items:center;justify-content:center;opacity:0}.collaborator-card:hover .collaborator-menu-btn{opacity:1}.collaborator-menu-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.invitations-sidebar{width:320px;flex-shrink:0}.invitations-header{margin-bottom:var(--ex-space-4)}.invitations-header h4{display:flex;align-items:center;gap:var(--ex-space-2);margin:0;color:var(--ex-text-primary);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold)}.invitations-header .material-icon{color:var(--ex-primary)}.invitation-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--ex-primary);color:var(--ex-text-inverse);border-radius:var(--ex-radius-full);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold);margin-left:var(--ex-space-2)}.invitations-stack{display:flex;flex-direction:column;gap:var(--ex-space-3)}.invitation-card{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);cursor:pointer;transition:all var(--ex-transition-base)}.invitation-card:hover{background:var(--ex-bg-tertiary);border-color:var(--ex-primary);box-shadow:var(--ex-shadow-md)}.invitation-avatar{width:40px;height:40px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-base);flex-shrink:0}.invitation-content{flex:1;min-width:0}.invitation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.invitation-sender{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.invitation-time{font-size:var(--ex-font-xs);color:var(--ex-text-muted)}.invitation-message-preview{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invitation-arrow{color:var(--ex-text-muted);display:flex;align-items:center}.invite-user-modal{max-width:500px}.invite-description{margin:0 0 var(--ex-space-5) 0;padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);color:var(--ex-text-secondary);font-size:var(--ex-font-base);line-height:1.6}.user-search-group,.user-search-input-wrapper{position:relative}.search-loading{position:absolute;right:var(--ex-space-3);top:50%;transform:translateY(-50%)}.search-loading .spinner.small{width:20px;height:20px;border-width:2px}.selected-user-chip{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-primary);color:var(--ex-text-inverse);border-radius:var(--ex-radius-lg);width:fit-content}.chip-avatar{width:24px;height:24px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold)}.chip-username{font-weight:var(--ex-font-weight-medium)}.chip-remove{background:transparent;border:none;color:var(--ex-text-inverse);cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity var(--ex-transition-base)}.chip-remove:hover{opacity:1}.chip-remove .material-icon{font-size:var(--ex-font-base)}.search-results{position:absolute;top:100%;left:0;right:0;margin-top:var(--ex-space-2);background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-xl);z-index:100;max-height:240px;overflow-y:auto}.search-result-item{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4);width:100%;background:transparent;border:none;cursor:pointer;text-align:left;transition:background-color var(--ex-transition-base)}.search-result-item:hover{background:var(--ex-bg-secondary)}.result-avatar{width:36px;height:36px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-sm);flex-shrink:0}.result-info{flex:1;min-width:0}.result-username{font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.result-email{font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.search-no-results{padding:var(--ex-space-4);text-align:center;color:var(--ex-text-muted);font-size:var(--ex-font-base)}.char-count{text-align:right;font-size:var(--ex-font-xs);color:var(--ex-text-muted);margin-top:var(--ex-space-1)}.invitation-detail-modal{max-width:480px}.invitation-sender-section{display:flex;align-items:center;gap:var(--ex-space-4);margin-bottom:var(--ex-space-6)}.sender-avatar.large{width:64px;height:64px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-2xl);flex-shrink:0}.sender-details{flex:1}.sender-username{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-size:var(--ex-font-xl);margin-bottom:2px}.sender-date{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.invitation-message-section{margin-bottom:var(--ex-space-6)}.message-label{font-size:var(--ex-font-sm);color:var(--ex-text-muted);margin-bottom:var(--ex-space-2)}.message-content{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);color:var(--ex-text-primary);font-size:var(--ex-font-md);line-height:1.6;font-style:italic}.message-content.no-message{color:var(--ex-text-muted);font-style:italic}.invitation-info-note{padding:var(--ex-space-4);background:var(--ex-info-light);border:1px solid var(--ex-info-border);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-sm);line-height:1.6}.invitation-info-note strong{display:block;color:var(--ex-info);margin-bottom:var(--ex-space-2)}.invitation-info-note p{margin:0;color:var(--ex-text-secondary)}.invitation-actions{gap:var(--ex-space-4)}.group-invitation-card .invitation-sender{display:flex;align-items:center;gap:var(--ex-space-1)}.group-invitation-card .group-icon{font-size:16px;color:var(--ex-primary)}.group-invitation-detail-modal .modal-header h2{display:flex;align-items:center;gap:var(--ex-space-2)}.group-invitation-detail-modal .modal-header h2 .material-icon{color:var(--ex-primary)}.group-info-section{margin-bottom:var(--ex-space-6);padding:var(--ex-space-5);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-xl);text-align:center}.group-name-large{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-3);font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-bold);color:var(--ex-text-primary);margin-bottom:var(--ex-space-2)}.group-icon-large{font-size:32px;color:var(--ex-primary)}.group-purpose-text{font-size:var(--ex-font-base);color:var(--ex-text-secondary);line-height:1.5}@media(max-width:1024px){.collaborators-layout{flex-direction:column}.collaborators-layout.with-invitations .collaborators-main{flex:none}.invitations-sidebar{width:100%;order:-1;margin-bottom:var(--ex-space-6)}.invitations-stack{flex-direction:row;flex-wrap:wrap}.invitation-card{flex:1;min-width:280px;max-width:400px}}@media(max-width:768px){.collaborators-panel{padding:var(--ex-space-5)}.collaborators-header{flex-direction:column;align-items:flex-start;gap:var(--ex-space-4)}.collaborators-grid{grid-template-columns:1fr}.invitations-stack{flex-direction:column}.invitation-card{max-width:none}}@media(max-width:480px){.collaborators-panel{padding:var(--ex-space-4)}.collaborators-empty{padding:40px var(--ex-space-4)}.collaborators-empty .empty-icon{font-size:48px}.collaborator-card{padding:var(--ex-space-3)}.collaborator-avatar{width:40px;height:40px;font-size:var(--ex-font-base)}.invite-user-modal,.invitation-detail-modal{max-height:100vh;height:100%;max-width:100%;border-radius:0}}.collaborators-sub-tabs{margin-bottom:var(--ex-space-6);border-bottom:1px solid var(--ex-border-light);padding-bottom:var(--ex-space-4)}.collaborator-groups-panel{min-height:400px}.groups-layout{display:flex;gap:var(--ex-space-6);min-height:500px}.groups-sidebar{width:280px;flex-shrink:0;display:flex;flex-direction:column}.groups-sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ex-space-4)}.groups-sidebar-header h4{margin:0;color:var(--ex-text-primary);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold)}.groups-list{display:flex;flex-direction:column;gap:var(--ex-space-2);overflow-y:auto;flex:1}.group-card{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);cursor:pointer;transition:all var(--ex-transition-base)}.group-card:hover{background:var(--ex-bg-tertiary);border-color:var(--ex-border-default)}.group-card.selected{background:var(--ex-primary-light);border-color:var(--ex-primary)}.group-card-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-md);color:var(--ex-text-secondary)}.group-card.selected .group-card-icon{background:var(--ex-primary);color:var(--ex-text-inverse)}.group-card-content{flex:1;min-width:0}.group-card-name{font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-size:var(--ex-font-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-card-meta{font-size:var(--ex-font-xs);color:var(--ex-text-muted)}.group-card-menu-btn{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-1);border-radius:var(--ex-radius-sm);opacity:0;transition:all var(--ex-transition-base)}.group-card:hover .group-card-menu-btn{opacity:1}.group-card-menu-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.groups-empty,.groups-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--ex-space-10);color:var(--ex-text-muted)}.groups-empty .material-icon,.groups-detail-empty .material-icon{font-size:48px;margin-bottom:var(--ex-space-3);opacity:.5}.groups-empty p,.groups-detail-empty p{margin:0 0 var(--ex-space-2) 0;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.groups-empty span,.groups-detail-empty span{font-size:var(--ex-font-sm)}.groups-loading{display:flex;align-items:center;justify-content:center;padding:var(--ex-space-10)}.groups-error{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-6);text-align:center;color:var(--ex-text-muted)}.groups-detail{flex:1;min-width:0;background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);overflow:hidden}.groups-detail-empty{height:100%;min-height:400px;background:transparent;border:2px dashed var(--ex-border-light);border-radius:var(--ex-radius-xl)}.group-detail-panel{padding:var(--ex-space-6);height:100%;display:flex;flex-direction:column}.group-detail-header{margin-bottom:var(--ex-space-6);padding-bottom:var(--ex-space-4);border-bottom:1px solid var(--ex-border-light)}.group-detail-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--ex-space-2)}.group-detail-title-row h3{margin:0;color:var(--ex-text-primary);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-semibold)}.group-detail-actions{display:flex;gap:var(--ex-space-1)}.group-detail-purpose{margin:0;color:var(--ex-text-secondary);font-size:var(--ex-font-base);line-height:1.5}.group-detail-members{flex:1;display:flex;flex-direction:column}.group-members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ex-space-4)}.group-members-header h4{margin:0;color:var(--ex-text-primary);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium)}.add-member-dropdown-wrapper{position:relative}.add-member-dropdown{position:absolute;top:100%;right:0;margin-top:var(--ex-space-2);min-width:200px;max-height:240px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-xl);z-index:100}.add-member-item{display:flex;align-items:center;gap:var(--ex-space-3);width:100%;padding:var(--ex-space-3) var(--ex-space-4);background:transparent;border:none;cursor:pointer;text-align:left;color:var(--ex-text-primary);font-size:var(--ex-font-base);transition:background-color var(--ex-transition-base)}.add-member-item:hover{background:var(--ex-bg-secondary)}.member-avatar{width:36px;height:36px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-sm);flex-shrink:0}.member-avatar.small{width:28px;height:28px;font-size:var(--ex-font-xs)}.group-members-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--ex-space-10);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-lg);color:var(--ex-text-muted)}.group-members-empty .material-icon{font-size:40px;margin-bottom:var(--ex-space-2);opacity:.5}.group-members-empty p{margin:0 0 var(--ex-space-1) 0;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.group-members-empty span{font-size:var(--ex-font-sm)}.group-members-list{display:flex;flex-direction:column;gap:var(--ex-space-2)}.group-member-item{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-lg);transition:background-color var(--ex-transition-base)}.group-member-item:hover{background:var(--ex-bg-hover)}.member-info{flex:1;min-width:0}.member-username{font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-size:var(--ex-font-base)}.member-remove-btn{background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer;padding:var(--ex-space-1);border-radius:var(--ex-radius-sm);opacity:0;transition:all var(--ex-transition-base)}.group-member-item:hover .member-remove-btn{opacity:1}.member-remove-btn:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.group-card-name{display:flex;align-items:center;gap:var(--ex-space-1)}.owner-badge{display:inline-flex;align-items:center;color:var(--ex-warning)}.owner-badge .material-icon{font-size:14px}.pending-badge{margin-left:var(--ex-space-2);padding:1px var(--ex-space-2);background:var(--ex-warning-light);color:var(--ex-warning);border-radius:var(--ex-radius-full);font-size:var(--ex-font-xs)}.owner-indicator{display:inline-flex;align-items:center;gap:var(--ex-space-1);margin-left:var(--ex-space-2);padding:2px var(--ex-space-2);background:var(--ex-warning-light);color:var(--ex-warning);border-radius:var(--ex-radius-full);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium)}.owner-indicator .material-icon{font-size:12px}.group-members-divider{margin-top:var(--ex-space-6);padding-top:var(--ex-space-4);border-top:1px dashed var(--ex-border-light)}.group-members-divider h5{margin:0 0 var(--ex-space-3) 0;color:var(--ex-text-muted);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium)}.group-members-list.pending{opacity:.8}.group-member-item.pending{background:var(--ex-bg-tertiary);border-style:dashed}.member-status{font-size:var(--ex-font-xs);color:var(--ex-text-muted);font-style:italic}.member-role-badge{display:inline-flex;align-items:center;gap:2px;margin-left:var(--ex-space-2);padding:1px var(--ex-space-2);border-radius:var(--ex-radius-full);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);vertical-align:middle}.member-role-badge.owner{background:var(--ex-warning-light);color:var(--ex-warning)}.member-role-badge .material-icon{font-size:10px}.group-member-item.owner{background:rgba(var(--ex-warning-rgb, 234, 179, 8),.05);border-color:rgba(var(--ex-warning-rgb, 234, 179, 8),.2)}.collaborator-group-modal{max-width:480px}@media(max-width:768px){.groups-layout{flex-direction:column}.groups-sidebar{width:100%}.groups-list{flex-direction:row;flex-wrap:wrap;gap:var(--ex-space-3)}.group-card{flex:1;min-width:200px}.groups-detail{min-height:400px}}.collaborator-card.clickable{cursor:pointer}.collaborator-card.clickable:focus{outline:2px solid var(--ex-primary);outline-offset:2px}.collaborator-info-panel{display:flex;flex-direction:column;height:100%;min-height:500px}.info-panel-header{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-4);border-bottom:1px solid var(--ex-border-light)}.info-panel-header h3{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);flex:1}.info-panel-header .back-button{color:var(--ex-text-secondary)}.info-panel-header .header-spacer{width:32px}.info-panel-user{display:flex;align-items:center;gap:var(--ex-space-4);padding:var(--ex-space-6);border-bottom:1px solid var(--ex-border-light)}.info-panel-avatar{width:64px;height:64px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-xl);flex-shrink:0}.info-panel-user-details{flex:1;min-width:0}.info-panel-username{font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin-bottom:var(--ex-space-1)}.info-panel-since{display:flex;align-items:center;gap:var(--ex-space-1);font-size:var(--ex-font-sm);color:var(--ex-text-muted)}.info-panel-since .material-icon{font-size:14px}.info-panel-user .remove-button{color:var(--ex-text-muted)}.info-panel-user .remove-button:hover{color:var(--ex-danger)}.info-panel-messaging{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.messaging-header{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-4) var(--ex-space-6);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);border-bottom:1px solid var(--ex-border-light)}.messaging-header .material-icon{color:var(--ex-primary)}.messaging-content{flex:1;overflow-y:auto;min-height:0;max-height:400px}.message-thread{padding:var(--ex-space-4);display:flex;flex-direction:column;min-height:100%}.message-thread-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-10);color:var(--ex-text-muted);text-align:center;height:100%}.message-thread-empty .empty-icon{font-size:48px;opacity:.5;margin-bottom:var(--ex-space-3)}.message-thread-empty p{margin:0;font-size:var(--ex-font-base)}.message-load-more{display:flex;justify-content:center;padding:var(--ex-space-4)}.load-more-btn{background:transparent;border:1px solid var(--ex-border-default);color:var(--ex-text-secondary);padding:var(--ex-space-2) var(--ex-space-4);border-radius:var(--ex-radius-full);font-size:var(--ex-font-sm);cursor:pointer;transition:all var(--ex-transition-base)}.load-more-btn:hover:not(:disabled){background:var(--ex-bg-secondary);color:var(--ex-text-primary)}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.message-list{display:flex;flex-direction:column;gap:var(--ex-space-2)}.message-date-separator{display:flex;align-items:center;justify-content:center;padding:var(--ex-space-4) 0}.message-date-separator span{background:var(--ex-bg-secondary);color:var(--ex-text-muted);font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-3);border-radius:var(--ex-radius-full)}.message-missed-section{background:color-mix(in srgb,var(--ex-primary) 6%,transparent);border-radius:var(--ex-radius-lg);margin:var(--ex-space-2) calc(-1 * var(--ex-space-3));padding:0 var(--ex-space-3)}.message-missed-section .message-missed-header{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-3) 0}.message-missed-section .message-missed-header:before,.message-missed-section .message-missed-header:after{content:"";flex:1;height:1px;background:var(--ex-primary);opacity:.3}.message-missed-section .message-missed-header span{color:var(--ex-primary);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.message-missed-section .message-missed-content{display:flex;flex-direction:column;gap:var(--ex-space-3);padding-bottom:var(--ex-space-3)}.message-item{display:flex;gap:var(--ex-space-2);max-width:85%}.message-item.own{flex-direction:row-reverse;margin-left:auto}.message-item.other{margin-right:auto}.message-avatar-container{flex-shrink:0;width:32px}.message-avatar{width:32px;height:32px;border-radius:var(--ex-radius-full);display:flex;align-items:center;justify-content:center;color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-bold);font-size:var(--ex-font-xs)}.message-avatar-spacer{width:32px;height:32px}.message-content-wrapper{display:flex;flex-direction:column;min-width:0}.message-item.own .message-content-wrapper{align-items:flex-end}.message-sender{font-size:var(--ex-font-xs);color:var(--ex-text-muted);margin-bottom:var(--ex-space-1);padding-left:var(--ex-space-2)}.message-bubble{padding:var(--ex-space-3) var(--ex-space-4);border-radius:var(--ex-radius-xl);word-break:break-word}.message-item.other .message-bubble{background:var(--ex-bg-secondary);color:var(--ex-text-primary);border-bottom-left-radius:var(--ex-radius-sm)}.message-item.own .message-bubble{background:var(--ex-primary);color:var(--ex-text-inverse);border-bottom-right-radius:var(--ex-radius-sm)}.message-text{font-size:var(--ex-font-base);line-height:1.4;white-space:pre-wrap}.message-meta{display:flex;align-items:center;gap:var(--ex-space-2);margin-top:var(--ex-space-1);padding:0 var(--ex-space-2)}.message-time{font-size:var(--ex-font-xs);color:var(--ex-text-muted)}.message-edited{font-size:var(--ex-font-xs);color:var(--ex-text-muted);font-style:italic}.message-composer{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-4) var(--ex-space-6);border-top:1px solid var(--ex-border-light);background:var(--ex-bg-primary)}.composer-input-wrapper{flex:1}.composer-input{width:100%;padding:var(--ex-space-3) var(--ex-space-4);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-xl);background:var(--ex-bg-secondary);color:var(--ex-text-primary);font-size:var(--ex-font-base);font-family:inherit;line-height:1.4;resize:none;max-height:150px;overflow-y:auto;transition:border-color var(--ex-transition-base)}.composer-input:focus{outline:none;border-color:var(--ex-primary)}.composer-input::placeholder{color:var(--ex-text-muted)}.composer-input:disabled{opacity:.6;cursor:not-allowed}.composer-send-btn{width:40px;height:40px;border-radius:var(--ex-radius-full);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--ex-transition-base)}.composer-send-btn:hover:not(:disabled){background:var(--ex-primary-hover);transform:scale(1.05)}.composer-send-btn:disabled{background:var(--ex-bg-tertiary);color:var(--ex-text-muted);cursor:not-allowed}.composer-send-btn .material-icon{font-size:20px}.send-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.group-messaging{margin-top:var(--ex-space-6);border-top:1px solid var(--ex-border-light);display:flex;flex-direction:column;flex:1;min-height:300px}.group-messaging-header{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-4) 0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.group-messaging-header .material-icon{color:var(--ex-primary)}.group-messaging-content{flex:1;overflow-y:auto;min-height:0;max-height:400px;background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);margin-bottom:var(--ex-space-3)}.group-messaging .message-composer{align-items:center;padding:var(--ex-space-3);border-top:none;background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);margin-top:0}.group-messaging .composer-input{background:var(--ex-bg-primary);border-color:var(--ex-border-light)}.group-messaging .composer-input:focus{border-color:var(--ex-primary);background:var(--ex-bg-primary)}.group-messaging .composer-send-btn{width:36px;height:36px}.group-messaging .composer-send-btn .material-icon{font-size:18px}@media(max-width:768px){.info-panel-user{padding:var(--ex-space-4)}.info-panel-avatar{width:56px;height:56px;font-size:var(--ex-font-lg)}.message-composer{padding:var(--ex-space-3) var(--ex-space-4)}.message-item{max-width:90%}}.collection-layout{height:100vh;width:100vw}.express-data-settings-panel{display:flex;flex-direction:column;height:100%;background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);overflow:hidden}.express-data-settings-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-4) var(--ex-space-5);background:var(--ex-bg-primary);border-bottom:1px solid var(--ex-border-default)}.express-data-settings-header h3{margin:0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.express-data-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);cursor:pointer;transition:background var(--ex-transition-base),color var(--ex-transition-base)}.express-data-close-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.express-data-settings-content{flex:1;overflow-y:auto;padding:var(--ex-space-5)}.express-data-description{margin:0 0 20px;padding:var(--ex-space-3);background:var(--ex-info-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);color:var(--ex-text-secondary);line-height:var(--ex-line-height-normal)}.express-data-toggle-section{margin-bottom:var(--ex-space-5)}.express-data-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-2);cursor:pointer;padding:var(--ex-space-2) 0}.ex-label.express-data-toggle{display:flex;flex-direction:row;align-items:start;justify-content:start;gap:var(--ex-space-4)}.express-data-toggle .toggle-label{font-size:var(--ex-font-base);color:var(--ex-text-primary)}.express-data-options-section{margin-bottom:var(--ex-space-6);padding:var(--ex-space-4);background:var(--ex-bg-primary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-default)}.express-data-options-section h4{margin:0 0 var(--ex-space-3);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.express-data-table-title{margin-top:var(--ex-space-3)}.express-data-table-title label{display:block;margin-bottom:var(--ex-space-2);font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.express-data-table-title-input{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary)}.express-data-table-title-input:focus{outline:none;border-color:var(--ex-primary);box-shadow:var(--ex-shadow-focus)}.express-data-fields-section{padding:var(--ex-space-4);background:var(--ex-bg-primary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-default)}.express-data-fields-section h4{margin:0 0 16px;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.express-data-fields-list{display:flex;flex-direction:column;gap:var(--ex-space-3);margin-bottom:var(--ex-space-4)}.express-data-no-fields{padding:var(--ex-space-6);text-align:center;color:var(--ex-text-secondary);font-size:var(--ex-font-base)}.express-data-field-item{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);overflow:hidden}.express-data-field-item.expanded{border-color:var(--ex-primary)}.express-data-field-header{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-primary)}.express-data-field-controls{display:flex;flex-direction:column;gap:2px}.express-data-move-btn{display:flex;align-items:center;justify-content:center;width:24px;height:18px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-muted);cursor:pointer;font-size:var(--ex-font-md)}.express-data-move-btn:hover:not(:disabled){background:var(--ex-bg-hover);color:var(--ex-text-secondary)}.express-data-move-btn:disabled{opacity:.3;cursor:not-allowed}.express-data-move-btn .material-icons{font-size:var(--ex-font-md)}.express-data-field-info{flex:1;display:flex;gap:var(--ex-space-3);align-items:center}.express-data-field-name-input{flex:1;min-width:120px;padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);background:var(--ex-bg-primary)}.express-data-field-name-input:focus{outline:none;border-color:var(--ex-primary)}.express-data-field-type-select{width:140px;padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-sm);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-field-type-select:focus{outline:none;border-color:var(--ex-primary)}.express-data-field-actions{display:flex;gap:var(--ex-space-1)}.express-data-expand-btn,.express-data-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-muted);cursor:pointer}.express-data-expand-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-secondary)}.express-data-delete-btn:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.express-data-field-config{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-top:1px solid var(--ex-border-default)}.express-data-field-type-info{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-4);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-info-light);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.express-data-field-type-info .material-icons{font-size:var(--ex-font-lg);color:var(--ex-primary)}.express-data-config-options{display:flex;flex-direction:column;gap:var(--ex-space-4)}.express-data-config-item{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-config-item>label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.express-data-config-item.express-data-config-checkbox{flex-direction:row;align-items:center}.express-data-config-item.express-data-config-checkbox input[type=checkbox]{margin-right:var(--ex-space-2)}.express-data-config-input,.express-data-config-select,.express-data-config-textarea{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary)}.express-data-config-input:focus,.express-data-config-select:focus,.express-data-config-textarea:focus{outline:none;border-color:var(--ex-primary)}.express-data-config-textarea{resize:vertical;min-height:var(--ex-space-16)}.express-data-no-config{padding:var(--ex-space-3);text-align:center;color:var(--ex-text-muted);font-size:var(--ex-font-sm);font-style:italic}.express-data-add-field-btn{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-2);width:100%;padding:var(--ex-space-3);background:transparent;border:2px dashed var(--ex-border-default);border-radius:var(--ex-radius-md);color:var(--ex-text-secondary);font-size:var(--ex-font-base);cursor:pointer;transition:border-color var(--ex-transition-base),color var(--ex-transition-base)}.express-data-add-field-btn:hover{border-color:var(--ex-primary);color:var(--ex-primary)}.express-data-settings-footer{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding:var(--ex-space-4) var(--ex-space-5);background:var(--ex-bg-primary);border-top:1px solid var(--ex-border-default)}.express-data-cancel-btn,.express-data-save-btn{padding:var(--ex-space-2) var(--ex-space-5);border-radius:var(--ex-radius-md);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-base),box-shadow var(--ex-transition-base)}.express-data-cancel-btn{background:transparent;border:1px solid var(--ex-border-default);color:var(--ex-text-secondary)}.express-data-cancel-btn:hover{background:var(--ex-bg-hover)}.express-data-save-btn{background:var(--ex-primary);border:none;color:var(--ex-text-inverse)}.express-data-save-btn:hover{background:var(--ex-primary-hover);box-shadow:var(--ex-shadow-md)}.express-data-dropdown-source{display:flex;flex-direction:column;gap:var(--ex-space-3)}.express-data-dropdown-source-row{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-dropdown-source-row label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.express-data-dropdown-source-select{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-dropdown-manual{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-dropdown-options-input{display:flex;gap:var(--ex-space-2)}.express-data-dropdown-options-input input{flex:1;padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base)}.express-data-dropdown-options-input button{width:36px;display:flex;align-items:center;justify-content:center;background:var(--ex-primary);border:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-inverse);font-size:var(--ex-font-lg);cursor:pointer}.express-data-dropdown-options-list{display:flex;flex-wrap:wrap;gap:var(--ex-space-2)}.express-data-dropdown-option-item{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-sm)}.express-data-dropdown-option-item button{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:transparent;border:none;color:var(--ex-text-muted);cursor:pointer}.express-data-dropdown-option-item button:hover{color:var(--ex-danger)}.express-data-dropdown-source-selectors{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-dropdown-source-selectors select{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-group-by{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-group-by label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.express-data-group-by-select{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-group-by-select:focus{outline:none;border-color:var(--ex-primary)}.express-data-group-by-hint{margin:var(--ex-space-1) 0 0;font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}.express-data-highlight-by{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-highlight-by label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.express-data-highlight-by-select{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-highlight-by-select:focus{outline:none;border-color:var(--ex-primary)}.express-data-highlight-by-hint{margin:var(--ex-space-1) 0 0;font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}.express-data-completion{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-completion label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.express-data-completion-select{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer}.express-data-completion-select:focus{outline:none;border-color:var(--ex-primary)}.express-data-completion-condition{display:flex;flex-direction:column;gap:var(--ex-space-1);margin-top:var(--ex-space-1)}.express-data-completion-condition-input{padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary)}.express-data-completion-condition-input:focus{outline:none;border-color:var(--ex-primary)}.express-data-completion-condition-input::placeholder{color:var(--ex-text-muted)}.express-data-completion-hint{margin:var(--ex-space-1) 0 0;font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}.express-data-fields-container{width:100%;display:flex;justify-content:center;padding:var(--ex-space-4) 0;background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light)}.express-data-fields-grid{width:100%;max-width:650px;display:flex;flex-wrap:wrap;gap:var(--ex-space-3);padding:0 var(--ex-space-10)}.express-data-field{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-field-half{flex:1 1 calc(50% - 6px);min-width:250px}.express-data-field-full{flex:1 1 100%}.express-data-field-label{position:relative;top:1px;left:1px;z-index:1;background-color:var(--ex-bg-tertiary);padding:.25em .5em;margin-bottom:-2em;width:75%;border-radius:.5em 0;font-size:.8em;line-height:1em;font-weight:var(--ex-font-weight-semibold);text-transform:uppercase;color:var(--ex-text-secondary)}.express-data-field-label .material-icons{font-size:var(--ex-font-base);vertical-align:middle;margin-right:4px}.express-data-unified-label{position:absolute;top:0;left:var(--ex-space-3);transform:translateY(-50%);z-index:2;display:flex;align-items:center;gap:var(--ex-space-1);padding:0 var(--ex-space-1);background-color:var(--ex-bg-primary);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);text-transform:uppercase;color:var(--ex-text-secondary);white-space:nowrap;pointer-events:none}.express-data-unified-label .material-icons{font-size:.9em}.express-data-unified-wrapper{position:relative;margin-top:.5em}.express-data-field-content{position:relative}.express-data-field-error{padding:.5em 1em;background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-sm);color:var(--ex-danger)}.express-data-input{width:100%;padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);font-size:.9em;line-height:1.75em;color:var(--ex-text-primary);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;box-sizing:border-box}.express-data-input:focus{outline:none;border-color:var(--ex-primary);box-shadow:0 0 0 3px rgba(var(--ex-primary-rgb),.15)}.express-data-input:disabled,.express-data-input[readonly]{background-color:var(--ex-bg-secondary);cursor:not-allowed}.express-data-textarea{resize:vertical;min-height:5em}.express-data-select{width:100%;padding:.5em 2.5em .5em 1em;margin-top:1px;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);font-size:.9em;line-height:1.75em;color:var(--ex-text-primary);background:var(--ex-bg-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234a5568' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;box-sizing:border-box}.express-data-select:focus{outline:none;border-color:var(--ex-primary);box-shadow:0 0 0 3px rgba(var(--ex-primary-rgb),.15)}.express-data-select:hover{border-color:var(--border-primary, #a0a0a0)}.express-data-number-wrapper{display:flex;align-items:stretch;position:relative;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.express-data-number-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px rgba(var(--ex-primary-rgb),.15)}.express-data-number-prefix,.express-data-number-suffix{display:flex;align-items:center;padding:.5em;color:var(--ex-text-tertiary);font-size:.9em;font-weight:var(--ex-font-weight-medium);background:var(--ex-bg-tertiary);white-space:nowrap;-webkit-user-select:none;user-select:none}.express-data-number-prefix{border-right:1px solid var(--ex-border-light);border-radius:.5em 0 0 .5em}.express-data-number-suffix{border-left:1px solid var(--ex-border-light);border-radius:0 .5em .5em 0}.express-data-number-wrapper .express-data-input{flex:1;border:none!important;border-radius:0!important;background:none!important;text-align:right;min-width:0;font-variant-numeric:tabular-nums}.express-data-number-wrapper .express-data-input:focus{box-shadow:none!important}.express-data-number-arrows{display:flex;flex-direction:column;border-left:1px solid var(--ex-border-light);background:var(--ex-bg-secondary);border-radius:0 .5em .5em 0}.express-data-number-arrow{display:flex;align-items:center;justify-content:center;flex:1;padding:0 .5em;background:none;border:none;color:var(--ex-text-tertiary);font-size:8px;cursor:pointer;transition:background-color var(--ex-transition-fast),color var(--ex-transition-fast);min-width:24px}.express-data-number-arrow:hover{background-color:var(--ex-bg-active);color:var(--ex-text-primary)}.express-data-number-arrow:active{background-color:var(--ex-border-default)}.express-data-number-arrow:first-child{border-bottom:1px solid var(--ex-border-light);border-radius:0 .5em 0 0}.express-data-number-arrow:last-child{border-radius:0 0 .5em}.express-data-date-range-wrapper{display:flex;align-items:flex-end;gap:var(--ex-space-3);padding:.75em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.express-data-date-range-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px #667eea1a}.express-data-date-range-field{flex:1;display:flex;flex-direction:column;gap:var(--ex-space-1)}.express-data-date-range-label{font-size:.7em;font-weight:var(--ex-font-weight-semibold);text-transform:uppercase;color:var(--ex-text-tertiary);letter-spacing:.5px;margin-top:1.5em}.express-data-date-range-field .express-data-input{padding:.6em .75em;border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:.95em}.express-data-date-range-field .express-data-input:focus{border-color:var(--ex-primary);box-shadow:0 0 0 2px #667eea1a}.express-data-date-range-separator{display:flex;align-items:center;padding-bottom:.5em;font-size:.85em;color:var(--ex-text-tertiary);font-weight:var(--ex-font-weight-medium)}.express-data-checkbox-wrapper{display:flex;align-items:center;padding:.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);min-height:2.5em}.express-data-checkbox{width:20px;height:20px;margin:0;cursor:pointer;accent-color:var(--ex-primary)}.express-data-checkbox:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.express-data-checkbox-floating-wrapper{display:flex;flex-direction:column}.express-data-checkbox-floating-container{position:relative;display:flex;align-items:center;padding:var(--ex-space-3);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);min-height:42px}.express-data-checkbox-floating-container .ex-checkbox-container{padding:0}.express-data-checkbox-floating-container .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none}.express-data-tags-wrapper,.express-data-people-wrapper{position:relative}.express-data-tags-display,.express-data-people-display{display:flex;flex-wrap:wrap;gap:var(--ex-space-2);padding:.5em .75em;min-height:2.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);align-items:center}.express-data-tag-chip,.express-data-person-chip{display:inline-flex;align-items:center;gap:var(--ex-space-1);background-color:var(--ex-primary);color:#fff;padding:4px 8px;border-radius:var(--ex-radius-sm);font-size:.8rem;font-weight:700;white-space:nowrap;max-width:150px}.express-data-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);max-height:200px;overflow-y:auto;z-index:var(--ex-z-popover)}.express-data-autocomplete-item{padding:8px 12px;cursor:pointer;font-size:var(--ex-font-base);color:var(--ex-text-primary);transition:background var(--ex-transition-fast)}.express-data-autocomplete-item:hover,.express-data-autocomplete-item.selected{background:var(--ex-bg-tertiary)}.express-data-autocomplete-item.selected{background:var(--ex-info-light);color:var(--ex-primary);font-weight:var(--ex-font-weight-medium)}.express-data-notes-wrapper{position:relative;display:flex;align-items:stretch;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary)}.express-data-notes-wrapper .ex-btn{margin:auto 4px;background:var(--ex-bg-secondary)}.express-data-notes-wrapper .ex-btn:hover{background:var(--ex-bg-tertiary)}.express-data-notes-chips{flex:1;display:flex;flex-wrap:wrap;gap:var(--ex-space-2);padding:.5em .75em;min-height:2.5em;align-items:center}.express-data-note-chip{display:inline-flex;align-items:center;gap:var(--ex-space-1);background-color:var(--ex-accent);color:#fff;padding:4px 8px;border-radius:var(--ex-radius-sm);font-size:.8rem;font-weight:700;white-space:nowrap;max-width:150px}.express-data-note-chip-text{overflow:hidden;text-overflow:ellipsis}.express-data-note-chip-remove{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;font-size:var(--ex-font-base);font-weight:700;cursor:pointer;padding:0;margin-left:2px;width:16px;height:16px;border-radius:var(--ex-radius-full);transition:background-color var(--ex-transition-fast)}.express-data-note-chip-remove:hover{background-color:#ffffff4d}.express-data-notes-add-button{display:flex;align-items:center;justify-content:center;width:40px;padding:0;background:var(--ex-bg-secondary);border:none;border-left:1px solid var(--ex-border-light);border-radius:0 .5em .5em 0;color:var(--ex-text-tertiary);font-size:var(--ex-font-lg);font-weight:300;cursor:pointer;flex-shrink:0;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-notes-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-notes-popup{position:absolute;top:100%;left:0;right:0;margin-top:4px;z-index:var(--ex-z-dropdown)}.express-data-notes-popup-input{width:100%;padding:8px 12px;border:1px solid var(--ex-accent);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);background:var(--ex-bg-primary);box-shadow:var(--ex-shadow-lg);box-sizing:border-box}.express-data-notes-popup-input:focus{outline:none;box-shadow:0 4px 12px #00000026,0 0 0 2px #9932cc4d}.express-data-notes-popup .express-data-autocomplete{position:relative;top:0;margin-top:0;border-top:none;border-top-left-radius:0;border-top-right-radius:0}.express-data-notes-floating{margin-top:.5em}.express-data-notes-floating .express-data-notes-wrapper{position:relative;overflow:visible}.express-data-notes-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none;z-index:1}.express-data-multiselect-wrapper{display:flex;align-items:stretch;margin-top:1px;min-height:2.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base);position:relative}.express-data-multiselect-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px #667eea1a}.express-data-multiselect-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--ex-space-2);padding:.5em .75em}.express-data-multiselect-chip{display:inline-flex;align-items:center;gap:var(--ex-space-1);background-color:var(--ex-primary);color:#fff;padding:4px 8px;border-radius:var(--ex-radius-sm);font-size:.8rem;font-weight:700;white-space:nowrap;max-width:150px}.express-data-multiselect-chip-text{overflow:hidden;text-overflow:ellipsis}.express-data-multiselect-chip-remove{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;font-size:var(--ex-font-base);font-weight:700;cursor:pointer;padding:0;margin-left:2px;width:16px;height:16px;border-radius:var(--ex-radius-full);transition:background-color var(--ex-transition-fast)}.express-data-multiselect-chip-remove:hover{background-color:#ffffff4d}.express-data-multiselect-dropdown{flex:1;min-width:100px;padding:.25em 2em .25em .5em;border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:.85em;background-color:var(--ex-bg-secondary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234a5568' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none}.express-data-multiselect-add-button{display:flex;align-items:center;justify-content:center;width:40px;padding:0;background:var(--ex-bg-secondary);border:none;border-left:1px solid var(--ex-border-light);border-radius:0 .5em .5em 0;color:var(--ex-text-tertiary);font-size:var(--ex-font-lg);font-weight:300;cursor:pointer;flex-shrink:0;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-multiselect-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-multiselect-popup{position:absolute;top:100%;left:0;right:0;z-index:var(--ex-z-dropdown);max-height:200px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);margin-top:4px}.express-data-multiselect-popup-item{padding:10px 12px;font-size:var(--ex-font-base);color:var(--ex-text-primary);cursor:pointer;transition:background var(--ex-transition-fast)}.express-data-multiselect-popup-item:hover{background:var(--ex-bg-tertiary)}.express-data-multiselect-popup-item:first-child{border-radius:.5em .5em 0 0}.express-data-multiselect-popup-item:last-child{border-radius:0 0 .5em .5em}.express-data-dropdown-wrapper{display:flex;align-items:stretch;margin-top:1px;min-height:2.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base);position:relative}.express-data-dropdown-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px #667eea1a}.express-data-dropdown-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--ex-space-2);padding:.5em .75em}.express-data-dropdown-chip{display:inline-flex;align-items:center;height:100%;width:100%;gap:var(--ex-space-1);padding:4px 8px;border-radius:var(--ex-radius-sm);font-weight:700;white-space:nowrap;max-width:150px}.express-data-dropdown-chip-text{overflow:hidden;text-overflow:ellipsis}.express-data-dropdown-chip-remove{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;font-size:var(--ex-font-base);font-weight:700;cursor:pointer;padding:0;margin-left:2px;width:16px;height:16px;border-radius:var(--ex-radius-full);transition:background-color var(--ex-transition-fast)}.express-data-dropdown-chip-remove:hover{background-color:#ffffff4d}.express-data-dropdown-placeholder{color:var(--ex-text-muted);font-size:.9em}.express-data-dropdown-add-button{display:flex;align-items:center;justify-content:center;width:40px;padding:0;background:var(--ex-bg-secondary);border:none;border-left:1px solid var(--ex-border-light);border-radius:0 .5em .5em 0;color:var(--ex-text-tertiary);font-size:var(--ex-font-lg);font-weight:300;cursor:pointer;flex-shrink:0;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-dropdown-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-dropdown-popup{position:absolute;top:100%;left:0;right:0;z-index:var(--ex-z-dropdown);max-height:200px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);margin-top:4px}.express-data-dropdown-popup-item{padding:10px 12px;font-size:var(--ex-font-base);color:var(--ex-text-primary);cursor:pointer;transition:background var(--ex-transition-fast)}.express-data-dropdown-popup-item:hover{background:var(--ex-bg-tertiary)}.express-data-dropdown-popup-item.selected{background:var(--ex-info-light);color:var(--ex-primary);font-weight:var(--ex-font-weight-medium)}.express-data-dropdown-popup-item:first-child{border-radius:.5em .5em 0 0}.express-data-dropdown-popup-item:last-child{border-radius:0 0 .5em .5em}.express-data-dropdown-popup-empty{padding:10px 12px;font-size:var(--ex-font-base);color:var(--ex-text-muted);font-style:italic;text-align:center}.express-data-timer-wrapper{display:flex;align-items:stretch;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);overflow:hidden;transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.express-data-timer-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px #667eea1a}.express-data-timer-wrapper.running{border-color:var(--ex-success);background:linear-gradient(to right,#f0fff4,#fff)}.express-data-timer-wrapper.completed{border-color:var(--ex-warning);background:linear-gradient(to right,#fffaf0,#fff)}.express-data-timer-display{flex:1;display:flex;align-items:center;justify-content:center;padding:.5em 1em;font-size:1.1em;font-weight:var(--ex-font-weight-semibold);font-variant-numeric:tabular-nums;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--ex-text-primary);letter-spacing:.05em;min-width:80px}.express-data-timer-display.warning{color:var(--ex-danger);animation:express-timer-pulse 1s ease-in-out infinite}@keyframes express-timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.express-data-timer-button{display:flex;align-items:center;justify-content:center;width:48px;padding:0;background:var(--ex-bg-secondary);border:none;border-left:1px solid var(--ex-border-light);color:var(--ex-text-secondary);font-size:var(--ex-font-lg);cursor:pointer;transition:background-color var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-timer-button:hover{background-color:var(--ex-bg-active);color:var(--ex-text-primary)}.express-data-timer-button:active{background-color:var(--ex-border-default)}.express-data-timer-button.running{background-color:var(--ex-success-light);color:var(--ex-success-hover)}.express-data-timer-button.running:hover{background-color:var(--ex-success-border)}.express-data-timer-button.completed{background-color:var(--ex-warning-light);color:var(--ex-warning-hover)}.express-data-timer-button.completed:hover{background-color:var(--ex-warning-border)}.express-data-timer-buttons{display:flex;align-items:stretch}.express-data-timer-reset{color:var(--ex-text-tertiary);font-size:var(--ex-font-md)}.express-data-timer-reset:hover{background-color:var(--ex-info-light);color:var(--ex-info)}.express-data-timer-bar-btn{color:var(--ex-text-tertiary);font-size:var(--ex-font-md)}.express-data-timer-bar-btn:hover{background-color:var(--ex-success-light);color:var(--ex-success)}.express-data-timer-bar-indicator{display:flex;align-items:center;justify-content:center;width:32px;padding:0;background:var(--ex-success-light);border-left:1px solid var(--ex-border-light);color:var(--ex-success);font-size:var(--ex-font-base)}.express-data-timer-wrapper.in-timer-bar{border-color:var(--ex-success-border)}.express-data-calculation-wrapper{display:flex;align-items:stretch;position:relative;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary)}.express-data-calculation{background-color:#f7fafc!important;color:var(--ex-text-secondary);font-weight:var(--ex-font-weight-semibold);cursor:not-allowed}.express-data-calculation-floating{margin-top:.5em}.express-data-calculation-floating .express-data-calculation-wrapper{position:relative;overflow:visible}.express-data-calculation-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none;z-index:1}@media(max-width:768px){.express-data-field-half{flex:1 1 100%;min-width:0}.express-data-fields-grid{padding:0 16px;gap:10px}.express-data-fields-container{padding:12px 0}.express-data-input,.express-data-textarea,.express-data-select{min-height:44px;font-size:var(--ex-font-md)}.express-data-timer-button{width:56px;min-height:44px}.express-data-timer-display{font-size:1em;min-width:70px}.express-data-number-arrow{min-width:32px;padding:0 8px}.express-data-notes-add-button{width:32px;height:32px;font-size:var(--ex-font-lg)}.express-data-note-chip{padding:6px 10px;max-width:140px}.express-data-note-chip-remove{width:20px;height:20px;font-size:var(--ex-font-md)}.express-data-multiselect-wrapper{padding:.5em}.express-data-multiselect-chip{padding:6px 10px;max-width:140px}.express-data-multiselect-chip-remove{width:20px;height:20px;font-size:var(--ex-font-md)}.express-data-multiselect-dropdown{min-height:36px;font-size:var(--ex-font-base)}}@media(max-width:480px){.express-data-fields-grid{padding:0 12px;gap:var(--ex-space-2)}.express-data-fields-container{padding:10px 0}.express-data-field-label{font-size:.7em;padding:.2em .4em;width:85%}.express-data-input,.express-data-textarea{padding:1.5em .75em .4em;font-size:var(--ex-font-md)}.express-data-select{padding:1.5em 2em .4em .75em;font-size:var(--ex-font-md)}.express-data-textarea{min-height:4em}.express-data-number-prefix,.express-data-number-suffix{padding:1.5em .4em .4em;font-size:.85em}.express-data-timer-display{padding:1.5em .5em .4em;font-size:.95em}.express-data-timer-button{width:48px;font-size:var(--ex-font-md)}.express-data-notes-chips{padding:1.5em .5em .4em;gap:var(--ex-space-1)}.express-data-note-chip{padding:4px 8px;font-size:.75rem;max-width:120px}.express-data-notes-add-button{width:28px;height:28px;font-size:var(--ex-font-md)}.express-data-notes-popup-input{padding:10px 12px;font-size:var(--ex-font-md)}.express-data-multiselect-wrapper{padding:1.5em .5em .4em}.express-data-multiselect-chip{padding:4px 8px;font-size:.75rem;max-width:120px}.express-data-multiselect-dropdown{padding:.3em 1.75em .3em .5em;font-size:var(--ex-font-base);min-height:32px}.express-data-autocomplete{max-height:160px}.express-data-autocomplete-item{padding:12px;min-height:44px}}@media(max-width:320px){.express-data-fields-grid{padding:0 8px}.express-data-field-label{font-size:.65em;width:90%}.express-data-note-chip{max-width:100px}}.express-data-color-wrapper{display:flex;align-items:center;gap:var(--ex-space-2);padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);min-height:3em}.express-data-color-input{width:40px;height:30px;padding:0;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);cursor:pointer;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.express-data-color-input::-webkit-color-swatch-wrapper{padding:2px}.express-data-color-input::-webkit-color-swatch{border:none;border-radius:2px}.express-data-color-input::-moz-color-swatch{border:none;border-radius:2px}.express-data-color-input:disabled{opacity:.6;cursor:not-allowed}.express-data-color-preview{flex:1;height:24px;border-radius:var(--ex-radius-sm);border:1px solid var(--ex-border-light)}.express-data-color-clear{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:#e8e8e8;border-radius:var(--ex-radius-full);cursor:pointer;font-size:var(--ex-font-md);line-height:1;color:#666;transition:background-color var(--ex-transition-base),color var(--ex-transition-base)}.express-data-color-clear:hover{background:#d0d0d0;color:#333}.express-data-color-floating{margin-top:.5em}.express-data-color-floating .express-data-color-wrapper{position:relative;overflow:visible}.express-data-color-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none}.express-data-table-cell-content .express-data-color-wrapper{padding:4px 8px;border:none;background:transparent;min-height:auto}.express-data-table-cell-content .express-data-color-input{width:28px;height:24px}.express-data-table-cell-content .express-data-color-preview{height:20px}.express-data-table-cell-content .express-data-color-clear{width:20px;height:20px;font-size:var(--ex-font-base)}.express-data-relationship-wrapper{position:relative;display:flex;align-items:stretch;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary)}.express-data-relationship-chips{flex:1;display:flex;flex-wrap:wrap;gap:var(--ex-space-2);padding:.5em .75em;min-height:2.5em;align-items:center}.express-data-relationship-chip{display:inline-flex;align-items:center;gap:var(--ex-space-1);background-color:var(--ex-info);color:#fff;padding:4px 8px;border-radius:var(--ex-radius-sm);font-size:.8rem;font-weight:700;white-space:nowrap;max-width:150px}.express-data-relationship-chip-text{overflow:hidden;text-overflow:ellipsis}.express-data-relationship-chip-remove{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;font-size:var(--ex-font-base);font-weight:700;cursor:pointer;padding:0;margin-left:2px;width:16px;height:16px;border-radius:var(--ex-radius-full);transition:background-color var(--ex-transition-fast)}.express-data-relationship-chip-remove:hover{background-color:#ffffff4d}.express-data-relationship-add-button{display:flex;align-items:center;justify-content:center;width:40px;padding:0;background:var(--ex-bg-secondary);border:none;border-left:1px solid var(--ex-border-light);border-radius:0 .5em .5em 0;color:var(--ex-text-tertiary);font-size:var(--ex-font-lg);cursor:pointer;flex-shrink:0;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-relationship-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-info)}.express-data-relationship-add-button .material-icons{font-size:var(--ex-font-xl)}.express-data-relationship-popup{background:var(--ex-bg-primary);border:1px solid var(--ex-info);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);overflow:hidden}.express-data-relationship-popup-header{display:flex;align-items:center;gap:var(--ex-space-1);padding:8px;border-bottom:1px solid var(--ex-border-light);background:var(--ex-bg-secondary)}.express-data-relationship-popup-input{flex:1;padding:8px 12px;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-sm);background:var(--ex-bg-primary)}.express-data-relationship-popup-input:focus{outline:none;border-color:var(--ex-info);box-shadow:0 0 0 2px #4299e133}.express-data-relationship-popup-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-tertiary);cursor:pointer;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-relationship-popup-close:hover{background:var(--ex-bg-active);color:var(--ex-text-primary)}.express-data-relationship-popup-close .material-icons{font-size:var(--ex-font-lg)}.express-data-relationship-popup-list{max-height:200px;overflow-y:auto}.express-data-relationship-popup-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;font-size:var(--ex-font-base);color:var(--ex-text-primary);cursor:pointer;transition:background var(--ex-transition-fast)}.express-data-relationship-popup-item:hover{background:var(--ex-bg-tertiary)}.express-data-relationship-popup-item.highlighted{background:var(--ex-info-light)}.express-data-relationship-popup-item.selected{background:var(--ex-info-light);color:var(--ex-info);cursor:default}.express-data-relationship-popup-item .material-icons{font-size:var(--ex-font-md);color:var(--ex-info)}.express-data-relationship-popup-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.express-data-relationship-popup-empty{padding:16px 12px;font-size:var(--ex-font-base);color:var(--ex-text-muted);text-align:center;font-style:italic}.express-data-relationship-empty{padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary)}.express-data-relationship-empty-text{color:var(--ex-text-muted);font-size:.9em;font-style:italic}.express-data-relationship-config{display:flex;flex-direction:column;gap:16px}.express-data-relationship-config-row{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-relationship-config-row>label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--text-secondary, #666)}.express-data-relationship-config-row .express-data-config-select,.express-data-relationship-config-row .express-data-config-input{padding:8px 10px;border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-base);color:var(--text-primary, #333);background:var(--ex-bg-primary)}.express-data-relationship-config-row .express-data-config-select:focus,.express-data-relationship-config-row .express-data-config-input:focus{outline:none;border-color:var(--ex-primary)}.express-data-config-hint{margin:4px 0 0;font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}@media(max-width:768px){.express-data-relationship-chips{padding:1.5em .5em .4em;gap:var(--ex-space-1)}.express-data-relationship-chip{padding:6px 10px;max-width:140px}.express-data-relationship-chip-remove{width:20px;height:20px;font-size:var(--ex-font-md)}.express-data-relationship-add-button{width:48px}}@media(max-width:480px){.express-data-relationship-chips{padding:1.5em .5em .4em;gap:var(--ex-space-1)}.express-data-relationship-chip{padding:4px 8px;font-size:.75rem;max-width:120px}.express-data-relationship-add-button{width:40px}.express-data-relationship-popup-input{font-size:var(--ex-font-md);padding:10px 12px}}.express-data-relationship-info-display{display:flex;flex-wrap:wrap;gap:var(--ex-space-2);padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary);min-height:2.5em;align-items:center}.express-data-relationship-info-value{color:var(--ex-text-primary);font-size:.9em}.express-data-relationship-info-value:not(:last-child):after{content:", "}.express-data-relationship-info-empty{padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary);min-height:2.5em}.express-data-relationship-info-empty-text{color:var(--ex-text-muted);font-size:.9em;font-style:italic}.express-data-relationship-info-config{display:flex;flex-direction:column;gap:16px}.express-data-config-warning{color:var(--ex-danger)}.express-data-table-cell-content .express-data-relationship-info-display,.express-data-table-cell-content .express-data-relationship-info-empty{padding:4px 8px;border:none;background:transparent;min-height:auto}.express-data-table-cell-content .express-data-relationship-info-value{font-size:.85em}.express-data-relationship-info-floating{margin-top:.5em}.express-data-relationship-info-floating .express-data-relationship-info-content{position:relative;overflow:visible}.express-data-relationship-info-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none;z-index:1}@media(max-width:768px){.express-data-relationship-info-display,.express-data-relationship-info-empty{padding:1.5em .5em .4em}}@media(max-width:480px){.express-data-relationship-info-display{padding:1.5em .5em .4em}.express-data-relationship-info-value{font-size:.85em}.express-data-relationship-info-empty{padding:1.5em .5em .4em}}.express-data-url-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-url-input-row{display:flex;align-items:flex-end;gap:var(--ex-space-2)}.express-data-url-input-row .ex-input-container{flex:1}.express-data-url-input-row .express-data-url-open-btn{margin-bottom:0}.express-data-url-open-btn{display:flex;align-items:center;justify-content:center;width:36px;min-height:36px;background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-info);text-decoration:none;transition:background var(--ex-transition-fast),color var(--ex-transition-fast);flex-shrink:0;align-self:stretch}.express-data-url-open-btn:hover{background:var(--ex-info-light);color:var(--ex-info-hover)}.express-data-url-open-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-url-display{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-url-link-wrapper{display:flex;align-items:center;padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary)}.express-data-url-link{display:flex;align-items:center;gap:var(--ex-space-2);color:var(--ex-info);text-decoration:none;font-size:.9em;transition:color var(--ex-transition-fast)}.express-data-url-link:hover{color:var(--ex-info-hover);text-decoration:underline}.express-data-url-icon{font-size:var(--ex-font-lg);color:var(--ex-text-tertiary)}.express-data-url-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.express-data-url-external{font-size:var(--ex-font-base);color:var(--ex-text-muted)}.express-data-table-cell-content .express-data-url-input-row{gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-url-open-btn{width:28px;min-height:28px}.express-data-table-cell-content .express-data-url-link-wrapper{padding:4px 8px;border:none;background:transparent}.express-data-email-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-email-input-row{display:flex;align-items:flex-end;gap:var(--ex-space-2)}.express-data-email-input-row .ex-input-container{flex:1}.express-data-email-input-row .express-data-email-compose-btn{margin-bottom:0}.express-data-email-compose-btn{display:flex;align-items:center;justify-content:center;width:36px;min-height:36px;background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-success);text-decoration:none;transition:background var(--ex-transition-fast),color var(--ex-transition-fast);flex-shrink:0;align-self:stretch}.express-data-email-compose-btn:hover{background:var(--ex-success-light);color:var(--ex-success-hover)}.express-data-email-compose-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-email-display{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-email-link-wrapper{display:flex;align-items:center;padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary)}.express-data-email-link{display:flex;align-items:center;gap:var(--ex-space-2);color:var(--ex-success);text-decoration:none;font-size:.9em;transition:color var(--ex-transition-fast)}.express-data-email-link:hover{color:var(--ex-success-hover);text-decoration:underline}.express-data-email-icon{font-size:var(--ex-font-lg);color:var(--ex-text-tertiary)}.express-data-email-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.express-data-table-cell-content .express-data-email-input-row{gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-email-compose-btn{width:28px;min-height:28px}.express-data-table-cell-content .express-data-email-link-wrapper{padding:4px 8px;border:none;background:transparent}.express-data-phone-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-phone-input-row{display:flex;align-items:flex-end;gap:var(--ex-space-2)}.express-data-phone-input-row .ex-input-container{flex:1}.express-data-phone-input-row .express-data-phone-call-btn{margin-bottom:0}.express-data-phone-call-btn{display:flex;align-items:center;justify-content:center;width:36px;min-height:36px;background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-primary);text-decoration:none;transition:background var(--ex-transition-fast),color var(--ex-transition-fast);flex-shrink:0;align-self:stretch}.express-data-phone-call-btn:hover{background:var(--ex-info-light);color:var(--ex-primary-hover)}.express-data-phone-call-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-phone-display{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-phone-link-wrapper{display:flex;align-items:center;padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary)}.express-data-phone-link{display:flex;align-items:center;gap:var(--ex-space-2);color:var(--ex-primary);text-decoration:none;font-size:.9em;transition:color var(--ex-transition-fast)}.express-data-phone-link:hover{color:var(--ex-primary-hover);text-decoration:underline}.express-data-phone-icon{font-size:var(--ex-font-lg);color:var(--ex-text-tertiary)}.express-data-phone-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.express-data-table-cell-content .express-data-phone-input-row{gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-phone-call-btn{width:28px;min-height:28px}.express-data-table-cell-content .express-data-phone-link-wrapper{padding:4px 8px;border:none;background:transparent}.express-data-rating-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-rating-wrapper.express-data-rating-cell{flex-direction:row;align-items:center}.express-data-rating-stars{display:flex;align-items:center;gap:2px;padding:.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary)}.express-data-rating-cell .express-data-rating-stars{padding:4px 8px;border:none;background:transparent}.express-data-rating-star{position:relative;display:inline-flex;cursor:default;font-size:24px;color:#e2e8f0}.express-data-rating-star.interactive{cursor:pointer}.express-data-rating-star .star-empty{color:#e2e8f0}.express-data-rating-star .star-filled{position:absolute;top:0;left:0;color:var(--ex-warning);opacity:0;transition:opacity var(--ex-transition-fast)}.express-data-rating-star .star-half{position:absolute;top:0;left:0;color:var(--ex-warning);opacity:0;clip-path:inset(0 50% 0 0);transition:opacity var(--ex-transition-fast)}.express-data-rating-star.filled .star-filled,.express-data-rating-star.half-filled .star-half{opacity:1}.express-data-rating-star.interactive:hover .star-empty{color:#faf089}.express-data-rating-wrapper[data-icon=heart] .express-data-rating-star .star-filled,.express-data-rating-wrapper[data-icon=heart] .express-data-rating-star .star-half{color:var(--ex-danger)}.express-data-rating-wrapper[data-icon=heart] .express-data-rating-star.interactive:hover .star-empty{color:#fc8181}.express-data-rating-wrapper[data-icon=thumb] .express-data-rating-star .star-filled,.express-data-rating-wrapper[data-icon=thumb] .express-data-rating-star .star-half{color:var(--ex-info)}.express-data-rating-wrapper[data-icon=thumb] .express-data-rating-star.interactive:hover .star-empty{color:#90cdf4}.express-data-rating-wrapper[data-icon=emoji] .express-data-rating-star .star-filled,.express-data-rating-wrapper[data-icon=emoji] .express-data-rating-star .star-half{color:var(--ex-success)}.express-data-rating-wrapper[data-icon=emoji] .express-data-rating-star.interactive:hover .star-empty{color:#9ae6b4}.express-data-rating-value{margin-left:8px;font-size:.9em;font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-tertiary);min-width:24px}.express-data-table-cell-content .express-data-rating-star{font-size:var(--ex-font-xl)}.express-data-table-cell-content .express-data-rating-value{font-size:.8em}.express-data-rating-floating .express-data-rating-control{position:relative}.express-data-rating-floating .express-data-rating-stars{padding-top:.75em}.express-data-rating-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none}.express-data-progress-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-progress-wrapper.express-data-progress-cell{gap:0;width:100%;height:100%}.express-data-progress-container{display:flex;align-items:center;gap:var(--ex-space-3);padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary)}.express-data-progress-cell .express-data-progress-container{padding:0;border:none;background:transparent;gap:0;height:100%;width:100%}.express-data-progress-bar{flex:1;height:16px;background:var(--ex-bg-active);border-radius:var(--ex-radius-lg);overflow:visible;position:relative}.express-data-progress-bar.interactive{cursor:pointer}.express-data-progress-bar.interactive:hover{background:#d0d5dd}.express-data-progress-bar.dragging{cursor:grabbing}.express-data-progress-fill{height:100%;border-radius:var(--ex-radius-lg);transition:width var(--ex-transition-fast),background-color var(--ex-transition-slow);pointer-events:none}.express-data-progress-handle{position:absolute;top:50%;width:12px;height:12px;background:var(--ex-bg-primary);border:2px solid currentColor;border-radius:var(--ex-radius-full);transform:translate(-50%,-50%);opacity:0;transition:opacity var(--ex-transition-fast);pointer-events:none;color:var(--ex-text-secondary)}.express-data-progress-bar.interactive:hover .express-data-progress-handle,.express-data-progress-bar.dragging .express-data-progress-handle{opacity:1}.express-data-progress-percentage{font-size:.85em;font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);min-width:40px;text-align:right;font-variant-numeric:tabular-nums}.express-data-progress-percentage.editable{cursor:pointer;padding:2px 4px;border-radius:var(--ex-radius-sm);transition:background var(--ex-transition-fast)}.express-data-progress-percentage.editable:hover{background:var(--ex-bg-tertiary)}.express-data-progress-percentage-input{width:50px;padding:2px 4px;border:1px solid var(--ex-info);border-radius:var(--ex-radius-sm);font-size:.85em;font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);text-align:right;font-variant-numeric:tabular-nums;outline:none}.express-data-progress-floating .express-data-progress-control{position:relative}.express-data-progress-floating .express-data-progress-container{padding-top:.5em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:.75em var(--ex-space-3) .5em;background:var(--ex-bg-primary)}.express-data-progress-floating .ex-floating-label{position:absolute;left:var(--ex-space-3);top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);background-color:var(--ex-bg-primary);padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1);pointer-events:none}.express-data-table-cell-content .express-data-progress-wrapper{width:100%;height:100%}.express-data-table-cell-content .express-data-progress-container{position:relative;width:100%;height:100%;min-height:28px}.express-data-table-cell-content .express-data-progress-bar{position:absolute;top:0;left:0;right:0;bottom:0;height:auto;border-radius:0;background:var(--ex-bg-active)}.express-data-table-cell-content .express-data-progress-fill{border-radius:0;height:100%}.express-data-table-cell-content .express-data-progress-percentage{position:absolute;top:50%;right:8px;transform:translateY(-50%);font-size:var(--ex-font-sm);min-width:auto;z-index:1;color:var(--ex-text-primary);text-shadow:0 0 2px rgba(255,255,255,.8)}.express-data-table-cell-content .express-data-progress-percentage-input{position:absolute;top:50%;right:4px;transform:translateY(-50%);font-size:var(--ex-font-sm);z-index:1}.express-data-table-cell-content .express-data-progress-handle{display:none}.express-data-duration-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-duration-wrapper.express-data-duration-cell{gap:0}.express-data-duration-input-wrapper{display:flex;align-items:center;gap:var(--ex-space-2);position:relative}.express-data-duration-input-wrapper .ex-input-container{flex:1}.express-data-duration-suffix{font-size:.85em;color:var(--ex-text-tertiary);white-space:nowrap}.express-data-duration-icon{display:flex;align-items:center;justify-content:center;color:var(--ex-text-muted)}.express-data-duration-icon .material-icons{font-size:var(--ex-font-lg)}.express-data-table-cell-content .express-data-duration-input-wrapper{gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-duration-icon{display:none}.express-data-currency-wrapper{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-currency-wrapper.express-data-currency-cell{gap:0}.express-data-currency-input-wrapper{display:flex;align-items:center;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);overflow:hidden;transition:border-color var(--ex-transition-base),box-shadow var(--ex-transition-base)}.express-data-currency-input-wrapper:focus-within{border-color:var(--ex-primary);box-shadow:0 0 0 3px #667eea1a}.express-data-currency-symbol{display:flex;align-items:center;padding:0 .75em;background:var(--ex-bg-tertiary);color:var(--ex-text-tertiary);font-weight:var(--ex-font-weight-medium);font-size:.9em;min-height:36px;border-right:1px solid var(--ex-border-light)}.express-data-currency-input{flex:1;min-width:0;padding:.5em .75em;border:none;background:transparent;font-size:.9em;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);font-variant-numeric:tabular-nums;text-align:right;outline:none}.express-data-currency-input::placeholder{color:var(--ex-text-muted)}.express-data-currency-display{padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary);font-size:.9em;font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-variant-numeric:tabular-nums}.express-data-currency-floating{margin-top:.5em}.express-data-currency-floating .express-data-currency-input-wrapper,.express-data-currency-floating .express-data-currency-display-wrapper{position:relative;overflow:visible}.express-data-currency-floating .express-data-currency-display-wrapper{position:relative}.express-data-currency-floating .ex-floating-label{position:absolute;left:2.5em;top:50%;transform:translateY(-50%);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-normal);color:var(--ex-text-muted);pointer-events:none;transition:all var(--ex-transition-fast);background-color:transparent;padding:0 var(--ex-space-1);display:flex;align-items:center;gap:var(--ex-space-1)}.express-data-currency-floating .ex-floating-label-active{top:0;transform:translateY(-50%);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-primary);background-color:var(--ex-bg-primary)}.express-data-currency-floating .express-data-currency-input-wrapper:not(:focus-within) .ex-floating-label-active{color:var(--ex-text-secondary)}.express-data-table-cell-content .express-data-currency-wrapper{width:100%;height:100%}.express-data-table-cell-content .express-data-currency-input-wrapper{border:none;background:transparent;height:100%;padding:.5em;font-size:1em}.express-data-table-cell-content .express-data-currency-symbol{background:transparent;border-right:none;padding:0 4px 0 0;min-height:auto;font-size:1.25em}.express-data-table-cell-content .express-data-currency-input{padding:4px 0;font-size:1em}.express-data-table-cell-content .express-data-currency-display{padding:4px 8px;border:none;background:transparent;font-size:var(--ex-font-sm)}@media(max-width:768px){.express-data-url-open-btn,.express-data-email-compose-btn,.express-data-phone-call-btn{width:44px;min-height:44px}.express-data-rating-star{font-size:28px}.express-data-progress-bar{height:20px;border-radius:var(--ex-radius-xl)}.express-data-progress-fill{border-radius:var(--ex-radius-xl)}}@media(max-width:480px){.express-data-url-input-row,.express-data-email-input-row,.express-data-phone-input-row{flex-direction:column}.express-data-url-open-btn,.express-data-email-compose-btn,.express-data-phone-call-btn{width:100%;align-self:stretch}.express-data-rating-star{font-size:32px}.express-data-progress-container{flex-direction:column;align-items:stretch;gap:var(--ex-space-2)}.express-data-progress-percentage{text-align:center}}.express-data-recurrence-field{display:flex;flex-direction:column;gap:var(--ex-space-2)}.express-data-recurrence-input{display:flex;align-items:stretch}.express-data-recurrence-value{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-2);padding:.5em 1em;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);width:100%;box-sizing:border-box}.express-data-recurrence-actions{display:flex;gap:var(--ex-space-1);flex-shrink:0}.express-data-recurrence-edit-btn,.express-data-recurrence-clear-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);color:var(--ex-text-tertiary);cursor:pointer;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-recurrence-edit-btn:hover{background:var(--ex-info-light);color:var(--ex-info)}.express-data-recurrence-clear-btn:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.express-data-recurrence-edit-btn .material-icons,.express-data-recurrence-clear-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-recurrence-add-btn{display:flex;align-items:center;gap:var(--ex-space-2);padding:.5em 1em;border:1px dashed var(--ex-text-muted);border-radius:var(--ex-radius-lg);background:var(--ex-bg-secondary);color:var(--ex-text-tertiary);font-size:.9em;cursor:pointer;transition:border-color var(--ex-transition-fast),color var(--ex-transition-fast),background var(--ex-transition-fast);width:100%;justify-content:center}.express-data-recurrence-add-btn:hover:not(:disabled){border-color:var(--ex-info);color:var(--ex-info);background:var(--ex-info-light)}.express-data-recurrence-add-btn:disabled{cursor:not-allowed;opacity:.6}.express-data-recurrence-add-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-recurrence-cell{display:flex;align-items:center;gap:var(--ex-space-2);font-size:.85em;color:var(--ex-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.express-data-recurrence-cell .material-icons{font-size:var(--ex-font-md);color:var(--ex-text-tertiary);flex-shrink:0}@media(max-width:768px){.express-data-recurrence-value{padding:1.5em .75em .5em}.express-data-recurrence-add-btn{padding:1.5em .75em .5em;min-height:44px}.express-data-recurrence-edit-btn,.express-data-recurrence-clear-btn{width:36px;height:36px}.express-data-recurrence-edit-btn .material-icons,.express-data-recurrence-clear-btn .material-icons{font-size:var(--ex-font-xl)}}@media(max-width:480px){.express-data-recurrence-value{flex-direction:column;align-items:stretch;gap:var(--ex-space-3)}.express-data-recurrence-actions{justify-content:flex-end}}.express-data-table-container{display:flex;flex-direction:column;background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);overflow:hidden;flex:1;min-height:0}.express-data-table-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-tertiary);border-bottom:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg) var(--ex-radius-lg) 0 0}.express-data-table-title{margin:0;font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);text-transform:uppercase;letter-spacing:.5px}.express-data-table-controls{display:flex;align-items:center;gap:var(--ex-space-3)}.express-data-add-row-btn{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-primary);border:none;border-radius:var(--ex-radius-lg);color:var(--ex-text-inverse);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-base)}.express-data-add-row-btn:hover{background:var(--ex-primary-hover)}.express-data-add-row-btn .material-icons{font-size:var(--ex-font-lg)}.express-data-scroll-controls{display:flex;gap:var(--ex-space-1)}.express-data-scroll-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);color:var(--ex-text-secondary);cursor:pointer;transition:background var(--ex-transition-fast),border-color var(--ex-transition-fast)}.express-data-scroll-btn:hover:not(:disabled){background:var(--ex-bg-hover);border-color:var(--ex-primary)}.express-data-scroll-btn:disabled{opacity:.4;cursor:not-allowed}.express-data-scroll-btn .material-icons{font-size:var(--ex-font-xl)}.express-data-table-content{overflow-y:auto;background:var(--ex-bg-primary);flex:1;min-height:0}.express-data-table{width:100%;border-collapse:collapse;table-layout:fixed}.express-data-table th{padding:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--ex-text-secondary);background:var(--ex-bg-tertiary);border-bottom:1px solid var(--ex-border-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:sticky;top:0;z-index:10}.express-data-column-header-content{display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-3);overflow:hidden;text-overflow:ellipsis}.express-data-column-name{overflow:hidden;text-overflow:ellipsis}.express-data-column-resize-handle{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:11;background:transparent;transition:background var(--ex-transition-fast)}.express-data-column-resize-handle:after{content:"";position:absolute;top:25%;left:3px;width:1px;height:50%;background:transparent;transition:background var(--ex-transition-fast)}.express-data-column-resize-handle:hover,.express-data-column-resize-handle.express-data-resize-active{background:rgba(var(--ex-primary-rgb),.1)}.express-data-column-resize-handle:hover:after,.express-data-column-resize-handle.express-data-resize-active:after{background:var(--ex-primary)}.express-data-column-resizing{background:rgba(var(--ex-primary-rgb),.05)}.express-data-table th .express-data-column-icon{font-size:var(--ex-font-base);margin-right:var(--ex-space-2);vertical-align:middle;color:var(--ex-primary)}.express-data-name-column{width:200px;min-width:200px}.express-data-name-column .express-data-column-header-content{padding:var(--ex-space-2) var(--ex-space-3)}.express-data-actions-column{width:50px;min-width:50px;padding:var(--ex-space-2) var(--ex-space-3)}.express-data-table td{padding:0;font-size:var(--ex-font-base);color:var(--ex-text-primary);border-bottom:1px solid var(--ex-border-light);border-right:1px solid var(--ex-border-light);vertical-align:top;background:inherit;height:1px}.express-data-table-row{background:var(--ex-bg-primary)}.express-data-table td:last-child{border-right:none}.express-data-table-row:hover td{background:var(--ex-bg-secondary)}.express-data-name-cell{padding:0!important}.express-data-name-cell-content{display:flex;align-items:stretch;min-height:40px;height:100%}.express-data-name-input{flex:1;padding:var(--ex-space-2) var(--ex-space-2);border:none;border-radius:0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);background:transparent;box-sizing:border-box;transition:background var(--ex-transition-base);min-height:40px;align-self:stretch}.express-data-name-input:hover{background:var(--ex-bg-hover)}.express-data-name-input:focus{outline:none;background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-navigate-btn{display:flex;align-items:center;justify-content:center;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;align-self:stretch;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-navigate-btn:hover{background:var(--ex-bg-hover);color:var(--ex-primary)}.express-data-navigate-btn .material-icons{font-size:var(--ex-font-md)}.express-data-data-cell{vertical-align:top;padding:0!important}.express-data-table-cell-content{display:flex;align-items:stretch;min-height:40px;height:100%}.express-data-table-cell-content .ex-label,.express-data-table-cell-content .ex-error-message,.express-data-table-cell-content .ex-helper-text{display:none}.express-data-table-cell-content .ex-input-container{display:flex;flex-direction:column;flex:1;width:100%;height:100%;margin:0}.express-data-table-cell-content .ex-input-container.ex-input-fullwidth{width:100%}.express-data-table-cell-content .ex-input-wrapper{flex:1;display:flex;align-items:stretch;border:none;border-radius:0;background:transparent;min-height:40px}.express-data-table-cell-content .ex-input{flex:1;width:100%;height:100%;min-height:40px;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);border:none;border-radius:0;background:transparent}.express-data-table-cell-content .ex-input:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .ex-input:focus{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary);outline:none}.express-data-name-cell-content .ex-input-container{flex:1;display:flex;flex-direction:column;margin:0}.express-data-name-cell-content .ex-input-wrapper{flex:1;display:flex;align-items:stretch;border:none;border-radius:0;background:transparent}.express-data-name-cell-content .ex-input{flex:1;width:100%;height:100%;min-height:40px;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);border:none;border-radius:0;background:transparent}.express-data-name-cell-content .ex-input:hover{background:var(--ex-bg-hover)}.express-data-name-cell-content .ex-input:focus{outline:none;background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-name-cell-content .ex-btn-icon.ex-btn{display:flex;align-items:center;justify-content:center;width:36px;padding:0;margin:auto 0;background:transparent;border:none;border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;align-self:stretch;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-name-cell-content .ex-btn:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-table-cell-content .express-data-textarea-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-textarea-field-wrapper .ex-input-container{flex:1;display:flex;flex-direction:column}.express-data-table-cell-content .ex-textarea{flex:1;width:100%;min-height:60px;align-content:center;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);border:none;border-radius:0;background:transparent;resize:vertical}.express-data-table-cell-content .ex-textarea:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .ex-textarea:focus{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary);outline:none}.express-data-table-cell-content .ex-select{flex:1;width:100%;height:100%;min-height:40px;padding:8px 28px 8px 10px;font-size:var(--ex-font-sm);border:none;border-radius:0;background-color:transparent;background-position:right 8px center}.express-data-table-cell-content .ex-select:hover{background-color:var(--ex-bg-hover)}.express-data-table-cell-content .ex-select:focus{background-color:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary);outline:none}.express-data-table-cell-content .ex-date-picker{flex:1;width:100%;height:100%;display:flex}.express-data-table-cell-content .ex-date-picker-wrapper{flex:1;display:flex}.express-data-table-cell-content .ex-date-picker-input{flex:1;width:100%;height:100%;min-height:40px;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);border:none;border-radius:0;background:transparent}.express-data-table-cell-content .ex-date-picker-input:hover:not(:disabled){background:var(--ex-bg-hover)}.express-data-table-cell-content .ex-date-picker-input:focus{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary);outline:none}.express-data-table-cell-content .express-data-checkbox-field-wrapper{flex:1;display:flex;align-items:center;justify-content:center;min-height:40px}.express-data-table-cell-content .express-data-checkbox-field-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .ex-switch{display:flex;align-items:center;justify-content:center;cursor:pointer}.express-data-table-cell-content .ex-switch .ex-switch-labels{display:none}.express-data-table-cell-content .ex-color-picker{flex:1;display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px}.express-data-table-cell-content .ex-color-picker:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .ex-color-picker-label{display:none}.express-data-table-cell-content .ex-color-picker-grid{gap:var(--ex-space-1)}.express-data-table-cell-content .ex-color-swatch{width:20px;height:20px}.express-data-table-cell-content .express-data-tags-field-wrapper,.express-data-table-cell-content .express-data-people-field-wrapper,.express-data-table-cell-content .express-data-notes-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-tags-wrapper,.express-data-table-cell-content .express-data-people-wrapper,.express-data-table-cell-content .express-data-notes-wrapper{flex:1;display:flex;align-items:stretch;min-height:40px;border:none;background:transparent;position:relative}.express-data-table-cell-content .express-data-tags-wrapper:hover,.express-data-table-cell-content .express-data-people-wrapper:hover,.express-data-table-cell-content .express-data-notes-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-tags-wrapper .ex-input-container,.express-data-table-cell-content .express-data-people-wrapper .ex-input-container{flex:1;display:flex;flex-direction:column}.express-data-table-cell-content .express-data-tags-wrapper .ex-input,.express-data-table-cell-content .express-data-people-wrapper .ex-input{flex:1;width:100%;min-height:40px;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);border:none;border-radius:0;background:transparent}.express-data-table-cell-content .express-data-notes-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-multiselect-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-dropdown-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-timer-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-timer-wrapper{flex:1;display:flex;align-items:center;min-height:40px;border:none;background:transparent}.express-data-table-cell-content .express-data-timer-buttons{display:flex;align-items:center;border-left:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-timer-bar-indicator{width:28px;display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-sm);color:var(--ex-success)}.express-data-table-cell-content .express-data-relationship-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-relationship-empty{flex:1;display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px}.express-data-table-cell-content .express-data-relationship-empty-text{font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}.express-data-table-cell-content .express-data-relationship-info-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-relationship-info-display{flex:1;display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-relationship-info-empty{flex:1;display:flex;align-items:center;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px}.express-data-table-cell-content .express-data-relationship-info-empty-text{font-size:var(--ex-font-sm);color:var(--ex-text-muted);font-style:italic}.express-data-table-cell-content .express-data-calculation-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-calculation-wrapper{flex:1;display:flex;align-items:stretch;border:none;border-radius:0;background:var(--ex-bg-secondary);min-height:40px}.express-data-table-cell-content .express-data-calculation-wrapper .ex-input-container{flex:1}.express-data-table-cell-content .express-data-calculation-wrapper .ex-input{padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);background:transparent!important;min-height:40px}.express-data-table-cell-content .express-data-number-wrapper{flex:1;display:flex;align-items:stretch;border:none;border-radius:0;background:transparent;min-height:40px}.express-data-table-cell-content .express-data-number-wrapper .ex-input-container{flex:1}.express-data-table-cell-content .express-data-number-wrapper .ex-input{padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);min-height:40px}.express-data-table-cell-content .express-data-number-prefix,.express-data-table-cell-content .express-data-number-suffix{display:flex;align-items:center;padding:0 8px;font-size:var(--ex-font-sm);background:var(--ex-bg-tertiary);border-left:1px solid var(--ex-border-light);color:var(--ex-text-tertiary)}.express-data-table-cell-content .ex-badge{font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-2)}.express-data-table-cell-content .ex-btn{display:flex;align-items:center;justify-content:center;padding:0;margin:auto 0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;transition:background var(--ex-transition-fast),color var(--ex-transition-fast);min-height:auto;width:36px;align-self:stretch}.express-data-table-cell-content .ex-btn:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-table-cell-content .ex-btn-icon{width:36px;height:auto;padding:0}.express-data-table-cell-content .express-data-date-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-date-range-field{flex:1;min-width:0}.express-data-table-cell-content .express-data-date-range-separator{padding:0 4px;font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.express-data-table-cell-content .express-data-color-field-wrapper{flex:1;display:flex;flex-direction:column;width:100%;height:100%}.express-data-table-cell-content .express-data-color-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px;gap:var(--ex-space-2)}.express-data-table-cell-content .express-data-color-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-input{flex:1;width:100%;height:100%;min-height:40px;padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);border:none;border-radius:0;background:transparent}.express-data-table-cell-content .express-data-input:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-input:focus{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-table-cell-content .express-data-textarea{min-height:60px;resize:vertical}.express-data-table-cell-content .express-data-select{flex:1;width:100%;height:100%;min-height:40px;padding:8px 28px 8px 10px;font-size:var(--ex-font-sm);border:none;border-radius:0;background-color:transparent;background-position:right 8px center}.express-data-table-cell-content .express-data-select:hover{background-color:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-select:focus{background-color:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-table-cell-content .express-data-checkbox-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--ex-space-2);border:none;background:transparent;min-height:40px}.express-data-table-cell-content .express-data-checkbox-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-checkbox{width:18px;height:18px}.express-data-table-cell-content .express-data-timer-wrapper{flex:1;display:flex;border:none;background:transparent;min-height:40px}.express-data-table-cell-content .express-data-timer-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-timer-display{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--ex-space-2);font-size:var(--ex-font-sm);min-width:60px}.express-data-table-cell-content .express-data-timer-button{width:36px;font-size:var(--ex-font-base);border-left:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-timer-bar-indicator{width:28px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-number-wrapper{flex:1;display:flex;border:none;border-radius:0;background:transparent;min-height:40px}.express-data-table-cell-content .express-data-number-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-number-wrapper:focus-within{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-table-cell-content .express-data-number-wrapper .express-data-input{padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);min-height:40px}.express-data-table-cell-content .express-data-number-prefix,.express-data-table-cell-content .express-data-number-suffix{display:flex;align-items:center;padding:0 8px;font-size:var(--ex-font-sm);background:var(--ex-bg-tertiary);border-left:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-number-prefix{border-left:none;border-right:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-number-arrows{display:none}.express-data-table-cell-content .express-data-notes-wrapper{flex:1;display:flex;align-items:stretch;min-height:40px;border:none;background:transparent;position:relative}.express-data-table-cell-content .express-data-notes-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-notes-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);border:none;background:transparent;gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-note-chip{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-xs);border-radius:var(--ex-radius-sm)}.express-data-table-cell-content .express-data-note-chip-remove{width:14px;height:14px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-notes-add-button{display:flex;align-items:center;justify-content:center;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;font-size:var(--ex-font-lg);font-weight:300;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-table-cell-content .express-data-notes-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-table-cell-content .express-data-notes-popup{position:absolute;top:100%;right:0;z-index:1000;min-width:200px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);padding:var(--ex-space-2)}.express-data-table-cell-content .express-data-notes-popup-input{width:100%;padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-sm);box-sizing:border-box}.express-data-table-cell-content .express-data-notes-popup-input:focus{outline:none;border-color:var(--ex-primary)}.express-data-table-cell-content .express-data-notes-popup .express-data-autocomplete{position:relative;top:0;margin-top:4px;z-index:1001}.express-data-table-cell-content .express-data-tags-wrapper,.express-data-table-cell-content .express-data-people-wrapper{flex:1;display:flex;flex-direction:column}.express-data-table-cell-content .express-data-tags-display,.express-data-table-cell-content .express-data-people-display{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);min-height:40px;border:none;background:transparent;gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-tags-display:hover,.express-data-table-cell-content .express-data-people-display:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-tag-chip,.express-data-table-cell-content .express-data-person-chip{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-xs);border-radius:var(--ex-radius-sm)}.express-data-table-cell-content .express-data-multiselect-wrapper{flex:1;display:flex;align-items:stretch;min-height:40px;border:none;background:transparent;position:relative}.express-data-table-cell-content .express-data-multiselect-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-multiselect-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-multiselect-chip{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-xs);border-radius:var(--ex-radius-sm)}.express-data-table-cell-content .express-data-multiselect-chip-remove{width:14px;height:14px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-multiselect-add-button{display:flex;align-items:center;justify-content:center;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;font-size:var(--ex-font-lg);font-weight:300;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-table-cell-content .express-data-multiselect-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-table-cell-content .express-data-multiselect-popup{position:absolute;top:100%;right:0;left:0;z-index:1000;min-width:150px;max-height:200px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:0 0 var(--ex-radius-lg) var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);margin-top:0}.express-data-table-cell-content .express-data-multiselect-popup-item{padding:var(--ex-space-2) var(--ex-space-3);font-size:var(--ex-font-sm);color:var(--ex-text-primary);cursor:pointer;transition:background var(--ex-transition-fast)}.express-data-table-cell-content .express-data-multiselect-popup-item:hover{background:var(--ex-bg-tertiary)}.express-data-table-cell-content .express-data-dropdown-wrapper{flex:1;display:flex;align-items:stretch;min-height:40px;border:none;background:transparent;position:relative}.express-data-table-cell-content .express-data-dropdown-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-dropdown-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-dropdown-chip{padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-sm)}.express-data-table-cell-content .express-data-dropdown-chip-remove{width:14px;height:14px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-dropdown-placeholder{font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-dropdown-add-button{display:flex;align-items:center;justify-content:center;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;font-size:var(--ex-font-lg);font-weight:300;transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-table-cell-content .express-data-dropdown-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-primary)}.express-data-table-cell-content .express-data-dropdown-popup{position:absolute;top:100%;right:0;left:0;z-index:1000;min-width:150px;max-height:200px;overflow-y:auto;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:0 0 var(--ex-radius-lg) var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);margin-top:0}.express-data-table-cell-content .express-data-dropdown-popup-item{padding:var(--ex-space-2) var(--ex-space-3);font-size:var(--ex-font-sm);color:var(--ex-text-primary);cursor:pointer;transition:background var(--ex-transition-fast)}.express-data-table-cell-content .express-data-dropdown-popup-item:hover{background:var(--ex-bg-tertiary)}.express-data-table-cell-content .express-data-dropdown-popup-item:first-child{border-radius:0}.express-data-table-cell-content .express-data-calculation-wrapper{flex:1;display:flex;border:none;border-radius:0;background:var(--ex-bg-secondary);min-height:40px}.express-data-table-cell-content .express-data-calculation-wrapper .express-data-input{padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);background:transparent!important;min-height:40px}.express-data-table-cell-content .express-data-calculation-wrapper .express-data-number-prefix,.express-data-table-cell-content .express-data-calculation-wrapper .express-data-number-suffix{display:flex;align-items:center;padding:0 8px;background:var(--ex-bg-tertiary);border-left:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-calculation-wrapper .express-data-number-prefix{border-left:none;border-right:1px solid var(--ex-border-light)}.express-data-table-cell-content .express-data-date-range-wrapper{flex:1;display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);border:none;border-radius:0;background:transparent;min-height:40px}.express-data-table-cell-content .express-data-date-range-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-date-range-wrapper:focus-within{background:var(--ex-bg-primary);box-shadow:inset 0 0 0 2px var(--ex-primary)}.express-data-table-cell-content .express-data-date-range-field{flex:1;min-width:0;gap:2px}.express-data-table-cell-content .express-data-date-range-label{font-size:var(--ex-font-xs);letter-spacing:.3px;margin-top:4px}.express-data-table-cell-content .express-data-date-range-field .express-data-input{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-sm);border:1px solid var(--ex-border-default);min-width:0;width:100%}.express-data-table-cell-content .express-data-date-range-separator{padding-top:12px;font-size:var(--ex-font-xs)}.express-data-table-cell-content .express-data-relationship-wrapper{flex:1;display:flex;align-items:stretch;min-height:40px;border:none;background:transparent;position:relative}.express-data-table-cell-content .express-data-relationship-wrapper:hover{background:var(--ex-bg-hover)}.express-data-table-cell-content .express-data-relationship-chips{flex:1;display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;padding:var(--ex-space-2) var(--ex-space-2);gap:var(--ex-space-1)}.express-data-table-cell-content .express-data-relationship-chip{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-xs);border-radius:var(--ex-radius-sm)}.express-data-table-cell-content .express-data-relationship-chip-remove{width:14px;height:14px;font-size:var(--ex-font-sm)}.express-data-table-cell-content .express-data-relationship-add-button{display:flex;align-items:center;justify-content:center;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--ex-border-light);border-radius:0;color:var(--ex-text-tertiary);cursor:pointer;flex-shrink:0;font-size:var(--ex-font-lg);transition:background var(--ex-transition-fast),color var(--ex-transition-fast)}.express-data-table-cell-content .express-data-relationship-add-button:hover{background:var(--ex-bg-tertiary);color:var(--ex-info)}.express-data-table-cell-content .express-data-relationship-add-button .material-icons{font-size:var(--ex-font-lg)}.express-data-table-cell-content .express-data-relationship-popup{position:absolute;top:100%;left:0;right:0;z-index:100;background:var(--ex-bg-primary);border:1px solid var(--ex-info);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);overflow:hidden}.express-data-actions-cell{padding:0!important}.express-data-actions-cell-content{display:flex;gap:var(--ex-space-1);justify-content:center;align-items:center;min-height:40px;height:100%;padding:0 6px}.express-data-delete-row-btn,.express-data-save-row-btn,.express-data-cancel-row-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--ex-radius-lg);color:var(--ex-text-tertiary);cursor:pointer;transition:background var(--ex-transition-fast),color var(--ex-transition-fast),border-color var(--ex-transition-fast)}.express-data-delete-row-btn:hover{background:var(--ex-danger-light);border-color:var(--ex-danger-border);color:var(--ex-danger)}.express-data-save-row-btn{color:var(--ex-success)}.express-data-save-row-btn:hover{background:var(--ex-success-light);border-color:var(--ex-success-border)}.express-data-cancel-row-btn:hover{background:var(--ex-bg-tertiary);border-color:var(--ex-border-light);color:var(--ex-text-secondary)}.express-data-adding-row{background:rgba(var(--ex-primary-rgb),.05)!important}.express-data-adding-row td{background:rgba(var(--ex-primary-rgb),.05)}.express-data-new-row-input{width:100%;padding:var(--ex-space-2) var(--ex-space-2);border:1px solid var(--ex-primary);border-radius:var(--ex-radius-lg);font-size:var(--ex-font-base);color:var(--ex-text-primary);background:var(--ex-bg-primary);box-sizing:border-box;transition:box-shadow .2s}.express-data-new-row-input:focus{outline:none;box-shadow:var(--ex-shadow-focus)}.express-data-empty-message{text-align:center;color:var(--ex-text-tertiary);font-size:var(--ex-font-base);padding:32px 16px!important;font-style:italic}.express-data-table tfoot{background:var(--ex-bg-secondary)}.express-data-table-footer{border-top:2px solid var(--ex-border-default)}.express-data-table-footer td{padding:var(--ex-space-2) var(--ex-space-2);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);border-bottom:none;border-right:1px solid var(--ex-border-light);height:auto}.express-data-table-footer td:last-child{border-right:none}.express-data-footer-name-cell{color:var(--ex-text-tertiary);font-weight:var(--ex-font-weight-medium);text-transform:uppercase;letter-spacing:.3px}.express-data-footer-cell{text-align:right;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,monospace}.express-data-footer-cell.express-data-col-checkbox{text-align:center}.express-data-footer-actions-cell{background:transparent}@media(max-width:768px){.express-data-table-header{flex-direction:column;align-items:flex-start;gap:var(--ex-space-3);padding:12px}.express-data-table-controls{width:100%;justify-content:space-between}.express-data-add-row-btn{flex:1;justify-content:center;padding:10px 14px}.express-data-table th{padding:var(--ex-space-2) var(--ex-space-2);font-size:.7em}.express-data-name-column{width:150px;min-width:150px}.express-data-name-input{font-size:var(--ex-font-sm);padding:var(--ex-space-2) var(--ex-space-2);min-height:36px}.express-data-name-cell-content,.express-data-actions-cell-content,.express-data-table-cell-content{min-height:36px}.express-data-table-cell-content .express-data-input,.express-data-table-cell-content .express-data-select,.express-data-table-cell-content .ex-input,.express-data-table-cell-content .ex-select,.express-data-table-cell-content .ex-textarea{font-size:var(--ex-font-sm);min-height:36px;padding:var(--ex-space-2) var(--ex-space-2)}.express-data-table-cell-content .ex-input-wrapper{min-height:36px}.express-data-table-cell-content .ex-date-picker-input{font-size:var(--ex-font-sm);min-height:36px;padding:var(--ex-space-2) var(--ex-space-2)}.express-data-table-cell-content .ex-switch{min-height:36px;padding:6px}}@media(max-width:480px){.express-data-table-container{border-radius:0;margin-left:-12px;margin-right:-12px;border-left:none;border-right:none}.express-data-table-header{padding:10px}.express-data-table-title{font-size:var(--ex-font-base)}.express-data-add-row-btn{font-size:var(--ex-font-sm);padding:var(--ex-space-2) var(--ex-space-3)}.express-data-scroll-btn{width:28px;height:28px}.express-data-table th{padding:var(--ex-space-2) var(--ex-space-2)}.express-data-name-column{width:120px;min-width:120px}.express-data-actions-column{width:44px;min-width:44px}.express-data-name-cell-content{min-height:36px}.express-data-name-input{padding:var(--ex-space-2) var(--ex-space-2);min-height:36px}.express-data-navigate-btn{width:32px}.express-data-delete-row-btn,.express-data-save-row-btn,.express-data-cancel-row-btn{width:24px;height:24px}.express-data-actions-cell-content{min-height:36px;padding:0 4px}}.capture-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal, 1000);animation:fadeIn var(--ex-transition-base, .2s) ease-out}.capture-dialog{background:var(--ex-bg-primary, #ffffff);border-radius:var(--ex-radius-xl, 12px);width:90%;max-width:500px;display:flex;flex-direction:column;box-shadow:var(--ex-shadow-2xl, 0 20px 60px rgba(0, 0, 0, .3));animation:slideUp .3s ease-out}.capture-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-4, 16px) var(--ex-space-5, 20px);border-bottom:1px solid var(--ex-border-light, #e0e0e0)}.capture-header h2{margin:0;font-size:var(--ex-font-lg, 18px);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #2d3748)}.capture-close-btn{background:none;border:none;color:var(--ex-text-tertiary, #718096);cursor:pointer;padding:var(--ex-space-1, 4px);display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:all var(--ex-transition-base, .2s)}.capture-close-btn:hover{background:var(--ex-bg-secondary, #f7fafc);color:var(--ex-text-primary, #2d3748)}.capture-body{padding:var(--ex-space-5, 20px);display:flex;flex-direction:column;gap:var(--ex-space-3, 12px)}.capture-inbox-info{display:flex;align-items:center;gap:var(--ex-space-2, 8px);font-size:var(--ex-font-xs, 13px);color:var(--ex-text-tertiary, #718096);margin:0;padding:var(--ex-space-2, 8px) var(--ex-space-3, 12px);background:var(--ex-bg-secondary, #f7fafc);border-radius:var(--ex-radius-md, 6px)}.capture-inbox-info .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-primary, #667eea)}.capture-inbox-info strong{color:var(--ex-text-primary, #2d3748)}.capture-textarea{width:100%;min-height:150px;padding:var(--ex-space-3, 12px);border:2px solid var(--ex-border-light, #e0e0e0);border-radius:var(--ex-radius-lg, 8px);font-size:var(--ex-font-sm, 14px);font-family:inherit;color:var(--ex-text-primary, #2d3748);resize:vertical;transition:border-color var(--ex-transition-base, .2s)}.capture-textarea:focus{outline:none;border-color:var(--ex-primary, #667eea)}.capture-textarea::placeholder{color:var(--ex-text-muted, #a0aec0)}.capture-hint{font-size:var(--ex-font-xs, 12px);color:var(--ex-text-muted, #a0aec0);margin:0;text-align:right}.capture-hint kbd{background:var(--ex-bg-tertiary, #edf2f7);padding:2px var(--ex-space-1-5, 6px);border-radius:var(--ex-radius-sm, 4px);font-family:inherit;font-size:var(--ex-font-2xs, 11px);color:var(--ex-text-secondary, #4a5568);border:1px solid var(--ex-border-light, #e2e8f0)}.capture-footer{display:flex;justify-content:flex-end;gap:var(--ex-space-3, 12px);padding:var(--ex-space-4, 16px) var(--ex-space-5, 20px);border-top:1px solid var(--ex-border-light, #e0e0e0)}.capture-cancel-btn{padding:var(--ex-space-2-5, 10px) var(--ex-space-5, 20px);background:var(--ex-bg-tertiary, #e2e8f0);color:var(--ex-text-secondary, #4a5568);border:none;border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-sm, 14px);font-weight:var(--ex-font-weight-medium, 500);cursor:pointer;transition:background var(--ex-transition-base, .2s)}.capture-cancel-btn:hover{background:var(--ex-bg-hover, #cbd5e0)}.capture-save-btn{padding:var(--ex-space-2-5, 10px) var(--ex-space-5, 20px);background:var(--ex-primary, #667eea);color:var(--ex-text-inverse, white);border:none;border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-sm, 14px);font-weight:var(--ex-font-weight-medium, 500);cursor:pointer;transition:background var(--ex-transition-base, .2s)}.capture-save-btn:hover:not(:disabled){background:var(--ex-primary-dark, #5568d3)}.capture-save-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.capture-dialog{width:95%;max-height:90vh}.capture-textarea{min-height:120px;font-size:var(--ex-font-base, 16px)}.capture-footer{flex-direction:column}.capture-cancel-btn,.capture-save-btn{width:100%;min-height:44px}}.link-preview{position:fixed;z-index:10000;width:320px;max-width:calc(100vw - var(--ex-space-8));background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);box-shadow:var(--ex-shadow-lg);overflow:hidden;animation:link-preview-fade-in var(--ex-transition-fast) ease-out}@keyframes link-preview-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.link-preview--pinned{box-shadow:var(--ex-shadow-xl);border-color:var(--ex-primary)}.link-preview--broken{border-color:var(--ex-warning)}.link-preview__header{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-tertiary);border-bottom:1px solid var(--ex-border-light)}.link-preview__icon{font-size:var(--ex-font-lg);color:var(--ex-text-secondary);flex-shrink:0}.link-preview__icon--broken{color:var(--ex-warning)}.link-preview__title{flex:1;font-weight:var(--ex-font-weight-semibold);font-size:var(--ex-font-sm);color:var(--ex-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-preview__title--broken{color:var(--ex-warning)}.link-preview__pin-btn,.link-preview__close-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;margin:0;border:none;background:transparent;color:var(--ex-text-tertiary);border-radius:var(--ex-radius-sm);cursor:pointer;transition:all var(--ex-transition-fast)}.link-preview__pin-btn:hover,.link-preview__close-btn:hover{background:var(--ex-bg-hover);color:var(--ex-text-secondary)}.link-preview__pin-btn .material-icon,.link-preview__close-btn .material-icon{font-size:var(--ex-font-base)}.link-preview__description{padding:var(--ex-space-2) var(--ex-space-4);font-size:var(--ex-font-xs);color:var(--ex-text-secondary);font-style:italic;border-bottom:1px solid var(--ex-border-light);background:var(--ex-bg-tertiary)}.link-preview__body{padding:var(--ex-space-3) var(--ex-space-4);min-height:60px;max-height:120px;overflow:hidden}.link-preview__excerpt{margin:0;font-size:var(--ex-font-sm);line-height:1.5;color:var(--ex-text-primary);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.link-preview__empty{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);font-style:italic}.link-preview__broken-message{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.link-preview__tags{display:flex;flex-wrap:wrap;gap:var(--ex-space-1-5);padding:var(--ex-space-2) var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.link-preview__tag{display:inline-block;padding:var(--ex-space-0-5) var(--ex-space-2);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-primary);background:var(--ex-info-light);border-radius:var(--ex-radius-full)}.link-preview__tag-more{display:inline-block;padding:var(--ex-space-0-5) var(--ex-space-2);font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.link-preview__footer{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-2-5) var(--ex-space-4);background:var(--ex-bg-tertiary);border-top:1px solid var(--ex-border-light)}.link-preview__date{display:flex;align-items:center;gap:var(--ex-space-1);font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.link-preview__date .material-icon{font-size:var(--ex-font-sm)}.link-preview__action{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1-5) var(--ex-space-3);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-primary);background:transparent;border:1px solid var(--ex-primary);border-radius:var(--ex-radius-md);cursor:pointer;transition:all var(--ex-transition-fast)}.link-preview__action:hover{background:var(--ex-primary);color:var(--ex-text-inverse)}.link-preview__action .material-icon{font-size:var(--ex-font-sm)}.link-preview--top:before,.link-preview--bottom:before{content:"";position:absolute;left:50%;transform:translate(-50%);border:8px solid transparent}.link-preview--top:before{bottom:-16px;border-top-color:var(--ex-border-default)}.link-preview--bottom:before{top:-16px;border-bottom-color:var(--ex-border-default)}@media(prefers-color-scheme:dark){.link-preview{background:var(--ex-bg-dark);border-color:var(--ex-border-dark)}.link-preview__header{background:var(--ex-bg-dark);border-bottom-color:var(--ex-border-dark)}.link-preview__title,.link-preview__body,.link-preview__excerpt{color:var(--ex-text-inverse)}.link-preview__footer{background:var(--ex-bg-dark);border-top-color:var(--ex-border-dark)}.link-preview__tags{border-top-color:var(--ex-border-dark)}.link-preview__description{background:var(--ex-bg-dark);border-bottom-color:var(--ex-border-dark)}}.global-stats-report-modal .ex-modal-content{max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.global-stats-report-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.global-stats-header{padding:0 0 var(--ex-space-3) 0;border-bottom:1px solid var(--ex-border-light);margin-bottom:var(--ex-space-3);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--ex-space-4)}.global-stats-meta{display:flex;flex-direction:column;gap:var(--ex-space-1)}.global-stats-actions{flex-shrink:0}.global-stats-progress{display:flex;align-items:center;gap:var(--ex-space-3);min-width:300px}.global-stats-progress-label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.global-stats-progress-bar{flex:1;min-width:100px}.global-stats-progress-count{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);white-space:nowrap}.global-stats-path{font-family:var(--font-mono, monospace);font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.global-stats-counts{font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.global-stats-sub-tabs{padding:var(--ex-space-2) 0 0 0}.global-stats-sub-tabs .ex-tabs{width:auto}.global-stats-sub-tabs .ex-tab-list{background:transparent;border:none;padding:0;gap:var(--ex-space-1);border-radius:0}.global-stats-sub-tabs .ex-tab-list:before{display:none}.global-stats-sub-tabs .ex-tab{flex:none;min-width:auto;padding:var(--ex-space-2) var(--ex-space-4);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);border-radius:var(--ex-radius-md);background:transparent;border:1px solid transparent}.global-stats-sub-tabs .ex-tab:hover:not(.ex-tab-active){color:var(--ex-text-primary);background:var(--ex-bg-secondary)}.global-stats-sub-tabs .ex-tab-active{color:var(--ex-text-primary);background:var(--ex-bg-secondary);border-color:var(--ex-border-light)}.global-stats-tab-content{flex:1;overflow-y:auto;padding:var(--ex-space-4) 0}.stats-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--ex-space-4)}.stats-overview-card{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);display:flex;flex-direction:column;gap:var(--ex-space-1)}.stats-overview-card-header{display:flex;align-items:center;gap:var(--ex-space-2);font-size:var(--ex-font-sm);color:var(--ex-text-secondary);margin-bottom:var(--ex-space-2)}.stats-overview-card-header .material-symbols-outlined{font-size:18px}.stats-overview-card-value{font-size:var(--ex-font-3xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);line-height:1}.stats-overview-card-label{font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.stats-overview-card-detail{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);margin-top:var(--ex-space-1)}.stats-section{display:flex;flex-direction:column;gap:var(--ex-space-5)}.stats-summary-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--ex-space-3)}.stats-summary-card{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-3) var(--ex-space-4);text-align:center}.stats-summary-value{font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);line-height:1.2}.stats-summary-label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin-top:var(--ex-space-1)}.stats-summary-detail{font-size:11px;color:var(--ex-text-tertiary);margin-top:var(--ex-space-1)}.stats-subsection-title{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin:0;padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}.stats-issues-grid{display:flex;flex-direction:column;gap:var(--ex-space-2)}.stats-issue-row{display:grid;grid-template-columns:160px 1fr 60px;gap:var(--ex-space-3);align-items:center}.stats-issue-info{display:flex;align-items:center;gap:var(--ex-space-2)}.stats-issue-dot{width:10px;height:10px;border-radius:var(--ex-radius-full);flex-shrink:0}.stats-issue-label{font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.stats-issue-bar-container{height:8px;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);overflow:hidden}.stats-issue-bar{height:100%;border-radius:var(--ex-radius-sm);transition:width var(--ex-transition-base)}.stats-issue-count{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);text-align:right}.stats-trajectory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ex-space-3)}.stats-trajectory-item{display:flex;flex-direction:column;gap:var(--ex-space-1-5)}.stats-trajectory-header{display:flex;align-items:center;gap:var(--ex-space-2)}.stats-trajectory-dot{width:10px;height:10px;border-radius:var(--ex-radius-full);flex-shrink:0}.stats-trajectory-label{font-size:var(--ex-font-sm);color:var(--ex-text-primary);flex:1}.stats-trajectory-count{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.stats-trajectory-bar-container{height:6px;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);overflow:hidden}.stats-trajectory-bar{height:100%;border-radius:var(--ex-radius-sm);transition:width var(--ex-transition-base)}.stats-characters-list{display:flex;flex-direction:column;gap:var(--ex-space-2-5)}.stats-character-row{display:grid;grid-template-columns:1fr 200px 80px;gap:var(--ex-space-3);align-items:center}.stats-character-info{display:flex;flex-direction:column;gap:2px;min-width:0}.stats-character-name{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-character-meta{font-size:11px;color:var(--ex-text-tertiary)}.stats-character-bar-container{height:8px;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-sm);overflow:hidden}.stats-character-bar{height:100%;border-radius:var(--ex-radius-sm);transition:width var(--ex-transition-base)}.stats-character-count{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);text-align:right;white-space:nowrap}.stats-more-indicator{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);text-align:center;padding:var(--ex-space-2)}.stats-dialogue-indicator{padding:var(--ex-space-4) 0}.stats-dialogue-scale{display:flex;flex-direction:column;gap:var(--ex-space-2)}.stats-dialogue-scale-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--ex-text-tertiary)}.stats-dialogue-scale-bar{position:relative;height:24px;background:linear-gradient(to right,var(--ex-danger) 0%,var(--ex-warning) 25%,var(--ex-success) 50%,var(--ex-warning) 75%,var(--ex-danger) 100%);border-radius:var(--ex-radius-xl);opacity:.3}.stats-dialogue-range{position:absolute;top:var(--ex-space-1);height:16px;background:#3b82f64d;border-radius:var(--ex-radius-lg)}.stats-dialogue-avg-marker{position:absolute;top:-4px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.stats-dialogue-avg-line{width:2px;height:32px;background:var(--ex-primary);border-radius:1px}.stats-dialogue-avg-label{background:var(--ex-primary);color:var(--ex-text-inverse);font-size:11px;font-weight:var(--ex-font-weight-medium);padding:2px var(--ex-space-1-5);border-radius:var(--ex-radius-sm);margin-top:var(--ex-space-1);white-space:nowrap}.stats-notes-table-container{overflow-x:auto;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg)}.stats-notes-table{width:100%;border-collapse:collapse;font-size:var(--ex-font-sm)}.stats-notes-table th,.stats-notes-table td{padding:var(--ex-space-2) var(--ex-space-3);text-align:left;border-bottom:1px solid var(--ex-border-light)}.stats-notes-table th{background:var(--ex-bg-secondary);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-secondary);position:sticky;top:0}.stats-notes-table tbody tr:hover{background:var(--ex-bg-hover)}.stats-notes-table tbody tr:last-child td{border-bottom:none}.stats-col-number{text-align:right!important;font-variant-numeric:tabular-nums}.stats-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-12) var(--ex-space-6);text-align:center;color:var(--ex-text-tertiary)}.stats-no-data .material-symbols-outlined{font-size:48px;margin-bottom:var(--ex-space-4);opacity:.5}.stats-no-data p{margin:0;font-size:var(--ex-font-sm)}.stats-no-data-hint{font-size:var(--ex-font-sm);margin-top:var(--ex-space-2)!important;color:var(--ex-text-tertiary)}.stats-graph-container{background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);margin-bottom:var(--ex-space-2);position:relative}.stats-graph-svg{width:100%;height:auto;max-height:220px}.stats-graph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-10) var(--ex-space-5);color:var(--ex-text-tertiary);gap:var(--ex-space-2)}.stats-graph-empty .material-icon{font-size:32px;opacity:.5}.stats-graph-legend{display:flex;justify-content:center;gap:var(--ex-space-6);margin-top:var(--ex-space-3);padding-top:var(--ex-space-3);border-top:1px solid var(--ex-border-light)}.stats-graph-legend-item{display:flex;align-items:center;gap:var(--ex-space-2);font-size:var(--ex-font-sm);color:var(--ex-text-secondary)}.stats-graph-legend-line{width:24px;height:3px;border-radius:2px}.stats-graph-legend-label{font-weight:var(--ex-font-weight-medium)}.stats-graph-tooltip{position:absolute;transform:translateY(-100%) translateY(-8px);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);padding:var(--ex-space-2) var(--ex-space-3);box-shadow:var(--ex-shadow-lg);pointer-events:none;z-index:var(--ex-z-modal);min-width:120px;white-space:nowrap}.stats-graph-tooltip-title{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);margin-bottom:var(--ex-space-1);max-width:180px;overflow:hidden;text-overflow:ellipsis}.stats-graph-tooltip-value{font-size:var(--ex-font-sm);color:var(--ex-text-secondary);display:flex;gap:var(--ex-space-1-5);align-items:center}.stats-graph-tooltip-label{font-weight:var(--ex-font-weight-semibold)}.stats-graph-description{padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-md);margin-top:var(--ex-space-3)}.stats-graph-description p{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-secondary);line-height:1.5}@media(prefers-color-scheme:dark){.stats-overview-card,.stats-summary-card{background:var(--ex-bg-secondary)}.stats-issue-bar-container,.stats-trajectory-bar-container,.stats-character-bar-container{background:var(--ex-bg-tertiary)}.stats-notes-table th{background:var(--ex-bg-secondary)}.stats-notes-table-container{border-color:var(--ex-border-default)}.global-stats-sub-tabs .ex-tab:hover:not(.ex-tab-active){background:var(--ex-bg-secondary)}.global-stats-sub-tabs .ex-tab-active{background:var(--ex-bg-secondary);border-color:var(--ex-border-default)}.stats-graph-container{background:var(--ex-bg-secondary)}.stats-graph-legend{border-top-color:var(--ex-border-default)}.stats-graph-description{background:var(--ex-bg-tertiary)}.stats-graph-svg text{fill:var(--ex-text-secondary)}.stats-graph-svg line{stroke:var(--ex-border-default)}.stats-graph-tooltip{background:var(--ex-bg-secondary);border-color:var(--ex-border-default);box-shadow:var(--ex-shadow-xl)}.stats-graph-tooltip-title{color:var(--ex-text-primary)}.stats-graph-tooltip-value{color:var(--ex-text-secondary)}}.advanced-search{display:flex;flex-direction:column;height:100%;overflow:hidden;color:var(--ex-text-primary)}.advanced-search-header{display:flex;flex-direction:column;gap:var(--ex-space-2);padding:var(--ex-space-3);border-bottom:1px solid var(--ex-border-light)}.advanced-search-input-container{flex:1;display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-2) var(--ex-space-3);background-color:#ffffff1a;border-radius:var(--ex-radius-lg);border:1px solid transparent;transition:border-color var(--ex-transition-fast),box-shadow var(--ex-transition-fast)}.advanced-search-input-container:focus-within{border-color:var(--ex-border-light);box-shadow:var(--ex-shadow-focus)}.advanced-search-input-container .material-icon{font-size:var(--ex-font-xl);color:var(--ex-text-primary)}.advanced-search-input{flex:1;padding:var(--ex-space-2) var(--ex-space-3);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background:var(--ex-bg-primary);font-size:var(--ex-font-base);color:var(--ex-text-primary);outline:none}.advanced-search-input::placeholder{color:var(--ex-text-secondary)}.advanced-search-clear{display:flex;align-items:center;justify-content:center;width:var(--ex-space-6);height:var(--ex-space-6);padding:0;border:none;background:none;border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);cursor:pointer;transition:background-color var(--ex-transition-fast)}.advanced-search-clear:hover{background-color:#ffffff26}.advanced-search-actions{display:flex;align-items:center;gap:var(--ex-space-2)}.advanced-search-filter-toggle{display:flex;align-items:center;justify-content:center;position:relative;width:36px;height:36px;padding:0;border:1px solid var(--ex-border-light);background-color:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);color:var(--ex-text-primary);cursor:pointer;transition:all var(--ex-transition-fast)}.advanced-search-filter-toggle:hover{background-color:var(--ex-bg-primary)}.advanced-search-filter-toggle.active{background-color:var(--ex-bg-dark);border-color:var(--ex-border-light);color:var(--ex-text-inverse)}.advanced-search-filter-toggle .filter-count{position:absolute;top:-4px;right:-4px;min-width:var(--ex-space-4);height:var(--ex-space-4);padding:0 var(--ex-space-1);font-size:10px;font-weight:var(--ex-font-weight-semibold);line-height:var(--ex-space-4);text-align:center;background-color:var(--ex-primary);color:var(--ex-text-primary);border-radius:var(--ex-radius-lg)}.advanced-search-filter-toggle.active .filter-count{background-color:var(--ex-text-inverse);color:var(--ex-primary)}.advanced-search-sort{padding:var(--ex-space-2) var(--ex-space-3);font-size:13px;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);background-color:var(--ex-bg-primary);color:var(--ex-text-primary);cursor:pointer}.advanced-search-sort:focus{outline:none;border-color:var(--ex-primary)}.advanced-search-sort option{background-color:var(--ex-bg-dark);color:var(--ex-text-primary)}.advanced-search-filters{padding:var(--ex-space-3);border-bottom:1px solid var(--ex-border-light);background-color:var(--ex-bg-dark);max-height:250px;overflow-y:auto}.filters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-3)}.filters-header h4{margin:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);text-transform:uppercase;color:var(--ex-text-inverse);letter-spacing:.5px}.clear-filters-btn{padding:var(--ex-space-1) var(--ex-space-2);font-size:var(--ex-font-xs);border:none;background:none;color:var(--ex-text-inverse);cursor:pointer;border-radius:var(--ex-radius-sm);transition:background-color var(--ex-transition-fast)}.clear-filters-btn:hover{background-color:rgba(var(--ex-primary-rgb),.2)}.filter-section{margin-bottom:var(--ex-space-3)}.filter-section:last-child{margin-bottom:0}.filter-section h5{margin:0 0 var(--ex-space-2) 0;font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:#fff9}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--ex-space-2)}.filter-chip{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-1) 10px;font-size:var(--ex-font-sm);border:1px solid var(--ex-border-light);background-color:var(--ex-bg-secondary);border-radius:var(--ex-radius-2xl);color:var(--ex-text-primary);cursor:pointer;transition:all var(--ex-transition-fast)}.filter-chip:hover{border-color:var(--ex-border-light);background-color:var(--ex-bg-primary)}.filter-chip.active{background-color:var(--ex-bg-dark);border-color:var(--ex-border-light);color:var(--ex-text-inverse)}.filter-chip .chip-label{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip .chip-count{font-size:10px;opacity:.7}.filter-chip .status-dot{width:var(--ex-space-2);height:var(--ex-space-2);border-radius:var(--ex-radius-full)}.date-range-inputs{display:flex;align-items:center;gap:var(--ex-space-2)}.date-input{flex:1;padding:var(--ex-space-2) 10px;font-size:13px;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);background-color:var(--ex-bg-secondary);color:var(--ex-text-primary)}.date-input:focus{outline:none;border-color:var(--ex-border-light);background:var(--ex-bg-primary)}.date-separator{font-size:var(--ex-font-sm);color:var(--ex-text-inverse)}.advanced-search-results{flex:1;overflow-y:auto;padding:var(--ex-space-3)}.search-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--ex-text-secondary)}.search-empty-state .material-icon{font-size:48px;opacity:.3;margin-bottom:var(--ex-space-3)}.search-empty-state p{margin:0 0 var(--ex-space-1) 0;font-size:var(--ex-font-base)}.search-empty-state .hint{font-size:var(--ex-font-sm);opacity:.7}.results-count{font-size:var(--ex-font-sm);color:var(--ex-text-primary);margin-bottom:var(--ex-space-2)}.results-list{display:flex;flex-direction:column;gap:var(--ex-space-2)}.search-result{padding:10px;background-color:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);cursor:pointer;transition:all var(--ex-transition-fast)}.search-result:hover,.search-result.selected{border-color:var(--ex-border-light);background-color:var(--ex-bg-primary)}.result-header{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.result-icon{font-size:var(--ex-font-md);color:var(--ex-text-primary)}.result-name{flex:1;font-size:13px;font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-path{font-size:10px;color:var(--ex-text-secondary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-matches{margin-bottom:var(--ex-space-2)}.result-match{display:flex;align-items:flex-start;gap:var(--ex-space-2);margin-bottom:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);background-color:var(--ex-bg-dark);border-radius:var(--ex-radius-sm)}.result-match .match-icon{font-size:var(--ex-font-base);color:var(--ex-text-inverse);margin-top:2px}.result-match .match-context{flex:1;margin:auto 0;font-size:var(--ex-font-xs);color:var(--ex-text-inverse);font-weight:var(--ex-font-weight-semibold);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.more-matches{font-size:10px;color:#ffffff80;font-style:italic;margin-top:var(--ex-space-1)}.result-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-2)}.meta-tags{display:flex;flex-wrap:wrap;gap:var(--ex-space-1)}.meta-tag{font-size:10px;padding:2px var(--ex-space-2);background-color:rgba(var(--ex-primary-rgb),.3);color:var(--ex-text-inverse);border-radius:var(--ex-radius-sm)}.meta-more,.meta-date{font-size:10px;color:#ffffff80}.tab-toggle-indicator{display:inline-flex;align-items:center;justify-content:center;width:var(--ex-font-lg);height:var(--ex-font-lg);flex-shrink:0}.tab-toggle-circle{width:var(--ex-font-base);height:var(--ex-font-base);border-radius:var(--ex-radius-full);border:2px solid var(--ex-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:border-color var(--ex-transition-fast),background-color var(--ex-transition-fast);box-sizing:border-box}.tab-toggle-circle.enabled{border-color:var(--ex-success)}.tab-toggle-circle.required,.tab-toggle-circle.required.enabled{border-color:var(--ex-text-tertiary)}.tab-toggle-circle.disabled{opacity:.5}.tab-toggle-inner{width:var(--ex-space-2);height:var(--ex-space-2);border-radius:var(--ex-radius-full);background-color:var(--ex-success);transition:background-color var(--ex-transition-fast)}.tab-toggle-circle.required .tab-toggle-inner{background-color:var(--ex-text-tertiary)}.tab-config-context-menu .ex-context-menu-item{display:flex;align-items:center;gap:var(--ex-space-2)}.tab-config-context-menu .ex-context-menu-item[data-item-id=info-count]{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);justify-content:center;padding:var(--ex-space-1) var(--ex-space-3)}.configurable-tabs-wrapper{display:contents}.settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--ex-z-modal);animation:fadeIn var(--ex-transition-fast) ease-out}.settings-panel{background:var(--ex-bg-primary);border-radius:var(--ex-radius-xl);width:90%;max-width:900px;height:80vh;max-height:700px;display:flex;flex-direction:column;box-shadow:var(--ex-shadow-2xl);animation:slideUp var(--ex-transition-base) ease-out}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-5) var(--ex-space-6);border-bottom:1px solid var(--ex-border-light)}.settings-header h2{margin:0;font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.settings-close-btn{background:none;border:none;font-size:var(--ex-font-3xl);color:var(--ex-text-tertiary);cursor:pointer;padding:0;width:var(--ex-space-8);height:var(--ex-space-8);display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm);transition:all var(--ex-transition-fast)}.settings-close-btn:hover{background:var(--ex-bg-secondary);color:var(--ex-text-primary)}.settings-body{display:flex;flex:1;overflow:hidden}.settings-menu{width:200px;border-right:1px solid var(--ex-border-light);padding:var(--ex-space-4) 0;overflow-y:auto;background:var(--ex-bg-secondary)}.settings-menu-item{width:100%;padding:var(--ex-space-3) var(--ex-space-6);text-align:left;background:none;border:none;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary);cursor:pointer;transition:all var(--ex-transition-fast);border-left:3px solid transparent}.settings-menu-item:hover{background:var(--ex-bg-hover);color:var(--ex-text-primary)}.settings-menu-item.active{background:var(--ex-bg-primary);color:var(--ex-primary);border-left-color:var(--ex-primary)}.settings-content{flex:1;padding:var(--ex-space-6);overflow-y:auto}.settings-section h3{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-lg);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.settings-placeholder{color:var(--ex-text-tertiary);font-size:var(--ex-font-sm);margin:0}.template-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.template-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.template-control{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg)}.template-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:var(--ex-space-3)}.toggle-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.template-path-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.template-path-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.template-input-wrapper{position:relative}.template-path-input{width:100%;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.template-path-input:focus{outline:none;border-color:var(--ex-primary)}.template-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:var(--ex-space-1);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);max-height:200px;overflow-y:auto;z-index:var(--ex-z-dropdown)}.autocomplete-item{padding:var(--ex-space-2) var(--ex-space-3);cursor:pointer;font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:background var(--ex-transition-fast)}.autocomplete-item:hover,.autocomplete-item.selected{background:var(--ex-bg-hover)}.autocomplete-item.selected{background:var(--ex-info-light);color:var(--ex-primary)}.template-hint{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);margin:0;line-height:1.5}.template-variables-section{margin-top:var(--ex-space-4);padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:1px solid var(--ex-border-light)}.template-variables-toggle{background:none;border:none;color:var(--ex-primary);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;padding:0;display:flex;align-items:center;gap:var(--ex-space-2);transition:color var(--ex-transition-fast)}.template-variables-toggle:hover{color:var(--ex-secondary)}.template-variables-list{margin-top:var(--ex-space-3);display:flex;flex-direction:column;gap:var(--ex-space-2)}.template-variable-item{display:flex;flex-direction:column;gap:var(--ex-space-1);padding:var(--ex-space-2);background:var(--ex-bg-primary);border-radius:var(--ex-radius-sm);border:1px solid var(--ex-border-light)}.template-variable-code{font-family:Courier New,monospace;font-size:var(--ex-font-xs);color:var(--ex-primary);font-weight:var(--ex-font-weight-semibold);background:var(--ex-bg-hover);padding:2px var(--ex-space-1);border-radius:var(--ex-radius-sm);align-self:flex-start}.template-variable-desc{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);line-height:1.4}.template-actions{display:flex;justify-content:flex-end;padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.template-save-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.template-save-btn:hover{background:var(--ex-secondary)}.autonumber-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.autonumber-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.autonumber-control{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg)}.autonumber-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:var(--ex-space-3)}.autonumber-options{display:flex;flex-direction:column;gap:var(--ex-space-5)}.autonumber-style-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.autonumber-style-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.autonumber-style-select{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;transition:border-color var(--ex-transition-fast)}.autonumber-style-select:focus{outline:none;border-color:var(--ex-primary)}.autonumber-affix-controls{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-4)}.autonumber-prefix-control,.autonumber-suffix-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.autonumber-prefix-control label,.autonumber-suffix-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.autonumber-prefix-input,.autonumber-suffix-input{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.autonumber-prefix-input:focus,.autonumber-suffix-input:focus{outline:none;border-color:var(--ex-primary)}.autonumber-continue-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.autonumber-continue-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.autonumber-input-wrapper{position:relative}.autonumber-continue-input{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--ex-radius-sm);color:var(--ex-text-primary);padding:var(--ex-space-3) var(--ex-space-4);transition:border-color var(--ex-transition-fast)}.autonumber-continue-input:focus{outline:none;border-color:var(--ex-primary)}.autonumber-autocomplete{position:absolute;top:100%;left:0;right:0;margin-top:var(--ex-space-1);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);box-shadow:var(--ex-shadow-lg);max-height:200px;overflow-y:auto;z-index:var(--ex-z-dropdown)}.autonumber-hint{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);margin:0;line-height:1.5}.autonumber-actions{display:flex;justify-content:flex-end;padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.autonumber-save-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.autonumber-save-btn:hover{background:var(--ex-secondary)}.metadata-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.metadata-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.metadata-fields-list{display:flex;flex-direction:column;gap:var(--ex-space-3)}.metadata-empty{color:var(--ex-text-tertiary);font-size:var(--ex-font-sm);text-align:center;padding:var(--ex-space-8);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:2px dashed var(--ex-border-light);margin:0}.metadata-field-item{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);display:flex;flex-direction:column;gap:var(--ex-space-3)}.metadata-field-header{display:flex;gap:var(--ex-space-3);align-items:flex-start}.metadata-field-controls{display:flex;flex-direction:column;gap:var(--ex-space-1)}.metadata-move-btn{width:28px;height:28px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);cursor:pointer;font-size:var(--ex-font-xs);display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast)}.metadata-move-btn:hover:not(:disabled){background:var(--ex-bg-hover);border-color:var(--ex-primary);color:var(--ex-primary)}.metadata-move-btn:disabled{opacity:.3;cursor:not-allowed}.metadata-field-info{flex:1;display:flex;gap:var(--ex-space-3);align-items:center}.metadata-field-name-input{flex:1;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium);transition:border-color var(--ex-transition-fast)}.metadata-field-name-input:focus{outline:none;border-color:var(--ex-primary)}.metadata-field-type-select{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;transition:border-color var(--ex-transition-fast);min-width:140px}.metadata-field-type-select:focus{outline:none;border-color:var(--ex-primary)}.metadata-delete-btn{width:var(--ex-space-8);height:var(--ex-space-8);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-danger);font-size:var(--ex-font-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast)}.metadata-delete-btn:hover{background:var(--ex-danger-light);border-color:var(--ex-danger)}.metadata-field-default{display:flex;flex-direction:column;gap:var(--ex-space-1)}.metadata-field-default label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.metadata-field-default-input{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast);background:var(--ex-bg-primary)}.metadata-field-default-input:focus{outline:none;border-color:var(--ex-primary)}.metadata-actions{display:flex;justify-content:space-between;padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light);gap:var(--ex-space-3)}.metadata-add-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-bg-primary);color:var(--ex-primary);border:2px solid var(--ex-primary);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.metadata-add-btn:hover{background:var(--ex-primary);color:var(--ex-text-inverse)}.metadata-save-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.metadata-save-btn:hover{background:var(--ex-secondary)}@media(max-width:768px){.settings-panel{width:95%;height:90vh;max-height:none}.settings-header{padding:var(--ex-space-4) var(--ex-space-5)}.settings-header h2{font-size:var(--ex-font-xl)}.settings-close-btn{width:44px;height:44px;font-size:var(--ex-font-2xl)}.settings-menu{width:150px}.settings-menu-item{padding:var(--ex-space-3) var(--ex-space-4);font-size:var(--ex-font-xs);min-height:44px}.settings-content{padding:var(--ex-space-4)}.autonumber-affix-controls{grid-template-columns:1fr}.metadata-field-info{flex-direction:column;align-items:stretch}.metadata-actions{flex-direction:column}.table-column-info{flex-direction:column;align-items:stretch}.table-actions{flex-direction:column}.template-path-input,.autonumber-style-select,.autonumber-prefix-input,.autonumber-suffix-input,.autonumber-continue-input,.table-title-input input,.metadata-field-name-input,.metadata-field-type-select,.table-column-name-input,.table-column-type-select{min-height:44px;font-size:var(--ex-font-base)}.template-save-btn,.autonumber-save-btn,.metadata-add-btn,.metadata-save-btn,.table-add-btn,.table-save-btn{min-height:44px;padding:var(--ex-space-3) var(--ex-space-5)}.metadata-move-btn,.table-move-btn{width:36px;height:36px}.metadata-delete-btn,.table-delete-btn{width:44px;height:44px}.dropdown-config{grid-template-columns:1fr;gap:var(--ex-space-3)}.dropdown-divider{padding:var(--ex-space-2) 0}.dropdown-divider:before{top:50%;bottom:auto;left:0;right:0;width:100%;height:1px}}@media(max-width:480px){.settings-panel{width:100%;height:100%;max-height:100vh;border-radius:0}.settings-header{padding:var(--ex-space-3) var(--ex-space-4)}.settings-header h2{font-size:var(--ex-font-lg)}.settings-body{flex-direction:column}.settings-menu{width:100%;border-right:none;border-bottom:1px solid var(--ex-border-light);padding:var(--ex-space-2) 0;flex-direction:row;display:flex;overflow-x:auto;flex-shrink:0}.settings-menu-item{padding:var(--ex-space-2) var(--ex-space-4);white-space:nowrap;border-left:none;border-bottom:3px solid transparent;flex-shrink:0}.settings-menu-item.active{border-left-color:transparent;border-bottom-color:var(--ex-primary)}.settings-content{padding:var(--ex-space-3);flex:1;overflow-y:auto}.settings-section h3{font-size:var(--ex-font-base)}.template-control,.autonumber-control,.table-control{padding:var(--ex-space-3)}.template-toggle,.autonumber-toggle,.table-toggle{gap:var(--ex-space-2)}.toggle-label{font-size:var(--ex-font-xs)}.metadata-field-item,.table-column-item{padding:var(--ex-space-3);gap:var(--ex-space-2)}.metadata-field-header,.table-column-header{flex-wrap:wrap;gap:var(--ex-space-2)}.metadata-field-controls,.table-column-controls{flex-direction:row;gap:var(--ex-space-1)}.metadata-field-default,.table-column-default{width:100%}.number-config-row,.timer-config-row{grid-template-columns:1fr}.metadata-actions,.table-actions,.template-actions,.autonumber-actions{gap:var(--ex-space-2)}.metadata-add-btn,.table-add-btn,.metadata-save-btn,.table-save-btn{width:100%}.template-variables-section{padding:var(--ex-space-3);margin-top:var(--ex-space-3)}.template-variable-item{padding:var(--ex-space-1)}.template-variable-code{font-size:var(--ex-font-xs)}.template-variable-desc{font-size:11px}}.table-settings{display:flex;flex-direction:column;gap:var(--ex-space-5)}.table-description{color:var(--ex-text-secondary);font-size:var(--ex-font-sm);line-height:1.6;margin:0}.table-control{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg)}.table-toggle{display:flex;align-items:center;cursor:pointer;gap:var(--ex-space-3)}.table-toggle input[type=checkbox]{width:var(--ex-space-5);height:var(--ex-space-5);cursor:pointer}.table-config{display:flex;flex-direction:column;gap:var(--ex-space-5)}.table-title-control{display:flex;flex-direction:column;gap:var(--ex-space-2)}.table-title-control label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.table-title-input{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.table-title-input:focus{outline:none;border-color:var(--ex-primary)}.table-columns-section h4{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.table-columns-list{display:flex;flex-direction:column;gap:var(--ex-space-3)}.table-empty{color:var(--ex-text-tertiary);font-size:var(--ex-font-sm);text-align:center;padding:var(--ex-space-8);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:2px dashed var(--ex-border-light);margin:0}.table-column-item{padding:var(--ex-space-4);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);display:flex;flex-direction:column;gap:var(--ex-space-3)}.table-column-header{display:flex;gap:var(--ex-space-3);align-items:flex-start}.table-column-controls{display:flex;flex-direction:column;gap:var(--ex-space-1)}.table-move-btn{width:28px;height:28px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-text-secondary);cursor:pointer;font-size:var(--ex-font-xs);display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast)}.table-move-btn:hover:not(:disabled){background:var(--ex-bg-hover);border-color:var(--ex-primary);color:var(--ex-primary)}.table-move-btn:disabled{opacity:.3;cursor:not-allowed}.table-column-info{flex:1;display:flex;gap:var(--ex-space-3);align-items:center}.table-column-name-input{flex:1;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium);transition:border-color var(--ex-transition-fast)}.table-column-name-input:focus{outline:none;border-color:var(--ex-primary)}.table-column-type-select{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;transition:border-color var(--ex-transition-fast);min-width:140px}.table-column-type-select:focus{outline:none;border-color:var(--ex-primary)}.table-delete-btn{width:var(--ex-space-8);height:var(--ex-space-8);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-danger);font-size:var(--ex-font-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast)}.table-delete-btn:hover{background:var(--ex-danger-light);border-color:var(--ex-danger)}.table-column-default{display:flex;flex-direction:column;gap:var(--ex-space-1)}.table-column-default label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.table-column-default-input{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast);background:var(--ex-bg-primary)}.table-column-default-input:focus{outline:none;border-color:var(--ex-primary)}.table-actions{display:flex;justify-content:space-between;padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light);gap:var(--ex-space-3)}.table-add-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-bg-primary);color:var(--ex-primary);border:2px solid var(--ex-primary);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:all var(--ex-transition-fast)}.table-add-btn:hover{background:var(--ex-primary);color:var(--ex-text-inverse)}.table-save-btn{padding:var(--ex-space-2) var(--ex-space-5);background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;transition:background var(--ex-transition-fast)}.table-save-btn:hover{background:var(--ex-secondary)}.number-config{display:flex;flex-direction:column;gap:var(--ex-space-3);padding:var(--ex-space-3);background:var(--ex-bg-primary);border-radius:var(--ex-radius-md);border:1px solid var(--ex-border-light)}.number-config-formula{display:flex;flex-direction:column;gap:var(--ex-space-1)}.number-config-formula label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.number-config-options{display:flex;flex-direction:column;gap:var(--ex-space-2)}.number-config-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-3)}.number-config-field{display:flex;flex-direction:column;gap:var(--ex-space-1)}.number-config-field label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-tertiary)}.number-config-select,.number-config-input{padding:var(--ex-space-2) var(--ex-space-2);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);color:var(--ex-text-primary);background:var(--ex-bg-secondary);transition:border-color var(--ex-transition-fast)}.number-config-select:focus,.number-config-input:focus{outline:none;border-color:var(--ex-primary);background:var(--ex-bg-primary)}.number-config-input::placeholder{color:var(--ex-text-muted)}.number-config-default{display:flex;flex-direction:column;gap:var(--ex-space-1);padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}.number-config-default label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}@media(max-width:480px){.number-config-row{grid-template-columns:1fr}}.timer-config{display:flex;flex-direction:column;gap:var(--ex-space-3);padding:var(--ex-space-3);background:var(--ex-bg-primary);border-radius:var(--ex-radius-md);border:1px solid var(--ex-border-light)}.timer-config-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--ex-space-3)}.timer-config-field{display:flex;flex-direction:column;gap:var(--ex-space-1)}.timer-config-field label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-tertiary)}.timer-config-select,.timer-config-input{padding:var(--ex-space-2) var(--ex-space-2);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);color:var(--ex-text-primary);background:var(--ex-bg-secondary);transition:border-color var(--ex-transition-fast)}.timer-config-select:focus,.timer-config-input:focus{outline:none;border-color:var(--ex-primary);background:var(--ex-bg-primary)}.timer-config-input::placeholder{color:var(--ex-text-muted)}.timer-config-hint{font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);font-style:italic;padding:var(--ex-space-2);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-sm);border-left:3px solid var(--ex-success)}@media(max-width:480px){.timer-config-row{grid-template-columns:1fr}}.dropdown-config{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--ex-space-4);align-items:start;padding:var(--ex-space-4);background:var(--ex-bg-primary);border-radius:var(--ex-radius-md);border:1px solid var(--ex-border-light)}.dropdown-source-type{display:flex;flex-direction:column;gap:var(--ex-space-1);margin-bottom:var(--ex-space-3)}.dropdown-source-type label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.dropdown-source-type-select{padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;transition:border-color var(--ex-transition-fast)}.dropdown-source-type-select:focus{outline:none;border-color:var(--ex-primary)}.dropdown-source-table,.dropdown-source-metadata,.dropdown-manual-options{display:flex;flex-direction:column;gap:var(--ex-space-2)}.dropdown-source-table label,.dropdown-source-metadata label,.dropdown-manual-options label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.dropdown-source-selectors{display:flex;flex-direction:column;gap:var(--ex-space-2)}.dropdown-source-row{display:flex;gap:var(--ex-space-2)}.dropdown-source-select{flex:1;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);color:var(--ex-text-primary);background:var(--ex-bg-primary);cursor:pointer;transition:border-color var(--ex-transition-fast)}.dropdown-source-select:focus{outline:none;border-color:var(--ex-primary)}.dropdown-source-clear{padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-xs);color:var(--ex-text-tertiary);cursor:pointer;transition:all var(--ex-transition-fast);align-self:flex-start}.dropdown-source-clear:hover{background:var(--ex-bg-hover);color:var(--ex-danger);border-color:var(--ex-danger)}.dropdown-source-preview{font-size:var(--ex-font-xs);color:var(--ex-success);margin:var(--ex-space-1) 0 0 0;font-style:italic}.dropdown-hint{font-size:11px;color:var(--ex-text-tertiary);margin:0;line-height:1.4}.dropdown-divider{display:flex;align-items:center;justify-content:center;position:relative;padding:0 var(--ex-space-2)}.dropdown-divider:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--ex-border-light)}.dropdown-divider-text{background:var(--ex-bg-secondary);padding:var(--ex-space-2) var(--ex-space-3);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-tertiary);text-transform:uppercase;letter-spacing:.5px;z-index:1;border-radius:var(--ex-radius-sm)}.dropdown-options-input-row{display:flex;gap:var(--ex-space-2)}.dropdown-option-input{flex:1;padding:var(--ex-space-2) var(--ex-space-3);border:2px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-sm);color:var(--ex-text-primary);transition:border-color var(--ex-transition-fast)}.dropdown-option-input:focus{outline:none;border-color:var(--ex-primary)}.dropdown-add-option-btn{width:36px;height:36px;background:var(--ex-primary);color:var(--ex-text-inverse);border:none;border-radius:var(--ex-radius-md);font-size:var(--ex-font-xl);font-weight:var(--ex-font-weight-medium);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--ex-transition-fast)}.dropdown-add-option-btn:hover{background:var(--ex-secondary)}.dropdown-options-list{display:flex;flex-direction:column;gap:var(--ex-space-1);max-height:150px;overflow-y:auto;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);background:var(--ex-bg-secondary);min-height:60px}.dropdown-options-list:empty:before{content:"No options added";display:block;padding:var(--ex-space-4);text-align:center;color:var(--ex-text-muted);font-size:var(--ex-font-xs);font-style:italic}.dropdown-option-item{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-primary);border-bottom:1px solid var(--ex-border-light)}.dropdown-option-item:last-child{border-bottom:none}.dropdown-option-item span{font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.dropdown-option-remove{width:var(--ex-space-6);height:var(--ex-space-6);background:none;border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-sm);color:var(--ex-danger);font-size:var(--ex-font-base);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ex-transition-fast)}.dropdown-option-remove:hover{background:var(--ex-danger-light);border-color:var(--ex-danger)}@media(max-width:768px){.dropdown-config{grid-template-columns:1fr;gap:var(--ex-space-3)}.dropdown-divider{padding:var(--ex-space-2) 0}.dropdown-divider:before{top:50%;bottom:auto;left:0;right:0;width:100%;height:1px}}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-10) var(--ex-space-5);min-height:200px;gap:var(--ex-space-4);cursor:progress}.loading-spinner{display:flex;align-items:center;justify-content:center}.loading-spinner-small{width:24px;height:24px}.loading-spinner-medium{width:48px;height:48px}.loading-spinner-large{width:64px;height:64px}.loading-spinner-icon{animation:spin 2s linear infinite;display:flex;align-items:center;justify-content:center;font-size:inherit;width:100%;height:100%}.loading-spinner-message{margin:0;font-size:var(--ex-font-sm);color:var(--ex-text-secondary);font-weight:var(--ex-font-weight-medium);text-align:center}@media(prefers-color-scheme:dark){.loading-spinner-message{color:var(--ex-text-muted)}}.grid-config-modal .ex-modal-body{padding:0}.grid-config-modal-content{padding:var(--ex-space-5);display:flex;flex-direction:column;gap:var(--ex-space-6)}.grid-config-section{display:flex;flex-direction:column;gap:var(--ex-space-3)}.grid-config-section-header{display:flex;flex-direction:column;gap:var(--ex-space-1)}.grid-config-section-header h3{margin:0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.grid-config-section-hint{font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.grid-config-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-8) var(--ex-space-5);background:var(--ex-bg-secondary);border-radius:var(--ex-radius-lg);border:2px dashed var(--ex-border-default);color:var(--ex-text-secondary);text-align:center}.grid-config-empty-state .material-icons{font-size:var(--ex-font-3xl);margin-bottom:var(--ex-space-2);color:var(--ex-text-muted)}.grid-config-empty-state p{margin:0;font-size:var(--ex-font-sm)}.grid-config-empty-state p.hint{margin-top:var(--ex-space-1);font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.grid-config-data-point{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.grid-config-data-point-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ex-space-3)}.grid-config-data-point-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.grid-config-remove-btn{display:flex;align-items:center;justify-content:center;width:var(--ex-space-6);height:var(--ex-space-6);padding:0;border:none;background:transparent;color:var(--ex-text-muted);cursor:pointer;border-radius:var(--ex-radius-sm);transition:all var(--ex-transition-fast)}.grid-config-remove-btn:hover{background:var(--ex-danger-light);color:var(--ex-danger)}.grid-config-remove-btn .material-icons{font-size:var(--ex-font-lg)}.grid-config-data-point-fields{display:flex;flex-direction:column;gap:var(--ex-space-3)}.grid-config-add-btn{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-2);width:100%;padding:var(--ex-space-3) var(--ex-space-4);border:2px dashed var(--ex-border-default);background:transparent;color:var(--ex-text-secondary);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-medium);cursor:pointer;border-radius:var(--ex-radius-lg);transition:all var(--ex-transition-fast)}.grid-config-add-btn:hover{border-color:var(--ex-primary);color:var(--ex-primary);background:var(--ex-bg-hover)}.grid-config-add-btn .material-icons{font-size:var(--ex-font-lg)}.grid-config-error{display:flex;align-items:center;gap:var(--ex-space-2);padding:var(--ex-space-3) var(--ex-space-4);background:var(--ex-danger-light);border:1px solid var(--ex-danger-border);border-radius:var(--ex-radius-md);color:var(--ex-danger);font-size:var(--ex-font-sm)}.grid-config-error .material-icons{font-size:var(--ex-font-lg)}.grid-config-card-content{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.grid-config-card-content-header{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-3);font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.grid-config-card-content-header .material-icons{font-size:var(--ex-font-lg);color:var(--ex-primary)}.grid-config-card-content-fields{display:flex;flex-direction:column;gap:var(--ex-space-3)}.grid-config-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-3);padding-top:var(--ex-space-4);border-top:1px solid var(--ex-border-light)}.sentence-xray-modal .ex-modal-header{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-bottom:1px solid var(--ex-border-light)}.sentence-xray-modal .ex-modal-title{display:flex;align-items:center;gap:var(--ex-space-2);color:#5b21b6;font-weight:600}.express-sentence-modal .ex-modal-body{padding:0;max-height:70vh;overflow:hidden;display:flex;flex-direction:column}.express-sentence-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.express-sentence-content .ex-tabs{flex-shrink:0;border-bottom:1px solid var(--ex-border-light);background:var(--ex-bg-secondary);padding:0 var(--ex-space-4)}.express-sentence-content .ex-tabs .ex-tab{padding:var(--ex-space-3) var(--ex-space-4);font-size:var(--ex-font-sm);font-weight:500}.express-sentence-content .ex-tabs .ex-tab.active{color:#7c3aed;border-bottom-color:#7c3aed}.express-sentence-body{flex:1;overflow-y:auto;padding:var(--ex-space-4);background:var(--ex-bg-primary)}.express-sentence-loading,.express-sentence-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-12);color:var(--ex-text-secondary);gap:var(--ex-space-3)}.express-sentence-loading .material-icons,.express-sentence-empty .material-icons{font-size:var(--ex-font-3xl);color:var(--ex-text-muted)}.token-chip-wrapper{display:inline-flex;flex-direction:column;align-items:center;vertical-align:bottom;margin:var(--ex-space-3) 5px;position:relative}.token-chip-wrapper.has-role{margin-top:calc(var(--ex-space-4) + 2px)}.token-role-badge{position:absolute;top:calc(-1 * var(--ex-space-4) - 2px);left:50%;transform:translate(-50%);font-size:9px;font-weight:var(--ex-font-weight-bold);padding:1px var(--ex-space-1);border-radius:var(--ex-radius-sm);color:#fff;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;z-index:5}.phrase-container{display:inline-flex;flex-direction:column;align-items:center;vertical-align:bottom;margin:var(--ex-space-1)}.phrase-container-label{font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-bold);line-height:1em;text-transform:uppercase;color:var(--ex-text-primary);margin-bottom:var(--ex-space-1);text-wrap-mode:wrap;text-wrap-style:pretty;width:min-content;min-width:50px;max-width:100%;text-align:center}.phrase-container-content{display:inline-flex;align-items:flex-end;gap:4px;padding:var(--ex-space-2) var(--ex-space-3);background:#f3f4f6;border-radius:var(--ex-radius-lg);border:1px solid #E5E7EB}.phrase-container-content .token-chip-wrapper{margin:0}.phrase-container-content .token-chip-wrapper.has-role{margin-top:0}.phrase-container-content .token-role-badge{display:none}.phrase-group{display:inline-flex;flex-direction:column;align-items:center;position:relative;margin:var(--ex-space-1);margin-top:calc(var(--ex-space-5) + 2px)}.phrase-group-label{position:absolute;top:calc(-1 * var(--ex-space-5) - 2px);left:50%;transform:translate(-50%);font-size:9px;font-weight:var(--ex-font-weight-bold);padding:2px var(--ex-space-2);border-radius:var(--ex-radius-sm);color:#fff;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;z-index:6}.phrase-group-tokens{display:inline-flex;align-items:flex-end;gap:2px;padding:var(--ex-space-1);background:#00000008;border-radius:var(--ex-radius-md);border:1px dashed rgba(0,0,0,.1)}.phrase-group-tokens .token-chip-wrapper{margin:0}.phrase-group-tokens .token-chip-wrapper.has-role{margin-top:0}.phrase-group-tokens .token-role-badge{display:none}.token-chip{display:inline-flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-md);border:1px solid;font-size:var(--ex-font-sm);position:relative;cursor:default;transition:transform .1s ease,box-shadow .1s ease}.token-chip-wrapper:hover .token-chip{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a;z-index:10}.token-text{font-weight:var(--ex-font-weight-medium)}.token-pos{font-size:var(--ex-font-2xs);font-weight:var(--ex-font-weight-bold);padding:1px var(--ex-space-1);border-radius:var(--ex-radius-sm);color:#fff;text-transform:uppercase;letter-spacing:.5px}.token-punctuation{display:inline;font-size:var(--ex-font-sm);color:var(--ex-text-muted);margin:0 var(--ex-space-1)}.token-details-tooltip{position:fixed;transform:translate(-50%,-100%);margin-top:-8px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-default);border-radius:var(--ex-radius-lg);padding:var(--ex-space-3);min-width:200px;max-width:300px;box-shadow:var(--ex-shadow-lg);z-index:10000;pointer-events:none}.token-detail-row{display:flex;flex-direction:column;gap:var(--ex-space-1);margin-bottom:var(--ex-space-2)}.token-detail-row:last-child{margin-bottom:0}.token-detail-label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);font-weight:var(--ex-font-weight-medium)}.token-detail-value{font-size:var(--ex-font-sm);color:var(--ex-text-primary)}.token-signal-list{margin:0;padding-left:var(--ex-space-4);font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.token-signal-list li{margin-bottom:var(--ex-space-1)}.sentences-tab{display:flex;flex-direction:column;gap:var(--ex-space-4)}.sentences-toolbar{display:flex;gap:var(--ex-space-2);flex-shrink:0}.toolbar-btn{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);font-size:var(--ex-font-xs);color:var(--ex-text-secondary);cursor:pointer;transition:all .15s ease}.toolbar-btn:hover{background:var(--ex-bg-tertiary);color:var(--ex-text-primary)}.toolbar-btn .material-icons{font-size:var(--ex-font-base)}.sentences-list{display:flex;flex-direction:column;gap:var(--ex-space-3)}.sentence-card{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);transition:border-color .15s ease}.sentence-card:hover{border-color:var(--ex-border-default)}.sentence-card.expanded{border-color:var(--ex-primary)}.sentence-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-3);cursor:pointer;-webkit-user-select:none;user-select:none}.sentence-header:hover{background:var(--ex-bg-tertiary)}.sentence-meta{display:flex;align-items:center;gap:var(--ex-space-3)}.sentence-number{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold);color:var(--ex-text-muted);min-width:2rem}.sentence-type{display:flex;align-items:center;gap:var(--ex-space-1);font-size:var(--ex-font-xs);padding:var(--ex-space-1) var(--ex-space-2);border-radius:var(--ex-radius-full);background:var(--ex-bg-tertiary);color:var(--ex-text-secondary)}.sentence-type.declarative{background:#dbeafe;color:#1e40af}.sentence-type.interrogative{background:#fef9c3;color:#ca8a04}.sentence-type.imperative{background:#ffedd5;color:#ea580c}.sentence-type.exclamatory{background:#fce7f3;color:#be185d}.sentence-type.fragment{background:#fee2e2;color:#dc2626}.sentence-type .material-icons{font-size:var(--ex-font-sm)}.sentence-incomplete{display:flex;align-items:center;gap:var(--ex-space-1);font-size:var(--ex-font-xs);color:var(--ex-warning)}.sentence-incomplete .material-icons{font-size:var(--ex-font-sm)}.sentence-tokens{padding:var(--ex-space-3);padding-top:var(--ex-space-5);display:flex;flex-wrap:wrap;align-items:flex-end;line-height:2.5;gap:var(--ex-space-1)}.sentence-details{border-top:1px solid var(--ex-border-light);padding:var(--ex-space-4);background:var(--ex-bg-tertiary)}.clause-section h4{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.clause-card{background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);padding:var(--ex-space-3);margin-bottom:var(--ex-space-2)}.clause-card:last-child{margin-bottom:0}.clause-header{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.clause-number{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-bold);color:var(--ex-text-muted)}.clause-type{font-size:var(--ex-font-xs);padding:2px var(--ex-space-2);border-radius:var(--ex-radius-sm);background:var(--ex-bg-secondary);color:var(--ex-text-secondary)}.clause-type.independent{background:#dcfce7;color:#166534}.clause-type.dependent{background:#dbeafe;color:#1e40af}.clause-type.relative{background:#ede9fe;color:#7c3aed}.clause-type.conditional{background:#fef9c3;color:#ca8a04}.clause-type.temporal{background:#cffafe;color:#0891b2}.clause-type.fragment{background:#fee2e2;color:#dc2626}.clause-incomplete .material-icons{font-size:var(--ex-font-sm);color:var(--ex-warning)}.clause-content{display:flex;flex-direction:column;gap:var(--ex-space-2)}.clause-part{display:flex;flex-direction:column;gap:var(--ex-space-1)}.clause-part-label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-secondary)}.clause-part-tokens{display:flex;flex-wrap:wrap;align-items:flex-end;padding-top:var(--ex-space-4);gap:var(--ex-space-1)}.clause-type.infinitival{background:#ffedd5;color:#c2410c}.clause-type.participial{background:#fee2e2;color:#b91c1c}.clause-type.gerund-clause{background:#fce7f3;color:#be185d}.clause-card.embedded{margin-left:var(--ex-space-4);border-left:3px solid var(--ex-border-light);background:var(--ex-bg-secondary)}.embedded-clause-list,.clause-modifiers{display:flex;flex-direction:column;gap:var(--ex-space-2);margin-top:var(--ex-space-2)}.nested-phrase{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-md);padding:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.nested-phrase:last-child{margin-bottom:0}.nested-phrase-header{display:flex;align-items:center;gap:var(--ex-space-2);margin-bottom:var(--ex-space-2)}.nested-phrase-type{font-size:9px;font-weight:var(--ex-font-weight-bold);padding:2px var(--ex-space-2);border-radius:var(--ex-radius-sm);color:#fff;text-transform:uppercase;letter-spacing:.3px}.nested-phrase-role{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);font-style:italic}.nested-phrase-tokens{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--ex-space-1)}.nested-phrase-children{margin-top:var(--ex-space-2);padding-left:var(--ex-space-3);border-left:2px solid var(--ex-border-light)}.tokens-tab{display:flex;flex-direction:column;gap:var(--ex-space-4)}.all-tokens-view{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.tokens-flow{display:flex;flex-wrap:wrap;align-items:flex-end;line-height:2.5;padding-top:var(--ex-space-4);gap:var(--ex-space-1)}.pos-legend{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.pos-legend h4{margin:0 0 var(--ex-space-3) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.pos-legend-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--ex-space-2)}.pos-legend-item{display:flex;align-items:center;gap:var(--ex-space-2)}.pos-legend-chip{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;padding:2px var(--ex-space-2);border-radius:var(--ex-radius-sm);border:1px solid;font-size:var(--ex-font-2xs);font-weight:var(--ex-font-weight-bold)}.pos-legend-label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary)}.stats-tab{display:flex;flex-direction:column;gap:var(--ex-space-4)}.statistics-panel{display:flex;flex-direction:column;gap:var(--ex-space-6)}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--ex-space-3)}.stat-card{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4);text-align:center}.stat-card.warning{border-color:var(--ex-warning);background:#fef3c7}.stat-value{font-size:var(--ex-font-2xl);font-weight:var(--ex-font-weight-bold);color:var(--ex-text-primary)}.stat-card.warning .stat-value{color:var(--ex-warning)}.stat-label{font-size:var(--ex-font-xs);color:var(--ex-text-secondary);margin-top:var(--ex-space-1)}.pos-distribution{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-4)}.pos-distribution h4{margin:0 0 var(--ex-space-4) 0;font-size:var(--ex-font-sm);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary)}.pos-bars{display:flex;flex-direction:column;gap:var(--ex-space-2)}.pos-bar-row{display:grid;grid-template-columns:100px 1fr 40px 50px;align-items:center;gap:var(--ex-space-3)}.pos-bar-label{font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);text-align:right}.pos-bar-track{height:8px;background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-full);overflow:hidden}.pos-bar-fill{height:100%;border-radius:var(--ex-radius-full);transition:width .3s ease}.pos-bar-count{font-size:var(--ex-font-xs);color:var(--ex-text-primary);font-weight:var(--ex-font-weight-medium);text-align:right}.pos-bar-percent{font-size:var(--ex-font-xs);color:var(--ex-text-muted);text-align:right}.copyeditor-panel{display:flex;flex-direction:column;gap:12px;padding:0}.copyeditor-loading,.copyeditor-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 16px;color:#6b7280;text-align:center}.copyeditor-loading .material-icon,.copyeditor-empty .material-icon{font-size:32px;opacity:.5}.copyeditor-empty.success{color:#22c55e}.copyeditor-empty.success .material-icon{opacity:1}.copyeditor-grade-display{padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.copyeditor-grade-header{display:flex;align-items:center;gap:12px}.copyeditor-grade-badge{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;color:#fff;font-weight:600}.copyeditor-grade-percentage{font-size:14px}.copyeditor-grade-info{display:flex;flex-direction:column;gap:2px}.copyeditor-grade-label{font-weight:600;font-size:14px}.copyeditor-grade-details{font-size:11px;color:#6b7280}.copyeditor-controls{display:flex;align-items:center;gap:8px}.copyeditor-filter-container{position:relative;flex:1}.copyeditor-filter-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:13px;color:#374151;transition:all .15s ease}.copyeditor-filter-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.copyeditor-filter-btn.open{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.copyeditor-filter-btn.filtered{background:#eff6ff;border-color:#3b82f6}.copyeditor-filter-label{flex:1;text-align:left;font-weight:500}.copyeditor-filter-count{color:#6b7280;font-size:12px}.copyeditor-filter-btn .material-icon{font-size:18px;color:#6b7280}.copyeditor-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;max-height:320px;overflow-y:auto}.copyeditor-filter-option{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;cursor:pointer;font-size:13px;color:#374151;transition:background .1s ease}.copyeditor-filter-option:hover{background:#f8fafc}.copyeditor-filter-option.selected{background:#eff6ff;color:#1d4ed8}.copyeditor-filter-option:not(:last-child){border-bottom:1px solid #f1f5f9}.copyeditor-filter-option-icon{display:flex;align-items:center}.copyeditor-filter-option-icon .material-icon{font-size:18px}.copyeditor-filter-option-count{margin-left:auto;color:#9ca3af;font-size:12px}.copyeditor-toggle-tokens-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .15s ease}.copyeditor-toggle-tokens-btn:hover{background:#f1f5f9;color:#374151}.copyeditor-toggle-tokens-btn.active{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.copyeditor-toggle-tokens-btn .material-icon{font-size:18px}.copyeditor-summary{display:flex;align-items:baseline;gap:6px;padding:0 4px}.copyeditor-summary-count{font-size:20px;font-weight:600;color:#374151}.copyeditor-summary-label{font-size:13px;color:#6b7280}.copyeditor-issue-categories{display:flex;flex-direction:column;gap:4px}.copyeditor-issue-category{background:#f8fafc;border-radius:8px;overflow:hidden}.copyeditor-issue-category-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;cursor:pointer;font-size:13px;color:#374151;transition:background .1s ease}.copyeditor-issue-category-header:hover{background:#f1f5f9}.copyeditor-issue-category-icon{display:flex;align-items:center}.copyeditor-issue-category-icon .material-icon{font-size:18px}.copyeditor-issue-category-label{flex:1;text-align:left;font-weight:500}.copyeditor-issue-category-count{padding:2px 8px;background:#e5e7eb;border-radius:10px;font-size:11px;font-weight:600;color:#4b5563}.copyeditor-issue-category-chevron{display:flex;align-items:center;color:#9ca3af}.copyeditor-issue-category-chevron .material-icon{font-size:18px}.copyeditor-issue-list{list-style:none;margin:0;padding:0 8px 8px}.copyeditor-issue-item{padding:8px 10px;border-radius:6px;cursor:pointer;transition:background .1s ease}.copyeditor-issue-item:hover{background:#e2e8f0}.copyeditor-issue-item.selected{background:#dbeafe;box-shadow:inset 0 0 0 1px #3b82f6}.copyeditor-issue-item:not(:last-child){margin-bottom:4px}.copyeditor-issue-main{display:flex;align-items:center;gap:8px}.copyeditor-issue-text{font-size:13px;color:#374151;word-break:break-word}.copyeditor-issue-confidence{padding:1px 5px;background:#fef3c7;border-radius:4px;font-size:10px;color:#92400e}.copyeditor-issue-occurrence-count{margin-left:auto;padding:2px 6px;background:#e5e7eb;border-radius:4px;font-size:11px;font-weight:600;color:#4b5563}.copyeditor-issue-item.ignored{opacity:.35}.copyeditor-issue-item.ignored:hover{opacity:.5}.copyeditor-issue-item.ignored .copyeditor-issue-text{text-decoration:line-through;text-decoration-color:#9ca3af}.copyeditor-issue-tokens{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.copyeditor-token-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-size:11px;font-family:SF Mono,Monaco,Inconsolata,monospace}.copyeditor-token-pos{opacity:.6;font-size:9px;text-transform:uppercase}.copyeditor-issue-suggestion-row{margin-top:6px}.copyeditor-quick-fix-buttons{display:flex;flex-wrap:wrap;gap:4px}.copyeditor-quick-fix-btn{padding:3px 8px;background:#dbeafe;border:1px solid #93c5fd;border-radius:4px;font-size:11px;color:#1d4ed8;cursor:pointer;transition:all .1s ease}.copyeditor-quick-fix-btn:hover{background:#bfdbfe;border-color:#60a5fa}.copyeditor-quick-fix-btn:active{background:#93c5fd}.dark-theme .copyeditor-panel{color:#e2e8f0}.dark-theme .copyeditor-loading,.dark-theme .copyeditor-empty{color:#9ca3af}.dark-theme .copyeditor-grade-display{background:#1e293b;border-color:#334155}.dark-theme .copyeditor-grade-details{color:#9ca3af}.dark-theme .copyeditor-filter-btn{background:#1e293b;border-color:#334155;color:#e2e8f0}.dark-theme .copyeditor-filter-btn:hover{background:#334155;border-color:#475569}.dark-theme .copyeditor-filter-btn.filtered{background:#1e3a5f;border-color:#3b82f6}.dark-theme .copyeditor-filter-dropdown{background:#1e293b;border-color:#334155;box-shadow:0 4px 12px #0006}.dark-theme .copyeditor-filter-option{color:#e2e8f0}.dark-theme .copyeditor-filter-option:hover{background:#334155}.dark-theme .copyeditor-filter-option.selected{background:#1e3a5f;color:#60a5fa}.dark-theme .copyeditor-filter-option:not(:last-child){border-bottom-color:#334155}.dark-theme .copyeditor-filter-option-count{color:#6b7280}.dark-theme .copyeditor-toggle-tokens-btn{background:#1e293b;border-color:#334155;color:#9ca3af}.dark-theme .copyeditor-toggle-tokens-btn:hover{background:#334155;color:#e2e8f0}.dark-theme .copyeditor-toggle-tokens-btn.active{background:#1e3a5f;border-color:#3b82f6;color:#60a5fa}.dark-theme .copyeditor-summary-count{color:#e2e8f0}.dark-theme .copyeditor-summary-label{color:#9ca3af}.dark-theme .copyeditor-issue-category{background:#1e293b}.dark-theme .copyeditor-issue-category-header{color:#e2e8f0}.dark-theme .copyeditor-issue-category-header:hover{background:#334155}.dark-theme .copyeditor-issue-category-count{background:#334155;color:#d1d5db}.dark-theme .copyeditor-issue-category-chevron{color:#6b7280}.dark-theme .copyeditor-issue-item:hover{background:#334155}.dark-theme .copyeditor-issue-item.selected{background:#1e3a5f;box-shadow:inset 0 0 0 1px #3b82f6}.dark-theme .copyeditor-issue-text{color:#e2e8f0}.dark-theme .copyeditor-issue-confidence{background:#422006;color:#fcd34d}.dark-theme .copyeditor-issue-occurrence-count{background:#334155;color:#d1d5db}.dark-theme .copyeditor-quick-fix-btn{background:#1e3a5f;border-color:#3b82f6;color:#60a5fa}.dark-theme .copyeditor-quick-fix-btn:hover{background:#1d4ed8;border-color:#60a5fa;color:#fff}.dark-theme .copyeditor-quick-fix-btn:active{background:#1e40af}.dark-theme .copyeditor-issue-item.ignored .copyeditor-issue-text{text-decoration-color:#6b7280}.dialogue-review{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem);min-height:450px;max-height:70vh;position:relative}.dialogue-review__progress{display:flex;justify-content:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-3, .75rem) 0;border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.dialogue-review__progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-2, .5rem);flex:1;max-width:160px;position:relative}.dialogue-review__progress-step:not(:last-child):after{content:"";position:absolute;top:14px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background:var(--ex-border-default, #e5e7eb)}.dialogue-review__progress-step.completed:not(:last-child):after{background:var(--ex-primary, #6366f1)}.dialogue-review__progress-dot{width:28px;height:28px;border-radius:var(--ex-radius-full, 50%);background:var(--ex-bg-secondary, #f3f4f6);border:2px solid var(--ex-border-default, #e5e7eb);display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-secondary, #6b7280);z-index:1}.dialogue-review__progress-step.active .dialogue-review__progress-dot,.dialogue-review__progress-step.completed .dialogue-review__progress-dot{background:var(--ex-primary, #6366f1);border-color:var(--ex-primary, #6366f1);color:var(--ex-text-inverse, white)}.dialogue-review__progress-dot .material-icon{font-size:var(--ex-font-base, 16px)}.dialogue-review__progress-label{font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-secondary, #6b7280);text-align:center;white-space:nowrap}.dialogue-review__progress-step.active .dialogue-review__progress-label{color:var(--ex-text-primary, #111827);font-weight:var(--ex-font-weight-medium, 500)}.dialogue-review__error{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-3, .75rem) var(--ex-space-4, 1rem);background:var(--ex-danger-light, #fef2f2);border:1px solid var(--ex-danger-border, #fecaca);border-radius:var(--ex-radius-md, 6px);color:var(--ex-danger, #dc2626);font-size:var(--ex-font-sm, .875rem)}.dialogue-review__error .material-icon{font-size:var(--ex-font-lg, 18px)}.dialogue-review__content{flex:1;overflow-y:auto;padding:0 var(--ex-space-1, .25rem)}.dialogue-review__hint{color:var(--ex-text-secondary, #6b7280);font-size:var(--ex-font-sm, .875rem);margin-bottom:var(--ex-space-4, 1rem)}.dialogue-review__footer{display:flex;align-items:center;gap:var(--ex-space-3, .75rem);padding-top:var(--ex-space-4, 1rem);border-top:1px solid var(--ex-border-default, #e5e7eb)}.dialogue-review__footer-info{flex:1;display:flex;justify-content:center}.footer-badge{display:inline-flex;align-items:center;gap:var(--ex-space-1, .25rem);padding:var(--ex-space-1, .25rem) var(--ex-space-2, .5rem);border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-medium, 500)}.footer-badge.warning{background:var(--ex-warning-light, #fef3c7);color:var(--ex-warning-dark, #92400e)}.footer-badge.success{background:var(--ex-success-light, #dcfce7);color:var(--ex-success-dark, #166534)}.dialogue-review__footer .ex-button{display:flex;align-items:center;gap:var(--ex-space-2, .5rem)}.dialogue-review__footer .ex-button .material-icon{font-size:var(--ex-font-lg, 18px)}.dialogue-review__dialogue-step{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.dialogue-step__stats{display:flex;gap:var(--ex-space-2, .5rem);flex-wrap:wrap}.stat-pill{display:inline-flex;align-items:center;gap:var(--ex-space-1-5, 6px);padding:var(--ex-space-1-5, 6px) var(--ex-space-3, .75rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-full, 9999px);font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-secondary, #6b7280)}.stat-pill .material-icon{font-size:var(--ex-font-lg, 18px)}.stat-pill.warning{background:var(--ex-warning-light, #fef3c7);color:var(--ex-warning-dark, #92400e)}.dialogue-step__list{display:flex;flex-direction:column;gap:var(--ex-space-2, .5rem);max-height:320px;overflow-y:auto}.dialogue-step__item{display:flex;align-items:flex-start;gap:var(--ex-space-3, .75rem);padding:var(--ex-space-3, .75rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-md, 6px);transition:all var(--ex-transition-fast, .15s ease)}.dialogue-step__item.false-positive{background:var(--ex-bg-tertiary, #fafafa);opacity:.6}.dialogue-step__item-number{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--ex-bg-primary, white);border-radius:var(--ex-radius-full, 50%);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-secondary, #6b7280)}.dialogue-step__item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--ex-space-1, .25rem)}.dialogue-step__quote{display:flex;align-items:flex-start;gap:var(--ex-space-2, .5rem)}.dialogue-step__quote .quote-indicator{width:4px;min-height:18px;border-radius:2px;flex-shrink:0;margin-top:2px}.dialogue-step__quote .quote-text{font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827);font-style:italic;line-height:1.5}.dialogue-step__quote .quote-text.strikethrough{text-decoration:line-through;color:var(--ex-text-tertiary, #9ca3af)}.dialogue-step__speaker{display:flex;align-items:center;gap:var(--ex-space-1-5, 6px);padding-left:var(--ex-space-4, 1rem);font-size:var(--ex-font-xs, .75rem)}.dialogue-step__speaker .speaker-label{color:var(--ex-text-tertiary, #9ca3af)}.dialogue-step__speaker .speaker-name{color:var(--ex-text-secondary, #6b7280);font-weight:var(--ex-font-weight-medium, 500)}.dialogue-step__toggle{flex-shrink:0;display:flex;align-items:center;gap:var(--ex-space-1, .25rem);padding:var(--ex-space-1-5, 6px) var(--ex-space-2, .5rem);border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-md, 6px);background:var(--ex-bg-primary, white);font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-secondary, #6b7280);cursor:pointer;transition:all var(--ex-transition-fast, .15s ease)}.dialogue-step__toggle .material-icon{font-size:var(--ex-font-base, 16px)}.dialogue-step__toggle:hover{background:var(--ex-danger-light, #fee2e2);border-color:var(--ex-danger, #ef4444);color:var(--ex-danger-dark, #991b1b)}.dialogue-step__toggle.marked{background:var(--ex-success-light, #dcfce7);border-color:var(--ex-success, #22c55e);color:var(--ex-success-dark, #166534)}.dialogue-step__toggle.marked:hover{background:var(--ex-success-light, #dcfce7)}.dialogue-review__facts-step{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.dialogue-review__facts-empty{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-8, 2rem);color:var(--ex-text-secondary, #6b7280)}.dialogue-review__facts-empty .material-icon{font-size:var(--ex-font-3xl, 32px);opacity:.5}.facts-step__list{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem);max-height:320px;overflow-y:auto}.facts-step__group{display:flex;flex-direction:column;gap:var(--ex-space-2, .5rem)}.facts-step__group-title{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);font-size:var(--ex-font-sm, .875rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827);padding-bottom:var(--ex-space-1, .25rem);border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.facts-step__group-title .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-primary, #6366f1)}.inference-card{display:flex;align-items:center;gap:var(--ex-space-3, .75rem);padding:var(--ex-space-3, .75rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-md, 6px);border:2px solid transparent;transition:all var(--ex-transition-fast, .15s ease)}.inference-card.decided-confirmed{border-color:var(--ex-success, #22c55e);background:var(--ex-success-light, #dcfce7)}.inference-card.decided-rejected{border-color:var(--ex-danger, #ef4444);background:var(--ex-danger-light, #fee2e2)}.inference-card.decided-skipped{opacity:.5}.inference-card__main{flex:1;display:flex;align-items:flex-start;gap:var(--ex-space-2, .5rem);min-width:0}.inference-card__color{width:4px;min-height:32px;border-radius:2px;flex-shrink:0}.inference-card__content{flex:1;display:flex;flex-direction:column;gap:var(--ex-space-1, .25rem);min-width:0}.inference-card__description{font-size:var(--ex-font-sm, .875rem);font-weight:var(--ex-font-weight-medium, 500);color:var(--ex-text-primary, #111827)}.inference-card__evidence{display:flex;align-items:flex-start;gap:var(--ex-space-1, .25rem);font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-tertiary, #9ca3af);font-style:italic}.inference-card__evidence .material-icon{font-size:var(--ex-font-sm, 14px);flex-shrink:0}.inference-card__actions{display:flex;gap:var(--ex-space-1, .25rem);flex-shrink:0}.inference-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-md, 6px);background:var(--ex-bg-primary, white);color:var(--ex-text-tertiary, #9ca3af);cursor:pointer;transition:all var(--ex-transition-fast, .15s ease)}.inference-btn .material-icon{font-size:var(--ex-font-lg, 18px)}.inference-btn:hover{background:var(--ex-bg-hover, #f9fafb);color:var(--ex-text-secondary, #6b7280)}.inference-btn.confirm:hover,.inference-btn.confirm.selected{background:var(--ex-success-light, #dcfce7);border-color:var(--ex-success, #22c55e);color:var(--ex-success-dark, #166534)}.inference-btn.reject:hover,.inference-btn.reject.selected{background:var(--ex-danger-light, #fee2e2);border-color:var(--ex-danger, #ef4444);color:var(--ex-danger-dark, #991b1b)}.inference-btn.skip:hover,.inference-btn.skip.selected{background:var(--ex-bg-tertiary, #fafafa);border-color:var(--ex-text-tertiary, #9ca3af);color:var(--ex-text-secondary, #6b7280)}.dialogue-review__speakers-step{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.speakers-step__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--ex-space-3, .75rem);max-height:340px;overflow-y:auto}.speakers-step__column{display:flex;flex-direction:column;background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-lg, 8px);border:2px solid transparent;overflow:hidden;transition:all var(--ex-transition-fast, .15s ease);min-height:120px}.speakers-step__column.drag-over{border-color:var(--ex-primary, #6366f1);background:var(--ex-primary-light, #e0e7ff)}.speakers-step__column.unassigned{background:var(--ex-bg-tertiary, #fafafa);border:2px dashed var(--ex-border-default, #e5e7eb)}.speakers-step__column.unassigned.drag-over{border-color:var(--ex-warning, #f59e0b);background:var(--ex-warning-light, #fef3c7)}.speakers-step__column-header{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem) var(--ex-space-3, .75rem);background:var(--ex-bg-primary, white);border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.speakers-step__column-header .column-color{width:12px;height:12px;border-radius:var(--ex-radius-sm, 4px);flex-shrink:0}.speakers-step__column-header .column-name{flex:1;font-size:var(--ex-font-sm, .875rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.speakers-step__column-header .column-count{flex-shrink:0;padding:var(--ex-space-0-5, 2px) var(--ex-space-1-5, 6px);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-sm, 4px);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-medium, 500);color:var(--ex-text-secondary, #6b7280)}.speakers-step__column-header.unassigned{background:var(--ex-bg-tertiary, #fafafa)}.speakers-step__column-header.unassigned .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-text-tertiary, #9ca3af)}.speakers-step__column-content{flex:1;display:flex;flex-direction:column;gap:var(--ex-space-1, .25rem);padding:var(--ex-space-2, .5rem);overflow-y:auto;min-height:60px}.speakers-step__empty-hint{display:flex;align-items:center;justify-content:center;height:100%;font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-tertiary, #9ca3af);font-style:italic}.draggable-dialogue{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem);background:var(--ex-bg-primary, white);border-radius:var(--ex-radius-md, 6px);cursor:grab;transition:all var(--ex-transition-fast, .15s ease);border:1px solid var(--ex-border-default, #e5e7eb)}.draggable-dialogue:hover{box-shadow:var(--ex-shadow-sm, 0 1px 2px rgba(0,0,0,.05))}.draggable-dialogue:active{cursor:grabbing}.draggable-dialogue.dragging{opacity:.5;transform:scale(.98)}.draggable-dialogue__indicator{width:4px;min-height:16px;border-radius:2px;flex-shrink:0}.draggable-dialogue__text{flex:1;font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-secondary, #6b7280);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draggable-dialogue__handle{flex-shrink:0;font-size:var(--ex-font-lg, 18px)!important;color:var(--ex-text-tertiary, #9ca3af)}.dialogue-review__applying{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4, 1rem);padding:var(--ex-space-12, 3rem)}.dialogue-review__applying .applying-icon .material-icon{font-size:var(--ex-font-4xl, 48px);color:var(--ex-primary, #6366f1);animation:spin 1s linear infinite}.dialogue-review__applying .applying-text{font-size:var(--ex-font-base, 1rem);color:var(--ex-text-primary, #111827)}.dialogue-review__complete{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4, 1rem);padding:var(--ex-space-8, 2rem);text-align:center}.dialogue-review__complete .complete-icon .material-icon{font-size:var(--ex-font-4xl, 48px);color:var(--ex-success, #22c55e)}.dialogue-review__complete .complete-title{font-size:var(--ex-font-xl, 1.25rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827)}.dialogue-review__complete .complete-summary{color:var(--ex-text-secondary, #6b7280)}.dialogue-review__complete .complete-summary p{margin:var(--ex-space-1, .25rem) 0}.dialogue-review__complete .complete-summary strong{color:var(--ex-text-primary, #111827)}.dialogue-review__debug-step{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.debug-step__list{display:flex;flex-direction:column;gap:var(--ex-space-3, .75rem);max-height:380px;overflow-y:auto}.debug-step__item{display:flex;flex-direction:column;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-3, .75rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-md, 6px);border-left:4px solid var(--ex-border-default, #e5e7eb)}.debug-step__header{display:flex;align-items:center;gap:var(--ex-space-2, .5rem)}.debug-step__number{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--ex-bg-primary, white);border-radius:var(--ex-radius-full, 50%);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-secondary, #6b7280)}.debug-step__color-indicator{width:12px;height:12px;border-radius:var(--ex-radius-sm, 4px);flex-shrink:0}.debug-step__speaker-name{flex:1;font-size:var(--ex-font-sm, .875rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827)}.debug-step__confidence{flex-shrink:0;padding:var(--ex-space-0-5, 2px) var(--ex-space-2, .5rem);border-radius:var(--ex-radius-sm, 4px);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-medium, 500);text-transform:uppercase}.debug-step__confidence.high{background:var(--ex-success-light, #dcfce7);color:var(--ex-success-dark, #166534)}.debug-step__confidence.medium{background:var(--ex-warning-light, #fef3c7);color:var(--ex-warning-dark, #92400e)}.debug-step__confidence.low,.debug-step__confidence.unresolved{background:var(--ex-danger-light, #fee2e2);color:var(--ex-danger-dark, #991b1b)}.debug-step__dialogue{padding-left:var(--ex-space-8, 2rem)}.debug-step__quote{font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827);font-style:italic;line-height:1.5}.debug-step__explanation{margin-top:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem) var(--ex-space-3, .75rem);background:var(--ex-bg-primary, white);border-radius:var(--ex-radius-md, 6px);border:1px solid var(--ex-border-default, #e5e7eb)}.debug-step__explanation-header{display:flex;align-items:center;gap:var(--ex-space-1-5, 6px);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-primary, #6366f1);margin-bottom:var(--ex-space-1-5, 6px)}.debug-step__explanation-header .material-icon{font-size:var(--ex-font-base, 16px)}.debug-step__explanation-text{font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-secondary, #6b7280);line-height:1.6;white-space:pre-wrap;font-family:var(--ex-font-mono, monospace);margin:0}[data-theme=dark] .debug-step__item{background:var(--ex-bg-tertiary, #1f2937)}[data-theme=dark] .debug-step__number{background:var(--ex-bg-secondary, #374151)}[data-theme=dark] .debug-step__explanation{background:var(--ex-bg-secondary, #374151);border-color:var(--ex-border-default, #4b5563)}[data-theme=dark] .stat-pill,[data-theme=dark] .dialogue-step__item{background:var(--ex-bg-tertiary, #1f2937)}[data-theme=dark] .dialogue-step__item-number{background:var(--ex-bg-secondary, #374151)}[data-theme=dark] .dialogue-step__toggle{background:var(--ex-bg-secondary, #374151);border-color:var(--ex-border-default, #4b5563)}[data-theme=dark] .inference-card{background:var(--ex-bg-tertiary, #1f2937)}[data-theme=dark] .inference-btn{background:var(--ex-bg-secondary, #374151);border-color:var(--ex-border-default, #4b5563)}[data-theme=dark] .speakers-step__column{background:var(--ex-bg-tertiary, #1f2937)}[data-theme=dark] .speakers-step__column-header{background:var(--ex-bg-secondary, #374151)}[data-theme=dark] .draggable-dialogue{background:var(--ex-bg-secondary, #374151);border-color:var(--ex-border-default, #4b5563)}.export-wizard{display:flex;flex-direction:column;gap:var(--ex-space-6, 1.5rem);min-height:400px;position:relative}.export-wizard__progress{display:flex;justify-content:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-4, 1rem) 0;border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.export-wizard__progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-2, .5rem);flex:1;max-width:120px;position:relative}.export-wizard__progress-step:not(:last-child):after{content:"";position:absolute;top:14px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background:var(--ex-border-default, #e5e7eb)}.export-wizard__progress-step.completed:not(:last-child):after{background:var(--ex-primary, #6366f1)}.export-wizard__progress-dot{width:28px;height:28px;border-radius:var(--ex-radius-full, 50%);background:var(--ex-bg-secondary, #f3f4f6);border:2px solid var(--ex-border-default, #e5e7eb);display:flex;align-items:center;justify-content:center;font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-secondary, #6b7280);z-index:1}.export-wizard__progress-step.active .export-wizard__progress-dot,.export-wizard__progress-step.completed .export-wizard__progress-dot{background:var(--ex-primary, #6366f1);border-color:var(--ex-primary, #6366f1);color:var(--ex-text-inverse, white)}.export-wizard__progress-dot .material-icon{font-size:var(--ex-font-base, 16px)}.export-wizard__progress-label{font-size:var(--ex-font-xs, .75rem);color:var(--ex-text-secondary, #6b7280);text-align:center}.export-wizard__progress-step.active .export-wizard__progress-label{color:var(--ex-text-primary, #111827);font-weight:var(--ex-font-weight-medium, 500)}.export-wizard__error{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-3, .75rem) var(--ex-space-4, 1rem);background:var(--ex-danger-light, #fef2f2);border:1px solid var(--ex-danger-border, #fecaca);border-radius:var(--ex-radius-md, 6px);color:var(--ex-danger, #dc2626);font-size:var(--ex-font-sm, .875rem)}.export-wizard__error .material-icon{font-size:var(--ex-font-lg, 18px)}.export-wizard__content{flex:1;overflow-y:auto;padding:0 var(--ex-space-2, .5rem)}.export-wizard__hint{color:var(--ex-text-secondary, #6b7280);font-size:var(--ex-font-sm, .875rem);margin-bottom:var(--ex-space-4, 1rem)}.export-wizard__note{color:var(--ex-text-tertiary, #9ca3af);font-size:var(--ex-font-xs, .8rem);margin-top:var(--ex-space-4, 1rem);font-style:italic}.export-wizard__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4, 1rem);padding:var(--ex-space-12, 3rem);color:var(--ex-text-secondary, #6b7280);cursor:progress}.export-wizard__loading .material-icon{font-size:var(--ex-font-3xl, 32px);animation:spin 1s linear infinite}.export-wizard__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-12, 3rem);color:var(--ex-text-secondary, #6b7280);text-align:center}.export-wizard__empty .material-icon{font-size:var(--ex-font-4xl, 48px);opacity:.5}.export-wizard__empty p{font-size:var(--ex-font-sm, .875rem);margin-top:var(--ex-space-2, .5rem)}.export-wizard__template-list{display:flex;flex-direction:column;gap:var(--ex-space-2, .5rem)}.export-wizard__template-item{display:flex;align-items:flex-start;gap:var(--ex-space-3, .75rem);padding:var(--ex-space-4, 1rem);border:2px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;transition:all var(--ex-transition-fast, .15s ease)}.export-wizard__template-item:hover{border-color:var(--ex-primary, #6366f1);background:var(--ex-bg-hover, #f9fafb)}.export-wizard__template-item.selected{border-color:var(--ex-primary, #6366f1);background:var(--ex-primary-light, rgba(99, 102, 241, .05))}.export-wizard__template-radio{padding-top:2px}.export-wizard__template-radio input{width:var(--ex-font-lg, 18px);height:var(--ex-font-lg, 18px);cursor:pointer}.export-wizard__template-info{flex:1}.export-wizard__template-name{font-weight:var(--ex-font-weight-medium, 500);color:var(--ex-text-primary, #111827);display:flex;align-items:center;gap:var(--ex-space-2, .5rem);flex-wrap:wrap}.export-wizard__template-badge{font-size:var(--ex-font-2xs, .7rem);font-weight:var(--ex-font-weight-medium, 500);padding:2px var(--ex-space-1-5, 6px);border-radius:var(--ex-radius-sm, 4px);background:var(--ex-bg-secondary, #f3f4f6);color:var(--ex-text-secondary, #6b7280)}.export-wizard__template-badge.last-used{background:var(--ex-info-light, #dbeafe);color:var(--ex-info, #1d4ed8)}.export-wizard__template-description{font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-secondary, #6b7280);margin-top:var(--ex-space-1, .25rem)}.export-wizard__structure{display:flex;flex-direction:column}.export-wizard__structure-header{display:grid;grid-template-columns:60px 1fr 200px;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem) var(--ex-space-2, .5rem) var(--ex-space-2, .5rem) var(--ex-space-2, 8px);font-size:var(--ex-font-xs, .75rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.export-wizard__structure-list{max-height:300px;overflow-y:auto}.export-wizard__structure-item{display:grid;grid-template-columns:60px 1fr 200px;gap:var(--ex-space-2, .5rem);align-items:center;padding:var(--ex-space-2, .5rem) var(--ex-space-2, .5rem);border-bottom:1px solid var(--ex-border-light, #f3f4f6)}.export-wizard__structure-item:hover{background:var(--ex-bg-hover, #f9fafb)}.export-wizard__structure-name{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.export-wizard__structure-name .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-text-secondary, #6b7280)}.export-wizard__author-form{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.export-wizard__author-row{display:flex;gap:var(--ex-space-4, 1rem)}.export-wizard__author-row.two-col>*{flex:1}.export-wizard__preview{display:flex;flex-direction:column;gap:var(--ex-space-4, 1rem)}.export-wizard__preview-info{display:flex;flex-direction:column;gap:var(--ex-space-3, .75rem)}.export-wizard__preview-template{font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-secondary, #6b7280)}.export-wizard__preview-stats{display:flex;gap:var(--ex-space-6, 1.5rem)}.export-wizard__preview-stat{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem) var(--ex-space-4, 1rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827)}.export-wizard__preview-stat .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-text-secondary, #6b7280)}.export-wizard__preview-outline{border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-lg, 8px);overflow:hidden}.export-wizard__preview-outline-header{padding:var(--ex-space-3, .75rem) var(--ex-space-4, 1rem);background:var(--ex-bg-secondary, #f3f4f6);font-weight:var(--ex-font-weight-medium, 500);font-size:var(--ex-font-sm, .875rem);border-bottom:1px solid var(--ex-border-default, #e5e7eb)}.export-wizard__preview-outline-list{max-height:200px;overflow-y:auto}.export-wizard__preview-outline-item{display:flex;justify-content:space-between;align-items:center;padding:var(--ex-space-2, .5rem) var(--ex-space-4, 1rem);font-size:var(--ex-font-sm, .875rem);border-bottom:1px solid var(--ex-border-light, #f3f4f6)}.export-wizard__preview-outline-item:last-child{border-bottom:none}.export-wizard__preview-outline-name{color:var(--ex-text-primary, #111827)}.export-wizard__preview-outline-type{color:var(--ex-text-tertiary, #9ca3af);font-size:var(--ex-font-xs, .8rem)}.export-wizard__preview-format{display:flex;flex-direction:column;gap:var(--ex-space-2, .5rem);padding-top:var(--ex-space-2, .5rem);font-size:var(--ex-font-sm, .875rem)}.export-wizard__preview-format-info{color:var(--ex-text-secondary, #6b7280);font-size:var(--ex-font-sm, .875rem);margin:var(--ex-space-1, .25rem) 0 var(--ex-space-2, .5rem)}.export-wizard__preview-format-list{display:flex;flex-wrap:wrap;gap:var(--ex-space-3, .75rem)}.export-wizard__preview-format-item{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);padding:var(--ex-space-2, .5rem) var(--ex-space-3, .75rem);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-md, 6px);font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827)}.export-wizard__preview-format-item .material-icon{font-size:var(--ex-font-lg, 18px);color:var(--ex-text-secondary, #6b7280)}.export-wizard__preview-format-options{display:flex;gap:var(--ex-space-6, 1.5rem)}.export-wizard__preview-format-options label{display:flex;align-items:center;gap:var(--ex-space-2, .5rem);cursor:pointer}.export-wizard__exporting{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4, 1rem);padding:var(--ex-space-12, 3rem)}.export-wizard__exporting-icon .material-icon{font-size:var(--ex-font-4xl, 48px);color:var(--ex-primary, #6366f1);animation:spin 1s linear infinite}.export-wizard__exporting-text{font-size:var(--ex-font-base, 1rem);color:var(--ex-text-primary, #111827)}.export-wizard__exporting-progress{width:200px;height:var(--ex-space-1, 4px);background:var(--ex-bg-secondary, #f3f4f6);border-radius:var(--ex-radius-sm, 2px);overflow:hidden}.export-wizard__exporting-progress-bar{height:100%;background:var(--ex-primary, #6366f1);transition:width .3s ease}.export-wizard__exporting-percent{font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-secondary, #6b7280)}.export-wizard__complete{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-4, 1rem);padding:var(--ex-space-8, 2rem);text-align:center}.export-wizard__complete-icon .material-icon{font-size:var(--ex-font-4xl, 48px);color:var(--ex-success, #22c55e)}.export-wizard__complete-title{font-size:var(--ex-font-xl, 1.25rem);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827)}.export-wizard__complete-text{color:var(--ex-text-secondary, #6b7280);margin-bottom:var(--ex-space-2, .5rem)}.export-wizard__download-section{display:flex;flex-direction:column;align-items:center;gap:var(--ex-space-3, .75rem);width:100%;padding:var(--ex-space-4, 1rem) 0;border-top:1px solid var(--ex-border-default, #e5e7eb)}.export-wizard__download-section:first-of-type{border-top:none}.export-wizard__download-title{font-size:var(--ex-font-sm, .875rem);font-weight:var(--ex-font-weight-medium, 500);color:var(--ex-text-secondary, #6b7280)}.export-wizard__download-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--ex-space-3, .75rem)}.export-wizard__download-buttons .ex-button,.export-wizard__download-section>.ex-button{display:flex;align-items:center;gap:var(--ex-space-2, .5rem)}.export-wizard__download-buttons .ex-button .material-icon,.export-wizard__download-section>.ex-button .material-icon{font-size:var(--ex-font-lg, 18px)}.export-wizard__footer{display:flex;justify-content:flex-end;gap:var(--ex-space-3, .75rem);padding-top:var(--ex-space-4, 1rem);border-top:1px solid var(--ex-border-default, #e5e7eb)}.export-wizard__footer .ex-button{display:flex;align-items:center;gap:var(--ex-space-2, .5rem)}.export-wizard__footer .ex-button .material-icon{font-size:var(--ex-font-lg, 18px)}.export-wizard__sibling-prompt{position:absolute;bottom:60px;left:0;right:0;padding:0 var(--ex-space-4, 1rem);z-index:var(--ex-z-dropdown, 10)}.export-wizard__sibling-prompt-content{display:flex;align-items:center;gap:var(--ex-space-3, .75rem);padding:var(--ex-space-3, .75rem) var(--ex-space-4, 1rem);background:var(--ex-bg-secondary, #f3f4f6);border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--ex-shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.export-wizard__sibling-prompt-icon .material-icon{font-size:var(--ex-font-xl, 20px);color:var(--ex-primary, #6366f1)}.export-wizard__sibling-prompt-text{flex:1;font-size:var(--ex-font-sm, .875rem);color:var(--ex-text-primary, #111827)}.export-wizard__sibling-prompt-actions{display:flex;gap:var(--ex-space-2, .5rem)}.quick-switcher-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--ex-overlay-light);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;z-index:var(--ex-z-max);animation:quickSwitcherFadeIn var(--ex-transition-fast)}@keyframes quickSwitcherFadeIn{0%{opacity:0}to{opacity:1}}.quick-switcher{width:100%;max-width:600px;background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-xl);box-shadow:var(--ex-shadow-xl);overflow:hidden;animation:quickSwitcherSlideDown var(--ex-transition-fast)}@keyframes quickSwitcherSlideDown{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.quick-switcher-header{display:flex;align-items:center;gap:var(--ex-space-3);padding:var(--ex-space-4);border-bottom:1px solid var(--ex-border-light)}.quick-switcher-icon{font-size:var(--ex-font-xl);color:var(--ex-primary)}.quick-switcher-input{flex:1;border:none;background:transparent;font-size:var(--ex-font-md);color:var(--ex-text-primary);outline:none}.quick-switcher-input::placeholder{color:var(--ex-text-tertiary)}.quick-switcher-filter-badge{display:flex;align-items:center;gap:var(--ex-space-1);padding:var(--ex-space-1) var(--ex-space-2);background:var(--ex-primary-alpha-10);border:1px solid var(--ex-primary-alpha-20);border-radius:var(--ex-radius-full);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);color:var(--ex-primary);text-transform:capitalize}.quick-switcher-filter-clear{display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;cursor:pointer;color:var(--ex-primary);opacity:.7;transition:opacity var(--ex-transition-fast)}.quick-switcher-filter-clear:hover{opacity:1}.quick-switcher-filter-clear .material-icon{font-size:14px}.quick-switcher-hints{display:flex;align-items:center;gap:var(--ex-space-4);padding:var(--ex-space-2) var(--ex-space-4);background:var(--ex-bg-secondary);border-bottom:1px solid var(--ex-border-light);font-size:var(--ex-font-xs);color:var(--ex-text-tertiary)}.quick-switcher-hint{display:flex;align-items:center;gap:var(--ex-space-1)}.quick-switcher-hints kbd{padding:2px var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:3px;font-size:var(--ex-font-xs);font-family:inherit;color:var(--ex-text-secondary)}.quick-switcher-list{max-height:420px;overflow-y:auto;padding:var(--ex-space-2)}.quick-switcher-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ex-space-2);padding:var(--ex-space-10) var(--ex-space-5);color:var(--ex-text-tertiary)}.quick-switcher-empty .material-icon{font-size:32px;opacity:.5}.quick-switcher-group{margin-bottom:var(--ex-space-2)}.quick-switcher-group:last-child{margin-bottom:0}.quick-switcher-group-header{padding:var(--ex-space-2) var(--ex-space-3);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.quick-switcher-item{display:flex;align-items:center;justify-content:space-between;gap:var(--ex-space-3);padding:var(--ex-space-2) var(--ex-space-3);border-radius:var(--ex-radius-lg);cursor:pointer;transition:background-color var(--ex-transition-fast)}.quick-switcher-item:hover{background:var(--ex-bg-hover)}.quick-switcher-item.selected{background:var(--ex-primary);color:var(--ex-text-inverse)}.quick-switcher-item-content{display:flex;align-items:center;gap:var(--ex-space-3);flex:1;min-width:0}.quick-switcher-item-icon{font-size:var(--ex-font-lg);color:var(--ex-text-secondary);flex-shrink:0}.quick-switcher-item.selected .quick-switcher-item-icon{color:#ffffffd9}.quick-switcher-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.quick-switcher-item-label{font-size:var(--ex-font-base);font-weight:var(--ex-font-weight-medium);color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-switcher-item-subtitle{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-switcher-item.selected .quick-switcher-item-subtitle{color:#ffffffb3}.quick-switcher-item-meta{display:flex;align-items:center;gap:var(--ex-space-2);flex-shrink:0}.quick-switcher-item-type{padding:2px var(--ex-space-2);border-radius:var(--ex-radius-sm);font-size:var(--ex-font-xs);font-weight:var(--ex-font-weight-medium);text-transform:capitalize}.quick-switcher-item-type--note{background:var(--ex-info-bg, rgba(59, 130, 246, .1));color:var(--ex-info, #3b82f6)}.quick-switcher-item-type--character{background:var(--ex-success-bg, rgba(34, 197, 94, .1));color:var(--ex-success, #22c55e)}.quick-switcher-item-type--tag{background:var(--ex-warning-bg, rgba(234, 179, 8, .1));color:var(--ex-warning, #eab308)}.quick-switcher-item-type--person{background:var(--ex-error-bg, rgba(239, 68, 68, .1));color:var(--ex-error, #ef4444)}.quick-switcher-item.selected .quick-switcher-item-type{background:#fff3;color:var(--ex-text-inverse)}.quick-switcher-footer{display:flex;align-items:center;justify-content:center;gap:var(--ex-space-5);padding:var(--ex-space-3) var(--ex-space-4);border-top:1px solid var(--ex-border-light);background:var(--ex-bg-secondary);font-size:var(--ex-font-sm);color:var(--ex-text-tertiary)}.quick-switcher-footer kbd{padding:2px var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:3px;font-size:var(--ex-font-xs);font-family:inherit;color:var(--ex-text-secondary)}.quick-switcher-pane-mode-header{flex:1;display:flex;align-items:center;justify-content:space-between;outline:none}.quick-switcher-selected-item{display:flex;align-items:center;gap:var(--ex-space-2);font-size:var(--ex-font-md);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.quick-switcher-selected-item .material-icon{font-size:var(--ex-font-lg);color:var(--ex-primary)}.quick-switcher-pane-mode-hint{font-size:var(--ex-font-sm);color:var(--ex-text-tertiary)}.quick-switcher-pane-instructions{padding:var(--ex-space-6) var(--ex-space-4);text-align:center}.quick-switcher-pane-target-info{font-size:var(--ex-font-md);color:var(--ex-text-secondary)}.quick-switcher-pane-select-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--ex-z-max);outline:none}.quick-switcher-pane-hint-bar{position:fixed;top:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--ex-space-4);padding:var(--ex-space-3) var(--ex-space-5);background:var(--ex-bg-primary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-full);box-shadow:var(--ex-shadow-xl);font-size:var(--ex-font-sm);z-index:calc(var(--ex-z-max) + 2)}.quick-switcher-pane-hint-item{display:flex;align-items:center;gap:var(--ex-space-2);font-weight:var(--ex-font-weight-medium);color:var(--ex-text-primary)}.quick-switcher-pane-hint-item .material-icon{font-size:var(--ex-font-lg);color:var(--ex-primary)}.quick-switcher-pane-hint-action{padding:var(--ex-space-1) var(--ex-space-3);background:var(--ex-primary-alpha-10);border-radius:var(--ex-radius-sm);font-weight:var(--ex-font-weight-medium);color:var(--ex-primary)}.quick-switcher-pane-hint-keys{display:flex;align-items:center;gap:var(--ex-space-2);color:var(--ex-text-tertiary)}.quick-switcher-pane-hint-keys kbd{padding:2px var(--ex-space-2);background:var(--ex-bg-tertiary);border:1px solid var(--ex-border-light);border-radius:3px;font-size:var(--ex-font-xs);font-family:inherit;color:var(--ex-text-secondary)}.quick-switcher-pane-overlay{z-index:calc(var(--ex-z-max) + 1);border-radius:var(--ex-radius-lg);overflow:hidden}.quick-switcher-pane-overlay-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ex-primary);border:3px solid var(--ex-primary);border-radius:var(--ex-radius-lg);box-shadow:0 0 20px rgba(var(--ex-primary-rgb, 99, 102, 241),.3),inset 0 0 20px rgba(var(--ex-primary-rgb, 99, 102, 241),.1);animation:paneOverlayGlow 2s ease-in-out infinite}@keyframes paneOverlayGlow{0%,to{opacity:.08;box-shadow:0 0 15px rgba(var(--ex-primary-rgb, 99, 102, 241),.2),inset 0 0 15px rgba(var(--ex-primary-rgb, 99, 102, 241),.05);border-color:var(--ex-primary)}50%{opacity:.15;box-shadow:0 0 30px rgba(var(--ex-primary-rgb, 99, 102, 241),.4),inset 0 0 25px rgba(var(--ex-primary-rgb, 99, 102, 241),.15);border-color:var(--ex-primary)}}.quick-switcher-pane-split-indicator{background:var(--ex-primary);box-shadow:0 0 12px rgba(var(--ex-primary-rgb, 99, 102, 241),.6);animation:splitIndicatorGlow 1.2s ease-in-out infinite}@keyframes splitIndicatorGlow{0%,to{opacity:.7;box-shadow:0 0 8px rgba(var(--ex-primary-rgb, 99, 102, 241),.4)}50%{opacity:1;box-shadow:0 0 20px rgba(var(--ex-primary-rgb, 99, 102, 241),.8)}}.quick-switcher-pane-overlay--split-right .quick-switcher-pane-overlay-inner{border-right-width:0;border-top-right-radius:0;border-bottom-right-radius:0;opacity:.05}.quick-switcher-pane-overlay--split-bottom .quick-switcher-pane-overlay-inner{border-bottom-width:0;border-bottom-left-radius:0;border-bottom-right-radius:0;opacity:.05}@media(prefers-reduced-motion:reduce){.quick-switcher-overlay,.quick-switcher{animation:none}.quick-switcher-item,.quick-switcher-filter-clear{transition:none}.quick-switcher-pane-overlay-inner{animation:none;opacity:.12;box-shadow:0 0 20px rgba(var(--ex-primary-rgb, 99, 102, 241),.3),inset 0 0 20px rgba(var(--ex-primary-rgb, 99, 102, 241),.1)}.quick-switcher-pane-split-indicator{animation:none;opacity:.85;box-shadow:0 0 12px rgba(var(--ex-primary-rgb, 99, 102, 241),.6)}}.speaker-assignment-modal .ex-modal-content{max-height:80vh;overflow-y:auto}.speaker-assignment-modal-content{display:flex;flex-direction:column;gap:var(--ex-space-4)}.speaker-assignment-intro{color:var(--ex-text-primary);font-size:var(--ex-font-sm);line-height:1.5}.speaker-assignment-intro p{margin:0 0 var(--ex-space-1) 0}.speaker-assignment-intro .hint{color:var(--ex-text-muted);font-size:var(--ex-font-sm)}.speaker-assignment-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ex-space-8) var(--ex-space-4);color:var(--ex-text-muted);text-align:center}.speaker-assignment-empty .material-icon{font-size:48px;margin-bottom:var(--ex-space-4);opacity:.5}.speaker-assignment-empty p{margin:0 0 var(--ex-space-1) 0}.speaker-assignment-empty .hint{font-size:var(--ex-font-sm);opacity:.8}.speaker-assignment-list{display:flex;flex-direction:column;gap:var(--ex-space-3);max-height:50vh;overflow-y:auto;padding:var(--ex-space-1)}.speaker-row{background:var(--ex-bg-secondary);border:1px solid var(--ex-border-light);border-radius:var(--ex-radius-lg);padding:var(--ex-space-3)}.speaker-row-header{display:flex;justify-content:space-between;align-items:center;gap:var(--ex-space-3);margin-bottom:var(--ex-space-2)}.speaker-row-info{display:flex;align-items:center;gap:var(--ex-space-2)}.speaker-number{font-weight:var(--ex-font-weight-semibold);color:var(--ex-text-primary);font-size:var(--ex-font-sm)}.speaker-line-count{color:var(--ex-text-muted);font-size:var(--ex-font-xs);background:var(--ex-bg-tertiary);padding:2px var(--ex-space-2);border-radius:var(--ex-radius-full)}.speaker-detected-hint{display:flex;align-items:center;gap:var(--ex-space-1);color:var(--ex-primary);font-size:var(--ex-font-xs);font-style:italic;padding:2px var(--ex-space-2);background:var(--ex-primary-light);border-radius:var(--ex-radius-full);cursor:help}.speaker-detected-hint .material-icon{font-size:var(--ex-font-sm)}.speaker-row-assignment{display:flex;align-items:center;gap:var(--ex-space-2);flex-shrink:0;min-width:180px}.speaker-row-assignment .ex-select{margin:0}.speaker-color-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.confidence-badge{font-size:10px;font-weight:var(--ex-font-weight-medium);padding:1px 4px;border-radius:var(--ex-radius-sm);margin-left:var(--ex-space-1);font-style:normal}.confidence-badge.high{background:var(--ex-success-light);color:var(--ex-success)}.confidence-badge.medium{background:var(--ex-warning-light);color:var(--ex-warning)}.speaker-row-preview{margin-top:var(--ex-space-2)}.speaker-sample-line{display:flex;align-items:flex-start;gap:2px;padding:var(--ex-space-2) var(--ex-space-3);background:var(--ex-bg-tertiary);border-radius:var(--ex-radius-md);margin-bottom:var(--ex-space-1)}.speaker-sample-line.additional{opacity:.9}.quote-mark{color:var(--ex-text-muted);font-size:18px;line-height:1.2;font-family:Georgia,serif}.sample-text{color:var(--ex-text-primary);font-size:var(--ex-font-sm);line-height:1.4;font-style:italic}.speaker-expand-btn{display:flex;align-items:center;gap:var(--ex-space-1);background:none;border:none;padding:var(--ex-space-1) var(--ex-space-2);margin-top:var(--ex-space-1);color:var(--ex-primary);font-size:var(--ex-font-xs);cursor:pointer;border-radius:var(--ex-radius-sm);transition:background var(--ex-transition-fast)}.speaker-expand-btn:hover{background:var(--ex-bg-hover)}.speaker-expand-btn .material-icon{font-size:18px}.speaker-more-indicator{padding:var(--ex-space-1) var(--ex-space-3);color:var(--ex-text-muted);font-size:var(--ex-font-xs);font-style:italic}.speaker-assignment-warning{display:flex;align-items:flex-start;gap:var(--ex-space-2);padding:var(--ex-space-3);background:var(--ex-warning-light);border:1px solid var(--ex-warning-border);border-radius:var(--ex-radius-md);color:var(--ex-text-primary);font-size:var(--ex-font-sm)}.speaker-assignment-warning .material-icon{color:var(--ex-warning);flex-shrink:0}.speaker-assignment-warning p{margin:0}.speaker-assignment-actions{display:flex;justify-content:flex-end;gap:var(--ex-space-2);padding-top:var(--ex-space-2);border-top:1px solid var(--ex-border-light)}[data-theme=dark] .speaker-row{background:var(--ex-bg-tertiary)}[data-theme=dark] .speaker-sample-line{background:var(--ex-bg-dark)}[data-theme=dark] .speaker-assignment-warning{background:var(--ex-warning-light);border-color:var(--ex-warning-border)}.zoom-control{display:flex;align-items:center;gap:2px;padding:2px 6px;cursor:pointer;border-radius:3px;transition:background-color .1s ease;-webkit-user-select:none;user-select:none}.zoom-control:hover{background:var(--bg-hover)}.zoom-control:focus-visible{outline:1px solid var(--accent-primary);outline-offset:-1px}.zoom-control-value{font-size:11px;color:var(--text-secondary);font-variant-numeric:tabular-nums;min-width:32px;text-align:right}.zoom-control-icon{font-size:14px;color:var(--text-tertiary)}.zoom-control-menu{position:fixed;z-index:10000;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px;box-shadow:0 4px 16px #00000026;min-width:80px;overflow:hidden}.zoom-control-menu-scroll{max-height:280px;overflow-y:auto;padding:4px 0}.zoom-control-menu-scroll::-webkit-scrollbar{width:6px}.zoom-control-menu-scroll::-webkit-scrollbar-track{background:transparent}.zoom-control-menu-scroll::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}.zoom-control-menu-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.zoom-control-menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6px 12px;border:none;background:transparent;color:var(--text-primary);font-size:12px;cursor:pointer;text-align:left;transition:background-color .1s ease}.zoom-control-menu-item:hover{background:var(--bg-hover)}.zoom-control-menu-item:focus-visible{outline:none;background:var(--bg-hover)}.zoom-control-menu-item.selected{color:var(--accent-primary);font-weight:500}.zoom-control-check{font-size:14px;color:var(--accent-primary);margin-left:8px}:root[data-theme=dark] .zoom-control-menu{background:var(--bg-secondary);box-shadow:0 4px 16px #0006}.status-bar{display:flex;align-items:center;justify-content:space-between;height:22px;min-height:22px;max-height:22px;padding:0 8px;background:var(--bg-secondary);border-top:1px solid var(--border-primary);font-size:11px;color:var(--text-secondary);-webkit-user-select:none;user-select:none;flex-shrink:0;gap:12px}.status-bar-breadcrumbs{display:flex;align-items:center;gap:2px;overflow:hidden;flex:1;min-width:0}.status-bar-type-icon-wrapper{display:flex;align-items:center;margin-right:4px;flex-shrink:0}.status-bar-type-icon{font-size:14px}.status-bar-breadcrumb-item{display:flex;align-items:center;gap:2px;min-width:0}.status-bar-breadcrumb-separator{font-size:14px;color:var(--text-tertiary);flex-shrink:0}.status-bar-breadcrumb-link{display:flex;align-items:center;gap:4px;padding:1px 4px;border:none;background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;transition:background-color .1s ease,color .1s ease}.status-bar-breadcrumb-link:hover{background:var(--bg-hover);color:var(--text-primary)}.status-bar-auto-number{color:var(--text-tertiary);font-size:10px;margin-right:2px}.status-bar-tools{display:flex;align-items:center;gap:2px;flex-shrink:0}.status-bar-tool{display:flex;align-items:center;gap:4px;padding:2px 8px;border-left:1px solid var(--border-primary);white-space:nowrap}.status-bar-tool .material-icon{font-size:12px;color:var(--text-tertiary)}.status-bar-word-count span,.status-bar-page-count span{color:var(--text-secondary)}.status-bar-sync-tool{padding:2px 4px}.status-bar-zoom-tool{padding:0}.status-bar-sync{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.status-bar-sync .material-icon{font-size:14px;transition:color .15s ease}.status-bar-sync-ok .material-icon{color:var(--success, #22c55e)}.status-bar-sync-syncing .material-icon{color:var(--accent-primary, #667eea)}.status-bar-sync-pending .material-icon{color:var(--warning, #f59e0b)}.status-bar-sync-error .material-icon{color:var(--danger, #ef4444)}.status-bar-sync-offline .material-icon{color:var(--text-tertiary)}@keyframes status-bar-sync-spin{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.status-bar-sync .sync-spinning{animation:status-bar-sync-spin 1s linear infinite}:root[data-theme=dark] .status-bar{background:var(--bg-tertiary, #1a1a2e)}@media(max-width:600px){.status-bar-breadcrumb-link{max-width:80px}.status-bar-tool span{display:none}.status-bar-tool .material-icon{font-size:14px}}.sync-status-indicator{display:inline-flex;align-items:center;justify-content:center;position:relative;padding:var(--ex-space-1-5, 6px);border:none;background:transparent;border-radius:var(--ex-radius-md, 6px);cursor:default;transition:background-color var(--ex-transition-fast, .15s ease),color var(--ex-transition-fast, .15s ease);color:var(--ex-text-secondary, #666)}.sync-status-indicator:disabled{cursor:default}.sync-status-clickable{cursor:pointer}.sync-status-clickable:hover{background:var(--ex-bg-hover, rgba(0, 0, 0, .05))}.sync-status-clickable:active{background:var(--ex-bg-active, rgba(0, 0, 0, .1))}.sync-status-default{color:var(--ex-primary, #0066cc)}.sync-status-warning{color:var(--ex-warning, #f59e0b)}.sync-status-danger{color:var(--ex-danger, #dc2626)}.sync-status-syncing{color:var(--ex-primary, #0066cc)}.sync-status-dark{color:var(--ex-text-inverse-muted, rgba(255, 255, 255, .7))}.sync-status-dark.sync-status-default{color:var(--ex-text-inverse, rgba(255, 255, 255, .85))}.sync-status-dark.sync-status-warning{color:var(--ex-warning-light, #fbbf24)}.sync-status-dark.sync-status-danger{color:var(--ex-danger-light, #f87171)}.sync-status-dark.sync-status-syncing{color:var(--ex-text-inverse, rgba(255, 255, 255, .85))}.sync-status-dark.sync-status-clickable:hover{background:#ffffff1a}.sync-status-dark.sync-status-clickable:active{background:#ffffff26}.sync-status-badge{position:absolute;top:0;right:0;min-width:var(--ex-space-4, 16px);height:var(--ex-space-4, 16px);padding:0 var(--ex-space-1, 4px);font-size:var(--ex-font-2xs, 10px);font-weight:var(--ex-font-weight-semibold, 600);line-height:var(--ex-space-4, 16px);text-align:center;color:var(--ex-text-inverse, white);background:var(--ex-primary, #0066cc);border-radius:var(--ex-radius-full, 8px);transform:translate(25%,-25%)}.sync-status-dark .sync-status-badge{background:#ffffffe6;color:var(--ex-primary, #0066cc)}@keyframes sync-spin{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.sync-icon-spinning{animation:sync-spin 1s linear infinite}.sync-status-indicator .material-icon{font-size:var(--ex-font-xl, 20px);width:var(--ex-space-5, 20px);height:var(--ex-space-5, 20px)}.unified-search-container{position:relative;width:100%;max-width:500px}.unified-search-input-wrapper{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:6px;transition:all .15s ease}.unified-search-input-wrapper:hover{background:var(--background-hover);border-color:var(--border-color-strong)}.unified-search-input-wrapper.active{background:var(--background-elevated);border-color:var(--accent-color, #007aff);box-shadow:0 0 0 2px #007aff33}.unified-search-icon{font-size:18px;color:var(--text-secondary);flex-shrink:0}.unified-search-input-wrapper.active .unified-search-icon{color:var(--text-primary)}.unified-search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-size:13px;font-family:inherit;outline:none}.unified-search-input::placeholder{color:var(--text-tertiary)}.unified-search-clear{display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:3px}.unified-search-clear:hover{color:var(--text-primary);background:var(--background-hover)}.unified-search-clear .material-icons-round{font-size:16px}.unified-search-shortcut{display:flex;gap:2px;flex-shrink:0}.unified-search-shortcut kbd{font-family:system-ui,-apple-system,sans-serif;font-size:10px;padding:2px 4px;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-tertiary)}.unified-search-dropdown{background:var(--background-elevated, #2a2a2a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;box-shadow:0 8px 32px #0006;z-index:10000;overflow:hidden}.unified-search-mode-indicator{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-color)}.unified-search-mode-indicator .material-icons-round{font-size:14px}.unified-search-results{max-height:320px;overflow-y:auto}.unified-search-results::-webkit-scrollbar{width:6px}.unified-search-results::-webkit-scrollbar-track{background:transparent}.unified-search-results::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.unified-search-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .1s ease}.unified-search-item:hover,.unified-search-item.selected{background:#ffffff14}.unified-search-item.selected{background:var(--accent-color, #007aff)}.unified-search-item.selected .unified-search-item-subtitle,.unified-search-item.selected .unified-search-item-context,.unified-search-item.selected .unified-search-item-line,.unified-search-item.selected .unified-search-item-type{color:#ffffffb3}.unified-search-item.invalid{opacity:.5}.unified-search-item-icon{font-size:18px;color:#fff9;flex-shrink:0}.unified-search-item.selected .unified-search-item-icon{color:#ffffffe6}.unified-search-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.unified-search-item-label{font-size:13px;color:var(--text-primary-dark, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unified-search-item-label mark{background:#ffc8004d;color:inherit;border-radius:2px;padding:0 1px}.unified-search-item.selected .unified-search-item-label mark{background:#ffffff40}.unified-search-item-subtitle{font-size:11px;color:#ffffff80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unified-search-item-context{font-size:11px;color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.unified-search-item-error{font-size:11px;color:#ff6b6b}.unified-search-item-type{font-size:10px;font-weight:500;padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px;background:#ffffff1a;color:#fff9;flex-shrink:0}.unified-search-item-type--note{background:#3b82f633;color:#60a5fa}.unified-search-item-type--character{background:#a855f733;color:#c084fc}.unified-search-item-type--tag{background:#22c55e33;color:#4ade80}.unified-search-item-type--person{background:#fb923c33;color:#fb923c}.unified-search-item.selected .unified-search-item-type{background:#fff3;color:#ffffffe6}.unified-search-item-shortcut{display:flex;gap:2px;flex-shrink:0}.unified-search-item-shortcut kbd{font-family:system-ui,-apple-system,sans-serif;font-size:10px;padding:2px 5px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:3px;color:#ffffff80}.unified-search-item.selected .unified-search-item-shortcut kbd{background:#ffffff26;border-color:#fff3;color:#fffc}.unified-search-item-line{font-size:11px;color:#fff6;flex-shrink:0}.unified-search-heading-level{font-size:10px;font-weight:600;padding:2px 4px;background:#ffffff1a;border-radius:3px;color:#ffffff80;flex-shrink:0}.unified-search-item.selected .unified-search-heading-level{background:#fff3;color:#ffffffe6}.unified-search-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:#fff6}.unified-search-empty .material-icons-round{font-size:32px;opacity:.5}.unified-search-hints{display:flex;justify-content:center;gap:16px;padding:8px 12px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;color:#fff6}.unified-search-hints kbd{font-family:system-ui,-apple-system,sans-serif;font-size:10px;padding:1px 4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:3px;margin-right:2px}.unified-search-pane-select{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;outline:none}.unified-search-pane-hint-bar{position:fixed;bottom:40px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--background-elevated, #2a2a2a);border:1px solid rgba(255,255,255,.15);border-radius:8px;box-shadow:0 8px 32px #0006;z-index:10001}.unified-search-pane-hint-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text-primary-dark, #fff)}.unified-search-pane-hint-item .material-icons-round{font-size:18px;color:#fff9}.unified-search-pane-hint-action{font-size:12px;color:var(--accent-color, #007aff);font-weight:500}.unified-search-pane-hint-keys{display:flex;align-items:center;gap:4px;font-size:11px;color:#fff6}.unified-search-pane-hint-keys kbd{font-family:system-ui,-apple-system,sans-serif;font-size:10px;padding:2px 5px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:3px;margin-right:2px}.unified-search-pane-overlay{border:2px solid transparent;border-radius:4px;transition:all .15s ease}.unified-search-pane-overlay--pane{border-color:var(--accent-color, #007aff)}.unified-search-pane-overlay--split-right,.unified-search-pane-overlay--split-bottom{border-color:#fff3}.unified-search-pane-overlay-inner{width:100%;height:100%;background:#007aff1a;border-radius:2px}.unified-search-pane-overlay--split-right .unified-search-pane-overlay-inner,.unified-search-pane-overlay--split-bottom .unified-search-pane-overlay-inner{background:#ffffff0d}.unified-search-pane-split-indicator{background:var(--accent-color, #007aff);border-radius:2px}.unified-search-item--line{gap:10px}.unified-search-line-number{font-family:SF Mono,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;font-weight:500;min-width:42px;padding:3px 6px;background:#ffffff14;border-radius:4px;color:var(--accent-color, #007aff);text-align:center;flex-shrink:0}.unified-search-item--line.selected .unified-search-line-number{background:#fff3;color:#fffffff2}.unified-search-item--line.invalid .unified-search-line-number{color:#ff6b6b;background:#ff6b6b1a}.unified-search-item--line .unified-search-item-content{min-width:0}.unified-search-item--line .unified-search-item-label{font-family:inherit;color:var(--text-primary-dark, #fff)}.unified-search-item--line.invalid .unified-search-item-label{color:#ffffff80}.app-header{display:flex;align-items:center;height:40px;padding:0 12px;background:var(--collections-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--collections-border);flex-shrink:0;gap:12px}.app-header-left{display:flex;align-items:center;gap:8px;min-width:180px}.app-header-back-button{flex-shrink:0}.app-header-title{font-size:14px;font-weight:600;color:var(--text-primary-dark);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.app-header-center{flex:1;display:flex;justify-content:center;max-width:600px;margin:0 auto}.app-header-right{display:flex;align-items:center;gap:4px;min-width:80px;justify-content:flex-end}.app-header-settings-button{flex-shrink:0}@media(max-width:768px){.app-header-left{min-width:auto}.app-header-title{max-width:120px}.app-header-center{max-width:none}}@font-face{font-family:Material Symbols Rounded;font-style:normal;font-weight:700;src:url(/fonts/MaterialSymbolsRounded_Filled_28pt-Bold.ttf) format("truetype")}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-secondary);color:var(--text-primary);letter-spacing:.05ch;transition:background-color var(--transition-normal),color var(--transition-normal)}button:active:not(:disabled),[role=button]:active:not([aria-disabled=true]){transform:scale(.97)}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background-color:currentColor;opacity:0;transform:translate(-50%,-50%);pointer-events:none}.ripple-effect:active:after{width:200%;height:200%;opacity:.15;transition:width 0s,height 0s,opacity 0s}.ripple-effect:not(:active):after{transition:width .4s ease-out,height .4s ease-out,opacity .4s ease-out}input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=tel],input[type=number],textarea,[contenteditable=true]{cursor:text}input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week],input[type=checkbox],input[type=radio],input[type=file]{cursor:pointer}input[type=range]{cursor:grab}input[type=range]:active{cursor:grabbing}input[type=color],select,label{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled=true],.disabled{cursor:not-allowed}button:not(:disabled),[role=button]:not([aria-disabled=true]),[role=tab],[role=menuitem],[role=option],[role=link],summary{cursor:pointer}a:not([aria-disabled=true]){cursor:pointer}[draggable=true]:not([aria-disabled=true]){cursor:grab}[draggable=true]:active:not([aria-disabled=true]){cursor:grabbing}[data-sortable=true]:not([aria-disabled=true]){cursor:grab}[data-sortable=true]:active:not([aria-disabled=true]){cursor:grabbing}[data-resize=horizontal],[data-resize=ew]{cursor:ew-resize}[data-resize=vertical],[data-resize=ns]{cursor:ns-resize}[data-resize=both],[data-resize=nwse]{cursor:nwse-resize}[data-resize=nesw]{cursor:nesw-resize}[data-resize=col]{cursor:col-resize}[data-resize=row]{cursor:row-resize}.is-loading,[aria-busy=true]{cursor:progress}.is-waiting{cursor:wait}[data-tooltip],[aria-describedby],.help-text,.help-icon{cursor:help}[data-zoomable=true],.zoomable{cursor:zoom-in}[data-zoomable=true].zoomed-in,.zoomable.zoomed-in{cursor:zoom-out}[data-action=copy],.copy-button{cursor:copy}[data-has-context-menu=true]{cursor:context-menu}.drop-target-active,[data-drop-target=active]{cursor:copy}.drop-target-invalid,[data-drop-target=invalid]{cursor:no-drop}[data-moveable=true],.moveable{cursor:move}[data-selectable=cell]{cursor:cell}[data-selection=precise],.selection-tool{cursor:crosshair}::selection{background-color:var(--selection-bg, rgba(102, 126, 234, .3));color:var(--selection-text, inherit)}::-moz-selection{background-color:var(--selection-bg, rgba(102, 126, 234, .3));color:var(--selection-text, inherit)}.note-content ::selection,.note-editor ::selection,[contenteditable=true] ::selection{background-color:var(--selection-editor-bg, rgba(102, 126, 234, .35));color:var(--selection-editor-text, inherit)}.note-content ::-moz-selection,.note-editor ::-moz-selection,[contenteditable=true] ::-moz-selection{background-color:var(--selection-editor-bg, rgba(102, 126, 234, .35));color:var(--selection-editor-text, inherit)}code ::selection,pre ::selection,.code-block ::selection,textarea ::selection{background-color:var(--selection-code-bg, rgba(99, 102, 241, .4));color:var(--selection-code-text, inherit)}code ::-moz-selection,pre ::-moz-selection,.code-block ::-moz-selection,textarea ::-moz-selection{background-color:var(--selection-code-bg, rgba(99, 102, 241, .4));color:var(--selection-code-text, inherit)}input ::selection{background-color:var(--selection-input-bg, rgba(102, 126, 234, .3));color:var(--selection-input-text, inherit)}input ::-moz-selection{background-color:var(--selection-input-bg, rgba(102, 126, 234, .3));color:var(--selection-input-text, inherit)}.tree-sidebar ::selection,.right-sidebar ::selection,.sidebar ::selection{background-color:var(--selection-sidebar-bg, rgba(102, 126, 234, .25));color:var(--selection-sidebar-text, inherit)}.tree-sidebar ::-moz-selection,.right-sidebar ::-moz-selection,.sidebar ::-moz-selection{background-color:var(--selection-sidebar-bg, rgba(102, 126, 234, .25));color:var(--selection-sidebar-text, inherit)}mark ::selection,.highlight ::selection,.search-highlight ::selection{background-color:var(--selection-highlight-bg, rgba(245, 158, 11, .5));color:var(--selection-highlight-text, inherit)}mark ::-moz-selection,.highlight ::-moz-selection,.search-highlight ::-moz-selection{background-color:var(--selection-highlight-bg, rgba(245, 158, 11, .5));color:var(--selection-highlight-text, inherit)}[aria-disabled=true] ::selection,.disabled ::selection,[readonly] ::selection{background-color:var(--selection-disabled-bg, rgba(156, 163, 175, .3));color:var(--selection-disabled-text, inherit)}[aria-disabled=true] ::-moz-selection,.disabled ::-moz-selection,[readonly] ::-moz-selection{background-color:var(--selection-disabled-bg, rgba(156, 163, 175, .3));color:var(--selection-disabled-text, inherit)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--ex-radius-sm, 4px)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.material-icons{font-family:Material Symbols Rounded!important;font-weight:700!important}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-content{display:flex;flex:1;min-height:0;overflow:hidden}@media(max-width:768px){.tree-header{height:48px}.collection-title-sidebar{font-size:14px}.back-button-sidebar{width:2.5rem;font-size:1.5rem}.tree-node-label{padding:10px 8px;min-height:44px}.node-name{font-size:13px}.node-actions{visibility:visible}.action-btn{width:32px;height:32px}.add-root-btn{width:40px;height:40px;font-size:20px}.settings-button{padding:12px;min-height:44px}}@media(max-width:480px){.tree-header{height:44px;padding:0 8px 0 0}.collection-title-sidebar{font-size:13px;margin-left:8px}.back-button-sidebar{width:2.5rem;padding:0 .25rem;font-size:1.25rem}.tree-subheader{padding:10px}.tree-subheader h2{font-size:16px}.tree-content{padding:8px 2px}.tree-footer{padding:10px}.tree-node-label{padding:12px 8px}.node-icon{width:18px;height:18px;font-size:14px}.node-name{font-size:12px}.auto-number{font-size:11px}.note-header{flex-direction:column!important;height:auto!important;padding:8px!important;gap:4px!important;align-items:center!important}.note-title-container{flex-direction:column!important;align-items:center!important;gap:2px!important;width:100%!important;flex:none!important}.note-title-container .auto-number{font-size:11px;white-space:nowrap;text-align:center}.note-header h1{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;text-align:center}.note-editor-bottom-bar{padding:0 8px}.focus-mode-toggle{display:none}.note-content{padding:8px 4px!important}.note-content>div{padding:0 12px 0 28px!important;max-width:100%!important;margin:0!important}.note-content>div.current-line:before{left:22px;right:2px}}.main-content{flex:1;background:var(--bg-primary);overflow:auto;display:flex;flex-direction:column;transition:background-color var(--transition-normal)}.main-content.split-view-active{overflow:hidden}.split-view-container{display:flex;flex:1;height:100%;overflow:hidden}.split-view-pane{display:flex;flex-direction:column;overflow:hidden;min-width:200px}.split-view-pane-snapping{transition:flex-basis .1s ease-out}.split-view-pane-left{border-right:none}.split-view-pane-right{border-left:none}.split-view-pane-content{flex:1;overflow:auto;min-height:0}@keyframes tab-switch-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.split-view-pane-content.tab-content-animating{animation:tab-switch-fade .2s ease-out}@media(prefers-reduced-motion:reduce){.split-view-pane-content.tab-content-animating{animation:none}}.single-pane-container{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.single-pane-content{flex:1;overflow:auto;min-height:0}.split-view-divider{width:5px;background:var(--border-primary);flex-shrink:0;cursor:col-resize;position:relative;transition:background-color .15s ease}.split-view-divider:hover,.split-view-divider-dragging{background:var(--accent-primary, #667eea)}.split-view-divider-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3px;height:32px;border-radius:2px;background:var(--text-tertiary);opacity:0;transition:opacity .15s ease}.split-view-divider:hover .split-view-divider-handle,.split-view-divider-dragging .split-view-divider-handle{opacity:1;background:#fff}.split-view-focus-bar{height:3px;flex-shrink:0;background:var(--bg-secondary);transition:background-color .15s ease}.split-view-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);min-height:40px;flex-shrink:0;-webkit-user-select:none;user-select:none}.split-view-header-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden}.split-view-header-title .material-icon{font-size:18px;color:var(--text-secondary);flex-shrink:0}.split-view-header-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.split-view-pane .note-editor{flex:1;overflow:auto}.pane-tab-focus-bar{height:3px;flex-shrink:0;background:var(--bg-secondary);transition:background-color .15s ease}.pane-tab-bar{display:flex;align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);min-height:32px;flex-shrink:0;overflow-x:auto;overflow-y:hidden}.pane-tab-bar::-webkit-scrollbar{height:4px}.pane-tab-bar::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:2px}.pane-tab{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 12px;font-size:12px;color:var(--text-secondary);background:var(--bg-secondary);border-right:1px solid var(--border-primary);border-left:1px solid var(--border-primary);border-top:1px solid var(--border-primary);cursor:pointer;white-space:nowrap;max-width:180px;flex-shrink:0;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);z-index:1}.pane-tab:hover{background:var(--bg-tertiary)}.pane-tab-active{color:var(--text-primary);background:var(--bg-primary);box-shadow:var(--shadow-xl);z-index:10}.pane-tab-name{overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.pane-tab-close{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:opacity .1s ease,background-color .1s ease,color .1s ease;flex-shrink:0;padding:0}.pane-tab-close .material-icon{font-size:14px}.pane-tab:hover .pane-tab-close,.pane-tab-active .pane-tab-close{opacity:.6}.pane-tab-close:hover{opacity:1!important;background:var(--bg-tertiary);color:var(--text-primary)}.pane-tab-menu{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--ex-radius-sm);border:none;background:transparent;cursor:pointer;flex-shrink:0;opacity:.6;transition:opacity .15s ease}.pane-tab:hover .pane-tab-menu,.pane-tab-active .pane-tab-menu{opacity:.6}.pane-tab-menu:hover{opacity:1!important;background:var(--bg-tertiary)}.pane-tab-menu .material-icon{font-size:16px}.pane-tab-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--text-tertiary)}.pane-tab-icon .material-icon{font-size:16px}.pane-tab-active .pane-tab-icon{color:var(--text-secondary)}.pane-tab-dragging{opacity:.4}.pane-tab-drag-overlay{background:var(--bg-primary);box-shadow:var(--shadow-lg);cursor:grabbing;z-index:1000}.pane-tab-drag-overlay .pane-tab-close,.pane-tab-drag-overlay .pane-tab-menu{opacity:.6}.pane-tab-drop-placeholder{width:4px;min-width:4px;height:28px;background:var(--primary-color, #667eea);border-radius:2px;margin:0 2px;flex-shrink:0;animation:drop-placeholder-pulse .8s ease-in-out infinite}@keyframes drop-placeholder-pulse{0%,to{opacity:1}50%{opacity:.5}}.pane-tab-bar-tabs{display:flex;align-items:center;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden}.pane-tab-bar-tabs::-webkit-scrollbar{height:4px}.pane-tab-bar-tabs::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:2px}.pane-tab-bar-split-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:2px 4px;border-radius:var(--ex-radius-sm);border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:background-color .15s ease,color .15s ease}.pane-tab-bar-split-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.pane-tab-bar-split-button .material-icon{font-size:18px}.split-view-container-vertical{display:flex;flex-direction:column;height:100%;width:100%}.split-view-divider-vertical{height:5px;width:100%;background:var(--bg-secondary);cursor:row-resize;flex-shrink:0;position:relative;transition:background-color .15s ease;z-index:10}.split-view-divider-vertical:hover{background:var(--bg-tertiary)}.split-view-divider-vertical .split-view-divider-handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40px;height:3px;background:var(--text-tertiary);border-radius:2px;opacity:0;transition:opacity .15s ease}.split-view-divider-vertical:hover .split-view-divider-handle{opacity:1}.pane-tree-container{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.pane-tree-leaf{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.empty-pane{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary);font-size:14px}.pane-tree-split{display:flex;flex:1;min-width:0;min-height:0;overflow:hidden}.pane-tree-split-horizontal{flex-direction:row}.pane-tree-split-vertical{flex-direction:column}.pane-tree-split>div{overflow:hidden;min-width:0;min-height:0;display:flex;flex-direction:column}.pane-tree-split-horizontal>div{height:100%}.pane-tree-split-vertical>div{width:100%}.pane-tree-split-snapping>.pane-tree-leaf,.pane-tree-split-snapping>.pane-tree-split{transition:flex-basis .1s ease-out}.pane-tree-split-animating>div{transition:flex .35s cubic-bezier(.16,1,.3,1)}@media(prefers-reduced-motion:reduce){.pane-tree-split-animating>div{transition:none}}@keyframes pane-enter-horizontal{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pane-enter-vertical{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.pane-tree-leaf.pane-entering-horizontal{animation:pane-enter-horizontal .35s cubic-bezier(.16,1,.3,1) backwards}.pane-tree-leaf.pane-entering-vertical{animation:pane-enter-vertical .35s cubic-bezier(.16,1,.3,1) backwards}@keyframes pane-close-fade{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.pane-tree-leaf.pane-closing-horizontal,.pane-tree-leaf.pane-closing-vertical{animation:pane-close-fade .35s cubic-bezier(.16,1,.3,1) forwards;pointer-events:none}@media(prefers-reduced-motion:reduce){.pane-tree-leaf.pane-entering-horizontal,.pane-tree-leaf.pane-entering-vertical,.pane-tree-leaf.pane-closing-horizontal,.pane-tree-leaf.pane-closing-vertical{animation:none}}.tree-view{display:flex;flex-direction:column;height:100%}.tree-header{padding:0 12px 0 0;height:52px;background:var(--collections-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--collections-border);display:flex;align-items:center;justify-content:space-between}.back-button-sidebar{background:var(--collections-overlay);border-width:0 1px 0 0;border-right:1px solid var(--collections-border);color:var(--collections-text);height:100%;width:3rem;padding:0 .5rem;font-size:2rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal, .2s);display:flex;align-items:center;gap:6px}.back-button-sidebar:hover{background:var(--collections-overlay-hover)}.collection-title-sidebar{color:var(--collections-text);margin-left:1rem;font-size:16px;font-weight:600;text-align:left;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-subheader{padding:12px;border-bottom:1px solid var(--collections-border);background:var(--sidebar-hover);display:flex;align-items:center;justify-content:space-between}.tree-subheader h2{font-size:18px;font-weight:600;color:var(--collections-text)}.add-root-btn{width:28px;height:28px;border:none;background:var(--collections-overlay);color:var(--sidebar-text-muted);border-radius:var(--ex-radius-sm, 4px);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast, .15s)}.add-root-btn:hover{background:var(--collections-overlay-hover)}.tree-content{flex:1;overflow-y:auto;padding:12px 4px}.tree-footer{padding:12px;border-top:1px solid var(--collections-border);background:var(--sidebar-hover)}.tree-node-label.has-completion-status{border-left:3px solid transparent;border-left-color:inherit}.completion-status-indicator{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;font-size:10px;font-weight:700;text-transform:uppercase;background:var(--collections-overlay-hover);border-radius:var(--ex-radius-sm, 3px);margin-right:6px;padding:0 4px;flex-shrink:0}.settings-button{width:100%;padding:10px 12px;background:var(--collections-overlay);border:1px solid var(--collections-border);color:var(--collections-text);border-radius:var(--ex-radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-normal, .2s);display:flex;align-items:center;justify-content:center;gap:8px}.settings-button:hover{background:var(--collections-overlay-hover);border-color:var(--collections-border)}.tree-node{-webkit-user-select:none;user-select:none;position:relative}.tree-node-label{display:flex;align-items:center;padding:6px 8px;cursor:pointer;transition:background var(--transition-fast, .15s);position:relative;border-radius:var(--ex-radius-sm, 4px);margin-bottom:2px}.tree-node-label{color:var(--text-primary, #333)}.tree-node-label:hover{background:var(--bg-hover, rgba(0, 0, 0, .05))}.tree-node-label:focus{outline:none}.tree-node-label:focus-visible{outline:2px solid var(--accent-primary, #4a90e2);outline-offset:-2px;background:var(--bg-active, rgba(0, 0, 0, .1))}.tree-node-label.selected{background:var(--bg-active, rgba(0, 0, 0, .1));color:var(--text-primary, #333)}.tree-node-label.drop-target{background:#4a90e24d;border:2px dashed rgba(74,144,226,.8);animation:pulse-glow 1s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 8px #4a90e266}50%{box-shadow:0 0 16px #4a90e2cc}}.node-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;margin-right:6px;margin-bottom:auto;font-size:16px;flex-shrink:0}.node-name{flex:1;font-size:14px}.auto-number{color:var(--auto-number-color, #e91e63);font-weight:600;text-transform:uppercase;margin-right:4px;display:block}.auto-number-tree{color:var(--auto-number-color, #e91e63)}.auto-number-header{color:var(--auto-number-color, #e91e63);font-weight:600;font-size:.9rem;text-transform:uppercase;margin-bottom:8px;text-align:left}.node-actions{display:flex;gap:4px;visibility:hidden}.tree-node-label:hover .node-actions{visibility:visible}.action-btn{width:20px;height:20px;border:none;background:var(--collections-overlay-hover);color:var(--collections-text);border-radius:var(--ex-radius-sm, 3px);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast, .15s)}.action-btn:hover{background:var(--collections-border)}.delete-btn:hover{background:var(--status-error);color:var(--text-inverse)}.tree-node-label.creating{background:var(--sidebar-hover);cursor:default}.new-note-input{flex:1;background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);padding:4px 8px;font-size:13px;border-radius:var(--ex-radius-sm, 3px);outline:none;font-family:inherit;margin-left:0}.new-note-input::placeholder{color:var(--text-secondary, #666)}.tree-group-container{margin-top:6px}.tree-group-container:first-child{margin-top:0}.tree-group-header{display:flex;align-items:center;padding:6px 8px;-webkit-user-select:none;user-select:none}.tree-group-header-interactive{pointer-events:auto;cursor:pointer;border-radius:var(--ex-radius-sm, 4px);transition:background-color var(--transition-fast, .15s ease)}.tree-group-header-interactive:hover{background-color:var(--collections-overlay)}.tree-group-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:4px;color:var(--collections-text-muted);transition:transform var(--transition-fast, .15s ease)}.tree-group-toggle .material-icons{font-size:18px}.tree-group-pill{display:inline-block;background:var(--bg-primary);padding:3px 12px;border-radius:var(--ex-radius-lg, 10px);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;box-shadow:var(--shadow-sm);white-space:nowrap}.tree-group-children,.tree-node-children{position:relative;margin-left:16px;padding-left:8px;border-left:1px solid var(--border-secondary, rgba(128, 128, 128, .3))}.drag-handle{color:var(--collections-text-muted);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;display:inline-flex;align-items:center;justify-content:center;padding:2px}.drag-handle:hover{color:var(--collections-text)}.drag-handle:active{cursor:grabbing}.drop-indicator{position:absolute;bottom:-2px;left:0;right:0;height:4px;background:var(--accent-primary);border-radius:2px;z-index:10;box-shadow:0 0 8px var(--input-focus-ring)}.drop-indicator-vertical{position:absolute;left:-2px;top:0;bottom:0;width:4px;background:var(--accent-primary);border-radius:2px;z-index:10;box-shadow:0 0 8px var(--input-focus-ring)}.drag-overlay-badge{background:var(--accent-gradient);color:var(--text-inverse);padding:12px 20px;border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:12px;cursor:grabbing;font-weight:600;-webkit-user-select:none;user-select:none}.drag-overlay-count{font-size:24px;font-weight:700;line-height:1}.drag-overlay-text{font-size:14px;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.note-editor{display:flex;flex-direction:column;height:100%;flex:1;align-items:center}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary);gap:8px}.empty-state p{font-size:18px}.empty-state .hint{font-size:14px;color:var(--text-muted)}.note-header{width:100%;padding:16px 40px;border-bottom:1px solid var(--border-secondary);background:var(--bg-primary);box-shadow:0 -4px 4px #0000001a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:background-color var(--transition-normal),border-color var(--transition-normal);z-index:5}.note-title-container{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.note-header h1{font-size:20px;color:var(--text-primary);margin:0;word-break:break-all;font-weight:600;letter-spacing:-.02rem;text-align:center}.note-title-container .auto-number{font-size:12px;font-weight:500;text-align:center}.editable-path{cursor:pointer;transition:color var(--transition-fast, .15s)}.editable-path:hover{color:var(--accent-primary)}.path-edit-container{display:flex;align-items:center}.path-hash{font-size:20px;color:var(--text-primary);font-weight:600;letter-spacing:-.02rem;margin-right:2px}.path-input{flex:1;font-size:20px;color:var(--text-primary);font-weight:600;letter-spacing:-.02rem;border:2px solid var(--input-focus-border);border-radius:var(--ex-radius-sm, 4px);padding:4px 8px;outline:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--input-bg)}.note-meta{display:flex;gap:16px;font-size:11px;color:var(--text-tertiary)}.panels-area{position:relative;z-index:10;background:var(--bg-primary);width:100%;display:flex;flex-direction:column;transition:background-color var(--transition-normal);flex-shrink:0}.panels-area.collapsed{height:auto!important;max-height:none!important}.panels-area.dragging{-webkit-user-select:none;user-select:none}.panels-content{flex:1;overflow:auto;min-height:0;display:flex;flex-direction:column}.panels-content.collapsed{display:none}.panels-toggle-bar{display:flex;align-items:center;justify-content:center;height:var(--panels-toggle-height, 5px);background:linear-gradient(to bottom,var(--bg-tertiary),var(--bg-secondary),var(--bg-tertiary));border:none;border-top:1px solid var(--border-primary);cursor:ns-resize;transition:background-color var(--transition-normal, .2s),height var(--transition-normal, .2s);-webkit-user-select:none;user-select:none;padding:0;margin-top:var(--panels-toggle-height, 5px)}.panels-toggle-bar:hover{background-color:var(--bg-active, var(--bg-tertiary))}.panels-toggle-bar{cursor:ns-resize}.panels-toggle-bar.dragging{background-color:var(--accent-primary, var(--bg-active))}.panels-toggle-bar .material-icon{font-size:12px;color:#666;transition:color var(--transition-normal, .2s)}.panels-toggle-bar:hover .material-icon{color:var(--text-primary)}.note-content{flex:1;width:100%;padding:40px;border:none;font-size:17px;line-height:1.75;font-family:Georgia,Palatino,Times New Roman,serif;outline:none;background:var(--editor-bg);color:var(--editor-text);overflow-y:auto;text-align:justify;white-space:pre-wrap;word-wrap:break-word;position:relative;transition:background-color var(--transition-normal),color var(--transition-normal);zoom:var(--note-zoom, 1)}.note-content:empty:before{content:attr(data-placeholder);color:var(--editor-placeholder);font-style:italic}.note-content>div{min-height:1.75rem;position:relative;max-width:66ch;padding:0 40px;margin:0 auto}.note-content>div.current-line:before{content:"";position:absolute;left:0;right:0;top:0;min-height:1.75rem;height:100%;background:var(--editor-line-highlight);z-index:0;pointer-events:none}.note-content>div.current-line>*{position:relative;z-index:1}.note-content>div:not(:empty):not(:has(>br:only-child))+div:not(:empty):not(:has(>br:only-child)){text-indent:2rem}.note-content>div:first-child{text-indent:0}.note-content>div:empty{text-indent:0;min-height:1.75rem}.note-content>div:empty+div{text-indent:0}.note-content>div:empty+div:empty+div{text-indent:0}.note-content h1.collapsible-header,.note-content h2.collapsible-header,.note-content h3.collapsible-header{text-indent:0!important;margin-top:1rem;margin-bottom:.5rem;display:block;font-weight:700}.note-content h1.collapsible-header{font-size:1.5em;text-decoration:underline}.note-content h2.collapsible-header{font-size:1.25em}.note-content h3.collapsible-header{font-size:1.1em;font-style:italic}.note-content h1.collapsible-header:first-child,.note-content h2.collapsible-header:first-child,.note-content h3.collapsible-header:first-child{margin-top:0}.collapsible-header{text-indent:0!important;margin-top:1rem;margin-bottom:.5rem}.collapsible-header:first-child{margin-top:0}.collapse-icon{color:var(--accent-secondary, #667eea);font-size:.9rem;transition:transform var(--transition-normal, .2s);cursor:pointer;display:inline-block;width:20px;margin-right:4px;-webkit-user-select:none;user-select:none}.collapsible-header:hover .collapse-icon{color:#5568d3}.header-text{cursor:text}.note-content>div:has(>br:only-child){text-indent:0;min-height:1rem}.note-content>div:has(>br:only-child)+div{text-indent:0}.note-content strong,.note-content b{font-weight:700}.note-content em,.note-content i{font-style:italic}.note-content u{text-decoration:underline}.note-content .note-link{color:var(--text-inverse);background-color:#9932cc;text-decoration:none;cursor:pointer;padding:5px;border-radius:5px;font-size:.8rem;font-weight:700;transition:background-color .15s;white-space:nowrap}.note-content .note-link:hover{background-color:#8b008b}.note-content .note-link:after{content:" ↗";color:var(--text-inverse);margin-left:2px}.note-content .note-tag{color:var(--accent-primary, #0066cc);text-decoration:underline;cursor:pointer}.note-content .note-tag:before{content:"label";font-family:Material Symbols Rounded;font-weight:700;font-size:16px;margin-right:4px;text-decoration:none!important;opacity:.7;vertical-align:text-bottom;display:inline-block}.note-content .note-tag:hover{color:#0052a3}.note-content .note-person{color:#c60;text-decoration:underline;cursor:pointer}.note-content .note-person:before{content:"person";font-family:Material Symbols Rounded;font-weight:700;font-size:16px;margin-right:4px;text-decoration:none!important;opacity:.7;vertical-align:text-bottom;display:inline-block}.note-content .note-person:hover{color:#a35200}.note-content .web-link{color:#07c;text-decoration:underline;cursor:pointer;word-break:break-all}.note-content .web-link:before{content:"link";font-family:Material Symbols Rounded;font-weight:700;font-size:16px;margin-right:4px;text-decoration:none!important;opacity:.7;vertical-align:text-bottom;display:inline-block}.note-content .web-link:hover{color:#005fa3}.note-content .note-date{font-weight:500;cursor:default}.note-content .note-date:before{content:"calendar_today";font-family:Material Symbols Rounded;font-weight:700;font-size:16px;margin-right:4px;opacity:.7;vertical-align:text-bottom}.note-content .note-date.invalid{color:var(--status-error, #cc0000);text-decoration:underline;text-decoration-style:wavy;text-decoration-color:var(--status-error, #cc0000)}.note-content .note-date.past{color:var(--status-success, #008800)}.note-content .note-date.future{color:#ff1493}.note-content .note-date.today{color:var(--status-success, #008800)}.note-content .note-date-range{font-weight:500;cursor:default}.note-content .note-date-range:before{content:"date_range";font-family:Material Symbols Rounded;font-weight:700;font-size:16px;margin-right:4px;opacity:.7;vertical-align:text-bottom}.note-content .note-date-range.invalid{color:var(--status-error, #cc0000);text-decoration:underline;text-decoration-style:wavy;text-decoration-color:var(--status-error, #cc0000)}.note-content .note-date-range.past{color:var(--status-success, #008800)}.note-content .note-date-range.future{color:#ff1493}.note-content .note-date-range.current{color:var(--accent-primary, #0066cc);font-weight:600}.date-preview-popup{background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);padding:8px 12px;box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .15));z-index:1000;font-size:14px;white-space:nowrap;max-width:300px}.date-preview-popup.valid{border-color:var(--status-success, #008800);color:var(--status-success, #008800)}.date-preview-popup.invalid{border-color:var(--status-error, #cc0000);color:var(--status-error, #cc0000);font-style:italic}.tag-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.tag-item-readonly{display:flex;align-items:center}.tag-name-readonly{padding:8px 10px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);color:var(--accent-primary, #0066cc);font-size:13px;width:100%}.tag-icon{margin-right:6px;opacity:.7}.people-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.person-item-readonly{display:flex;align-items:center}.person-name-readonly{padding:8px 10px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);color:#c60;font-size:13px;width:100%}.person-icon{margin-right:6px;opacity:.7}.dates-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.date-item-readonly{display:flex;align-items:center}.date-name-readonly{padding:8px 10px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);font-size:13px;width:100%;font-weight:500}.date-icon{margin-right:6px;opacity:.7}.date-item-readonly.invalid .date-name-readonly{color:var(--status-error, #cc0000);border-color:var(--status-error, #cc0000)}.date-item-readonly.past .date-name-readonly{color:var(--status-success, #008800);border-color:var(--status-success, #008800)}.date-item-readonly.future .date-name-readonly{color:#ff1493;border-color:#ff1493}.date-item-readonly.today .date-name-readonly{color:var(--status-success, #008800);border-color:var(--status-success, #008800)}.date-item-readonly.current .date-name-readonly{color:var(--accent-primary, #0066cc);border-color:var(--accent-primary, #0066cc)}.date-formatted{font-weight:400;opacity:.7;font-size:12px}.note-content .checkbox-wrap{position:relative;display:inline-block;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:middle;color:transparent!important;font-size:0!important;width:20px;height:20px;line-height:20px}.note-content .checkbox-wrap:before{content:"check_box_outline_blank";font-family:Material Symbols Rounded;font-weight:700;font-size:20px;position:absolute;left:0;top:-2px;color:var(--accent-secondary, #667eea);cursor:pointer;transition:all var(--transition-normal, .2s ease)}.note-content .checkbox-wrap:hover:before{color:#764ba2}.note-content .checkbox-wrap[data-checked=true]:before{content:"check_box";color:var(--accent-secondary, #667eea)}.note-content .checkbox-wrap[data-checked=true]:hover:before{color:#764ba2}.note-content div:has(.checkbox-wrap){text-indent:0!important}.note-content>div.list-item{text-indent:0!important}.insert-toolbar{z-index:10;display:flex;align-items:flex-start;gap:0;transition:all var(--transition-normal, .2s ease);position:relative}.insert-toolbar-handle{width:24px;height:1.75rem;border:none;background:transparent;color:var(--text-muted, #ccc);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px 0 0 6px;transition:all var(--transition-normal, .2s ease);padding:0;font-size:1rem}.insert-toolbar-handle:hover{background:#667eea1a;color:var(--accent-secondary, #667eea)}.insert-toolbar-panel{position:absolute;left:24px;top:0;display:flex;gap:2px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-md, 6px);padding:2px;box-shadow:var(--ex-shadow-lg, 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05));opacity:0;transform:translate(-10px);pointer-events:none;transition:all var(--transition-normal, .2s ease)}.insert-toolbar-panel.open{opacity:1;transform:translate(0);pointer-events:auto}.insert-option{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary, #666);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:all var(--transition-fast, .15s ease);padding:0}.insert-option:hover{background:#667eea1a;color:var(--accent-secondary, #667eea)}.insert-option:active{background:#667eea33}.linked-notes-sidebar{display:flex;flex-direction:column;height:100%}.tab-header{display:flex;background:var(--right-sidebar-bg, #f0f0f0);border-bottom:1px solid var(--right-sidebar-border, #ddd)}.tab-btn{flex:1;padding:.2rem 0 0;line-height:1.75rem;border:none;background:transparent;cursor:pointer;font-size:16px;transition:all var(--transition-normal, .2s);border-bottom:3px solid transparent;display:flex;align-items:center;justify-content:center;color:var(--right-sidebar-text-muted, #666)}.tab-btn:hover{color:var(--right-sidebar-text, #333)!important}.tab-btn.active{background:var(--right-sidebar-section-bg, #f9f9f9)}.tab-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.tab-content.empty{display:flex;align-items:center;justify-content:center;color:var(--text-muted, #999);font-size:14px}.tab-pane{flex:1;display:flex;flex-direction:column;height:100%}.tab-pane.scrollable{overflow-y:auto;padding:16px}.properties-section{margin-bottom:28px}.properties-section:last-child{margin-bottom:0}.links-section{margin-bottom:28px}.links-section:last-child{margin-bottom:0}.description-textarea{flex:1;width:100%;padding:16px;border:none;font-family:inherit;font-size:13px;color:var(--right-sidebar-text, #333);resize:none;outline:none;background:var(--right-sidebar-section-bg, #f9f9f9)}.description-textarea::placeholder{color:var(--text-muted, #999)}.section-title{font-size:12px;font-weight:600;color:var(--right-sidebar-text-muted, #666);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.completion-status-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-secondary, #eee)}.completion-status-dropdown-container{position:relative;display:flex;align-items:center}.completion-status-select{width:100%;padding:10px 40px 10px 12px;border:2px solid var(--border-primary, #e0e0e0);border-radius:var(--ex-radius-md, 6px);font-size:13px;font-family:inherit;cursor:pointer;background:#fff;transition:all var(--transition-normal, .2s);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:18px}.completion-status-select:focus{outline:none;border-color:var(--accent-secondary, #667eea)}.completion-status-select:hover{border-color:#cbd5e0}.completion-status-indicator{position:absolute;right:36px;width:12px;height:12px;border-radius:var(--ex-radius-sm, 3px);pointer-events:none}.empty-message{color:var(--text-muted, #999);font-size:13px;font-style:italic;padding:8px 0}.link-list{display:flex;flex-direction:column;gap:8px}.link-button{padding:10px 12px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);color:var(--accent-primary, #0066cc);cursor:pointer;font-size:13px;text-align:left;transition:all .15s;word-break:break-all}.link-button:hover{background:var(--bg-secondary, #f5f5f5);border-color:var(--accent-primary, #0066cc)}.link-button.backlink{background:#f8f8ff;border-color:#d0d0e0}.link-button.backlink:hover{background:#f0f0ff;border-color:var(--accent-primary, #0066cc)}.info-section,.connections-section{margin-bottom:28px}.connections-section:last-child{margin-bottom:0}.connection-input-container{position:relative;margin-bottom:16px}.connection-input{width:100%;padding:10px 12px;background:var(--input-bg, #ffffff);border:1px solid var(--input-border, var(--border-primary, #ddd));border-radius:var(--ex-radius-sm, 4px);font-size:13px;color:var(--text-primary, #333);outline:none;transition:border-color .15s}.connection-input::placeholder{color:var(--input-placeholder, var(--text-muted, #999))}.connection-input:focus{border-color:var(--accent-secondary, #667eea)}.connection-suggestions{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-elevated, var(--bg-primary, #ffffff));border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));max-height:200px;overflow-y:auto;z-index:100}.suggestion-item{width:100%;padding:10px 12px;background:var(--bg-elevated, var(--bg-primary, #ffffff));border:none;color:var(--text-primary, #333);cursor:pointer;font-size:13px;text-align:left;transition:background var(--transition-fast, .15s);border-bottom:1px solid var(--border-secondary, #f0f0f0)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:var(--bg-secondary, #f5f5f5)}.connection-group{margin-bottom:20px}.connection-group:last-child{margin-bottom:0}.connection-group-title{font-size:11px;font-weight:600;color:var(--text-muted, #999);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.connection-list{display:flex;flex-direction:column;gap:6px}.connection-item{display:flex;align-items:center;gap:6px}.connection-button{flex:1;padding:8px 10px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);color:var(--accent-primary, #0066cc);cursor:pointer;font-size:13px;text-align:left;transition:all .15s}.connection-button:hover{background:var(--bg-secondary, #f5f5f5);border-color:var(--accent-primary, #0066cc)}.connection-remove{width:24px;height:24px;padding:0;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-sm, 4px);color:var(--text-muted, #999);cursor:pointer;font-size:18px;line-height:1;transition:all .15s;display:flex;align-items:center;justify-content:center}.connection-remove:hover{background:#fee;border-color:#f66;color:#f66}.tree-content::-webkit-scrollbar,.ex-sidebar-content::-webkit-scrollbar{width:8px}.tree-content::-webkit-scrollbar-track{background:var(--collections-overlay)}.tree-content::-webkit-scrollbar-thumb{background:var(--collections-border);border-radius:var(--ex-radius-sm, 4px)}.tree-content::-webkit-scrollbar-thumb:hover{background:var(--collections-text-muted)}.ex-sidebar-light .ex-sidebar-content::-webkit-scrollbar-track{background:var(--bg-tertiary)}.ex-sidebar-light .ex-sidebar-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--ex-radius-sm, 4px)}.ex-sidebar-light .ex-sidebar-content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.ex-sidebar-dark .ex-sidebar-content::-webkit-scrollbar-track{background:var(--collections-overlay)}.ex-sidebar-dark .ex-sidebar-content::-webkit-scrollbar-thumb{background:var(--collections-border);border-radius:var(--ex-radius-sm, 4px)}.ex-sidebar-dark .ex-sidebar-content::-webkit-scrollbar-thumb:hover{background:var(--collections-text-muted)}.formatting-toolbar{display:flex;gap:4px;background:var(--bg-elevated, #2c2c2c);border-radius:var(--ex-radius-md, 6px);padding:6px;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .3));z-index:1000;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toolbar-btn{width:32px;height:32px;border:none;background:transparent;color:var(--text-primary, #e0e0e0);cursor:pointer;border-radius:var(--ex-radius-sm, 4px);display:flex;align-items:center;justify-content:center;font-size:14px;transition:background var(--transition-fast, .15s);font-family:Georgia,Palatino,Times New Roman,serif}.toolbar-divider{width:1px;height:20px;background:var(--border-primary);margin:0 6px;align-self:center}.toolbar-btn:hover{background:var(--bg-hover)}.toolbar-btn:active{background:var(--bg-active)}.toolbar-btn.active{background:var(--bg-active);box-shadow:inset 0 2px 4px var(--shadow-sm);border:1px solid var(--border-secondary)}.toolbar-btn strong{font-weight:700;font-size:14px}.toolbar-btn em{font-style:italic;font-size:14px}.toolbar-btn u{text-decoration:underline;font-size:14px}.formatting-toolbar.pinned{position:relative;width:100%;margin:0;padding:6px 12px;border-radius:0;justify-content:space-between;align-items:center;animation:none;transform:none;z-index:100;border-bottom:1px solid var(--border-primary, #3a3a3a);box-shadow:none}.formatting-toolbar.pinned .pinned-toolbar-buttons{display:flex;gap:4px;align-items:center;margin:0 auto}.toolbar-btn.pin-btn{color:var(--text-secondary, #888)}.toolbar-btn.pin-btn:hover{color:var(--text-primary, #e0e0e0)}.toolbar-btn.pin-btn.active{color:var(--accent-primary, #4a9eff);background:transparent;box-shadow:none;border:none}.toolbar-btn.pin-btn.active:hover{background:var(--bg-hover)}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:4px}.stat-item{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--right-sidebar-section-bg, white);border-radius:var(--ex-radius-md, 6px);border:1px solid var(--right-sidebar-border, #e0e0e0)}.stat-label{font-size:11px;font-weight:600;color:var(--right-sidebar-text-muted, #666);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:20px;font-weight:700;color:var(--right-sidebar-text, #333)}.stats-list{display:flex;flex-direction:column;gap:0;padding:4px;background:var(--right-sidebar-section-bg, white);border-radius:var(--ex-radius-md, 6px);border:1px solid var(--right-sidebar-border, #e0e0e0);overflow:hidden}.stat-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-secondary, #e8e8e8);transition:background-color .3s ease}.stat-row:last-child{border-bottom:none}.stat-row.goal-reached{background-color:var(--status-success-bg, rgba(76, 175, 80, .15))}.stat-row-label{font-size:13px;font-weight:500;color:var(--right-sidebar-text-muted, #666)}.stat-row-value{font-size:14px;font-weight:600;color:var(--right-sidebar-text, #333)}.stat-row-content{display:flex;align-items:center;gap:6px}.stat-goal-separator{font-size:14px;color:var(--text-muted, #999);font-weight:400}.stat-goal-input{width:50px;font-size:14px;font-weight:600;color:var(--right-sidebar-text, #333);background:transparent;border:none;border-bottom:1px solid var(--border-primary, #ccc);padding:2px 0;text-align:right;outline:none;transition:border-color var(--transition-normal, .2s)}.stat-goal-input:focus{border-bottom-color:var(--accent-primary, #0066cc)}.stat-goal-input::placeholder{color:var(--text-muted, #bbb);font-weight:400;font-style:italic}.metadata-list{display:flex;flex-direction:column;gap:12px}.metadata-item{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--right-sidebar-section-bg, white);border-radius:var(--ex-radius-md, 6px);border:1px solid var(--right-sidebar-border, #e0e0e0)}.metadata-label{font-size:11px;font-weight:600;color:var(--right-sidebar-text-muted, #666);text-transform:uppercase;letter-spacing:.5px}.metadata-value{font-size:14px;font-weight:500;color:var(--right-sidebar-text, #333)}.autocomplete-popup{background:var(--bg-elevated, #2c2c2c);border:1px solid #444;border-radius:var(--ex-radius-md, 6px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .3));max-height:200px;overflow-y:auto;min-width:150px;z-index:1000;animation:fadeIn .1s ease-out}.autocomplete-item{padding:8px 12px;cursor:pointer;color:var(--text-primary, #e0e0e0);font-size:14px;transition:background .1s}.autocomplete-item:hover,.autocomplete-item.selected{background:var(--accent-primary);color:var(--text-inverse)}.autocomplete-item:first-child{border-radius:6px 6px 0 0}.autocomplete-item:last-child{border-radius:0 0 6px 6px}.autocomplete-popup::-webkit-scrollbar{width:6px}.autocomplete-popup::-webkit-scrollbar-track{background:#1a1a1a;border-radius:0 6px 6px 0}.autocomplete-popup::-webkit-scrollbar-thumb{background:#444;border-radius:var(--ex-radius-sm, 3px)}.autocomplete-popup::-webkit-scrollbar-thumb:hover{background:#555}.autocomplete-popup.template-autocomplete{min-width:350px;max-width:500px}.template-suggestion{display:flex;flex-direction:column;gap:2px}.template-suggestion .template-var{font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;color:#90cdf4;background:none;padding:0}.template-suggestion .template-desc{font-size:11px;color:var(--text-muted, #9ca3af);line-height:1.3}.autocomplete-item.selected .template-suggestion .template-var{color:var(--text-inverse, #fff)}.autocomplete-item.selected .template-suggestion .template-desc{color:var(--text-secondary)}.loading-container,.error-container{display:flex;align-items:center;justify-content:center;height:100%;min-height:400px;padding:40px}.loading-container{cursor:progress}.loading-spinner{font-size:18px;color:var(--text-tertiary, #6b7280);text-align:center;cursor:progress}.skeleton{background:var(--skeleton-base, var(--bg-tertiary, #e5e7eb));border-radius:var(--ex-radius-sm, 4px);position:relative;overflow:hidden}.skeleton-shimmer{background:var(--skeleton-base, var(--bg-tertiary, #e5e7eb))}.skeleton-shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--skeleton-shimmer, rgba(255, 255, 255, .5)) 50%,transparent 100%);transform:translate(-100%);animation:shimmer 1.8s ease-in-out infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-wave{background:linear-gradient(90deg,var(--skeleton-base, var(--bg-tertiary, #e5e7eb)) 25%,var(--skeleton-highlight, var(--bg-secondary, #f3f4f6)) 50%,var(--skeleton-base, var(--bg-tertiary, #e5e7eb)) 75%);background-size:200% 100%;animation:skeleton-wave-app 1.5s linear infinite}@keyframes skeleton-wave-app{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-pulse{background:var(--skeleton-base, var(--bg-tertiary, #e5e7eb));animation:skeleton-pulse-app 1.5s ease-in-out infinite}@keyframes skeleton-pulse-app{0%,to{opacity:1}50%{opacity:.4}}.skeleton-text{height:1em;width:100%}.skeleton-text-sm{height:.875em;width:80%}.skeleton-text-lg{height:1.25em;width:60%}.skeleton-title{height:1.5em;width:70%}.skeleton-avatar{width:40px;height:40px;border-radius:50%}.skeleton-avatar-sm{width:32px;height:32px;border-radius:50%}.skeleton-avatar-lg{width:56px;height:56px;border-radius:50%}.skeleton-thumbnail{width:100%;aspect-ratio:16 / 9;border-radius:var(--ex-radius-md, 6px)}.skeleton-card{padding:16px;border-radius:var(--ex-radius-lg, 8px);background:var(--skeleton-base, var(--bg-tertiary, #e5e7eb))}.skeleton-button{height:36px;width:100px;border-radius:var(--ex-radius-md, 6px)}.skeleton-input{height:40px;width:100%;border-radius:var(--ex-radius-md, 6px)}.skeleton-note-item{display:flex;align-items:center;gap:12px;padding:8px 12px}.skeleton-note-item .skeleton-icon{width:20px;height:20px;border-radius:var(--ex-radius-sm, 4px);flex-shrink:0}.skeleton-note-item .skeleton-content{flex:1;display:flex;flex-direction:column;gap:6px}.skeleton-tree-item{display:flex;align-items:center;gap:8px;padding:6px 12px;margin-left:var(--indent-level, 0px)}.skeleton-tree-item .skeleton-icon{width:16px;height:16px;border-radius:3px;flex-shrink:0}.skeleton-grid-card{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--ex-radius-lg, 8px);background:var(--bg-elevated, #ffffff);border:1px solid var(--border-secondary, #eeeeee)}.skeleton-grid-card .skeleton-header{display:flex;align-items:center;gap:12px}.skeleton-grid-card .skeleton-body{display:flex;flex-direction:column;gap:8px}.skeleton-staggered>*:nth-child(1){animation-delay:0s}.skeleton-staggered>*:nth-child(2){animation-delay:.1s}.skeleton-staggered>*:nth-child(3){animation-delay:.2s}.skeleton-staggered>*:nth-child(4){animation-delay:.3s}.skeleton-staggered>*:nth-child(5){animation-delay:.4s}.skeleton-staggered>*:nth-child(6){animation-delay:.5s}.skeleton-staggered>*:nth-child(7){animation-delay:.6s}.skeleton-staggered>*:nth-child(8){animation-delay:.7s}.skeleton-staggered>*:nth-child(9){animation-delay:.8s}.skeleton-staggered>*:nth-child(10){animation-delay:.9s}@media(prefers-reduced-motion:reduce){.skeleton-shimmer:after,.skeleton-wave,.skeleton-pulse,.ex-skeleton-shimmer:after,.ex-skeleton-wave,.ex-skeleton-pulse,.ex-skeleton-glow,.ex-skeleton-gradient{animation:none}.skeleton-shimmer:after,.ex-skeleton-shimmer:after{display:none}}.error-container .error-message{background:#fef2f2;border:1px solid #fecaca;color:var(--status-error, #dc2626);padding:16px 24px;border-radius:var(--ex-radius-lg, 8px);font-size:16px;text-align:center;max-width:500px}.note-header-controls{display:flex;align-items:center;margin-left:auto}.view-mode-selector{display:flex;gap:4px;background:var(--bg-tertiary, #f0f0f0);border-radius:var(--ex-radius-md, 6px);padding:4px}.view-mode-btn{padding:6px 14px;border:none;background:transparent;color:var(--text-secondary, #666);font-size:13px;font-weight:500;cursor:pointer;border-radius:var(--ex-radius-sm, 4px);transition:all var(--transition-normal, .2s)}.view-mode-btn:hover{background:var(--bg-active, #e0e0e0);color:var(--text-primary, #333)}.view-mode-btn.active{background:#fff;color:var(--accent-secondary, #667eea);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .1))}.settings-icon-btn{margin-left:12px;padding:8px;border:none;background:var(--bg-tertiary, #f0f0f0);color:var(--text-secondary, #666);cursor:pointer;border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal, .2s);font-size:20px}.settings-icon-btn:hover{background:var(--bg-active, #e0e0e0);color:var(--accent-secondary, #667eea)}.note-editor-bottom-bar{width:100%;height:44px;background:var(--bg-tertiary, #e8e8e8);box-shadow:var(--shadow-inset, inset 0 2px 4px rgba(0, 0, 0, .1));display:flex;align-items:flex-start;padding:0 16px 6px;margin-top:auto;flex-shrink:0;gap:8px}.note-editor-bottom-bar .ex-tabs{flex:1;min-width:0}.add-mode-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:var(--bg-secondary);color:var(--text-tertiary, #666);border-radius:var(--ex-radius-md, 6px);cursor:pointer;transition:all var(--transition-fast, .15s ease);flex-shrink:0;margin-top:auto}.add-mode-button:hover{background:var(--bg-primary, #fff);color:var(--accent-primary, #667eea);box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .1))}.add-mode-button .material-icons{font-size:20px}.add-mode-popup{padding:8px 0}.add-mode-popup-header{padding:8px 16px 4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted, #888)}.add-mode-popup-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:transparent;font-size:14px;color:var(--text-primary, #333);cursor:pointer;text-align:left;transition:background .15s ease}.add-mode-popup-item:hover{background:var(--bg-hover, #f5f5f5)}.add-mode-popup-item .material-icons{font-size:18px;color:var(--accent-primary, #667eea)}.left-sidebar-container{display:flex;flex-direction:column;height:100%}.left-sidebar-header{padding:0 12px;height:52px;background:var(--collections-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--collections-border);display:flex;align-items:center;gap:8px}.left-sidebar-header .collection-title-sidebar{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-icon-button{background:transparent;border:none;color:var(--collections-text-muted);cursor:pointer;padding:6px;border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal, .2s);flex-shrink:0}.settings-icon-button:hover{color:var(--collections-text);background:var(--collections-overlay-hover)}.settings-icon-button .material-icon{font-size:20px}.left-sidebar-tabs{display:flex;background:var(--sidebar-hover);border-bottom:1px solid var(--collections-border);padding-left:12px}.left-sidebar-tab{flex:1;padding:0;border:none;background:transparent;cursor:pointer;font-size:18px;transition:all var(--transition-normal, .2s);border-bottom:3px solid transparent;display:flex;align-items:center;justify-content:center;color:var(--collections-text-muted)}.left-sidebar-tab:hover{color:var(--collections-text);background:var(--collections-overlay)}.left-sidebar-tab.active{color:var(--collections-text);background:var(--collections-overlay-hover);border-bottom-color:var(--collections-text)}.left-sidebar-content{flex:1;overflow:hidden;display:flex;flex-direction:column;padding-left:12px}@keyframes tab-content-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.left-sidebar-content>*{animation:tab-content-fade .15s ease-out}@media(prefers-reduced-motion:reduce){.left-sidebar-content>*{animation:none}}.notes-tab{display:flex;flex-direction:column;height:100%}.notes-tab-header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--sidebar-border)}.notes-tab-header-spacer{flex:1}.capture-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#667eea33;border:1px solid rgba(102,126,234,.4);border-radius:var(--ex-radius-md, 6px);color:#a3b4f7;font-size:12px;cursor:pointer;transition:all var(--transition-normal, .2s)}.capture-button:hover{background:#667eea4d;border-color:#667eea80;color:#c4d0fa}.capture-button .material-icon{font-size:16px}.capture-button.icon-only{padding:6px 8px;gap:0;background:transparent;border:none}.capture-button.icon-only:hover{background:#667eea33;border:1px solid rgba(102,126,234,.4)}.template-view-toggle{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--collections-overlay);border:1px solid var(--collections-border);border-radius:var(--ex-radius-md, 6px);color:var(--collections-text-muted);font-size:12px;cursor:pointer;transition:all var(--transition-normal, .2s)}.template-view-toggle:hover{background:var(--collections-overlay-hover);color:var(--collections-text)}.template-view-toggle.active{background:#667eea33;border-color:#667eea66;color:#a3b4f7}.template-view-toggle .material-icon{font-size:16px}.import-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#10b98133;border:1px solid rgba(16,185,129,.3);border-radius:var(--ex-radius-md, 6px);color:#6ee7b7;font-size:13px;cursor:pointer;transition:all var(--transition-normal, .2s)}.import-button:hover{background:#10b9814d;border-color:#10b98180;color:#a7f3d0}.import-button .material-icon{font-size:16px}.import-button.icon-only{padding:6px 8px;gap:0;background:transparent;border:none}.import-button.icon-only:hover{background:#10b98133;border:1px solid rgba(16,185,129,.3)}.template-toggle-btn{color:var(--collections-text-muted)}.template-toggle-btn:hover{color:var(--collections-text)}.template-toggle-btn.is-template{color:#a3b4f7}.template-toggle-btn .material-icon{font-size:14px}.tree-node-label.is-template{background:#667eea1a;border-left:2px solid var(--accent-secondary, #667eea)}.template-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--modal-overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.template-picker-modal{background:var(--modal-bg);border-radius:var(--ex-radius-xl, 12px);width:90%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.template-picker-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-secondary)}.template-picker-header h2{color:var(--text-primary, #fff);font-size:18px;font-weight:600;margin:0}.template-picker-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:all var(--transition-normal, .2s)}.template-picker-close:hover{background:var(--bg-hover);color:var(--text-primary)}.template-picker-body{padding:20px;overflow-y:auto}.template-picker-description{color:var(--text-secondary);font-size:14px;margin-bottom:16px;line-height:1.5}.template-picker-description strong{color:var(--text-primary, #fff)}.template-picker-options{display:flex;flex-direction:column;gap:8px}.template-picker-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--bg-hover);border:1px solid var(--border-secondary);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;transition:all var(--transition-normal, .2s);text-align:left}.template-picker-option:hover{background:var(--bg-active);border-color:var(--border-primary)}.template-picker-option .material-icon{color:var(--accent-primary);font-size:20px;margin-top:2px}.template-option-name{color:var(--text-primary, #fff);font-size:14px;font-weight:500;display:block}.template-option-description{color:var(--text-tertiary);font-size:12px;display:block;margin-top:4px}.template-picker-option.blank-option .material-icon{color:var(--text-tertiary)}.template-picker-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:color .2s,background .2s}.template-picker-back:hover{color:var(--text-primary);background:var(--bg-hover)}.template-picker-name-input{display:flex;gap:12px;margin-top:16px}.template-name-input{flex:1;padding:12px 16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--ex-radius-lg, 8px);color:var(--text-primary);font-size:14px;outline:none;transition:border-color var(--transition-normal, .2s)}.template-name-input:focus{border-color:var(--input-focus-border)}.template-name-input::placeholder{color:var(--input-placeholder)}.template-create-btn{padding:12px 24px;background:var(--accent-secondary, #667eea);border:none;border-radius:var(--ex-radius-lg, 8px);color:var(--text-inverse, #fff);font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,opacity .2s}.template-create-btn:hover:not(:disabled){background:var(--accent-primary-hover, #5a6fd6)}.template-create-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.has-templates{position:relative}.action-btn.has-templates:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;background:#4ade80;border-radius:50%}.notes-tab-content{flex:1;overflow-y:auto;padding:12px 4px}.notes-tab-content::-webkit-scrollbar,.tags-tab-content::-webkit-scrollbar,.people-tab-content::-webkit-scrollbar{width:8px}.notes-tab-content::-webkit-scrollbar-track,.tags-tab-content::-webkit-scrollbar-track,.people-tab-content::-webkit-scrollbar-track{background:var(--collections-overlay)}.notes-tab-content::-webkit-scrollbar-thumb,.tags-tab-content::-webkit-scrollbar-thumb,.people-tab-content::-webkit-scrollbar-thumb{background:var(--collections-border);border-radius:var(--ex-radius-sm, 4px)}.notes-tab-content::-webkit-scrollbar-thumb:hover,.tags-tab-content::-webkit-scrollbar-thumb:hover,.people-tab-content::-webkit-scrollbar-thumb:hover{background:var(--collections-text-muted)}.pinned-notes-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--collections-border)}.pinned-notes-header{display:flex;align-items:center;gap:6px;padding:4px 8px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--collections-text-muted)}.pinned-notes-header .material-icon{font-size:14px}.pinned-notes-list{display:flex;flex-direction:column;gap:2px}.pinned-note-item{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;transition:background-color var(--transition-fast, .15s ease);color:var(--collections-text);font-size:13px}.pinned-note-item:hover{background:var(--collections-overlay)}.pinned-note-item.selected{background:var(--collections-overlay-hover)}.pinned-note-icon{display:flex;align-items:center;justify-content:center;color:var(--collections-text-muted)}.pinned-note-icon .material-icon{font-size:16px}.pinned-note-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pinned-note-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.notes-tab-footer{padding:12px;border-top:1px solid var(--collections-border);background:var(--sidebar-hover)}.add-root-btn-footer{width:100%;padding:10px 12px;background:var(--collections-overlay);border:1px solid var(--collections-border);color:var(--collections-text);border-radius:var(--ex-radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-normal, .2s);display:flex;align-items:center;justify-content:center;gap:8px}.add-root-btn-footer:hover{background:var(--collections-overlay-hover);border-color:var(--collections-border)}.trashcan-btn-footer{width:100%;padding:10px 12px;margin-top:8px;background:var(--sidebar-hover);border:1px solid var(--collections-border);color:var(--collections-text);border-radius:var(--ex-radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-normal, .2s);display:flex;align-items:center;justify-content:center;gap:8px}.trashcan-btn-footer:hover{background:var(--collections-overlay);border-color:var(--collections-border);color:var(--collections-text)}.trashcan-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.trashcan-badge{position:absolute;top:-8px;right:-10px;min-width:16px;height:16px;padding:0 4px;background:var(--status-error);color:var(--text-inverse);font-size:10px;font-weight:700;border-radius:var(--ex-radius-lg, 8px);display:flex;align-items:center;justify-content:center}.trashcan-modal{max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column}.trashcan-header-title{display:flex;align-items:center;gap:8px}.trashcan-header-title .material-icon{font-size:24px}.trashcan-count-badge{background:var(--bg-hover, rgba(0, 0, 0, .1));padding:2px 8px;border-radius:var(--ex-radius-xl, 12px);font-size:12px;font-weight:600;color:var(--text-secondary, #666)}.trashcan-body{flex:1;overflow-y:auto;min-height:200px;max-height:50vh}.trashcan-loading,.trashcan-error{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary, #666)}.trashcan-loading{cursor:progress}.trashcan-error{color:#e53e3e}.trashcan-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-muted, #999);text-align:center}.trashcan-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.trashcan-empty p{margin:0;font-size:16px;font-weight:500;color:var(--text-secondary, #666)}.trashcan-empty-hint{margin-top:8px;font-size:13px;color:var(--text-muted, #999)}.trashcan-list{padding:8px 0}.trashcan-group{margin-bottom:16px}.trashcan-group-header{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary, #888);letter-spacing:.5px}.trashcan-group-header .material-icon{font-size:16px}.trashcan-item{display:flex;align-items:center;padding:10px 16px;gap:12px;transition:background var(--transition-fast, .15s);cursor:default}.trashcan-item:hover{background:var(--bg-secondary, #f5f5f5)}.trashcan-item-icon{color:var(--text-tertiary, #888);flex-shrink:0}.trashcan-item-icon .material-icon{font-size:20px}.trashcan-item-info{flex:1;min-width:0}.trashcan-item-path{font-size:14px;font-weight:500;color:var(--text-primary, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trashcan-item-meta{font-size:12px;color:var(--text-tertiary, #888);margin-top:2px}.trashcan-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.trashcan-item:hover .trashcan-item-actions{opacity:1}.trashcan-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid transparent;border-radius:var(--ex-radius-md, 6px);cursor:pointer;transition:all .15s}.trashcan-action-btn .material-icon{font-size:18px}.trashcan-action-btn.restore{color:#38a169}.trashcan-action-btn.restore:hover{background:#38a1691a;border-color:#38a1694d}.trashcan-action-btn.delete{color:#e53e3e}.trashcan-action-btn.delete:hover{background:#e53e3e1a;border-color:#e53e3e4d}.trashcan-footer{display:flex;justify-content:space-between;gap:12px}.trashcan-footer .ex-btn-danger{display:flex;align-items:center;gap:6px}.trashcan-footer .ex-btn-danger .material-icon{font-size:18px}.tags-tab{display:flex;flex-direction:column;height:100%}.tags-tab-content{flex:1;overflow-y:auto;padding:12px 4px}.tag-count-badge{font-size:11px;font-weight:600;color:var(--collections-text-muted);background:var(--collections-overlay-hover);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px);margin-left:auto}.people-tab{display:flex;flex-direction:column;height:100%}.people-tab-content{flex:1;overflow-y:auto;padding:12px 4px}.person-count-badge{font-size:11px;font-weight:600;color:var(--collections-text-muted);background:var(--collections-overlay-hover);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px);margin-left:auto}.cast-tab{display:flex;flex-direction:column;height:100%}.cast-tab-content{flex:1;overflow-y:auto;padding:8px}.cast-list{display:flex;flex-direction:column;gap:2px}.cast-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:transparent;border:none;border-radius:var(--ex-radius-md, 6px);cursor:pointer;transition:background var(--transition-fast, .15s)}.cast-item:hover{background:var(--sidebar-hover)}.cast-item.selected{background:var(--sidebar-active)}.cast-item-color{width:4px;height:24px;border-radius:2px;flex-shrink:0}.cast-item-info{flex:1;min-width:0}.cast-item-name{font-size:13px;font-weight:500;color:var(--sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.cast-item-aliases{font-size:11px;color:var(--sidebar-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.cast-item-pronouns{font-size:11px;color:var(--sidebar-text-muted);flex-shrink:0;padding:2px 6px;background:var(--sidebar-hover);border-radius:var(--ex-radius-lg, 8px);font-style:italic}.cast-item-facts{display:flex;align-items:center;gap:2px;font-size:11px;color:var(--sidebar-text-muted);flex-shrink:0;padding:2px 6px;background:var(--sidebar-hover);border-radius:var(--ex-radius-lg, 8px)}.cast-item-facts .material-icon{font-size:12px}.cast-tab-header{padding:8px;border-bottom:1px solid var(--sidebar-border)}.cast-add-button{width:100%;justify-content:flex-start}.cast-add-form{display:flex;flex-direction:column;gap:8px}.cast-add-form .ex-input{background:#fff;border-color:#d1d5db;color:var(--text-primary, #1f2937)}.cast-add-form .ex-input::placeholder{color:var(--text-muted, #9ca3af)}[data-theme=dark] .cast-add-form .ex-input{background:#374151;border-color:#4b5563;color:var(--text-primary, #e5e7eb)}[data-theme=dark] .cast-add-form .ex-input::placeholder{color:var(--text-muted, #9ca3af)}.cast-add-form-actions{display:flex;gap:8px;justify-content:flex-end}.cast-delete-confirm{padding:8px 0}.cast-delete-confirm p{margin:0 0 12px;color:var(--text-primary)}.cast-delete-warning{color:var(--danger-color, #ef4444);font-size:13px}.cast-delete-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.writing-tools-panel .cast-item{display:flex;flex-direction:column;gap:6px;padding:0}.writing-tools-panel .cast-item-btn{background:var(--bg-secondary);flex:1;display:flex;width:100%;justify-content:space-between;gap:10px;margin:0}.writing-tools-panel .cast-item-name{width:100%;color:var(--text-primary)}.writing-tools-panel .cast-item-pronouns{color:var(--text-muted);background:var(--background-tertiary)}.character-detail-view{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.character-detail-settings{flex:0 0 auto;max-height:50%;overflow-y:auto;padding:32px 40px;border-bottom:1px solid var(--border-primary)}.character-detail-header{display:flex;align-items:center;gap:20px;margin-bottom:28px}.character-detail-header-new{display:flex;align-items:center;gap:16px;margin-bottom:8px}.character-detail-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-inverse);font-size:28px;flex-shrink:0}.character-detail-title-row{flex:1;display:flex;align-items:center;gap:12px;min-width:0}.character-name-input{flex:1;font-size:24px;font-weight:700;color:var(--text-primary);background:transparent;border:none;border-bottom:2px solid transparent;padding:4px 0;min-width:0;outline:none}.character-name-input:hover{border-bottom-color:var(--border-primary)}.character-name-input:focus{border-bottom-color:var(--primary-color)}.character-pronouns-inline{flex-shrink:0}.character-pronouns-select{font-size:13px;color:var(--text-secondary);background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);padding:6px 10px;cursor:pointer;outline:none}.character-pronouns-select:hover{border-color:var(--primary-color)}.character-pronouns-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color-alpha)}.character-pronouns-custom-inline{display:flex;align-items:center;gap:4px}.character-pronouns-input{font-size:13px;color:var(--text-secondary);background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);padding:6px 10px;width:100px;outline:none}.character-pronouns-input:focus{border-color:var(--primary-color)}.character-pronouns-preset-btn{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);padding:6px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.character-pronouns-preset-btn:hover{color:var(--primary-color);border-color:var(--primary-color)}.character-pronouns-preset-btn .material-icon{font-size:16px}.character-aliases-preview-new{font-size:13px;color:var(--text-tertiary);margin:0 0 16px 80px;font-style:italic}.character-detail-title h1{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.character-aliases-preview{font-size:14px;color:var(--text-tertiary);margin:0}.character-form-section-compact{margin-bottom:20px}.character-color-grid{display:grid;grid-template-columns:repeat(8,44px);gap:6px;padding:8px 0}.character-color-swatch{width:44px;height:44px;border-radius:var(--ex-radius-md, 6px);border:2px solid transparent;cursor:pointer;transition:transform .1s,border-color .1s}.character-color-swatch:hover{transform:scale(1.1);border-color:var(--text-primary)}.character-color-swatch.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--background-primary),0 0 0 4px var(--text-primary)}.character-color-custom{width:44px;height:44px;border-radius:var(--ex-radius-md, 6px);border:2px dashed var(--border-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:var(--background-secondary);transition:border-color .1s,color .1s}.character-color-custom:hover{border-color:var(--primary-color);color:var(--primary-color)}.character-color-custom input{position:absolute;opacity:0;width:0;height:0}.character-color-custom .material-icon{font-size:18px}.character-detail-form{max-width:700px}.character-form-row{display:flex;gap:16px;margin-bottom:20px;align-items:flex-start}.character-form-field{flex:1;min-width:0}.character-form-field-small{flex:0 0 140px}.character-pronouns-preset-link{background:none;border:none;color:var(--primary-color);font-size:11px;padding:2px 0;cursor:pointer;text-decoration:underline;margin-top:2px}.character-pronouns-preset-link:hover{color:var(--primary-hover)}.character-color-row{display:flex;align-items:flex-start;gap:12px}.character-color-row .ex-color-picker{flex:1}.character-color-row .ex-color-picker-grid{grid-template-columns:repeat(8,32px);gap:6px}.character-color-row .ex-color-swatch{width:32px;height:32px;border-radius:var(--ex-radius-md, 6px);border-width:2px}.character-color-input{width:32px;height:32px;padding:0;border:2px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);cursor:pointer;flex-shrink:0}.character-form-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--border-secondary)}.character-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.character-section-title{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0;display:flex;align-items:center;gap:8px}.character-section-title .material-icon{font-size:18px;opacity:.7}.character-aliases-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.character-alias-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);font-size:13px;color:var(--text-primary)}.character-alias-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:transparent;border:none;border-radius:50%;cursor:pointer;color:var(--text-tertiary);transition:all .15s}.character-alias-remove:hover{background:var(--bg-hover);color:var(--status-error)}.character-alias-remove .material-icon{font-size:14px}.character-alias-add{display:flex;gap:8px;align-items:flex-end}.character-alias-add .ex-input-wrapper{flex:1}.character-section-desc{font-size:13px;color:var(--text-tertiary);margin:0 0 16px;line-height:1.5}.character-field-hint{font-size:12px;color:var(--text-tertiary);margin:4px 0 8px}.character-alias-form{background:var(--bg-secondary);padding:16px;border-radius:var(--ex-radius-lg, 8px);margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.character-alias-form-field{display:flex;flex-direction:column;gap:4px}.character-alias-form-actions{display:flex;gap:8px;margin-top:8px}.character-char-chips{display:flex;flex-wrap:wrap;gap:8px}.character-char-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-full, 20px);font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.character-char-chip:hover{background:var(--bg-hover);border-color:var(--border-focus)}.character-char-chip.selected{background:var(--accent-color-subtle);border-color:var(--accent-color);color:var(--text-primary)}.character-chip-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.character-aliases-list{display:flex;flex-direction:column;gap:8px}.character-alias-item{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-lg, 8px);overflow:hidden}.character-alias-display{display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.character-alias-info{display:flex;flex-direction:column;gap:4px}.character-alias-name{font-size:14px;font-weight:500;color:var(--text-primary)}.character-alias-usedby{font-size:12px;color:var(--text-tertiary);display:flex;align-items:center;gap:4px}.character-alias-usedby .material-icon{font-size:14px;opacity:.7}.character-alias-actions{display:flex;gap:4px}.character-alias-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;color:var(--text-tertiary);transition:all .15s}.character-alias-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.character-alias-action-btn-danger:hover{color:var(--status-error)}.character-alias-edit{padding:16px;display:flex;flex-direction:column;gap:12px}.character-loading{font-size:13px;color:var(--text-tertiary);padding:8px 0;cursor:progress}.character-relationship-add{background:var(--bg-secondary);padding:16px;border-radius:var(--ex-radius-lg, 8px);margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.character-relationship-add-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.character-relationship-labels{margin-top:8px}.character-relationship-label-hint{font-size:13px;color:var(--text-secondary);margin:0 0 12px}.character-relationship-label-row{display:flex;align-items:center;gap:12px}.character-relationship-label-input{flex:1}.character-relationship-label-separator{font-size:20px;font-weight:300;color:var(--text-tertiary);flex-shrink:0}.character-relationships-list{display:flex;flex-direction:column;gap:8px}.character-relationship-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px)}.character-relationship-item-bidi{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-lg, 8px);gap:12px}.character-relationship-bidi-display{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden;font-size:13px}.character-relationship-name{font-weight:600;color:var(--text-primary);white-space:nowrap}.character-relationship-arrow{color:var(--text-tertiary);font-size:14px}.character-relationship-label-bidi{color:var(--primary-color);font-weight:500;white-space:nowrap}.character-relationship-divider{width:1px;height:16px;background-color:var(--border-primary);margin:0 4px}.character-relationship-info{display:flex;flex-direction:column;gap:2px}.character-relationship-label{font-size:14px;font-weight:600;color:var(--text-primary)}.character-relationship-target{font-size:12px;color:var(--text-tertiary)}.character-relationship-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;color:var(--text-tertiary);transition:all .15s}.character-relationship-delete:hover{background:var(--bg-hover);color:var(--status-error)}.character-empty-message{font-size:13px;color:var(--text-tertiary);font-style:italic;margin:0}.character-fact-form{background:var(--bg-secondary);padding:16px;border-radius:var(--ex-radius-lg, 8px);margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.character-fact-form-field{display:flex;flex-direction:column;gap:6px}.character-fact-type-select{padding:8px 12px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);font-size:14px;color:var(--text-primary);cursor:pointer}.character-fact-type-select:focus{outline:none;border-color:var(--primary-color)}.character-fact-form-actions{display:flex;gap:8px;margin-top:4px}.character-facts-by-type{display:flex;flex-direction:column;gap:12px}.character-fact-type-group{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-lg, 8px);overflow:hidden}.character-fact-type-header{display:flex;align-items:center;gap:8px;width:100%;padding:12px 14px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .15s}.character-fact-type-header:hover{background:var(--bg-hover)}.character-fact-type-header .material-icon{font-size:18px;color:var(--text-secondary)}.character-fact-type-label{font-size:14px;font-weight:600;color:var(--text-primary);flex:1}.character-fact-type-count{font-size:12px;color:var(--text-tertiary);font-weight:400}.character-fact-type-toggle{font-size:20px;color:var(--text-tertiary)}.character-facts-list{border-top:1px solid var(--border-primary)}.character-fact-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border-primary);gap:12px}.character-fact-item:last-child{border-bottom:none}.character-fact-item.pending{background:var(--status-warning-bg, rgba(255, 193, 7, .1))}.character-fact-item.editing{padding:16px}.character-fact-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.character-fact-text{font-size:14px;color:var(--text-primary)}.character-fact-relationship{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.character-fact-relationship-of{font-size:13px;color:var(--text-tertiary)}.character-fact-relationship-target{font-size:13px;font-weight:500;color:var(--text-primary);padding:2px 8px;background:var(--bg-primary);border-radius:var(--ex-radius-sm, 4px);border-left:3px solid var(--primary-color)}.character-fact-alias{display:flex;flex-direction:column;gap:4px}.character-fact-alias-name{font-size:14px;font-weight:500;color:var(--text-primary)}.character-fact-alias-usedby{font-size:12px;color:var(--text-tertiary);display:flex;align-items:center;gap:4px}.character-fact-alias-usedby .material-icon{font-size:14px;opacity:.7}.character-fact-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.character-fact-status{display:flex;align-items:center}.character-fact-status .material-icon{font-size:16px}.character-fact-status.status-confirmed{color:var(--status-success)}.character-fact-status.status-pending{color:var(--status-warning)}.character-fact-status.status-rejected{color:var(--status-error)}.character-fact-source{display:flex;align-items:center}.character-fact-source .material-icon{font-size:14px;color:var(--text-tertiary)}.character-fact-actions{display:flex;gap:4px;flex-shrink:0}.character-fact-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;color:var(--text-tertiary);transition:all .15s}.character-fact-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.character-fact-action-btn-danger:hover{color:var(--status-error)}.character-fact-action-confirm:hover{color:var(--status-success)}.character-fact-action-reject:hover{color:var(--status-error)}.character-fact-edit-form{display:flex;flex-direction:column;gap:12px;width:100%}.character-section-count{font-weight:400;color:var(--text-tertiary);font-size:13px;margin-left:6px}.character-scenes-list{display:flex;flex-direction:column;gap:6px}.character-scene-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--ex-radius-md, 6px);cursor:pointer;text-align:left;transition:all .15s;width:100%}.character-scene-item:hover{background:var(--bg-hover);border-color:var(--primary-color)}.character-scene-item .material-icon{font-size:18px;color:var(--text-tertiary);flex-shrink:0}.character-scene-title{font-size:14px;font-weight:500;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-scene-path{font-size:12px;color:var(--text-tertiary);flex-shrink:0;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-detail-notes{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.character-notes-header{flex-shrink:0;padding:16px 40px;border-bottom:1px solid var(--border-secondary);background:var(--bg-secondary)}.character-notes-header h3{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0;display:flex;align-items:center;gap:8px}.character-notes-header .material-icon{font-size:18px;opacity:.7}.character-notes-editor{flex:1;overflow:hidden}.character-notes-editor .note-editor{height:100%}.character-notes-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary);font-size:14px;cursor:progress}.dates-tab{display:flex;flex-direction:column;height:100%}.dates-tab-content{flex:1;overflow-y:auto;padding:12px 8px}.dates-tab-links{display:flex;flex-direction:column;gap:6px}.dates-tab-link{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--collections-overlay);border:1px solid var(--sidebar-border);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;transition:all .15s;text-align:left;width:100%;color:var(--collections-text)}.dates-tab-link:hover:not(:disabled){background:var(--collections-overlay-hover);border-color:var(--collections-border)}.dates-tab-link.selected{background:var(--collections-border);border-color:var(--collections-border)}.dates-tab-link:disabled{opacity:.5;cursor:not-allowed}.dates-tab-link-icon{display:flex;align-items:center;justify-content:center;font-size:20px;opacity:.8}.dates-tab-link-text{flex:1;font-size:14px;font-weight:500}.dates-tab-link-arrow{font-size:18px;opacity:.5}.dates-tab-link:hover:not(:disabled) .dates-tab-link-arrow{opacity:.8}.search-tab{display:flex;flex-direction:column;height:100%}.search-tab-input-container{display:flex;align-items:center;gap:8px;padding:12px;background:var(--collections-overlay);border-bottom:1px solid var(--sidebar-border)}.search-tab-input-container .material-icon{color:var(--collections-text-muted);font-size:20px}.search-tab-input{flex:1;background:var(--collections-overlay);border:1px solid var(--collections-border);border-radius:var(--ex-radius-md, 6px);padding:8px 12px;color:var(--collections-text);font-size:14px;outline:none;transition:border-color .2s,background .2s}.search-tab-input::placeholder{color:var(--collections-text-muted)}.search-tab-input:focus{background:var(--collections-overlay-hover);border-color:var(--collections-border)}.search-tab-clear{background:none;border:none;padding:4px;cursor:pointer;color:var(--collections-text-muted);display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:background .2s,color .2s}.search-tab-clear:hover{background:var(--collections-overlay);color:var(--collections-text)}.search-tab-clear .material-icon{font-size:18px}.search-tab-content{flex:1;overflow-y:auto;padding:8px}.search-tab-content::-webkit-scrollbar{width:8px}.search-tab-content::-webkit-scrollbar-track{background:var(--collections-overlay)}.search-tab-content::-webkit-scrollbar-thumb{background:var(--collections-border);border-radius:var(--ex-radius-sm, 4px)}.search-tab-content::-webkit-scrollbar-thumb:hover{background:var(--collections-text-muted)}.search-result-item{padding:12px 14px;border-radius:var(--ex-radius-md, 6px);cursor:pointer;margin-bottom:6px;background:var(--collections-overlay);border:1px solid transparent;transition:background var(--transition-fast, .15s),border-color var(--transition-fast, .15s)}.search-result-item:hover{background:var(--collections-overlay-hover);border-color:var(--collections-border)}.search-result-item.selected{background:var(--collections-overlay-hover);border-color:var(--ex-color-primary, #007AFF)}.search-result-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.search-result-header .material-icon{font-size:18px;color:var(--ex-color-primary, #007AFF);opacity:.8}.search-result-name{font-size:14px;font-weight:600;color:var(--collections-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-matches{display:flex;flex-direction:column;gap:4px;padding-left:26px}.search-result-match{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--collections-text);padding:4px 0;line-height:1.5}.match-type-badge{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:var(--ex-radius-sm, 4px);background:var(--collections-overlay-hover)}.match-type-badge .material-icon{font-size:14px;color:var(--collections-text-muted)}.match-type-badge .field-name{font-size:11px;font-weight:500;color:var(--collections-text-muted)}.match-context{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5;color:var(--collections-text);opacity:.85}.search-highlight{background:#ffd50059;color:inherit;padding:1px 2px;border-radius:2px;font-weight:600}[data-theme=dark] .search-highlight,.dark .search-highlight{background:#ffd50040}.empty-tab-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--collections-text-muted)}.empty-tab-message .material-icon{font-size:48px;opacity:.4;margin-bottom:16px}.empty-tab-message p{font-size:16px;font-weight:500;margin:0 0 8px}.empty-tab-message .hint{font-size:13px;opacity:.7}.detail-view{display:flex;flex-direction:column;height:100%;background:#fff;overflow-y:auto}.detail-view-header{display:flex;align-items:center;gap:20px;padding:32px 40px;border-bottom:1px solid var(--border-secondary, #eee);background:linear-gradient(135deg,#f8f9fa,#fff)}.detail-view-icon{width:64px;height:64px;border-radius:var(--ex-radius-2xl, 16px);display:flex;align-items:center;justify-content:center;font-size:32px}.detail-view-icon.tag-icon-large{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-primary-hover) 100%);color:var(--text-inverse)}.detail-view-icon.person-icon-large{background:linear-gradient(135deg,#c60,#a35200);color:var(--text-inverse)}.detail-view-title-section{flex:1}.detail-view-title{font-size:28px;font-weight:700;color:var(--text-primary, #222);margin:0 0 6px;font-family:Georgia,Palatino,Times New Roman,serif}.detail-view-subtitle{font-size:14px;color:var(--text-secondary, #666);margin:0}.detail-view-subtitle .saving-indicator{color:var(--accent-secondary, #667eea)}.detail-view-content{flex:1;padding:32px 40px;max-width:800px}.detail-section{margin-bottom:36px}.detail-section:last-child{margin-bottom:0}.detail-section-title{font-size:14px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;margin:0 0 16px;display:flex;align-items:center;gap:8px}.detail-section-title .material-icon{font-size:18px;opacity:.7}.notes-list{display:flex;flex-direction:column;gap:8px}.note-list-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-primary, #f9f9f9);border:1px solid var(--border-primary, #e5e5e5);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;transition:all .15s;text-align:left;width:100%}.note-list-item:hover{background:var(--bg-tertiary, #f0f0f0);border-color:#ddd;transform:translate(4px)}.note-list-item-icon{font-size:24px;color:var(--accent-secondary, #667eea);opacity:.7}.note-list-item-content{flex:1;min-width:0}.note-list-item-title{font-size:15px;font-weight:600;color:var(--text-primary, #222);margin-bottom:2px}.note-list-item-path{font-size:12px;color:var(--text-tertiary, #888);margin-bottom:4px}.note-list-item-description{font-size:13px;color:var(--text-secondary, #666);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-list-item-tags,.note-list-item-people{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tag-badge{font-size:11px;padding:3px 8px;background:#e6f0ff;color:var(--accent-primary, #0066cc);border-radius:var(--ex-radius-sm, 4px);font-weight:500}.person-badge{font-size:11px;padding:3px 8px;background:#fff5e6;color:#c60;border-radius:var(--ex-radius-sm, 4px);font-weight:500}.note-list-item-arrow{font-size:20px;color:var(--text-muted, #ccc);transition:color var(--transition-fast, .15s)}.note-list-item:hover .note-list-item-arrow{color:var(--accent-secondary, #667eea)}.calendar-list-view .detail-view-content{max-width:none;padding:0}.calendar-list-content{padding:0}.detail-view-icon.date-icon-large{background:linear-gradient(135deg,#00a86b,#007a4d);color:var(--text-inverse)}.calendar-nav-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;background:var(--bg-primary, #f8f9fa);border-bottom:1px solid var(--border-secondary, #eee)}.calendar-nav-arrow{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-lg, 8px);background:#fff;cursor:pointer;transition:all .15s;color:var(--text-secondary, #555)}.calendar-nav-arrow:hover{background:var(--bg-tertiary, #f0f0f0);border-color:#ccc;color:var(--text-primary, #333)}.calendar-nav-arrow:active{background:#e8e8e8}.calendar-month-picker-container{position:relative}.calendar-month-picker-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;font-size:15px;font-weight:600;color:var(--text-primary, #333);transition:all .15s;min-width:180px;justify-content:center}.calendar-month-picker-button:hover{background:var(--bg-tertiary, #f0f0f0);border-color:#ccc}.calendar-month-picker-button .material-icon{font-size:18px;color:var(--text-secondary, #666)}.calendar-month-picker-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fff;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-xl, 12px);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));z-index:100;max-height:400px;overflow-y:auto;min-width:280px}.calendar-picker-year-section{padding:12px;border-bottom:1px solid var(--border-secondary, #eee)}.calendar-picker-year-section:last-child{border-bottom:none}.calendar-picker-year-header{font-size:14px;font-weight:700;color:var(--text-primary, #333);margin-bottom:10px;text-align:center}.calendar-picker-months-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.calendar-picker-month{padding:8px 4px;border:1px solid var(--border-primary, #e5e5e5);border-radius:var(--ex-radius-md, 6px);background:var(--bg-primary, #fafafa);cursor:pointer;font-size:12px;font-weight:500;color:var(--text-secondary, #666);transition:all .15s;text-align:center}.calendar-picker-month:hover{background:var(--bg-tertiary, #f0f0f0);border-color:#ddd;color:var(--text-primary, #333)}.calendar-picker-month.has-notes{background:#e8f4ff;border-color:#b8d4f0;color:var(--accent-primary, #0066cc);font-weight:600}.calendar-picker-month.has-notes:hover{background:#d4e8ff;border-color:var(--accent-primary, #0066cc)}.calendar-picker-month.selected{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--text-inverse)}.calendar-picker-month.selected:hover{background:#0052a3;border-color:#0052a3}.empty-calendar-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-tertiary, #888);text-align:center}.empty-calendar-message .material-icon{font-size:48px;opacity:.5;margin-bottom:16px}.empty-calendar-message p{font-size:18px;margin:0 0 8px;color:var(--text-secondary, #666)}.empty-calendar-message .hint{font-size:14px;color:var(--text-muted, #999)}.calendar-month-header{display:flex;align-items:center;gap:8px;padding:16px 24px;background:var(--bg-primary, #f8f9fa);border:none;cursor:pointer;width:100%;text-align:left;transition:background var(--transition-fast, .15s)}.calendar-month-header:hover{background:#f0f1f3}.calendar-month-header-static{display:flex;align-items:center;gap:8px;padding:16px 24px;background:var(--bg-primary, #f8f9fa);border-bottom:1px solid var(--border-secondary, #eee)}.calendar-month-expand-icon{color:var(--text-secondary, #666);font-size:20px;display:flex;align-items:center}.calendar-month-name{flex:1;font-size:16px;font-weight:600;color:var(--text-primary, #333)}.calendar-month-note-count{font-size:13px;color:var(--text-tertiary, #888);background:#e8e8e8;padding:4px 10px;border-radius:var(--ex-radius-xl, 12px)}.calendar-month-days{border-top:1px solid var(--border-secondary, #eee)}.calendar-day-row{display:flex;align-items:stretch;min-height:36px;border-bottom:1px solid var(--border-secondary, #f0f0f0);position:relative}.calendar-day-row:last-child{border-bottom:none}.calendar-day-row.weekend{background:var(--bg-primary, #fafafa)}.calendar-day-row.has-notes{background:#f8fbff}.calendar-day-row.has-notes.weekend{background:#f5f8fb}.calendar-day-number{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:60px;padding:10px 8px;border-right:1px solid #eee;flex-shrink:0}.calendar-day-num{font-size:16px;font-weight:600;color:var(--text-primary, #333);line-height:1}.calendar-day-weekday{font-size:10px;color:var(--text-muted, #999);text-transform:uppercase;margin-top:4px}.calendar-day-row.weekend .calendar-day-weekday{color:#b08d57}.calendar-day-notes{flex:1;display:flex;flex-direction:column;padding:6px 12px;gap:4px}.calendar-day-empty{display:block;min-height:24px}.calendar-note-link{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#fff;border:1px solid var(--border-primary, #e5e5e5);border-radius:var(--ex-radius-md, 6px);cursor:pointer;transition:all .15s;text-align:left;width:100%}.calendar-note-link:hover{background:#f0f4ff;border-color:var(--accent-secondary, #667eea);transform:translate(4px)}.calendar-note-link .material-icon{font-size:16px;color:var(--accent-secondary, #667eea);opacity:.7}.calendar-note-title{font-size:14px;font-weight:500;color:var(--text-primary, #333)}.calendar-note-description{font-size:13px;color:var(--text-tertiary, #888);margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day-range-bars{display:flex;flex-direction:row;gap:4px;min-width:8px;align-self:stretch;padding-left:8px;position:relative}.calendar-range-bar{width:4px;background:var(--accent-secondary, #667eea);border:none;border-radius:0;cursor:pointer;position:relative;transition:all .15s;display:block;padding:1px 0;margin-top:-1px;margin-bottom:-1px}.calendar-range-bar:hover{width:6px;background:var(--accent-primary-hover, #5a6fd6);box-shadow:0 0 8px #667eea66;z-index:1}.calendar-range-bar-start{border-top-left-radius:3px;border-top-right-radius:3px;margin-top:0;padding-top:0}.calendar-range-bar-end{border-bottom-left-radius:3px;border-bottom-right-radius:3px;margin-bottom:4px;padding-bottom:0}.calendar-range-bar-middle{border-radius:0}.calendar-range-bar-single{border-radius:var(--ex-radius-sm, 3px);margin-top:0;margin-bottom:4px;padding-top:0;padding-bottom:0}.calendar-day-main{flex:1;display:flex;flex-direction:column;min-width:0}.calendar-day-content{display:flex;align-items:stretch;flex:1}.calendar-day-range-labels{display:flex;flex-wrap:wrap;gap:4px 8px;padding:4px 8px 2px 0;border-bottom:1px solid var(--border-secondary, #eee)}.calendar-range-label-button{background:var(--accent-secondary, #667eea);border:none;border-radius:0 .5em .5em 0;padding:.5em;font-size:.8em;font-weight:600;color:var(--text-inverse, #ffffff);cursor:pointer;white-space:nowrap;transition:color var(--transition-fast, .15s)}.calendar-range-label-button:hover{color:var(--text-inverse, #ffffff);text-decoration:underline}.calendar-traditional-view .detail-view-content{max-width:none;padding:0}.calendar-traditional-content{padding:0 24px 24px}.calendar-grid-header{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:2px solid var(--border-primary, #e5e5e5);background:var(--bg-primary, #f8f9fa)}.calendar-grid-header-cell{padding:12px 8px;text-align:center;font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.calendar-grid-header-cell.weekend{color:#b08d57}.calendar-grid{border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5}.calendar-grid-row{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-primary, #e5e5e5)}.calendar-grid-cell{height:100px;padding:8px;border-right:1px solid #eee;background:#fff;cursor:default;transition:background var(--transition-fast, .15s);overflow:hidden;display:flex;flex-direction:column}.calendar-grid-cell:last-child{border-right:none}.calendar-grid-cell.other-month{background:var(--bg-primary, #fafafa)}.calendar-grid-cell.other-month .calendar-grid-day-number{color:var(--text-muted, #ccc)}.calendar-grid-cell.weekend{background:#fffcf5}.calendar-grid-cell.weekend.other-month{background:#f8f6f2}.calendar-grid-cell.has-notes{cursor:pointer}.calendar-grid-cell.has-notes:hover{background:#f0f4ff}.calendar-grid-cell.today{background:#e8f4ff}.calendar-grid-cell.today.weekend{background:#e8f0f8}.calendar-grid-cell.expanded{background:#f0f4ff;box-shadow:inset 0 0 0 2px var(--accent-secondary, #667eea);height:auto;min-height:100px;overflow:visible}.calendar-grid-cell-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.calendar-grid-day-number{font-size:14px;font-weight:500;color:var(--text-primary, #333)}.calendar-grid-day-number.today{background:var(--accent-secondary);color:var(--text-inverse);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.calendar-grid-note-indicator{font-size:11px;font-weight:600;color:var(--text-inverse);background:var(--accent-secondary);min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}.calendar-grid-cell-notes{display:flex;flex-direction:column;gap:3px;flex:1;overflow:hidden;min-height:0}.calendar-grid-note-link{display:block;padding:4px 6px;background:#f0f4ff;border:1px solid #d4e0f7;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;text-align:left;transition:all .15s;overflow:hidden;flex-shrink:0}.calendar-grid-note-link:hover{background:#e0e8ff;border-color:var(--accent-secondary, #667eea)}.calendar-grid-note-title{font-size:11px;font-weight:500;color:var(--text-primary, #333);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-grid-more-notes{font-size:11px;color:var(--accent-secondary, #667eea);font-weight:500;padding:2px 6px}.calendar-grid-week{position:relative}.calendar-grid-range-bars{position:relative;min-height:20px;padding:2px 0;background:var(--bg-primary, #f8f9fa);border-bottom:1px solid var(--border-primary, #e5e5e5)}.calendar-grid-range-bar{position:absolute;height:18px;background:linear-gradient(90deg,#667eea,#764ba2);border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;display:flex;align-items:center;padding:0 8px;transition:all .15s;box-sizing:border-box}.calendar-grid-range-bar:hover{background:linear-gradient(90deg,#5a6fd6,#6a4190);box-shadow:0 2px 8px #667eea66;z-index:10}.calendar-grid-range-bar.continues-from-prev{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-2px;padding-left:4px}.calendar-grid-range-bar.continues-to-next{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-2px;padding-right:4px}.calendar-grid-range-bar-label{font-size:10px;font-weight:600;color:var(--text-inverse);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-details-section{background:var(--bg-primary, #f9f9f9);border:1px solid var(--border-primary, #e5e5e5);border-radius:var(--ex-radius-xl, 12px);padding:24px}.person-form{display:flex;flex-direction:column;gap:20px}.form-row{display:flex;gap:16px}.form-field{flex:1;display:flex;flex-direction:column;gap:6px}.form-field.full-width{flex:none;width:100%}.form-field label{font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.form-field input[type=text],.form-field input[type=date],.form-field textarea{padding:12px 14px;border:1px solid var(--border-primary, #ddd);border-radius:var(--ex-radius-md, 6px);font-size:14px;font-family:inherit;color:var(--text-primary, #333);background:#fff;transition:border-color .15s,box-shadow .15s}.form-field input[type=text]:focus,.form-field input[type=date]:focus,.form-field textarea:focus{outline:none;border-color:var(--accent-secondary, #667eea);box-shadow:0 0 0 3px #667eea26}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-muted, #999)}.form-field textarea{resize:vertical;min-height:100px}.note-image-section{margin-bottom:20px}.note-image-container{position:relative;width:100%}.note-header-image{width:100%;height:auto;display:block;cursor:pointer;border-radius:var(--ex-radius-sm, 4px);transition:opacity var(--transition-normal, .2s)}.note-header-image:hover{opacity:.9}.note-image-delete-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border:none;background:var(--modal-overlay);color:var(--text-inverse);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:background var(--transition-normal, .2s);opacity:0}.note-image-container:hover .note-image-delete-btn{opacity:1}.note-image-delete-btn:hover{background:#dc3545}.add-image-btn{width:100%;padding:16px;background:var(--input-bg, #ffffff);border:1px dashed var(--border-primary, #ccc);border-radius:var(--ex-radius-md, 6px);color:var(--text-secondary, #666);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:500;transition:all var(--transition-normal, .2s)}.add-image-btn:hover{border-color:var(--accent-secondary, #667eea);color:var(--accent-secondary, #667eea);background:var(--bg-hover, rgba(0, 0, 0, .05))}.add-image-btn .material-icon{font-size:20px}.image-upload-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}.image-upload-popup{background:#fff;border-radius:var(--ex-radius-xl, 12px);width:90%;max-width:480px;box-shadow:var(--shadow-xl, 0 20px 60px rgba(0, 0, 0, .3));animation:slideUp .3s ease-out;overflow:hidden}.image-upload-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-secondary, #eee)}.image-upload-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #333)}.image-upload-close-btn{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary, #666);cursor:pointer;border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;font-size:20px;transition:all var(--transition-normal, .2s)}.image-upload-close-btn:hover{background:var(--bg-tertiary, #f0f0f0);color:var(--text-primary, #333)}.image-upload-dropzone{margin:20px;padding:40px 20px;border:2px dashed #ddd;border-radius:var(--ex-radius-xl, 12px);text-align:center;transition:all var(--transition-normal, .2s);background:var(--bg-primary, #fafafa)}.image-upload-dropzone.dragging{border-color:var(--accent-secondary, #667eea);background:#f0f0ff}.image-upload-dropzone.uploading{pointer-events:none;opacity:.8}.dropzone-icon{font-size:48px;color:var(--text-muted, #ccc);margin-bottom:16px}.image-upload-dropzone.dragging .dropzone-icon{color:var(--accent-secondary, #667eea)}.dropzone-text{font-size:16px;font-weight:500;color:var(--text-secondary, #666);margin:0 0 8px}.dropzone-hint{font-size:14px;color:var(--text-muted, #999);margin:0 0 16px}.browse-files-btn{padding:12px 24px;background:var(--accent-secondary);border:none;border-radius:var(--ex-radius-md, 6px);color:var(--text-inverse);font-size:14px;font-weight:600;cursor:pointer;transition:background var(--transition-normal, .2s)}.browse-files-btn:hover{background:#5568d3}.dropzone-formats{font-size:12px;color:var(--text-muted, #999);margin:16px 0 0}.upload-loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--accent-secondary, #667eea);cursor:progress}.upload-loading .material-icon{font-size:36px}.upload-loading .material-icon.spin{animation:spin 1s linear infinite}.upload-error{margin:0 20px 20px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--ex-radius-md, 6px);color:var(--status-error, #dc2626);display:flex;align-items:center;gap:8px;font-size:14px}.upload-error .material-icon{font-size:18px}.image-lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--lightbox-overlay, rgba(0, 0, 0, .9));display:flex;align-items:center;justify-content:center;z-index:3000;animation:fadeIn .2s ease-out;padding:40px}.lightbox-close-btn{position:absolute;top:20px;right:20px;width:44px;height:44px;border:none;background:var(--collections-overlay);color:var(--text-inverse);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;transition:background var(--transition-normal, .2s)}.lightbox-close-btn:hover{background:var(--collections-overlay-hover)}.lightbox-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--ex-radius-sm, 4px);box-shadow:var(--shadow-xl, 0 4px 20px rgba(0, 0, 0, .5))}.note-body-container{display:grid;grid-template-columns:1fr 280px;flex:1;width:100%;overflow:hidden;position:relative}.note-body-container:not(:has(.comment-gutter)){grid-template-columns:1fr}.note-body-container .note-content{min-width:0;overflow-y:auto}.comment-gutter{padding:16px;overflow-y:auto;background:var(--bg-primary, #f9f9f9);border-left:1px solid #eee;display:flex;flex-direction:column;gap:8px}comment{display:inline;border-radius:var(--ex-radius-sm, 3px);padding:1px 3px;margin:0 -1px}.sticky-note{width:100%;min-height:60px;border-radius:var(--ex-radius-sm, 4px);box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .15));display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s;cursor:pointer;flex-shrink:0}.sticky-note:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .2))}.sticky-note-header{height:24px;display:flex;align-items:center;justify-content:flex-end;padding:0 4px;flex-shrink:0;gap:4px}.sticky-note-username{flex:1;font-size:11px;font-weight:600;color:var(--text-secondary, rgba(0, 0, 0, .6));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:4px}.sticky-note-delete{width:20px;height:20px;border:none;background:transparent;color:var(--text-muted, rgba(0, 0, 0, .4));cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 3px);transition:background .15s,color .15s;padding:0}.sticky-note-delete:hover{background:var(--bg-hover, rgba(0, 0, 0, .1));color:var(--text-secondary, rgba(0, 0, 0, .7))}.sticky-note-delete .material-icon{font-size:16px}.sticky-note-body{flex:1;border:none;background:transparent;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1.4;resize:none;outline:none;min-height:28px;color:var(--text-primary, rgba(0, 0, 0, .8))}.sticky-note-body::placeholder{color:var(--text-muted, rgba(0, 0, 0, .35));font-style:italic}.track-change-annotation{width:100%;min-height:60px;background:var(--bg-elevated, white);border-radius:var(--ex-radius-sm, 4px);border-left:4px solid var(--ex-track-modify-text, #7b1fa2);box-shadow:var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, .1));display:flex;flex-direction:column;overflow:hidden;cursor:pointer;transition:box-shadow .2s,transform .1s;flex-shrink:0}.track-change-annotation:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));transform:translate(-2px)}.track-change-annotation-header{display:flex;align-items:center;padding:6px 8px;gap:6px;background:var(--bg-secondary, #f5f5f5);border-bottom:1px solid var(--border-light, #eee)}.track-change-annotation-icon{display:flex;align-items:center;justify-content:center}.track-change-annotation-icon .material-icon{font-size:16px}.track-change-annotation-deletion .track-change-annotation-icon{color:var(--ex-track-delete-text, #c62828)}.track-change-annotation-addition .track-change-annotation-icon{color:var(--ex-track-insert-text, #2e7d32)}.track-change-annotation-replacement .track-change-annotation-icon,.track-change-annotation-format .track-change-annotation-icon{color:var(--ex-track-modify-text, #7b1fa2)}.track-change-annotation-deletion{border-left-color:var(--ex-track-delete-text, #c62828)}.track-change-annotation-addition{border-left-color:var(--ex-track-insert-text, #2e7d32)}.track-change-annotation-replacement,.track-change-annotation-format{border-left-color:var(--ex-track-modify-text, #7b1fa2)}.track-change-annotation-username{flex:1;font-size:11px;font-weight:600;color:var(--text-secondary, rgba(0, 0, 0, .6));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-change-annotation-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.track-change-annotation:hover .track-change-annotation-actions{opacity:1}.track-change-annotation-actions button{width:20px;height:20px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 3px);transition:background .15s;padding:0}.track-change-annotation-actions button .material-icon{font-size:14px}.annotation-accept{color:var(--status-success, #2e7d32)}.annotation-accept:hover{background:var(--status-success-bg, #e8f5e9)}.annotation-reject{color:var(--status-error, #c62828)}.annotation-reject:hover{background:var(--status-error-bg, #ffebee)}.track-change-annotation-body{padding:8px 10px;font-size:12px;line-height:1.4;color:var(--text-primary, rgba(0, 0, 0, .8))}.track-change-annotation-group{width:240px;background:var(--bg-elevated, white);border-radius:var(--ex-radius-sm, 4px);border-left:4px solid var(--ex-track-modify-text, #7b1fa2);box-shadow:var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, .1));overflow:hidden;transition:box-shadow .2s}.track-change-annotation-group:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.track-change-group-header{display:flex;align-items:center;padding:8px 10px;gap:8px;background:var(--bg-secondary, #f5f5f5);cursor:pointer;transition:background .15s}.track-change-group-header:hover{background:var(--bg-hover, #eee)}.track-change-group-icon{display:flex;align-items:center;justify-content:center;color:var(--ex-track-modify-text, #7b1fa2)}.track-change-group-icon .material-icon{font-size:18px}.track-change-group-summary{flex:1;font-size:12px;font-weight:500;color:var(--text-primary, rgba(0, 0, 0, .8));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-change-group-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.track-change-group-header:hover .track-change-group-actions{opacity:1}.track-change-group-actions button{width:22px;height:22px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 3px);transition:background .15s;padding:0}.track-change-group-actions button .material-icon{font-size:16px}.track-change-group-actions .annotation-accept{color:var(--status-success, #2e7d32)}.track-change-group-actions .annotation-accept:hover{background:var(--status-success-bg, #e8f5e9)}.track-change-group-actions .annotation-reject{color:var(--status-error, #c62828)}.track-change-group-actions .annotation-reject:hover{background:var(--status-error-bg, #ffebee)}.track-change-group-actions .group-expand-toggle{color:var(--text-secondary, rgba(0, 0, 0, .6))}.track-change-group-actions .group-expand-toggle:hover{background:var(--bg-hover, rgba(0, 0, 0, .08))}.track-change-group-items{border-top:1px solid var(--border-light, #eee);max-height:300px;overflow-y:auto}.track-change-group-item{display:flex;align-items:center;padding:8px 10px;gap:8px;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border-light, #eee)}.track-change-group-item:last-child{border-bottom:none}.track-change-group-item:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.track-change-group-item .track-change-annotation-icon{flex-shrink:0}.track-change-group-item .track-change-annotation-icon .material-icon{font-size:14px}.track-change-group-item.track-change-annotation-deletion .track-change-annotation-icon{color:var(--ex-track-delete-text, #c62828)}.track-change-group-item.track-change-annotation-addition .track-change-annotation-icon{color:var(--ex-track-insert-text, #2e7d32)}.track-change-group-item.track-change-annotation-replacement .track-change-annotation-icon,.track-change-group-item.track-change-annotation-format .track-change-annotation-icon{color:var(--ex-track-modify-text, #7b1fa2)}.track-change-group-item-text{flex:1;font-size:11px;line-height:1.3;color:var(--text-primary, rgba(0, 0, 0, .8));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-change-group-item .track-change-annotation-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.track-change-group-item:hover .track-change-annotation-actions{opacity:1}.track-change-group-item .track-change-annotation-actions button{width:18px;height:18px}.track-change-group-item .track-change-annotation-actions button .material-icon{font-size:12px}.tracked-change.highlight-flash{animation:highlightFlash 1s ease-out}@keyframes highlightFlash{0%{outline:3px solid var(--ex-track-modify-text, #7b1fa2);outline-offset:2px}to{outline:3px solid transparent;outline-offset:2px}}comment.highlight-flash{animation:commentHighlightFlash 1s ease-out}@keyframes commentHighlightFlash{0%{outline:3px solid #ff9800;outline-offset:2px}to{outline:3px solid transparent;outline-offset:2px}}.color-picker-menu{background:#fff;border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));padding:4px 0;min-width:140px;animation:fadeIn .1s ease-out}.color-picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:none;border:none;font-size:13px;color:var(--text-primary, #333);cursor:pointer;transition:background var(--transition-fast, .15s)}.color-picker-item:hover{background:var(--bg-secondary, #f5f5f5)}.color-picker-item.active{background:#f0f4ff}.color-swatch{width:16px;height:16px;border-radius:var(--ex-radius-sm, 4px);border:1px solid var(--border-secondary, rgba(0, 0, 0, .1));flex-shrink:0}.color-name{flex:1;text-align:left}.color-picker-item .material-icon{font-size:16px;color:var(--accent-secondary, #667eea)}.toolbar-btn.comment-btn{display:flex;align-items:center;justify-content:center}.toolbar-btn.comment-btn .material-icon{font-size:16px}.toolbar-btn.disabled{opacity:.4;cursor:not-allowed}.toolbar-btn.disabled:hover{background:transparent}.toolbar-btn.footnote-btn{display:flex;align-items:center;justify-content:center}.toolbar-btn.footnote-btn .material-icon{font-size:16px}.toolbar-btn.highlight-btn{display:flex;align-items:center;justify-content:center}.toolbar-btn.highlight-btn .material-icon{font-size:16px}highlight{display:inline;border-radius:2px;padding:0 1px}.highlight-picker-menu{display:flex;gap:4px;background:#fff;border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));padding:8px;animation:fadeIn .1s ease-out}.highlight-color-item{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;cursor:pointer;border-radius:var(--ex-radius-sm, 4px);transition:transform .15s,box-shadow .15s}.highlight-color-item:hover{transform:scale(1.15);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .2))}.highlight-color-swatch{width:20px;height:20px;border-radius:var(--ex-radius-sm, 4px)}footnote{display:inline;font-size:.75em;vertical-align:super;color:var(--accent-secondary, #667eea);cursor:default;font-weight:600}footnote:before{content:"[" attr(data-number) "]"}.footnotes-panel{width:100%;margin:0;padding:16px 40px 24px;border-top:1px solid var(--border-primary, #e0e0e0);background:var(--bg-primary, #fafafa)}.footnotes-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--text-secondary, #666);font-size:14px;font-weight:600}.footnotes-header .material-icon{font-size:18px;color:var(--accent-secondary, #667eea)}.footnotes-list{display:flex;flex-direction:column;gap:8px}.footnote-item{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:#fff;border-radius:var(--ex-radius-md, 6px);border:1px solid #e8e8e8}.footnote-item:hover{border-color:#d0d0d0}.footnote-number{flex-shrink:0;width:24px;font-weight:600;color:var(--accent-secondary, #667eea);font-size:14px;line-height:24px}.footnote-text{flex:1;border:none;background:transparent;font-family:inherit;font-size:14px;line-height:1.5;resize:none;outline:none;min-height:24px;padding:0;color:var(--text-primary, #333);overflow:hidden}.footnote-text::placeholder{color:var(--text-muted, #aaa);font-style:italic}.footnote-delete{flex-shrink:0;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted, #ccc);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--ex-radius-sm, 4px);transition:all .15s;padding:0;opacity:0}.footnote-item:hover .footnote-delete{opacity:1}.footnote-delete:hover{background:#fee;color:#e53935}.footnote-delete .material-icon{font-size:16px}char-dialogue{display:inline;border-radius:var(--ex-radius-lg, 8px);padding:1px 8px;margin:0 -1px;background-color:transparent;transition:background-color var(--transition-fast, .15s ease);position:relative}char-dialogue:hover{border-radius:0 8px 8px}char-dialogue.char-dialogue-visible{background-color:var(--char-color, rgb(224, 224, 224))}char-dialogue .char-dialogue-pill{display:none;position:absolute;top:-23px;left:-2px;font-size:.7em;text-indent:0;padding:2px 8px 0;border-radius:8px 8px 8px 0;background-color:var(--char-color, rgb(224, 224, 224));color:var(--text-primary, #333);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:900;white-space:nowrap;z-index:10;transition:transform .1s ease,box-shadow .1s ease;pointer-events:auto}char-dialogue.char-dialogue-visible:hover .char-dialogue-pill{display:block}char-dialogue .char-dialogue-pill:hover{transform:scale(1.05);box-shadow:var(--shadow-sm, 0 2px 6px rgba(0, 0, 0, .2))}char-speaker{display:none}char-mention{display:inline}char-mention.char-mention-visible{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:var(--char-color, #6366f1);text-underline-offset:2px}char-dialogue.char-dialogue-visible[data-confidence=high]{border-left:2px solid var(--char-color, rgb(224, 224, 224));padding-left:4px;margin-left:-3px}char-dialogue.char-dialogue-visible[data-confidence=medium]{border-left:2px dotted var(--char-color, rgb(224, 224, 224));padding-left:4px;margin-left:-3px}char-dialogue.char-dialogue-visible[data-confidence=low]{border-left:2px dashed var(--char-color, rgb(224, 224, 224));padding-left:4px;margin-left:-3px}char-dialogue.char-dialogue-visible[data-confidence=unresolved]{opacity:.7}.speaker-picker-popup{position:fixed;background:#fff;border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--shadow-lg, 0 4px 16px rgba(0, 0, 0, .15));padding:6px 0;min-width:180px;max-height:320px;overflow-y:auto;z-index:1002;animation:fadeIn .1s ease-out}.speaker-picker-header{padding:8px 12px;font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-secondary, #eee)}.speaker-picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;font-size:14px;color:var(--text-primary, #333);cursor:pointer;transition:background var(--transition-fast, .15s);text-align:left}.speaker-picker-item:hover{background:var(--bg-secondary, #f5f5f5)}.speaker-picker-item.active{background:#f0f4ff}.speaker-picker-color{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1px solid var(--border-secondary, rgba(0, 0, 0, .1))}.speaker-picker-name{flex:1}.speaker-picker-item .material-icon{font-size:16px;color:var(--accent-secondary, #667eea)}.speaker-picker-unattributed{border-top:1px solid var(--border-secondary, #eee);margin-top:4px;padding-top:4px}.speaker-picker-unattributed .speaker-picker-color{background:#9e9e9e}.detect-dialogue-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:var(--accent-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-lg, 8px);font-size:14px;font-weight:500;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.detect-dialogue-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--accent-primary, #6366f1) 35%,transparent)}.detect-dialogue-btn:disabled{opacity:.6;cursor:not-allowed}.detect-dialogue-btn .material-icon{font-size:18px}.clear-dialogue-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:transparent;color:var(--text-secondary, #666);border:1px solid var(--border-primary, #e0e0e0);border-radius:var(--ex-radius-md, 6px);font-size:13px;cursor:pointer;transition:all .15s;margin-top:8px}.clear-dialogue-btn:hover{background:#fef2f2;border-color:#fecaca;color:var(--status-error, #dc2626)}.clear-dialogue-btn .material-icons{font-size:16px}.express-sentence-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-secondary, #4b5563);cursor:pointer;transition:all .15s ease}.express-sentence-btn:hover:not(:disabled){background:var(--bg-hover, #f3f4f6);border-color:var(--border-secondary, #d1d5db);color:var(--text-primary, #2d3748)}.express-sentence-btn:disabled{opacity:.5;cursor:not-allowed}.express-sentence-btn .material-icons{font-size:18px;color:var(--primary-color, #7C3AED)}.writing-tool.dev-tool .writing-tool-name .material-icons{margin-right:4px}.clear-dialogue-btn .material-icon{font-size:16px}.mark-dialogue-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:transparent;color:var(--accent-primary, #6366f1);border:1px solid color-mix(in srgb,var(--accent-primary, #6366f1) 30%,transparent);border-radius:var(--radius-md, 6px);font-size:13px;cursor:pointer;transition:var(--transition-fast, all .15s);margin-top:4px}.mark-dialogue-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-primary, #6366f1) 10%,transparent);border-color:color-mix(in srgb,var(--accent-primary, #6366f1) 50%,transparent)}.mark-dialogue-btn:disabled{opacity:.4;cursor:not-allowed;color:var(--text-muted, #9ca3af);border-color:#e5e7eb}.mark-dialogue-btn .material-icon{font-size:16px}.dialogue-tagging-controls{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e8e8e8}.focus-mode-toggle{position:absolute;top:12px;left:12px;z-index:100;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted, #ccc);cursor:pointer;border-radius:var(--ex-radius-md, 6px);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal, .2s ease);opacity:.4}.focus-mode-toggle:hover{background:#667eea1a;color:var(--accent-secondary, #667eea);opacity:1}.focus-mode-toggle.enabled{color:var(--accent-secondary, #667eea);opacity:.7}.focus-mode-toggle.enabled:hover{opacity:1}.focus-mode-toggle .material-icon{font-size:20px}.left-sidebar,.right-sidebar{transition:opacity .5s ease-in-out,width .5s ease-in-out}.note-header{transition:opacity .5s ease-in-out,height .5s ease-in-out,padding .5s ease-in-out}.panels-area{transition:opacity .5s ease-in-out,max-height .5s ease-in-out}.app.focus-mode-active .left-sidebar,.app.focus-mode-active .right-sidebar{opacity:0;width:0;overflow:hidden;pointer-events:none}.app.focus-mode-active .note-header{opacity:0;height:0;padding:0;border:none;overflow:hidden;pointer-events:none}.app.focus-mode-active .panels-area{opacity:0;max-height:0;overflow:hidden;pointer-events:none}.app.focus-mode-active .focus-mode-toggle{opacity:0;pointer-events:none}.app.focus-mode-active .note-content>div{opacity:.5;filter:blur(2px);transition:opacity .2s ease,filter .2s ease}.app.focus-mode-active .note-content>div.current-line{opacity:1;filter:none}.index-view{flex:1;display:flex;width:100%;background:linear-gradient(135deg,#f8f7f4,#f0efe8);overflow:hidden}.index-sidebar{width:220px;background:var(--bg-elevated);color:var(--text-primary);display:flex;flex-direction:column;border-right:1px solid var(--sidebar-border)}.index-sidebar-header{display:flex;align-items:center;gap:10px;padding:20px 16px;border-bottom:1px solid var(--sidebar-border);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.index-sidebar-header .material-icon{font-size:20px;color:var(--accent-secondary, #667eea)}.index-nav{flex:1;overflow-y:auto;padding:8px 0}.index-nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;color:var(--text-muted, #ccc);font-size:14px;text-align:left;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-nav-item:hover{background:var(--sidebar-hover);color:var(--text-inverse)}.index-nav-item.active{background:#667eea26;color:var(--accent-secondary, #667eea);border-left:3px solid var(--accent-secondary, #667eea);padding-left:13px}.index-nav-item .material-icon{font-size:20px;opacity:.8}.index-nav-item.active .material-icon{opacity:1}.index-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.index-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:#fff;border-bottom:1px solid #e0ddd4;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .05))}.index-header h2{display:flex;align-items:center;gap:12px;margin:0;font-size:22px;font-weight:600;color:var(--text-primary, #333);font-family:Georgia,Palatino,Times New Roman,serif}.index-header h2 .material-icon{font-size:24px;color:var(--accent-secondary, #667eea)}.index-count{font-size:13px;color:var(--text-tertiary, #888);background:var(--bg-tertiary, #f0f0f0);padding:4px 12px;border-radius:var(--ex-radius-xl, 12px)}.index-content{flex:1;overflow-y:auto;padding:24px 32px}.index-group{margin-bottom:32px}.index-group-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--accent-secondary, #667eea)}.index-group-label{font-size:18px;font-weight:700;color:var(--accent-secondary, #667eea);font-family:Georgia,Palatino,Times New Roman,serif;min-width:24px}.index-group-count{font-size:12px;color:var(--text-tertiary, #888);background:var(--bg-tertiary, #f0f0f0);padding:2px 8px;border-radius:var(--ex-radius-lg, 10px)}.index-group-list{list-style:none;margin:0;padding:0}.index-item{display:flex;flex-direction:row;align-items:center;gap:12px;padding:10px 16px;background:#fff;border:1px solid #e0ddd4;border-radius:var(--ex-radius-md, 6px);margin-bottom:8px;transition:all var(--transition-fast, .15s ease);cursor:pointer}.index-item:hover{border-color:var(--accent-secondary, #667eea);box-shadow:0 2px 8px #667eea26}.index-item-checkbox{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted, #ccc);cursor:pointer;border-radius:var(--ex-radius-sm, 4px);transition:all var(--transition-fast, .15s ease);flex-shrink:0}.index-item-checkbox:hover{color:var(--accent-secondary, #667eea);background:#667eea1a}.index-item-checkbox.checked{color:var(--accent-secondary, #667eea)}.index-item-checkbox .material-icon{font-size:22px}.index-item-content{display:flex;flex-direction:column;flex:1;min-width:0}.index-item-name{font-size:15px;font-weight:600;color:var(--text-primary, #333);font-family:Georgia,Palatino,Times New Roman,serif}.index-item-path{font-size:12px;color:var(--text-tertiary, #888);margin-top:4px;font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.index-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary, #888);padding:40px;text-align:center}.index-empty-state .material-icon{font-size:64px;color:#ddd;margin-bottom:16px}.index-empty-state p{font-size:18px;margin:0}.index-empty-state .hint{font-size:14px;color:var(--text-muted, #aaa);margin-top:8px}.index-content::-webkit-scrollbar{width:8px}.index-content::-webkit-scrollbar-track{background:transparent}.index-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:var(--ex-radius-sm, 4px)}.index-content::-webkit-scrollbar-thumb:hover{background:#bbb}.index-nav::-webkit-scrollbar{width:6px}.index-nav::-webkit-scrollbar-track{background:transparent}.index-nav::-webkit-scrollbar-thumb{background:var(--collections-border);border-radius:var(--ex-radius-sm, 3px)}.index-nav::-webkit-scrollbar-thumb:hover{background:var(--collections-text-muted)}.index-item.selected{background:#e8e4f8;border-color:var(--accent-secondary, #667eea);box-shadow:0 0 0 2px #667eea33}.index-item.active{background:#f0f0ff;border-color:var(--accent-secondary, #667eea)}.index-item-toolbar{background:#fff;border:1px solid #e0ddd4;border-radius:var(--ex-radius-lg, 8px);box-shadow:var(--shadow-lg, 0 4px 16px rgba(0, 0, 0, .15));padding:8px;z-index:1000;display:flex;flex-direction:column;gap:4px;min-width:160px}.index-item-toolbar .toolbar-action{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;background:transparent;color:var(--text-primary, #444);font-size:13px;cursor:pointer;border-radius:var(--ex-radius-md, 6px);transition:all var(--transition-fast, .15s ease);text-align:left;width:100%}.index-item-toolbar .toolbar-action:hover{background:var(--bg-secondary, #f5f5f5);color:var(--accent-secondary, #667eea)}.index-item-toolbar .toolbar-action.compare{background:#667eea1a;color:var(--accent-secondary, #667eea)}.index-item-toolbar .toolbar-action.compare:hover{background:#667eea33}.index-item-toolbar .toolbar-action .material-icon{font-size:18px}.index-selection-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#667eea1a;border-top:1px solid var(--sidebar-border);font-size:13px;color:var(--text-muted)}.index-selection-bar .compare-btn,.index-selection-bar .clear-selection-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border:none;border-radius:var(--ex-radius-sm, 4px);font-size:12px;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-selection-bar .compare-btn{background:var(--accent-secondary);color:var(--text-inverse)}.index-selection-bar .compare-btn:hover{background:var(--accent-primary-hover, #5a6fd6)}.index-selection-bar .clear-selection-btn{background:transparent;color:var(--text-muted, #aaa);padding:6px}.index-selection-bar .clear-selection-btn:hover{background:var(--sidebar-hover);color:var(--text-inverse)}.index-selection-bar .material-icon{font-size:16px}.index-header-right{display:flex;align-items:center;gap:16px}.index-hint{font-size:12px;color:var(--text-muted, #aaa);font-style:italic}.index-all-indices-panel{background:#fff;border-radius:var(--ex-radius-xl, 12px);box-shadow:var(--shadow-sm, 0 2px 12px rgba(0, 0, 0, .08));margin:0 0 24px;overflow:hidden}.index-all-indices-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--accent-gradient);color:var(--text-inverse)}.index-all-indices-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600}.index-all-indices-header h3 .note-name{font-family:Georgia,Palatino,Times New Roman,serif}.index-all-indices-header h3 .subtitle{font-weight:400;opacity:.8}.index-all-indices-header h3 .material-icon{font-size:20px}.index-all-indices-actions{display:flex;align-items:center;gap:8px}.index-action-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:var(--ex-radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-action-btn.primary{background:#fff;color:var(--accent-secondary, #667eea)}.index-action-btn.primary:hover{background:#f5f5ff}.index-action-btn.secondary{background:var(--collections-overlay-hover);color:var(--text-inverse)}.index-action-btn.secondary:hover{background:var(--collections-border)}.index-action-btn .material-icon{font-size:16px}.index-all-indices-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--collections-overlay-hover);color:var(--text-inverse);border-radius:50%;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-all-indices-close:hover{background:var(--collections-border)}.index-all-indices-content{padding:20px}.index-all-indices-content .no-entries{color:var(--text-tertiary, #888);font-style:italic;text-align:center;padding:20px}.index-entries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.index-entry-card{background:#f8f7f4;border:1px solid #e0ddd4;border-radius:var(--ex-radius-lg, 8px);padding:14px;transition:all var(--transition-fast, .15s ease)}.index-entry-card:hover{border-color:var(--accent-secondary, #667eea);box-shadow:0 2px 8px #667eea1a}.index-entry-category{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-tertiary, #888);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.index-entry-category .material-icon{font-size:14px}.index-entry-value{font-size:15px;font-weight:600;color:var(--text-primary, #333);font-family:Georgia,Palatino,Times New Roman,serif}.index-comparison-panel{background:#fff;border-radius:var(--ex-radius-xl, 12px);box-shadow:var(--shadow-sm, 0 2px 12px rgba(0, 0, 0, .08));margin:0 0 24px;overflow:hidden}.index-comparison-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--accent-gradient);color:var(--text-inverse)}.index-comparison-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600}.index-comparison-header h3 .material-icon{font-size:20px}.index-comparison-actions{display:flex;align-items:center;gap:8px}.index-comparison-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--collections-overlay-hover);color:var(--text-inverse);border-radius:50%;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-comparison-close:hover{background:var(--collections-border)}.index-comparison-content{padding:0;overflow-x:auto}.index-comparison-table{width:100%;border-collapse:collapse;font-size:14px}.index-comparison-table th,.index-comparison-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #e0ddd4}.index-comparison-table th{background:#f8f7f4;font-weight:600;color:var(--text-primary, #444);position:sticky;top:0}.index-comparison-table th.category-col{width:180px;background:var(--bg-tertiary, #f0f0f0)}.index-comparison-table th.note-col{min-width:180px}.index-comparison-table .note-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.index-comparison-table .note-header .note-name{font-family:Georgia,Palatino,Times New Roman,serif;font-size:15px}.index-comparison-table .note-header .go-to-note-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:#667eea1a;color:var(--accent-secondary, #667eea);border-radius:50%;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.index-comparison-table .note-header .go-to-note-btn:hover{background:var(--accent-secondary);color:var(--text-inverse)}.index-comparison-table .note-header .go-to-note-btn .material-icon{font-size:16px}.index-comparison-table tbody tr:hover{background:var(--bg-primary, #fafafa)}.index-comparison-table .category-cell{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--text-secondary, #555);background:#f8f7f4}.index-comparison-table .category-cell .material-icon{font-size:18px;color:var(--accent-secondary, #667eea)}.index-comparison-table .value-cell{vertical-align:top}.index-comparison-table .value-cell .no-value{color:var(--text-muted, #ccc);font-style:italic}.index-comparison-table .value-tags{display:flex;flex-wrap:wrap;gap:6px}.index-comparison-table .value-tag{display:inline-block;padding:4px 10px;background:#f0f0ff;color:var(--accent-secondary, #667eea);border-radius:var(--ex-radius-xl, 12px);font-size:12px;font-weight:500}.mindmap-view{flex:1;width:100%;height:100%;position:relative;overflow:hidden;background:linear-gradient(135deg,#f5f7fa,#e4e9f2);cursor:grab;-webkit-user-select:none;user-select:none}.mindmap-view:active{cursor:grabbing}.mindmap-svg{display:block;width:100%;height:100%}.mindmap-node{transition:transform .1s ease}.mindmap-node-item{cursor:pointer}.mindmap-node-item:hover rect{filter:brightness(.95);stroke-width:3px}.mindmap-node-item:hover text{font-weight:600}.mindmap-controls{position:absolute;top:16px;right:16px;display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:var(--ex-radius-lg, 8px);padding:8px;box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .15))}.mindmap-control-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:var(--bg-tertiary, #f0f0f0);border-radius:var(--ex-radius-md, 6px);cursor:pointer;transition:all var(--transition-normal, .2s)}.mindmap-control-btn:hover{background:var(--bg-active, #e0e0e0)}.mindmap-control-btn .material-icon{font-size:20px;color:var(--text-secondary, #555)}.mindmap-legend{position:absolute;bottom:16px;left:16px;background:#fff;border-radius:var(--ex-radius-lg, 8px);padding:12px 16px;box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .15));display:flex;flex-direction:column;gap:8px;font-size:12px}.mindmap-legend-item{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #666)}.mindmap-legend-color{width:12px;height:12px;border-radius:var(--ex-radius-sm, 3px)}.mindmap-instructions{position:absolute;bottom:16px;right:16px;background:var(--bg-primary);border-radius:var(--ex-radius-md, 6px);padding:8px 12px;font-size:11px;color:var(--text-tertiary);box-shadow:var(--shadow-sm)}.mindmap-instructions-desktop{display:block}.mindmap-instructions-mobile{display:none}.mindmap-empty{display:flex;align-items:center;justify-content:center;background:var(--bg-primary, #f8f9fa)}.mindmap-empty-message{text-align:center;color:var(--text-tertiary, #888)}.mindmap-empty-message .material-icon{font-size:48px;color:var(--text-muted, #ccc);margin-bottom:16px}.mindmap-empty-message h3{font-size:18px;font-weight:500;color:var(--text-secondary, #666);margin-bottom:8px}.mindmap-empty-message p{font-size:14px;color:var(--text-muted, #999)}@media(max-width:768px){.mindmap-legend{font-size:10px;padding:8px 12px}.mindmap-legend-color{width:10px;height:10px}.mindmap-instructions-desktop{display:none}.mindmap-instructions-mobile{display:block}.mindmap-controls{top:8px;right:8px;padding:6px}.mindmap-control-btn{width:32px;height:32px}}.tools-section{padding:0}.tools-section .section-title{font-size:13px;font-weight:600;color:var(--right-sidebar-text, #374151);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.track-changes-toggle{display:flex;align-items:center;gap:12px;margin-bottom:16px}.track-changes-count{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-hover, #f3f4f6);border-radius:var(--radius-md, 6px);margin-bottom:12px;font-size:13px;color:var(--text-secondary, #4b5563)}.track-changes-count .material-icon{font-size:18px;color:var(--text-tertiary, #6b7280)}.track-changes-actions{display:flex;flex-direction:column;gap:8px}.track-changes-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast, .2s)}.track-changes-btn:disabled{opacity:.5;cursor:not-allowed}.track-changes-btn .material-icon{font-size:18px}.track-changes-btn.accept-all{background:var(--status-success-bg, #e8f5e9);color:var(--status-success, #2e7d32)}.track-changes-btn.accept-all:hover:not(:disabled){background:var(--ex-success-light, #c8e6c9)}.track-changes-btn.reject-all{background:var(--status-error-bg, #ffebee);color:var(--status-error, #c62828)}.track-changes-btn.reject-all:hover:not(:disabled){background:var(--ex-danger-light, #ffcdd2)}.tracked-change{position:relative}.track-changes-enabled .tracked-change.deleted{color:var(--ex-track-delete-text, #c62828);text-decoration:line-through;background-color:var(--ex-track-delete-bg, rgba(198, 40, 40, .1))}.track-changes-enabled .tracked-change.added{color:var(--ex-track-insert-text, #2e7d32);background-color:var(--ex-track-insert-bg, rgba(46, 125, 50, .1))}.track-changes-enabled .tracked-change.format-changed{color:var(--ex-track-modify-text, #7b1fa2);background-color:var(--ex-track-modify-bg, rgba(123, 31, 162, .1))}.track-changes-disabled .tracked-change.deleted{display:none}.track-changes-disabled .tracked-change.added,.track-changes-disabled .tracked-change.format-changed{color:inherit;background-color:transparent}.track-change-bubble{position:absolute;display:flex;gap:2px;background:var(--bg-elevated, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);padding:4px;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));z-index:100;transform:translateY(-100%);margin-top:-8px}.track-change-bubble button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all var(--transition-fast, .15s)}.track-change-bubble button .material-icon{font-size:16px}.track-change-bubble .accept-btn{color:var(--status-success, #2e7d32);background:var(--status-success-bg, #e8f5e9)}.track-change-bubble .accept-btn:hover{background:var(--ex-success-light, #c8e6c9)}.track-change-bubble .reject-btn{color:var(--status-error, #c62828);background:var(--status-error-bg, #ffebee)}.track-change-bubble .reject-btn:hover{background:var(--ex-danger-light, #ffcdd2)}.import-wizard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.import-wizard{background:var(--bg-primary);border-radius:var(--ex-radius-xl, 12px);width:800px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl, 0 25px 50px -12px rgba(0, 0, 0, .25));animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.import-wizard-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.import-wizard-header h2{margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:10px;color:var(--text-primary, #1f2937)}.import-wizard-header h2 .material-icon{color:var(--accent-primary, #6366f1)}.import-wizard-header .close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--ex-radius-md, 6px);background:transparent;color:var(--text-tertiary, #6b7280);cursor:pointer;transition:all .15s}.import-wizard-header .close-btn:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.import-wizard-steps{display:flex;align-items:center;gap:8px;padding:16px 24px;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.step-connector{flex:1;height:2px;background:var(--bg-tertiary, #e5e7eb);max-width:60px}.step-indicator{display:flex;flex-direction:column;align-items:center;gap:6px}.step-indicator .step-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal, .2s)}.step-indicator .step-dot .material-icon{font-size:18px}.step-indicator.pending .step-dot{background:var(--bg-hover, #f3f4f6);color:var(--text-muted, #9ca3af)}.step-indicator.active .step-dot{background:var(--accent-primary);color:var(--text-inverse);box-shadow:0 4px 12px #6366f14d}.step-indicator.complete .step-dot{background:var(--status-success);color:var(--text-inverse)}.step-indicator .step-label{font-size:.75rem;font-weight:500;color:var(--text-tertiary, #6b7280)}.step-indicator.active .step-label{color:var(--accent-primary, #6366f1)}.step-indicator.complete .step-label{color:var(--status-success, #10b981)}.import-wizard-content{flex:1;overflow-y:auto;padding:24px}.import-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--ex-radius-lg, 8px);color:var(--status-error, #dc2626);margin-bottom:20px}.import-error .material-icon{font-size:20px}.import-error span{flex:1}.import-error button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--ex-radius-sm, 4px);background:transparent;color:var(--status-error, #dc2626);cursor:pointer}.import-error button:hover{background:#fee2e2}.upload-step{display:flex;flex-direction:column;gap:24px}.drop-zone{border:2px dashed var(--border-secondary, #d1d5db);border-radius:var(--ex-radius-xl, 12px);padding:48px 32px;text-align:center;cursor:pointer;transition:all var(--transition-normal, .2s);background:var(--bg-secondary, #f9fafb)}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent-primary, #6366f1);background:#eef2ff}.drop-zone .material-icon{font-size:48px;color:var(--text-muted, #9ca3af);margin-bottom:16px;display:block}.drop-zone:hover .material-icon,.drop-zone.drag-over .material-icon{color:var(--accent-primary, #6366f1)}.drop-zone h3{font-size:1.125rem;font-weight:600;color:var(--text-primary, #374151);margin-bottom:8px}.drop-zone p{color:var(--text-tertiary, #6b7280);font-size:.875rem}.supported-formats,.import-tips{background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-lg, 8px);padding:16px 20px}.supported-formats h4,.import-tips h4{font-size:.875rem;font-weight:600;color:var(--text-primary, #374151);margin-bottom:12px}.supported-formats ul,.import-tips ul{list-style:none;display:flex;flex-direction:column;gap:8px}.supported-formats li{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #4b5563);font-size:.875rem}.supported-formats li .material-icon{font-size:18px;color:var(--accent-primary, #6366f1)}.import-tips li{color:var(--text-secondary, #4b5563);font-size:.875rem;padding-left:16px;position:relative}.import-tips li:before{content:"•";position:absolute;left:0;color:var(--accent-primary, #6366f1)}.analyzing-step{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:20px}.analyzing-step .spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:var(--accent-primary, #6366f1);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.analyzing-step p{color:var(--text-tertiary, #6b7280);font-size:1rem}.pattern-mapping-step{display:flex;flex-direction:column;gap:20px}.step-description h3{font-size:1.125rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:8px}.step-description p{color:var(--text-tertiary, #6b7280);font-size:.9375rem}.step-description strong{color:var(--accent-primary, #6366f1)}.no-patterns{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--ex-radius-lg, 8px);color:#92400e}.no-patterns .material-icon{font-size:20px;color:#f59e0b}.patterns-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.pattern-card{display:flex;gap:20px;padding:16px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-lg, 10px);transition:all .15s}.pattern-card:hover{border-color:#c7d2fe;background:#fafaff}.pattern-info{flex:1;min-width:0}.pattern-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pattern-name{font-weight:600;color:var(--text-primary, #1f2937);font-size:.9375rem}.pattern-count{font-size:.75rem;color:var(--accent-primary, #6366f1);background:#eef2ff;padding:2px 8px;border-radius:var(--ex-radius-lg, 10px)}.pattern-examples{display:flex;flex-direction:column;gap:4px}.example-text{font-size:.8125rem;color:var(--text-tertiary, #6b7280);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.pattern-mapping-controls{display:flex;flex-direction:column;gap:10px;min-width:180px}.mapping-field{display:flex;flex-direction:column;gap:4px}.mapping-field label{font-size:.75rem;font-weight:500;color:var(--text-tertiary, #6b7280)}.mapping-field select{padding:8px 12px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--ex-radius-md, 6px);background:#fff;font-size:.875rem;color:var(--text-primary, #1f2937);cursor:pointer;transition:all .15s}.mapping-field select:focus{outline:none;border-color:var(--accent-primary, #6366f1);box-shadow:0 0 0 3px #6366f11a}.configure-step{display:flex;flex-direction:column;gap:20px}.config-sections{display:flex;flex-direction:column;gap:24px}.config-section{background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-lg, 10px);padding:20px}.config-section h4{display:flex;align-items:center;gap:8px;font-size:.9375rem;font-weight:600;color:var(--text-primary, #374151);margin-bottom:16px}.config-section h4 .material-icon{font-size:18px;color:var(--accent-primary, #6366f1)}.config-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.config-field:last-child{margin-bottom:0}.config-field.checkbox{flex-direction:row;align-items:center;gap:10px}.config-field.checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#6366f1;cursor:pointer}.config-field.checkbox label{font-size:.875rem;color:var(--text-secondary, #4b5563);cursor:pointer}.config-field>label{font-size:.8125rem;font-weight:500;color:var(--text-tertiary, #6b7280)}.config-field input[type=text],.config-field select{padding:10px 12px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--ex-radius-md, 6px);background:#fff;font-size:.875rem;color:var(--text-primary, #1f2937);max-width:350px;transition:all .15s}.config-field input[type=text]:focus,.config-field select:focus{outline:none;border-color:var(--accent-primary, #6366f1);box-shadow:0 0 0 3px #6366f11a}.analysis-summary .summary-stats{display:flex;gap:20px;flex-wrap:wrap}.analysis-summary .stat{text-align:center}.analysis-summary .stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--accent-primary, #6366f1)}.analysis-summary .stat-label{font-size:.75rem;color:var(--text-tertiary, #6b7280)}.preview-step{display:flex;flex-direction:column;gap:20px}.preview-stats{display:flex;gap:24px;justify-content:center;padding:16px;background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-lg, 10px)}.preview-stats .stat{text-align:center}.preview-stats .stat-value{display:block;font-size:2rem;font-weight:700;color:var(--accent-primary, #6366f1)}.preview-stats .stat-label{font-size:.8125rem;color:var(--text-tertiary, #6b7280)}.preview-tree{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-lg, 10px);padding:16px;max-height:350px;overflow-y:auto}.preview-node-header{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--ex-radius-md, 6px);cursor:default;transition:background var(--transition-fast, .15s)}.preview-node-header.has-children{cursor:pointer}.preview-node-header:hover{background:#6366f10d}.preview-node-header .expand-icon{width:20px;display:flex;align-items:center;justify-content:center;color:var(--text-muted, #9ca3af)}.preview-node-header>.material-icon{font-size:18px;color:var(--text-tertiary, #6b7280)}.preview-node-name{flex:1;font-size:.875rem;color:var(--text-primary, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-node-type{font-size:.6875rem;font-weight:500;padding:2px 8px;border-radius:var(--ex-radius-sm, 4px);text-transform:uppercase}.preview-node-type.type-container{background:#dbeafe;color:#1d4ed8}.preview-node-type.type-part{background:#fae8ff;color:#a21caf}.preview-node-type.type-chapter{background:#dcfce7;color:#15803d}.preview-node-type.type-section{background:#fef3c7;color:#b45309}.preview-node-type.type-subsection{background:#e0e7ff;color:#4338ca}.preview-node-type.type-body{background:var(--bg-hover, #f3f4f6);color:var(--text-tertiary, #6b7280)}.importing-step{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px}.progress-container{width:100%;max-width:400px}.progress-bar{height:8px;background:var(--bg-tertiary, #e5e7eb);border-radius:var(--ex-radius-sm, 4px);overflow:hidden;margin-bottom:16px}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:var(--ex-radius-sm, 4px);transition:width .3s ease}.progress-text{display:flex;justify-content:space-between;font-size:.875rem;color:var(--text-tertiary, #6b7280)}.progress-text span:first-child{font-weight:600;color:var(--accent-primary, #6366f1)}.complete-step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;gap:20px}.complete-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center}.complete-icon .material-icon{font-size:40px}.complete-icon.success{background:#dcfce7;color:#16a34a}.complete-icon.error{background:#fee2e2;color:var(--status-error, #dc2626)}.complete-step h3{font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.result-stats{display:flex;gap:32px}.result-stats .stat{text-align:center}.result-stats .stat-value{display:block;font-size:1.75rem;font-weight:700;color:var(--accent-primary, #6366f1)}.result-stats .stat-label{font-size:.8125rem;color:var(--text-tertiary, #6b7280)}.result-errors,.result-warnings{width:100%;max-width:500px;text-align:left;padding:16px;border-radius:var(--ex-radius-lg, 8px)}.result-errors{background:#fef2f2;border:1px solid #fecaca}.result-warnings{background:#fffbeb;border:1px solid #fde68a}.result-errors h4,.result-warnings h4{font-size:.875rem;font-weight:600;margin-bottom:8px}.result-errors h4{color:var(--status-error, #dc2626)}.result-warnings h4{color:#d97706}.result-errors ul,.result-warnings ul{list-style:disc;padding-left:20px;font-size:.8125rem}.result-errors li{color:#b91c1c}.result-warnings li{color:#b45309}.error-step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:60px 20px;gap:16px}.error-step .material-icon{font-size:64px;color:var(--status-error, #dc2626)}.error-step h3{font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.error-step p{color:var(--text-tertiary, #6b7280);max-width:400px}.step-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:20px}.analysis-mode highlight,.analysis-mode comment{background-color:transparent!important}.analysis-mode .comment-gutter{display:none}.writing-tools-panel{padding:0}.writing-tools-panel .tools-section{padding:0;margin-top:16px}.writing-tools-panel .section-title{font-size:13px;font-weight:600;color:var(--right-sidebar-text, #374151);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.writing-tool{margin-bottom:16px}.writing-tool-header{display:flex;align-items:flex-start;gap:12px}.writing-tool-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.writing-tool-name{font-size:14px;font-weight:500;color:var(--text-primary, #2d3748)}.writing-tool-description{font-size:12px;color:var(--text-tertiary, #6b7280)}.writing-analysis-filter-container,.characters-dialogue-filter-container{position:relative}.writing-analysis-filter-btn{display:flex;flex-direction:column;gap:2px;background:none;border:none;padding:4px 28px 4px 8px;margin:-4px -8px;border-radius:var(--ex-radius-md, 6px);cursor:pointer;text-align:left;width:calc(100% + 16px);transition:background-color .15s;position:relative}.writing-analysis-filter-btn:hover{background:var(--bg-hover, #f3f4f6)}.writing-analysis-filter-btn.open{background:var(--bg-active, #e5e7eb)}.writing-analysis-filter-btn .writing-tool-name{display:flex;align-items:center;gap:6px}.writing-analysis-filter-btn .filter-indicator{display:inline-flex;align-items:center}.writing-analysis-filter-btn .filter-indicator .material-icon{font-size:16px}.writing-analysis-filter-btn .filter-chevron{position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--text-muted, #9ca3af);display:flex;align-items:center}.writing-analysis-filter-btn .filter-chevron .material-icon{font-size:18px}.writing-analysis-filter-btn.filtered .writing-tool-description{color:var(--text-secondary, #4b5563);font-weight:500}.writing-analysis-filter-dropdown{position:absolute;top:100%;left:-8px;right:-8px;margin-top:4px;background:var(--bg-elevated, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));z-index:100;max-height:320px;overflow-y:auto;padding:4px}.filter-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:none;border:none;border-radius:var(--radius-md, 6px);cursor:pointer;text-align:left;font-size:13px;color:var(--text-primary, #374151);transition:background-color .15s}.filter-dropdown-item:hover{background:var(--bg-hover, #f3f4f6)}.filter-dropdown-item.selected{background:var(--accent-primary, #1d4ed8);background:color-mix(in srgb,var(--accent-primary, #1d4ed8) 15%,transparent);color:var(--accent-primary, #1d4ed8)}.filter-dropdown-item.empty{opacity:.5}.filter-item-icon{display:flex;align-items:center;width:20px;flex-shrink:0}.filter-item-icon .material-icon{font-size:18px}.filter-item-label{flex:1}.filter-item-count{font-size:11px;font-weight:600;padding:2px 6px;background:var(--bg-hover, #f3f4f6);border-radius:var(--ex-radius-lg, 10px);color:var(--text-tertiary, #6b7280);min-width:20px;text-align:center}.filter-dropdown-item.selected .filter-item-count{background:color-mix(in srgb,var(--accent-primary, #1d4ed8) 20%,transparent);color:var(--accent-primary, #1d4ed8)}.writing-tool-content{margin-top:12px;padding-left:1em}.analyzing-indicator{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-tertiary, #6b7280)}.analyzing-indicator .material-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}express-pos-tag{display:inline;border-radius:2px;padding:0 1px;transition:background-color var(--transition-fast, .15s ease);cursor:help}express-pos-tag:hover{filter:brightness(.95)}.express-pos-legend{display:flex;flex-direction:column;gap:6px}.pos-legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.pos-legend-swatch{width:16px;height:16px;border-radius:var(--ex-radius-sm, 3px);flex-shrink:0;border:1px solid var(--border-secondary, rgba(0, 0, 0, .1))}.pos-legend-label{color:var(--text-secondary, #4b5563);flex:1}.pos-legend-count{color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums;min-width:24px;text-align:right}.pos-legend-total{font-size:11px;color:var(--text-muted, #9ca3af);margin-top:4px;padding-top:4px;border-top:1px solid var(--border-color, #e5e7eb)}.sentence-xray-tool{border-top:1px solid var(--border-color, #e5e7eb);padding-top:16px;margin-top:8px}.sentence-xray-content{display:flex;flex-direction:column;gap:12px}.sentence-xray-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-secondary, #4b5563);cursor:pointer;transition:all .15s ease}.sentence-xray-btn:hover:not(:disabled){background:var(--bg-hover, #f3f4f6);border-color:var(--border-secondary, #d1d5db);color:var(--text-primary, #2d3748)}.sentence-xray-btn:disabled{opacity:.5;cursor:not-allowed}.sentence-xray-btn .material-icon{font-size:18px;color:var(--primary-color, #7C3AED)}.tool-badge{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:2px 5px;margin-left:6px;border-radius:var(--ex-radius-sm, 3px);background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;vertical-align:middle}.express-pos-tool .writing-tool-description{color:var(--text-tertiary, #6b7280)}.writing-analysis-panel{display:flex;flex-direction:column;gap:12px}.writing-grade-display{padding:12px;background:linear-gradient(135deg,var(--bg-hover, #f3f4f6) 0%,var(--bg-secondary, #f9fafb) 100%);border-radius:var(--radius-md, 6px);border:1px solid var(--border-color, #e5e7eb)}.writing-grade-header{display:flex;align-items:center;gap:12px}.writing-grade-badge{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;flex-shrink:0}.writing-grade-percentage{font-size:15px;font-weight:700;color:var(--text-inverse);text-shadow:var(--text-shadow-sm, 0 1px 2px rgba(0, 0, 0, .2))}.writing-grade-info{display:flex;flex-direction:column;gap:2px;min-width:0}.writing-grade-label{font-size:14px;font-weight:600;line-height:1.3}.writing-grade-details{font-size:11px;color:var(--text-muted, #9ca3af);line-height:1.3}.writing-analysis-summary{display:flex;align-items:baseline;gap:6px;padding:8px 12px;background-color:var(--bg-hover, #f3f4f6);border-radius:var(--radius-md, 6px)}.writing-analysis-summary .summary-count{font-size:20px;font-weight:600;color:var(--text-primary, #1f2937)}.writing-analysis-summary .summary-label{font-size:13px;color:var(--text-tertiary, #6b7280)}.writing-analysis-empty{display:flex;align-items:center;gap:8px;padding:12px;color:var(--status-success, #059669);font-size:13px}.writing-analysis-empty .material-icon{font-size:18px}.issue-categories{display:flex;flex-direction:column;gap:8px}.issue-category{border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.issue-category-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background-color:var(--bg-secondary, #fafafa);border:none;cursor:pointer;font-size:13px;text-align:left}.issue-category-header:hover{background-color:var(--bg-hover, #f3f4f6)}.issue-category-icon{display:flex;align-items:center}.issue-category-icon .material-icon{font-size:16px}.issue-category-label{flex:1;font-weight:500;color:var(--text-primary, #374151)}.issue-category-count{font-size:12px;color:var(--text-tertiary, #6b7280);background-color:var(--bg-hover, #e5e7eb);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px)}.issue-category-chevron{display:flex;align-items:center;color:var(--text-muted, #9ca3af)}.issue-category-chevron .material-icon{font-size:18px}.issue-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border-primary, #e5e7eb)}.issue-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;cursor:pointer;transition:background-color var(--transition-fast, .15s ease)}.issue-category:has(.issue-occurrence-count) .issue-item{flex-direction:row;align-items:center;justify-content:space-between}.issue-occurrence-count{font-size:12px;font-weight:500;color:var(--text-tertiary, #6b7280);background-color:var(--bg-hover, #f3f4f6);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px);flex-shrink:0}.issue-item:hover{background-color:var(--bg-hover, #f9fafb)}.issue-item.selected{background-color:color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent);border-left:3px solid var(--accent-primary, #3b82f6);padding-left:7px}.issue-item:not(:last-child){border-bottom:1px solid var(--border-secondary, #f3f4f6)}.issue-text{font-size:13px;color:var(--text-primary, #374151);font-style:italic}.issue-suggestion{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--status-success, #059669)}.issue-suggestion .material-icon{font-size:14px}writing-issue{display:inline;text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:2px;text-underline-offset:2px;cursor:help;transition:background-color var(--transition-fast, .15s ease)}writing-issue:hover{background-color:var(--bg-hover, rgba(0, 0, 0, .05))}writing-issue.selected{background-color:#3b82f626}writing-issue[data-issue-type=passive]{text-decoration-color:#ef4444}writing-issue[data-issue-type=simplify]{text-decoration-color:#f59e0b}writing-issue[data-issue-type=intensify]{text-decoration-color:#8b5cf6}writing-issue[data-issue-type=repetitive]{text-decoration-color:#8b5cf6}writing-issue[data-issue-type=repetitive].selected{background-color:#8b5cf633}writing-issue[data-issue-type=junkWord]{text-decoration-color:#6366f1}copyeditor-highlight{display:inline;text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:2px;text-underline-offset:2px;cursor:help;transition:background-color var(--transition-fast, .15s ease)}copyeditor-highlight:hover{background-color:var(--bg-hover, rgba(0, 0, 0, .05))}copyeditor-highlight.selected{background-color:#3b82f626}copyeditor-highlight[data-issue-type=passive]{text-decoration-color:#ef4444}copyeditor-highlight[data-issue-type=wordy]{text-decoration-color:#10b981}copyeditor-highlight[data-issue-type=weakVerb]{text-decoration-color:#f59e0b}copyeditor-highlight[data-issue-type=repetitive]{text-decoration-color:#8b5cf6}copyeditor-highlight[data-issue-type=repetitive].selected{background-color:#8b5cf633}copyeditor-highlight[data-issue-type=junkWord]{text-decoration-color:#6366f1}copyeditor-highlight[data-issue-type=filter]{text-decoration-color:#ec4899}copyeditor-highlight[data-issue-type=vagueWord]{text-decoration-color:#14b8a6}copyeditor-highlight[data-issue-type=cliche]{text-decoration-color:#f97316}copyeditor-highlight[data-issue-type=redundantPhrase]{text-decoration-color:#0ea5e9}copyeditor-highlight[data-issue-type=article]{text-decoration-color:#a855f7}copyeditor-highlight[data-issue-type=dialogueTag]{text-decoration-color:#dc2626}copyeditor-highlight[data-issue-type=telling]{text-decoration-color:#e11d48}copyeditor-highlight[data-issue-type=adverbOveruse]{text-decoration-color:#ea580c}copyeditor-highlight[data-issue-type=expletive]{text-decoration-color:#6366f1}.dark-theme copyeditor-highlight:hover{background-color:#ffffff1a}.dark-theme copyeditor-highlight.selected{background-color:#3b82f640}.dark-theme copyeditor-highlight[data-issue-type=repetitive].selected{background-color:#8b5cf64d}ignored copyeditor-highlight{opacity:.35}ignored copyeditor-highlight:hover{opacity:.5}.issue-suggestion-row{display:flex;flex-direction:column;gap:6px;margin-top:4px}.quick-fix-btn{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;color:var(--status-success, #059669);background-color:var(--status-success-bg, #ecfdf5);border:1px solid var(--status-success-border, #a7f3d0);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all var(--transition-fast, .15s ease)}.quick-fix-btn:hover{background-color:var(--ex-success-light, #d1fae5);border-color:var(--status-success, #6ee7b7)}.quick-fix-btn:active{background-color:var(--status-success-border, #a7f3d0)}pacing-sentence{display:inline;padding-bottom:5px;background-repeat:repeat-x;background-position:bottom left;-webkit-box-decoration-break:clone;box-decoration-break:clone}pacing-sentence[data-category=abrupt]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='4' viewBox='0 0 8 4'%3E%3Cpath d='M0 2 Q2 0 4 2 Q6 4 8 2' stroke='%23EF4444' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}pacing-sentence[data-category=quick]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='4' viewBox='0 0 12 4'%3E%3Cpath d='M0 2 Q3 0 6 2 Q9 4 12 2' stroke='%23F59E0B' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}pacing-sentence[data-category=average]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='4' viewBox='0 0 18 4'%3E%3Cpath d='M0 2 Q4.5 0 9 2 Q13.5 4 18 2' stroke='%2322C55E' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}pacing-sentence[data-category=slow]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='4' viewBox='0 0 26 4'%3E%3Cpath d='M0 2 Q6.5 0 13 2 Q19.5 4 26 2' stroke='%233B82F6' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}pacing-sentence[data-category=longWinded]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='4' viewBox='0 0 36 4'%3E%3Cpath d='M0 2 Q9 0 18 2 Q27 4 36 2' stroke='%238B5CF6' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}pacing-paragraph{display:inline;padding-left:8px;margin-left:-4px}.pacing-paragraph-block{position:relative}.pacing-paragraph-block:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--pacing-flow-color, #9CA3AF)}.pacing-legend{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.pacing-legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.pacing-legend-swatch{width:14px;height:14px;border-radius:var(--radius-sm, 3px);flex-shrink:0}.pacing-legend-wave{width:40px;height:10px;border-radius:var(--radius-sm, 2px);background-color:transparent;border:1px solid var(--border-primary, #e5e7eb)}.pacing-legend-label{flex:0 0 auto;font-weight:500;color:var(--text-primary, #374151)}.pacing-legend-range{flex:1;color:var(--text-muted, #9ca3af);font-size:11px}.pacing-legend-count{color:var(--text-tertiary, #6b7280);font-weight:500;min-width:24px;text-align:right}.pacing-mode-toggle{display:flex;gap:0;margin-bottom:12px;border-radius:var(--radius-md, 6px);overflow:hidden;border:1px solid var(--border-primary, #e5e7eb)}.pacing-mode-btn{flex:1;padding:6px 12px;border:none;background:var(--bg-primary, #ffffff);cursor:pointer;font-size:12px;font-weight:500;color:var(--text-tertiary, #6b7280);transition:all var(--transition-fast, .15s ease)}.pacing-mode-btn:first-child{border-right:1px solid var(--border-primary, #e5e7eb)}.pacing-mode-btn:hover{background:var(--bg-hover, #f9fafb)}.pacing-mode-btn.active{background:var(--accent-primary, #3b82f6);color:var(--text-inverse, #ffffff)}.pacing-mode-btn.active:hover{background:var(--accent-primary-hover, #2563eb)}.pacing-analysis-panel{display:flex;flex-direction:column;gap:12px}.pacing-analysis-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--text-muted, #9ca3af);font-size:13px}.pacing-analysis-empty .material-icon{font-size:20px}.pacing-document-summary{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-md, 6px);border:1px solid var(--border-primary, #e5e7eb)}.pacing-stat{display:flex;justify-content:space-between;align-items:flex-start;font-size:12px}.pacing-stat-label{color:var(--text-tertiary, #6b7280)}.pacing-stat-value{font-weight:500;color:var(--text-primary, #374151);text-align:right;text-wrap-style:balance}.pacing-stat-value.pacing-breakdown{font-size:11px;font-weight:400;max-width:180px;line-height:1.4}.flow-rate-indicator{margin-top:4px}.flow-rate-bar{width:100%;height:6px;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-sm, 3px);overflow:hidden}.flow-rate-fill{height:100%;border-radius:var(--ex-radius-sm, 3px);transition:width .3s ease,background-color .3s ease}.pacing-paragraph-sections{display:flex;flex-direction:column;gap:8px}.pacing-section-title{font-size:11px;font-weight:600;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.pacing-paragraph-section{border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.pacing-paragraph-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:none;cursor:pointer;font-size:12px;text-align:left;transition:background-color var(--transition-fast, .15s ease)}.pacing-paragraph-header:hover{background:var(--bg-hover, #f3f4f6)}.pacing-paragraph-number{font-weight:600;color:var(--text-tertiary, #6b7280);min-width:24px}.pacing-paragraph-sentences{flex:1;color:var(--text-primary, #374151)}.pacing-paragraph-flow{font-weight:500;font-size:11px}.pacing-paragraph-chevron{color:var(--text-muted, #9ca3af);display:flex;align-items:center}.pacing-paragraph-content{padding:10px;border-top:1px solid var(--border-primary, #e5e7eb);display:flex;flex-direction:column;gap:6px}.pacing-paragraphs-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.pacing-paragraph-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:12px}.pacing-paragraph-item .pacing-paragraph-number{font-weight:600;color:var(--text-tertiary, #6b7280)}.pacing-paragraph-info{flex:1;color:var(--text-primary, #374151);text-wrap-style:balance}.pacing-paragraph-flow-badge{padding:2px 8px;border-radius:var(--radius-sm, 4px);font-size:10px;font-weight:600;color:var(--text-inverse, #ffffff)}.pacing-indepth-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:var(--accent-gradient, linear-gradient(135deg, #3B82F6 0%, #2563EB 100%));color:var(--text-inverse, #ffffff);border:none;border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast, .2s ease)}.pacing-indepth-btn:hover{background:var(--accent-primary-hover, linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%));box-shadow:var(--shadow-sm, 0 2px 8px rgba(59, 130, 246, .3))}.pacing-indepth-btn .material-icon{font-size:18px}.pacing-trajectory-display{padding:12px;background:linear-gradient(135deg,var(--color-surface-secondary) 0%,var(--color-surface) 100%);border:1px solid var(--color-border);border-radius:var(--ex-radius-lg, 8px)}.trajectory-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.trajectory-header .material-icon{font-size:20px}.trajectory-label{font-size:14px;font-weight:600;flex:1}.trajectory-score{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.trajectory-description{font-size:12px;color:var(--color-text-tertiary);margin:0}[data-color-scheme=dark] .pacing-trajectory-display{background:linear-gradient(135deg,#3b82f60d,#3b82f605)}.pacing-indepth-modal .ex-modal-body{padding:0}.pacing-indepth-content{display:flex;flex-direction:column;height:100%;max-height:70vh}.indepth-summary{padding:16px 20px;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.indepth-summary h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #374151)}.indepth-summary-stats{display:flex;gap:24px;flex-wrap:wrap}.indepth-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.indepth-stat-value{font-size:24px;font-weight:600;color:var(--accent-primary, #3B82F6)}.indepth-stat-label{font-size:11px;color:var(--text-tertiary, #6b7280);text-transform:uppercase;letter-spacing:.3px}.indepth-summary-with-trajectory{display:flex;flex-direction:column;gap:0;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.indepth-summary-with-trajectory .indepth-summary{border-bottom:none}.indepth-trajectory{display:flex;gap:20px;padding:16px 20px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--bg-primary, #ffffff)}.trajectory-info{flex:1;min-width:200px}.trajectory-info h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #374151)}.trajectory-summary{display:flex;align-items:center;gap:12px;margin-bottom:8px}.trajectory-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--ex-radius-full, 20px);color:var(--text-inverse, #ffffff);font-size:13px;font-weight:600}.trajectory-badge .material-icon{font-size:18px}.trajectory-score-display{display:flex;align-items:baseline}.trajectory-score-display .score-value{font-size:28px;font-weight:700;color:var(--text-primary, #374151)}.trajectory-score-display .score-max{font-size:14px;color:var(--text-muted, #9ca3af);margin-left:2px}.trajectory-explanation{font-size:12px;color:var(--text-tertiary, #6b7280);margin:0 0 12px;line-height:1.5}.trajectory-zones{display:flex;flex-direction:column;gap:6px}.trajectory-zones .zone-label{font-size:11px;font-weight:600;color:var(--text-tertiary, #6b7280);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.zone-bars{display:flex;flex-direction:column;gap:6px}.zone-bar{display:flex;align-items:center;gap:8px}.zone-name{font-size:11px;color:var(--text-tertiary, #6b7280);width:60px;flex-shrink:0}.zone-fill-container{flex:1;height:8px;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-sm, 4px);overflow:hidden;max-width:120px}.zone-fill{height:100%;background:var(--accent-gradient, linear-gradient(90deg, #3B82F6 0%, #60A5FA 100%));border-radius:var(--radius-sm, 4px);transition:width .3s ease}.zone-percent{font-size:11px;font-weight:500;color:var(--text-primary, #374151);width:32px;text-align:right}.trajectory-graph-container{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.trajectory-graph{display:block}.trajectory-graph-legend{display:flex;justify-content:center;gap:16px}.trajectory-graph-legend .legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-tertiary, #6b7280)}.trajectory-graph-legend .legend-line{display:inline-block;width:20px;height:0;border-top:2px solid var(--accent-primary, #3B82F6)}.trajectory-graph-legend .legend-line.trend{border-style:dashed}.trajectory-graph-legend .legend-line.data{border-style:solid;opacity:.6}[data-color-scheme=dark] .indepth-summary-with-trajectory{background:var(--color-surface-secondary)}[data-color-scheme=dark] .indepth-trajectory{background:var(--color-surface);border-top-color:var(--color-border)}[data-color-scheme=dark] .trajectory-info h4,[data-color-scheme=dark] .trajectory-score-display .score-value{color:var(--color-text-primary)}[data-color-scheme=dark] .zone-fill-container{background:var(--color-border)}[data-color-scheme=dark] .zone-percent,[data-color-scheme=dark] .zone-name{color:var(--color-text-secondary)}.indepth-tabs{display:flex;border-bottom:1px solid var(--border-primary, #e5e7eb);padding:0 20px;background:var(--bg-primary, #ffffff)}.indepth-tab{padding:12px 16px;border:none;background:none;font-size:13px;font-weight:500;color:var(--text-tertiary, #6b7280);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-fast, .15s ease)}.indepth-tab:hover{color:var(--text-primary, #374151)}.indepth-tab.active{color:var(--accent-primary, #3B82F6);border-bottom-color:var(--accent-primary, #3B82F6)}.indepth-main{display:flex;flex:1;overflow:hidden;min-height:350px}.indepth-genre-list{width:320px;border-right:1px solid var(--border-primary, #e5e7eb);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.indepth-genre-intro{font-size:12px;color:var(--text-tertiary, #6b7280);margin:0 0 8px;line-height:1.5}.indepth-category{margin-bottom:16px}.indepth-category-title{font-size:11px;font-weight:600;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.genre-comparison-row{width:100%;display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);cursor:pointer;text-align:left;transition:all var(--transition-fast, .15s ease)}.genre-comparison-row:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--border-secondary, #d1d5db)}.genre-comparison-row.selected{background:color-mix(in srgb,var(--accent-primary, #3B82F6) 10%,transparent);border-color:var(--accent-primary, #3B82F6)}.genre-row-main{display:flex;justify-content:space-between;align-items:center}.genre-name{font-size:13px;font-weight:500;color:var(--text-primary, #374151)}.genre-fit-badge{padding:2px 8px;border-radius:var(--ex-radius-lg, 10px);font-size:10px;font-weight:600;color:var(--text-inverse, #ffffff);text-transform:capitalize}.genre-row-metrics{display:flex;flex-direction:column;gap:2px}.genre-metric{font-size:11px;color:var(--text-tertiary, #6b7280)}.genre-diff{color:var(--text-muted, #9ca3af);margin-left:4px}.indepth-genre-detail{flex:1;overflow-y:auto;padding:20px;background:var(--bg-primary, #ffffff)}.indepth-no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted, #9ca3af);gap:12px}.indepth-no-selection .material-icon{font-size:48px;opacity:.5}.indepth-no-selection p{margin:0;font-size:14px}.genre-detail-panel{display:flex;flex-direction:column;gap:20px}.genre-detail-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.genre-detail-description{margin:0;font-size:14px;color:var(--text-tertiary, #6b7280);line-height:1.5}.genre-detail-stats{display:flex;gap:24px}.genre-stat-group{flex:1;padding:16px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-lg, 8px);border:1px solid var(--border-primary, #e5e7eb)}.genre-stat-group h5{margin:0 0 12px;font-size:12px;font-weight:600;color:var(--text-primary, #374151);text-transform:uppercase;letter-spacing:.3px}.genre-stat-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px}.genre-stat-row .genre-stat-label{color:var(--text-tertiary, #6b7280)}.genre-stat-row .genre-stat-value{font-weight:500;color:var(--text-primary, #374151)}.genre-alignment{display:flex;align-items:center;gap:6px;margin-top:12px;padding:8px 10px;border-radius:var(--radius-md, 6px);font-size:12px;font-weight:500}.genre-alignment .material-icon{font-size:18px}.genre-alignment.typical{background:var(--status-success-bg, #DCFCE7);color:var(--status-success, #166534)}.genre-alignment.shorter{background:var(--status-warning-bg, #FEF3C7);color:var(--status-warning, #92400E)}.genre-alignment.longer{background:var(--status-error-bg, #FEE2E2);color:var(--status-error, #991B1B)}.genre-characteristics{padding:16px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-lg, 8px);border:1px solid var(--border-primary, #e5e7eb)}.genre-characteristics h5{margin:0 0 12px;font-size:12px;font-weight:600;color:var(--text-primary, #374151);text-transform:uppercase;letter-spacing:.3px}.genre-characteristics ul{margin:0;padding:0 0 0 20px;list-style-type:disc}.genre-characteristics li{font-size:13px;color:var(--text-secondary, #4b5563);margin-bottom:6px;line-height:1.4}.genre-characteristics li:last-child{margin-bottom:0}.genre-reading-level{display:flex;justify-content:space-between;padding:12px 16px;background:color-mix(in srgb,var(--status-info, #3B82F6) 10%,transparent);border-radius:var(--radius-lg, 8px);border:1px solid var(--status-info-border, #BFDBFE)}.genre-reading-level .genre-stat-label{font-size:13px;color:var(--status-info, #1E40AF);font-weight:500}.genre-reading-level .genre-stat-value{font-size:13px;color:var(--status-info, #1E40AF);font-weight:600}@media(max-width:768px){.indepth-main{flex-direction:column}.indepth-genre-list{width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-primary, #e5e7eb)}.indepth-genre-detail{min-height:300px}.genre-detail-stats{flex-direction:column;gap:16px}}.tension-analysis-panel{display:flex;flex-direction:column;gap:12px}.tension-analysis-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--text-muted, #9ca3af);font-size:13px}.tension-analysis-empty .material-icon{font-size:20px}.tension-trajectory-display{padding:12px;background:linear-gradient(135deg,var(--color-surface-secondary) 0%,var(--color-surface) 100%);border:1px solid var(--color-border);border-radius:var(--ex-radius-lg, 8px)}[data-color-scheme=dark] .tension-trajectory-display{background:linear-gradient(135deg,#ef44440d,#ef444405)}.tension-document-summary{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-md, 6px);border:1px solid var(--border-primary, #e5e7eb)}[data-color-scheme=dark] .tension-document-summary{background:var(--color-surface-secondary);border-color:var(--color-border)}.tension-stat{display:flex;justify-content:space-between;align-items:flex-start;font-size:12px}.tension-stat-label{color:var(--text-tertiary, #6b7280)}[data-color-scheme=dark] .tension-stat-label{color:var(--color-text-secondary)}.tension-stat-value{font-weight:500;color:var(--text-primary, #374151);text-align:right}[data-color-scheme=dark] .tension-stat-value{color:var(--color-text-primary)}.tension-stat-value.tension-breakdown{font-size:11px;font-weight:400;max-width:180px;line-height:1.4}.tension-level-bar-container{padding:8px 10px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-md, 6px);border:1px solid var(--border-primary, #e5e7eb)}[data-color-scheme=dark] .tension-level-bar-container{background:var(--color-surface-secondary);border-color:var(--color-border)}.tension-level-bar{width:100%;height:8px;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-sm, 4px);overflow:hidden;margin-bottom:6px}[data-color-scheme=dark] .tension-level-bar{background:var(--color-border)}.tension-level-fill{height:100%;border-radius:var(--ex-radius-sm, 4px);transition:width .3s ease,background-color .3s ease}.tension-level-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted, #9ca3af)}[data-color-scheme=dark] .tension-level-labels{color:var(--color-text-tertiary)}.tension-legend{display:flex;flex-direction:column;gap:8px}.tension-section-title{font-size:11px;font-weight:600;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.tension-legend-items{display:flex;flex-wrap:wrap;gap:6px}.tension-legend-item{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-hover, #f3f4f6);border-radius:var(--radius-sm, 4px);font-size:11px}.tension-legend-icon .material-icon{font-size:14px}.tension-legend-label{color:var(--text-primary, #374151)}.tension-legend-count{font-weight:600;color:var(--text-tertiary, #6b7280);margin-left:2px}.tension-paragraph-sections{display:flex;flex-direction:column;gap:8px}.tension-paragraph-section{border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.tension-paragraph-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:none;cursor:pointer;font-size:12px;text-align:left;transition:background-color var(--transition-fast, .15s ease)}.tension-paragraph-header:hover{background:var(--bg-hover, #f3f4f6)}.tension-paragraph-number{font-weight:600;color:var(--text-tertiary, #6b7280);min-width:24px}.tension-paragraph-sentences{flex:1;color:var(--text-primary, #374151)}.tension-paragraph-level{font-weight:500;font-size:11px}.tension-paragraph-chevron{color:var(--text-muted, #9ca3af);display:flex;align-items:center}.tension-paragraph-content{padding:10px;border-top:1px solid var(--border-primary, #e5e7eb);display:flex;flex-direction:column;gap:6px}.tension-zone-analysis,.tension-zones{display:flex;flex-direction:column;gap:8px}.tension-zone{display:flex;align-items:center;gap:8px}.zone-label{font-size:11px;color:var(--text-tertiary, #6b7280);min-width:60px}.zone-bar-container{flex:1;height:12px;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.zone-bar{height:100%;border-radius:var(--radius-md, 6px);transition:width .3s ease,background-color .3s ease}.zone-value{font-size:11px;font-weight:600;color:var(--text-primary, #374151);min-width:28px;text-align:right}.story-dynamics-filter-container{position:relative}sense-word{position:relative;cursor:pointer;border-radius:2px;transition:background-color var(--transition-fast, .15s ease)}sense-word[data-sense=sight]{text-decoration-color:#3b82f6;background-color:#3b82f61a}sense-word[data-sense=smell]{text-decoration-color:#10b981;background-color:#10b9811a}sense-word[data-sense=hearing]{text-decoration-color:#f59e0b;background-color:#f59e0b1a}sense-word[data-sense=taste]{text-decoration-color:#ec4899;background-color:#ec48991a}sense-word[data-sense=touch]{text-decoration-color:#8b5cf6;background-color:#8b5cf61a}sense-word[data-specificity="1"]{text-decoration:underline;text-decoration-style:dashed;text-decoration-thickness:2px;text-underline-offset:3px}sense-word[data-specificity="2"]{text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:2px;text-underline-offset:3px}sense-word[data-specificity="3"]{text-decoration:underline;text-decoration-style:solid;text-decoration-thickness:2px;text-underline-offset:3px}sense-word:hover{filter:brightness(.95)}sense-word[data-sense=sight]:hover,sense-word[data-sense=sight].selected{background-color:#3b82f640}sense-word[data-sense=smell]:hover,sense-word[data-sense=smell].selected{background-color:#10b98140}sense-word[data-sense=hearing]:hover,sense-word[data-sense=hearing].selected{background-color:#f59e0b40}sense-word[data-sense=taste]:hover,sense-word[data-sense=taste].selected{background-color:#ec489940}sense-word[data-sense=touch]:hover,sense-word[data-sense=touch].selected{background-color:#8b5cf640}.senses-analysis-panel{display:flex;flex-direction:column;gap:12px}.senses-analysis-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--text-muted, #9ca3af);font-size:13px}.senses-analysis-empty .material-icon{font-size:20px}.senses-legend{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-md, 6px);border:1px solid var(--border-primary, #e5e7eb)}.senses-legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.senses-legend-swatch{width:14px;height:14px;border-radius:var(--ex-radius-sm, 3px);flex-shrink:0}.senses-legend-icon{display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--text-tertiary, #6b7280)}.senses-legend-label{flex:1;font-weight:500;color:var(--text-primary, #374151)}.senses-legend-count{color:var(--text-tertiary, #6b7280);font-weight:500;min-width:24px;text-align:right}.senses-summary{display:flex;justify-content:space-between;padding:8px 10px;background:color-mix(in srgb,var(--status-info, #0ea5e9) 10%,transparent);border-radius:var(--radius-md, 6px);border:1px solid var(--status-info-border, #bae6fd);font-size:12px}.senses-summary-stat{display:flex;align-items:center;gap:4px}.senses-summary-label{color:var(--status-info, #0369a1)}.senses-summary-value{font-weight:600;color:var(--status-info, #0c4a6e)}.sense-categories{display:flex;flex-direction:column;gap:8px}.sense-category{border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.sense-category-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:none;cursor:pointer;font-size:12px;text-align:left;transition:background-color var(--transition-fast, .15s ease)}.sense-category-header:hover{background:var(--bg-hover, #f3f4f6)}.sense-category-swatch{width:12px;height:12px;border-radius:2px;flex-shrink:0}.sense-category-icon{display:flex;align-items:center;font-size:20px}.sense-category-label{flex:1;font-weight:500;color:var(--text-primary, #374151)}.sense-category-count{color:var(--text-tertiary, #6b7280);font-weight:500;font-size:11px;padding:1px 6px;background:var(--bg-hover, #e5e7eb);border-radius:var(--ex-radius-lg, 10px)}.sense-category-chevron{color:var(--text-muted, #9ca3af);display:flex;align-items:center;transition:transform .2s ease}.sense-category.expanded .sense-category-chevron{transform:rotate(180deg)}.sense-list{padding:8px;border-top:1px solid var(--border-primary, #e5e7eb);display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.sense-item{display:flex;flex-direction:column;gap:6px;padding:6px 8px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all var(--transition-fast, .15s ease)}.sense-item:hover{background:var(--bg-hover, #f9fafb);border-color:var(--border-secondary, #d1d5db)}.sense-item.selected{border-color:var(--accent-primary, #3b82f6);background:color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.sense-item-main{display:flex;align-items:center;gap:8px}.sense-word-text{flex:1;font-size:12px;font-weight:500;color:var(--text-primary, #374151)}.sense-item-info{display:flex;flex-direction:column;gap:2px}.sense-item-describes{font-size:10px;color:var(--text-muted, #9ca3af);text-transform:capitalize}.sense-specificity-badge{padding:1px 6px;border-radius:var(--ex-radius-sm, 3px);font-size:10px;font-weight:600;text-transform:uppercase}.sense-specificity-badge.specificity-1{background:var(--status-warning-bg, #fef3c7);color:var(--status-warning, #92400e)}.sense-specificity-badge.specificity-2{background:var(--status-info-bg, #e0e7ff);color:var(--status-info, #3730a3)}.sense-specificity-badge.specificity-3{background:var(--status-success-bg, #dcfce7);color:var(--status-success, #166534)}.quick-fix-buttons{display:flex;flex-wrap:wrap;gap:4px}.quick-fix-btn{padding:2px 8px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--ex-radius-sm, 3px);font-size:11px;color:#0369a1;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.quick-fix-btn:hover{background:#e0f2fe;border-color:#7dd3fc;color:#0c4a6e}.senses-specificity-legend{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:var(--bg-primary, #fafafa);border-radius:var(--ex-radius-sm, 4px);border:1px solid var(--border-primary, #e5e7eb);font-size:11px}.senses-specificity-legend-title{font-weight:600;color:var(--text-tertiary, #6b7280);margin-bottom:2px}.senses-specificity-legend-item{display:flex;align-items:center;gap:8px;color:var(--text-tertiary, #6b7280)}.senses-specificity-line{width:24px;height:0;border-bottom:2px}.senses-specificity-line.dashed{border-bottom-style:dashed;border-bottom-color:#6b7280}.senses-specificity-line.dotted{border-bottom-style:dotted;border-bottom-color:#6b7280}.senses-specificity-line.solid{border-bottom-style:solid;border-bottom-color:#6b7280}.dark-theme sense-word[data-sense=sight]{background-color:#3b82f633}.dark-theme sense-word[data-sense=smell]{background-color:#10b98133}.dark-theme sense-word[data-sense=hearing]{background-color:#f59e0b33}.dark-theme sense-word[data-sense=taste]{background-color:#ec489933}.dark-theme sense-word[data-sense=touch]{background-color:#8b5cf633}.dark-theme sense-word[data-sense=sight]:hover,.dark-theme sense-word[data-sense=sight].selected{background-color:#3b82f659}.dark-theme sense-word[data-sense=smell]:hover,.dark-theme sense-word[data-sense=smell].selected{background-color:#10b98159}.dark-theme sense-word[data-sense=hearing]:hover,.dark-theme sense-word[data-sense=hearing].selected{background-color:#f59e0b59}.dark-theme sense-word[data-sense=taste]:hover,.dark-theme sense-word[data-sense=taste].selected{background-color:#ec489959}.dark-theme sense-word[data-sense=touch]:hover,.dark-theme sense-word[data-sense=touch].selected{background-color:#8b5cf659}.dark-theme .senses-legend{background:#1f2937;border-color:#374151}.dark-theme .senses-legend-label{color:var(--text-primary, #e5e7eb)}.dark-theme .senses-legend-count{color:var(--text-muted, #9ca3af)}.dark-theme .senses-summary{background:#1e3a5f;border-color:#2563eb}.dark-theme .senses-summary-label{color:#93c5fd}.dark-theme .senses-summary-value{color:#bfdbfe}.dark-theme .sense-category{border-color:#374151}.dark-theme .sense-category-header{background:#1f2937}.dark-theme .sense-category-header:hover{background:#374151}.dark-theme .sense-category-label{color:var(--text-primary, #e5e7eb)}.dark-theme .sense-category-count{background:#374151;color:var(--text-muted, #9ca3af)}.dark-theme .sense-list{border-color:#374151}.dark-theme .sense-item{background:#111827;border-color:#374151}.dark-theme .sense-item:hover{background:#1f2937;border-color:#4b5563}.dark-theme .sense-item.selected{border-color:var(--accent-primary, #3b82f6);background:#1e3a5f}.dark-theme .sense-word-text{color:var(--text-primary, #e5e7eb)}.dark-theme .sense-item-describes{color:var(--text-tertiary, #6b7280)}.dark-theme .sense-specificity-badge.specificity-1{background:#78350f;color:#fcd34d}.dark-theme .sense-specificity-badge.specificity-2{background:#312e81;color:#a5b4fc}.dark-theme .sense-specificity-badge.specificity-3{background:#14532d;color:#86efac}.dark-theme .quick-fix-btn{background:#1e3a5f;border-color:#2563eb;color:#93c5fd}.dark-theme .quick-fix-btn:hover{background:#1e40af;border-color:var(--accent-primary, #3b82f6);color:#bfdbfe}.dark-theme .senses-specificity-legend{background:#1f2937;border-color:#374151}.dark-theme .senses-specificity-legend-title,.dark-theme .senses-specificity-legend-item{color:var(--text-muted, #9ca3af)}.dark-theme .senses-specificity-line{border-bottom-color:#9ca3af}.dialogue-balance-panel{display:flex;flex-direction:column;gap:16px}.dialogue-balance-empty{display:flex;align-items:center;gap:8px;color:var(--text-tertiary, #6b7280);font-size:13px;padding:12px 0}.dialogue-balance-empty .material-icon{font-size:20px}.dialogue-indepth-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-primary, #374151);cursor:pointer;transition:all var(--transition-fast, .15s ease)}.dialogue-indepth-btn:hover{background:var(--bg-active, #e5e7eb);border-color:var(--border-secondary, #d1d5db)}.dialogue-indepth-btn .material-icon{font-size:18px}.dialogue-section-title{font-size:12px;font-weight:600;color:var(--text-tertiary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0;display:flex;align-items:center;gap:6px}.dialogue-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 0;background:none;border:none;cursor:pointer;text-align:left}.dialogue-section-header:hover .dialogue-section-title{color:var(--text-primary, #374151)}.dialogue-section-header .material-icon{color:var(--text-muted, #9ca3af);font-size:20px}.dialogue-ratio-section{display:flex;flex-direction:column;gap:8px}.dialogue-ratio-bar{display:flex;height:24px;border-radius:var(--radius-md, 6px);overflow:hidden;background:var(--bg-hover, #f3f4f6)}.dialogue-ratio-dialogue{background:var(--accent-gradient, linear-gradient(135deg, #3b82f6 0%, #2563eb 100%));display:flex;align-items:center;justify-content:center;min-width:0;transition:width .3s ease}.dialogue-ratio-narrative{background:linear-gradient(135deg,var(--text-tertiary, #6b7280) 0%,var(--text-secondary, #4b5563) 100%);display:flex;align-items:center;justify-content:center;min-width:0;transition:width .3s ease}.ratio-label{font-size:11px;font-weight:600;color:var(--text-inverse);text-shadow:var(--text-shadow-sm, 0 1px 2px rgba(0, 0, 0, .2))}.dialogue-ratio-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px}.legend-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary, #4b5563)}.legend-swatch{width:12px;height:12px;border-radius:var(--radius-sm, 3px)}.legend-swatch.dialogue{background:var(--accent-gradient, linear-gradient(135deg, #3b82f6 0%, #2563eb 100%))}.legend-swatch.narrative{background:linear-gradient(135deg,var(--text-tertiary, #6b7280) 0%,var(--text-secondary, #4b5563) 100%)}.dialogue-genre-match{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-md, 6px);font-size:13px}.genre-match-label{color:var(--text-tertiary, #6b7280);font-size:11px}.genre-match-name{display:flex;align-items:center;gap:4px;font-weight:500;color:var(--text-primary, #374151)}.genre-match-name.in-range{color:var(--status-success, #059669)}.genre-match-name.in-range .material-icon{color:var(--status-success, #10b981);font-size:16px}.genre-match-name.out-of-range .material-icon{color:var(--text-muted, #9ca3af);font-size:16px}.dialogue-characters-section{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:8px}.dialogue-characters-list{display:flex;flex-direction:column;gap:8px}.character-row{display:flex;flex-direction:column;gap:4px;padding:8px;margin:0 -8px;background:transparent;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;text-align:left;width:calc(100% + 16px);transition:background-color var(--transition-fast, .15s ease)}.character-row:hover{background:var(--bg-hover, #f3f4f6)}.character-row.selected{background:color-mix(in srgb,var(--accent-primary, #3b82f6) 15%,transparent)}.character-row-top{display:flex;align-items:center;gap:8px}.character-name{font-size:13px;font-weight:500;color:var(--text-primary, #374151);white-space:nowrap}.character-row.unattributed .character-name{font-style:italic;color:var(--text-tertiary, #6b7280)}.character-bar-container{flex:1;height:6px;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-sm, 3px);overflow:hidden;min-width:40px}.character-bar{height:100%;background:var(--accent-gradient, linear-gradient(90deg, #3b82f6 0%, #60a5fa 100%));border-radius:var(--radius-sm, 3px);transition:width .3s ease}.character-bar.unattributed{background:linear-gradient(90deg,var(--text-muted, #9ca3af) 0%,var(--border-secondary, #d1d5db) 100%)}.character-stats{font-size:11px;color:var(--text-tertiary, #6b7280)}.dialogue-no-cast-speaking{display:flex;align-items:center;gap:6px;padding:12px 8px;color:var(--text-tertiary, #6b7280);font-size:12px;font-style:italic}.dialogue-no-cast-speaking .material-icon{font-size:16px;color:var(--text-muted, #9ca3af)}.dialogue-other-speakers-header{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-primary, #e5e7eb)}.dialogue-other-speakers-header .dialogue-section-title{font-size:12px;color:var(--text-tertiary, #6b7280)}.other-speakers-count{font-weight:400;color:var(--text-muted, #9ca3af);margin-left:4px}.dialogue-other-speakers-list{opacity:.85}.dialogue-other-speakers-list .character-name{font-size:12px;color:var(--text-tertiary, #6b7280)}.dialogue-other-speakers-list .character-bar{background:linear-gradient(90deg,var(--text-muted, #9ca3af) 0%,var(--border-secondary, #d1d5db) 100%)}.dialogue-override-hint{font-size:11px;color:var(--text-muted, #9ca3af);font-style:italic;margin:8px 0 0;padding-top:8px;border-top:1px solid var(--border-secondary, #f3f4f6)}.dialogue-distribution-section{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:8px}.dialogue-distribution-chart{padding:8px 0}.distribution-bars{display:flex;gap:3px;height:60px;align-items:flex-end}.distribution-bar{flex:1;min-width:0;background:var(--bg-hover, #e5e7eb);border-radius:var(--radius-sm, 3px) var(--radius-sm, 3px) 0 0;position:relative;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;transition:background var(--transition-fast, .15s ease)}.distribution-bar.no-dialogue{background:var(--bg-secondary, #f3f4f6)}.distribution-bar:hover{background:var(--border-secondary, #d1d5db)}.distribution-fill{background:var(--accent-gradient, linear-gradient(180deg, #3b82f6 0%, #2563eb 100%));border-radius:var(--radius-sm, 3px) var(--radius-sm, 3px) 0 0;min-height:2px;transition:height .3s ease}.distribution-bar.no-dialogue .distribution-fill{min-height:0}.distribution-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted, #9ca3af);margin-top:4px}.dialogue-gaps-section{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:8px}.gap-count{font-weight:400;color:var(--text-muted, #9ca3af);margin-left:4px}.dialogue-gaps-list{display:flex;flex-direction:column;gap:6px}.gap-row{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:var(--status-warning-bg, #fef3c7);border-radius:var(--radius-sm, 4px);font-size:12px}.gap-location{font-weight:500;color:var(--status-warning, #92400e)}.gap-stats{color:var(--status-warning, #b45309);font-size:11px}.gap-summary{display:flex;align-items:center;gap:6px;padding:8px;background:var(--bg-hover, #f3f4f6);border-radius:var(--radius-sm, 4px);font-size:12px;color:var(--text-tertiary, #6b7280);margin-top:4px}.gap-summary .material-icon{font-size:16px;color:var(--text-muted, #9ca3af)}.dialogue-no-gaps{display:flex;align-items:center;gap:6px;padding:8px;background:var(--status-success-bg, #d1fae5);border-radius:var(--radius-sm, 4px);font-size:12px;color:var(--status-success, #065f46)}.dialogue-no-gaps .material-icon{font-size:16px;color:var(--status-success, #10b981)}.dialogue-genre-modal{max-height:70vh;overflow-y:auto}.current-ratio-summary{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;background:var(--bg-secondary, #f3f4f6);border-radius:var(--radius-lg, 8px);margin-bottom:20px}.your-ratio{font-size:14px;color:var(--text-secondary, #6b7280)}.ratio-value{font-size:24px;font-weight:700;color:var(--accent-primary, #3b82f6)}.genre-categories{display:flex;flex-direction:column;gap:24px}.genre-category{display:flex;flex-direction:column;gap:8px}.category-title{font-size:13px;font-weight:600;color:var(--text-primary, #374151);margin:0;padding-bottom:8px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.genre-list{display:flex;flex-direction:column;gap:6px}.genre-row{display:grid;grid-template-columns:140px 1fr 70px 40px;gap:12px;align-items:center;padding:8px 12px;background:var(--bg-tertiary, #f9fafb);border-radius:var(--radius-md, 6px);font-size:13px}.genre-row.in-range{background:var(--status-success-bg, #ecfdf5)}.genre-name{font-weight:500;color:var(--text-primary, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.genre-benchmark-bar{height:16px;position:relative}.benchmark-range{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg-tertiary, #e5e7eb);border-radius:var(--radius-lg, 8px);overflow:visible}.range-fill{position:absolute;top:2px;bottom:2px;background:var(--status-success-bg, #d1fae5);border-radius:var(--radius-md, 6px)}.typical-marker{position:absolute;top:0;bottom:0;width:2px;background:var(--status-success, #10b981);transform:translate(-50%)}.your-marker{position:absolute;top:-2px;bottom:-2px;width:4px;background:var(--accent-primary, #3b82f6);border-radius:2px;transform:translate(-50%);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .2))}.genre-typical{font-size:12px;color:var(--text-primary, #374151);text-align:right}.genre-range{display:block;font-size:10px;color:var(--text-muted, #9ca3af)}.match-icon{color:var(--status-success, #10b981);font-size:18px}.diff-indicator{font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280)}.cast-manager-panel{display:flex;flex-direction:column;gap:16px}.cast-back-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s ease);margin-bottom:8px}.cast-back-btn:hover{background:var(--bg-tertiary, #e5e7eb);border-color:var(--border-secondary, #d1d5db)}.cast-back-btn .material-icon{font-size:18px}.cast-section{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:8px}.cast-section:first-child{border-top:none;padding-top:0}.cast-section-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 0;background:none;border:none;cursor:pointer;text-align:left}.cast-section-header:hover .cast-section-title{color:var(--text-primary, #374151)}.cast-section-title{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0;flex:1}.cast-section-count{font-size:11px;color:var(--text-muted, #9ca3af);background:var(--bg-hover, #f3f4f6);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px);margin-right:4px}.cast-section-header .material-icon{font-size:18px;color:var(--text-muted, #9ca3af)}.cast-section-content{padding-top:4px}.cast-manager-hint{display:flex;align-items:center;gap:8px;margin:16px 0 0;padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-md, 6px);font-size:12px;color:var(--text-tertiary, #6b7280)}.cast-manager-hint .material-icon{font-size:16px;opacity:.7}.section-cast-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.section-cast-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px)}.section-cast-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.section-cast-role-icons{display:flex;gap:2px;align-items:center;flex-shrink:0}.section-cast-role-icon{display:flex;align-items:center;justify-content:center;color:var(--border-primary, #e0e0e0);opacity:.4}.section-cast-role-icon .material-icon{font-size:14px}.section-cast-role-icon.active{opacity:1}.section-cast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px}.section-cast-icon .material-icon{font-size:16px}.section-cast-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary, #1f2937)}.section-cast-indicators{display:flex;gap:4px;align-items:center}.section-cast-indicator{display:flex;align-items:center;justify-content:center;color:var(--text-tertiary, #9ca3af)}.section-cast-indicator .material-icon{font-size:16px}.section-cast-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;color:var(--text-tertiary, #9ca3af);transition:all .15s;opacity:0}.section-cast-item:hover .section-cast-remove{opacity:1}.section-cast-remove:hover{background:var(--bg-hover, #f3f4f6);color:var(--status-error, #ef4444)}.section-cast-add-btn{display:flex;align-items:center;gap:6px;width:100%;padding:10px 12px;margin-top:8px;background:transparent;border:1px dashed var(--border-primary, #d1d5db);border-radius:var(--ex-radius-md, 6px);font-size:13px;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s}.section-cast-add-btn:hover{background:var(--bg-secondary, #f9fafb);border-color:var(--accent-primary, #667eea);color:var(--accent-primary, #667eea)}.section-cast-picker{margin-top:8px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-lg, 8px);overflow:hidden}.section-cast-picker-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-tertiary, #f3f4f6);font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280)}.section-cast-picker-close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);cursor:pointer;color:var(--text-tertiary, #9ca3af)}.section-cast-picker-close:hover{background:var(--bg-hover, #e5e7eb);color:var(--text-primary, #1f2937)}.section-cast-picker-list{list-style:none;margin:0;padding:4px;max-height:200px;overflow-y:auto}.section-cast-picker-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);font-size:13px;color:var(--text-primary, #1f2937);cursor:pointer;text-align:left;transition:background var(--transition-fast, .15s)}.section-cast-picker-item:hover{background:var(--bg-hover, #e5e7eb)}.section-cast-picker-item .material-icon{margin-left:auto;font-size:18px;color:var(--accent-color, #667eea)}.cast-loading{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #6b7280);font-size:13px;padding:8px 0;cursor:progress}.cast-loading .material-icon{font-size:18px;animation:spin 1s linear infinite}.cast-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cast-item{margin:0}.cast-item-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);cursor:pointer;transition:var(--transition-fast, all .15s ease);text-align:left}.cast-item-btn:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--border-secondary, #d1d5db)}.cast-item-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.cast-item-btn>.material-icon:last-child{font-size:18px;color:var(--text-muted, #9ca3af)}.cast-empty,.cast-no-detected,.cast-all-added{font-size:13px;color:var(--text-secondary, #6b7280);padding:8px 0}.cast-all-added{color:var(--status-success, #10b981);display:flex;align-items:center;gap:6px}.cast-add-form{display:flex;flex-wrap:wrap;gap:8px;padding:8px;background:var(--bg-hover, #f3f4f6);border-radius:var(--radius-md, 6px);margin-top:8px}.cast-add-input{flex:1;min-width:120px;padding:6px 10px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);font-size:13px;background:var(--bg-primary, white);color:var(--text-primary, #1f2937)}.cast-add-input:focus{outline:none;border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.cast-add-gender,.cast-add-pronouns{padding:6px 10px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);font-size:13px;background:var(--bg-primary, white);color:var(--text-primary, #1f2937);cursor:pointer}.cast-add-actions{display:flex;gap:4px}.cast-add-actions button{padding:6px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s ease)}.cast-add-actions button:first-child{color:var(--status-success, #10b981)}.cast-add-actions button:first-child:hover{background:var(--status-success-bg, #d1fae5);border-color:var(--status-success, #10b981)}.cast-add-actions button:first-child:disabled{opacity:.5;cursor:not-allowed}.cast-add-actions button:last-child{color:var(--text-secondary, #6b7280)}.cast-add-actions button:last-child:hover{background:var(--bg-hover, #f3f4f6)}.cast-add-actions button .material-icon{font-size:18px}.cast-add-row{display:flex;gap:8px;align-items:center}.cast-add-row .cast-add-gender,.cast-add-row .cast-add-pronouns{flex:1}.cast-color-btn{display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.cast-color-btn:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--text-muted, #9ca3af)}.cast-color-preview{width:16px;height:16px;border-radius:50%;border:1px solid var(--border-secondary, rgba(0, 0, 0, .1))}.cast-color-btn .material-icon{font-size:16px;color:var(--text-secondary, #6b7280)}.cast-color-picker{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);margin-top:8px}.cast-color-option{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:var(--transition-fast, all .15s ease);display:flex;align-items:center;justify-content:center}.cast-color-option:hover{transform:scale(1.15)}.cast-color-option.selected{border-color:var(--text-primary, #374151);box-shadow:0 0 0 2px var(--bg-primary, white),0 0 0 4px var(--text-primary, #374151)}.cast-color-auto{background:linear-gradient(135deg,#f9a8d4,#93c5fd,#86efac,#fcd34d)}.cast-color-auto .material-icon{font-size:14px;color:var(--text-primary, #374151)}.cast-add-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:var(--bg-hover, #f3f4f6);border:1px dashed var(--border-secondary, #d1d5db);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:var(--transition-fast, all .15s ease);margin-top:8px}.cast-add-btn:hover{background:var(--bg-tertiary, #e5e7eb);border-color:var(--text-muted, #9ca3af);color:var(--text-primary, #374151)}.cast-add-btn .material-icon{font-size:18px}.cast-detected-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cast-detected-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--status-warning-bg, #fffbeb);border:1px solid var(--status-warning-border, #fde68a);border-radius:var(--radius-md, 6px)}.cast-detected-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.cast-detected-name{font-size:13px;font-weight:500;color:var(--status-warning-text, #92400e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cast-detected-role{display:flex;gap:4px}.cast-detected-role .material-icon{font-size:14px;color:var(--status-warning, #b45309)}.cast-detected-stats{font-size:11px;color:var(--status-warning, #b45309)}.cast-detected-add-btn{padding:4px;background:var(--bg-primary, white);border:1px solid var(--status-warning-border, #fcd34d);border-radius:var(--radius-sm, 4px);cursor:pointer;color:var(--status-warning, #d97706);display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s ease)}.cast-detected-add-btn:hover{background:var(--status-warning-bg, #fef3c7);border-color:var(--status-warning, #f59e0b);color:var(--status-warning-text, #92400e)}.cast-detected-add-btn .material-icon{font-size:18px}.cast-detected-in-cast{display:flex;align-items:center;justify-content:center;padding:4px;color:var(--status-success)}.cast-detected-in-cast .material-icon{font-size:18px}.cast-character-detail{display:flex;flex-direction:column;gap:16px}.cast-character-header{display:flex;align-items:center;gap:10px}.cast-character-color{width:16px;height:16px;border-radius:50%;flex-shrink:0}.cast-character-name{flex:1;font-size:16px;font-weight:600;color:var(--text-primary, #374151);margin:0}.cast-character-gender .material-icon{font-size:20px;color:var(--text-secondary, #6b7280)}.cast-edit-character-btn{padding:4px;background:transparent;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;color:var(--text-muted, #9ca3af);transition:var(--transition-fast, all .15s ease)}.cast-edit-character-btn:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #374151)}.cast-character-edit-form{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);margin-top:12px}.cast-edit-row{display:flex;align-items:center;gap:12px}.cast-edit-row label{font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);min-width:50px}.cast-edit-gender{flex:1;padding:6px 8px;font-size:13px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);background:var(--bg-primary, white);color:var(--text-primary, #1f2937);cursor:pointer}.cast-edit-actions{display:flex;gap:8px;margin-top:4px}.cast-edit-save,.cast-edit-cancel{display:flex;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:500;border:1px solid;border-radius:var(--radius-sm, 4px);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.cast-edit-save{background:var(--status-success);border-color:var(--status-success);color:var(--text-inverse)}.cast-edit-save:hover{background:var(--status-success-dark, #059669);border-color:var(--status-success-dark, #059669)}.cast-edit-cancel{background:var(--bg-primary, white);border-color:var(--border-secondary, #d1d5db);color:var(--text-secondary, #6b7280)}.cast-edit-cancel:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--text-muted, #9ca3af)}.cast-edit-save .material-icon,.cast-edit-cancel .material-icon{font-size:16px}.cast-character-aliases{font-size:13px;color:var(--text-secondary, #6b7280)}.aliases-label{font-weight:500;margin-right:4px}.aliases-list{font-style:italic}.cast-relationships-section{padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.cast-relationships-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cast-relationships-header h5{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0}.cast-add-relationship-btn{padding:4px;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-sm, 4px);cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s ease)}.cast-add-relationship-btn:hover{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #374151)}.cast-add-relationship-btn .material-icon{font-size:16px}.cast-relationship-form{display:flex;flex-wrap:wrap;gap:8px;padding:10px;background:var(--bg-hover, #f3f4f6);border-radius:var(--radius-md, 6px);margin-bottom:12px}.cast-relationship-select{flex:1;min-width:120px;padding:6px 10px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);font-size:13px;background:var(--bg-primary, white);color:var(--text-primary, #1f2937);cursor:pointer}.cast-relationship-input{flex:2;min-width:150px;padding:6px 10px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);font-size:13px;background:var(--bg-primary, white);color:var(--text-primary, #1f2937)}.cast-relationship-input:focus{outline:none;border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.cast-relationship-form-actions{display:flex;gap:4px}.cast-relationship-form-actions button{padding:6px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s ease)}.cast-relationship-form-actions button:first-child{color:var(--status-success, #10b981)}.cast-relationship-form-actions button:first-child:hover{background:var(--status-success-bg, #d1fae5);border-color:var(--status-success, #10b981)}.cast-relationship-form-actions button:first-child:disabled{opacity:.5;cursor:not-allowed}.cast-relationship-form-actions button:last-child{color:var(--text-secondary, #6b7280)}.cast-relationship-form-actions button:last-child:hover{background:var(--bg-hover, #f3f4f6)}.cast-relationship-form-actions button .material-icon{font-size:18px}.cast-relationships-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.cast-relationship-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:13px}.cast-relationship-item .relationship-label{font-weight:500;color:var(--text-primary, #374151)}.cast-relationship-item .relationship-of{color:var(--text-muted, #9ca3af)}.cast-relationship-item .relationship-target{color:var(--accent-primary, #3b82f6);font-weight:500}.cast-relationship-item .relationship-actions{margin-left:auto;display:flex;gap:4px}.cast-relationship-item .relationship-actions button{padding:4px;background:transparent;border:none;cursor:pointer;color:var(--text-muted, #9ca3af);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px);transition:var(--transition-fast, all .15s ease)}.cast-relationship-item .relationship-actions button:hover{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #374151)}.cast-relationship-item .relationship-actions button .material-icon{font-size:16px}.cast-relationship-edit{display:flex;gap:6px;flex:1;align-items:center}.cast-relationship-edit .cast-relationship-input{flex:1}.cast-relationship-edit button{padding:4px;background:transparent;border:1px solid var(--border-secondary, #d1d5db);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px);transition:var(--transition-fast, all .15s ease)}.cast-relationship-edit button:first-of-type{color:var(--status-success, #10b981)}.cast-relationship-edit button:first-of-type:hover{background:var(--status-success-bg, #d1fae5);border-color:var(--status-success, #10b981)}.cast-relationship-edit button:last-of-type{color:var(--text-secondary, #6b7280)}.cast-relationship-edit button:last-of-type:hover{background:var(--bg-hover, #f3f4f6)}.cast-relationship-edit button .material-icon{font-size:16px}.cast-no-relationships{font-size:13px;color:var(--text-muted, #9ca3af);padding:8px 0;font-style:italic}.cast-character-actions{padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.cast-delete-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--status-error-bg, #fef2f2);border:1px solid var(--status-error-border, #fecaca);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;color:var(--status-error, #dc2626);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.cast-delete-btn:hover{background:var(--status-error-bg-hover, #fee2e2);border-color:var(--status-error-border-hover, #fca5a5)}.cast-delete-btn .material-icon{font-size:18px}.cast-member-edit-modal .ex-modal-body{max-height:70vh;overflow-y:auto}.cast-modal-content{display:flex;flex-direction:column;gap:24px}.cast-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-lg, 8px)}.cast-modal-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.cast-modal-header-icon{font-size:24px;color:var(--text-secondary, #6b7280);flex-shrink:0}.cast-modal-header-name{font-size:18px;font-weight:600;color:var(--text-primary, #111827);margin:0;padding:4px 8px;cursor:pointer;border-radius:var(--radius-sm, 4px);transition:var(--transition-fast, background-color .15s);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cast-modal-header-name:hover{background-color:var(--bg-tertiary, #e5e7eb)}.cast-modal-header-name-input{font-size:18px;font-weight:600;color:var(--text-primary, #111827);padding:4px 8px;border:2px solid var(--accent-primary, #3b82f6);border-radius:var(--radius-sm, 4px);flex:1;min-width:0;font-family:inherit;background:var(--bg-primary, white)}.cast-modal-header-name-input:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.cast-modal-pronouns-select{padding:8px 12px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-md, 6px);font-size:13px;background:var(--bg-primary, white);color:var(--text-primary, #111827);cursor:pointer;transition:var(--transition-fast, border-color .15s, box-shadow .15s);flex-shrink:0;min-width:140px}.cast-modal-pronouns-select:focus{outline:none;border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.cast-modal-section{background:var(--bg-tertiary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:16px}.cast-modal-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cast-modal-section-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary, #374151);margin:0 0 12px}.cast-modal-section-header .cast-modal-section-title{margin:0}.cast-modal-section-title .material-icon{font-size:18px;color:var(--text-secondary, #6b7280)}.cast-modal-section-desc{font-size:13px;color:var(--text-secondary, #6b7280);margin:0 0 16px;line-height:1.5}.cast-modal-form{display:flex;flex-direction:column;gap:16px}.cast-modal-field{display:flex;flex-direction:column;gap:6px}.cast-modal-field>label{font-size:13px;font-weight:500;color:var(--text-primary, #374151)}.cast-modal-field-hint{font-size:12px;color:var(--text-secondary, #6b7280);margin:0 0 8px}.cast-modal-input,.cast-modal-select{padding:8px 12px;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;background:var(--bg-primary, white);color:var(--text-primary, #111827);transition:var(--transition-fast, border-color .15s, box-shadow .15s)}.cast-modal-input:focus,.cast-modal-select:focus{outline:none;border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.cast-modal-color-row{display:flex;align-items:center;gap:10px}.cast-modal-color-preview{width:28px;height:28px;border-radius:var(--radius-md, 6px);border:2px solid var(--border-primary, #e5e7eb)}.cast-modal-color-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-md, 6px);font-size:13px;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s)}.cast-modal-color-btn:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--text-muted, #9ca3af)}.cast-modal-color-btn .material-icon{font-size:16px}.cast-modal-color-picker{display:flex;flex-wrap:wrap;gap:6px;padding:12px;background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);margin-top:8px}.cast-modal-color-option{width:28px;height:28px;border-radius:var(--radius-md, 6px);border:2px solid transparent;cursor:pointer;transition:var(--transition-fast, all .15s)}.cast-modal-color-option:hover{transform:scale(1.1)}.cast-modal-color-option.selected{border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary, #3b82f6) 30%,transparent)}.cast-modal-color-auto{background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#bae6fd);display:flex;align-items:center;justify-content:center;color:#0284c7}.cast-modal-color-auto .material-icon{font-size:16px}.cast-modal-save-row{padding-top:8px}.cast-modal-save-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--status-success, #10b981);border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;color:var(--text-inverse);cursor:pointer;transition:var(--transition-fast, background .15s)}.cast-modal-save-btn:hover{background:var(--status-success-dark, #059669)}.cast-modal-save-btn .material-icon{font-size:18px}.cast-modal-add-btn{padding:6px;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s)}.cast-modal-add-btn:hover{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #374151)}.cast-modal-add-btn .material-icon{font-size:18px}.cast-modal-alias-form,.cast-modal-relationship-form{background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);padding:16px;margin-bottom:12px}.cast-modal-char-chips{display:flex;flex-wrap:wrap;gap:8px}.cast-modal-char-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--ex-radius-2xl, 16px);font-size:13px;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s)}.cast-modal-char-chip:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--text-muted, #9ca3af)}.cast-modal-char-chip.selected{background:color-mix(in srgb,var(--accent-primary, #3b82f6) 15%,transparent);border-color:var(--accent-primary, #3b82f6);color:var(--accent-primary, #1d4ed8)}.cast-modal-chip-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.cast-modal-form-actions{display:flex;gap:8px;margin-top:16px}.cast-modal-btn-primary{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--accent-primary, #3b82f6);border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;color:var(--text-inverse);cursor:pointer;transition:var(--transition-fast, background .15s)}.cast-modal-btn-primary:hover{background:var(--accent-secondary, #2563eb)}.cast-modal-btn-primary:disabled{background:var(--text-muted, #9ca3af);cursor:not-allowed}.cast-modal-btn-secondary{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s)}.cast-modal-btn-secondary:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--text-muted, #9ca3af)}.cast-modal-btn-icon{padding:6px;background:transparent;border:1px solid var(--border-secondary, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;transition:var(--transition-fast, all .15s)}.cast-modal-btn-icon:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #374151)}.cast-modal-btn-icon.cast-modal-btn-danger:hover{background:var(--status-error-bg, #fef2f2);border-color:var(--status-error-border, #fecaca);color:var(--status-error, #dc2626)}.cast-modal-btn-icon .material-icon{font-size:16px}.cast-modal-alias-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cast-modal-alias-item{background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);padding:12px}.cast-modal-alias-display{display:flex;align-items:center;justify-content:space-between;gap:12px}.cast-modal-alias-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.cast-modal-alias-name{font-size:14px;font-weight:500;color:var(--text-primary, #111827)}.cast-modal-alias-usedby{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary, #6b7280)}.cast-modal-alias-usedby .material-icon{font-size:14px}.cast-modal-alias-actions{display:flex;gap:4px;flex-shrink:0}.cast-modal-alias-edit{display:flex;flex-direction:column;gap:12px}.cast-modal-relationship-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cast-modal-relationship-item{background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);padding:12px}.cast-modal-relationship-display{display:flex;align-items:center;gap:8px}.cast-modal-relationship-label{font-weight:500;color:var(--text-primary, #111827)}.cast-modal-relationship-of{color:var(--text-muted, #9ca3af);font-size:13px}.cast-modal-relationship-target{color:var(--accent-primary, #3b82f6);font-weight:500}.cast-modal-relationship-actions{margin-left:auto;display:flex;gap:4px}.cast-modal-relationship-edit{display:flex;align-items:center;gap:8px}.cast-modal-relationship-edit .cast-modal-input{flex:1}.cast-modal-empty{font-size:13px;color:var(--text-muted, #9ca3af);font-style:italic;margin:0;padding:8px 0}.cast-modal-loading{font-size:13px;color:var(--text-secondary, #6b7280);padding:8px 0;cursor:progress}.cast-modal-facts-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cast-modal-fact-item{background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);padding:12px}.cast-modal-fact-item.pending{border-color:var(--status-warning-border, #fde68a);background:var(--status-warning-bg, #fffbeb)}.cast-modal-fact-display{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cast-modal-fact-main{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.cast-modal-fact-type-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm, 4px);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.025em;flex-shrink:0;background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.cast-modal-fact-type-badge .material-icon{font-size:12px}.cast-modal-fact-type-badge.trait{background:var(--accent-purple-bg, #f3e8ff);color:var(--accent-purple, #9333ea)}.cast-modal-fact-type-badge.possession{background:var(--accent-amber-bg, #fef3c7);color:var(--accent-amber, #d97706)}.cast-modal-fact-type-badge.action{background:var(--accent-green-bg, #dcfce7);color:var(--accent-green, #16a34a)}.cast-modal-fact-type-badge.location{background:var(--accent-blue-bg, #dbeafe);color:var(--accent-blue, #2563eb)}.cast-modal-fact-type-badge.negative{background:var(--status-error-bg, #fef2f2);color:var(--status-error, #dc2626)}.cast-modal-fact-type-badge.other{background:var(--bg-tertiary, #e5e7eb);color:var(--text-muted, #9ca3af)}.cast-modal-fact-text{font-size:14px;color:var(--text-primary, #111827);flex:1;min-width:0}.cast-modal-fact-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted, #9ca3af)}.cast-modal-fact-status{display:flex;align-items:center}.cast-modal-fact-status .material-icon{font-size:16px}.cast-modal-fact-status.status-confirmed{color:var(--status-success, #22c55e)}.cast-modal-fact-status.status-pending{color:var(--status-warning, #f59e0b)}.cast-modal-fact-status.status-rejected{color:var(--text-muted, #9ca3af)}.cast-modal-fact-source{font-size:11px}.cast-modal-fact-evidence-toggle{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-sm, 4px);font-size:11px;color:var(--text-secondary, #6b7280);cursor:pointer;transition:var(--transition-fast)}.cast-modal-fact-evidence-toggle:hover{background:var(--bg-tertiary, #e5e7eb)}.cast-modal-fact-evidence-toggle .material-icon{font-size:12px}.cast-modal-fact-actions{display:flex;gap:4px;flex-shrink:0}.cast-modal-btn-confirm{color:var(--status-success, #22c55e)!important;border-color:var(--status-success-border, #bbf7d0)!important}.cast-modal-btn-confirm:hover{background:var(--status-success-bg, #f0fdf4)!important}.cast-modal-btn-reject{color:var(--status-error, #dc2626)!important;border-color:var(--status-error-border, #fecaca)!important}.cast-modal-btn-reject:hover{background:var(--status-error-bg, #fef2f2)!important}.cast-modal-fact-edit{display:flex;flex-direction:column;gap:12px}.cast-modal-fact-form{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);margin-bottom:12px}.cast-modal-fact-evidence{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-secondary, #e5e7eb)}.cast-modal-fact-evidence-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280);margin-bottom:8px}.cast-modal-fact-evidence-header .material-icon{font-size:14px}.cast-modal-fact-evidence-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cast-modal-fact-evidence-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12px;padding:8px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-sm, 4px)}.cast-modal-fact-evidence-item .evidence-text{font-style:italic;color:var(--text-primary, #111827);flex:1;min-width:120px}.cast-modal-fact-evidence-item .evidence-location{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--text-muted, #9ca3af)}.cast-modal-fact-evidence-item .evidence-location .material-icon{font-size:12px}.cast-modal-fact-evidence-item .evidence-type{font-size:10px;padding:1px 6px;border-radius:var(--radius-xs, 2px);background:var(--bg-tertiary, #e5e7eb);color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.03em}.cast-modal-fact-evidence-item .evidence-type.user-added{background:var(--accent-blue-bg, #dbeafe);color:var(--accent-blue, #2563eb)}.cast-modal-fact-evidence-item .evidence-type.discovered{background:var(--accent-purple-bg, #f3e8ff);color:var(--accent-purple, #9333ea)}.cast-modal-fact-evidence-item .evidence-type.cross-section-confirmation{background:var(--status-success-bg, #dcfce7);color:var(--status-success, #16a34a)}.cast-modal-danger-zone{background:var(--status-error-bg, #fef2f2);border-color:var(--status-error-border, #fecaca)}.cast-modal-danger-zone .cast-modal-section-title,.cast-modal-danger-zone .cast-modal-section-title .material-icon{color:var(--status-error, #dc2626)}.cast-modal-delete-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--status-error, #dc2626);border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;color:var(--text-inverse);cursor:pointer;transition:var(--transition-fast, background .15s)}.cast-modal-delete-btn:hover{background:var(--status-error-dark, #b91c1c)}.cast-modal-delete-btn .material-icon{font-size:18px}.character-voices-panel{display:flex;flex-direction:column;gap:16px}.character-voices-empty{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #6b7280);font-size:13px;padding:12px 0}.character-voices-empty .material-icon{font-size:20px}.character-voices-summary{display:flex;align-items:baseline;gap:6px;font-size:13px;color:var(--text-secondary, #6b7280)}.character-voices-summary .summary-count{font-size:18px;font-weight:600;color:var(--text-primary, #374151)}.character-voices-summary .summary-detail{margin-left:4px;font-size:12px;color:var(--text-muted, #9ca3af)}.character-voices-section-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 0;background:none;border:none;cursor:pointer;text-align:left}.character-voices-section-header:hover .section-title{color:var(--text-primary, #374151)}.character-voices-section-header .section-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm, 4px)}.character-voices-section-header .section-icon.warning{background:var(--status-warning-bg, #fef3c7);color:var(--status-warning, #d97706)}.character-voices-section-header .section-icon.anomaly{background:var(--status-error-bg, #fee2e2);color:var(--status-error, #dc2626)}.character-voices-section-header .section-icon .material-icon{font-size:16px}.character-voices-section-header .section-title{flex:1;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0}.character-voices-section-header .section-count{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #374151);font-size:11px;font-weight:500;padding:2px 6px;border-radius:var(--ex-radius-lg, 10px)}.character-voices-section-header>.material-icon{color:var(--text-muted, #9ca3af);font-size:20px}.character-voices-warnings-section,.character-voices-anomalies-section{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:8px}.similar-voice-warnings{display:flex;flex-direction:column;gap:8px;padding:8px 0}.similar-voice-warning{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--status-warning-bg, #fefce8);border-radius:var(--radius-md, 6px);border-left:3px solid var(--status-warning, #eab308)}.warning-characters{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.warning-char{color:var(--text-primary, #374151)}.warning-vs{color:var(--text-muted, #9ca3af);font-weight:400}.warning-score{display:flex;align-items:baseline;gap:3px;font-size:12px}.warning-score .score-value{font-weight:600;color:var(--status-warning, #d97706)}.warning-score .score-label{color:var(--text-muted, #9ca3af)}.warning-reasons{display:flex;flex-wrap:wrap;gap:6px}.warning-reason{font-size:11px;color:var(--text-tertiary, #78716c);background:color-mix(in srgb,var(--bg-primary, white) 60%,transparent);padding:2px 6px;border-radius:var(--radius-sm, 4px)}.voice-anomalies-list{display:flex;flex-direction:column;gap:6px;padding:8px 0}.voice-anomaly-item{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:var(--bg-primary, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);cursor:pointer;text-align:left;transition:var(--transition-fast, all .15s ease)}.voice-anomaly-item:hover{background:var(--bg-tertiary, #f9fafb);border-color:var(--border-secondary, #d1d5db)}.voice-anomaly-item.selected{background:var(--status-error-bg, #fef2f2);border-color:var(--status-error-border, #fca5a5)}.voice-anomaly-item .anomaly-header{display:flex;align-items:center;justify-content:space-between}.voice-anomaly-item .anomaly-speaker{font-size:12px;font-weight:600;color:var(--text-primary, #374151)}.voice-anomaly-item .anomaly-score{font-size:10px;font-weight:500;padding:2px 6px;border-radius:var(--ex-radius-lg, 10px)}.voice-anomaly-item .anomaly-score[data-severity=high]{background:var(--status-error-bg, #fee2e2);color:var(--status-error, #dc2626)}.voice-anomaly-item .anomaly-score[data-severity=medium]{background:var(--status-warning-bg, #fef3c7);color:var(--status-warning, #d97706)}.voice-anomaly-item .anomaly-score[data-severity=low]{background:var(--status-info-bg, #e0f2fe);color:var(--status-info, #0284c7)}.voice-anomaly-item .anomaly-text{font-size:12px;color:var(--text-secondary, #6b7280);font-style:italic;line-height:1.4}.voice-anomaly-item .anomaly-reason{font-size:11px;color:var(--text-muted, #9ca3af)}.anomalies-more{font-size:12px;color:var(--text-muted, #9ca3af);text-align:center;padding:4px 0}.character-voices-list{display:flex;flex-direction:column;gap:8px}.character-voices-list .list-title{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:8px 0 4px}.character-voice-card{border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden;transition:var(--transition-fast, border-color .15s ease)}.character-voice-card:hover{border-color:var(--border-secondary, #d1d5db)}.character-voice-card.selected{border-color:var(--accent-primary, #3b82f6);background:color-mix(in srgb,var(--accent-primary, #3b82f6) 10%,transparent)}.character-voice-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;text-align:left}.character-voice-header:hover{background:var(--bg-tertiary, #f9fafb)}.character-voice-card.selected .character-voice-header{background:transparent}.character-voice-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary, #374151)}.character-voice-stats{font-size:12px;color:var(--text-muted, #9ca3af)}.character-voice-header>.material-icon{color:var(--text-muted, #9ca3af);font-size:20px}.character-voice-details{padding:12px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--bg-tertiary, #f9fafb);display:flex;flex-direction:column;gap:12px}.voice-quick-stats{display:flex;flex-wrap:wrap;gap:12px 16px}.voice-stat{display:flex;flex-direction:column;gap:2px}.voice-stat .stat-value{font-size:14px;font-weight:600;color:var(--text-primary, #374151)}.voice-stat .stat-label{font-size:10px;color:var(--text-muted, #9ca3af);text-transform:uppercase}.voice-sentence-style{display:flex;flex-direction:column;gap:4px}.voice-sentence-style .style-label,.voice-frequent-words .words-label,.voice-common-phrases .phrases-label{font-size:11px;color:var(--text-secondary, #6b7280)}.voice-sentence-style .style-value{font-size:12px;font-weight:500;color:var(--text-primary, #374151)}.sentence-distribution{display:flex;height:6px;border-radius:var(--ex-radius-sm, 3px);overflow:hidden;background:var(--bg-tertiary, #e5e7eb)}.sentence-distribution .dist-bar{height:100%;transition:width .3s ease}.sentence-distribution .dist-bar.short{background:#60a5fa}.sentence-distribution .dist-bar.medium{background:var(--accent-primary, #3b82f6)}.sentence-distribution .dist-bar.long{background:#1d4ed8}.voice-frequent-words,.voice-common-phrases{display:flex;flex-direction:column;gap:6px}.words-cloud,.phrases-list{display:flex;flex-wrap:wrap;gap:4px}.word-tag,.phrase-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 8px;background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #374151);border-radius:var(--ex-radius-xl, 12px)}.phrase-tag{background:#dbeafe;color:#1e40af}.word-count,.phrase-count{font-size:10px;color:var(--text-tertiary, #6b7280);font-weight:500}.dark-theme .character-voices-empty{color:var(--text-muted, #9ca3af)}.dark-theme .character-voices-summary .summary-count{color:var(--text-primary, #e5e7eb)}.dark-theme .character-voices-summary .summary-detail{color:var(--text-tertiary, #6b7280)}.dark-theme .character-voices-section-header:hover .section-title{color:var(--text-primary, #e5e7eb)}.dark-theme .character-voices-section-header .section-icon.warning{background:#422006;color:#fbbf24}.dark-theme .character-voices-section-header .section-icon.anomaly{background:#450a0a;color:#f87171}.dark-theme .character-voices-section-header .section-title{color:var(--text-muted, #9ca3af)}.dark-theme .character-voices-section-header .section-count{background:#374151;color:var(--text-primary, #e5e7eb)}.dark-theme .character-voices-warnings-section,.dark-theme .character-voices-anomalies-section{border-top-color:#374151}.dark-theme .similar-voice-warning{background:#422006;border-left-color:#d97706}.dark-theme .warning-char{color:var(--text-primary, #e5e7eb)}.dark-theme .warning-score .score-value{color:#fbbf24}.dark-theme .warning-reason{color:#d6d3d1;background:var(--bg-hover, rgba(0, 0, 0, .2))}.dark-theme .voice-anomaly-item{background:#1f2937;border-color:#374151}.dark-theme .voice-anomaly-item:hover{background:#374151;border-color:#4b5563}.dark-theme .voice-anomaly-item.selected{background:#450a0a;border-color:#f87171}.dark-theme .voice-anomaly-item .anomaly-speaker{color:var(--text-primary, #e5e7eb)}.dark-theme .voice-anomaly-item .anomaly-text{color:var(--text-muted, #9ca3af)}.dark-theme .voice-anomaly-item .anomaly-reason{color:var(--text-tertiary, #6b7280)}.dark-theme .character-voice-card{border-color:#374151}.dark-theme .character-voice-card:hover{border-color:#4b5563}.dark-theme .character-voice-card.selected{border-color:var(--accent-primary, #3b82f6);background:#1e3a5f}.dark-theme .character-voice-header:hover{background:#374151}.dark-theme .character-voice-name{color:var(--text-primary, #e5e7eb)}.dark-theme .character-voice-stats{color:var(--text-tertiary, #6b7280)}.dark-theme .character-voice-details{border-top-color:#374151;background:#1f2937}.dark-theme .voice-stat .stat-value{color:var(--text-primary, #e5e7eb)}.dark-theme .voice-stat .stat-label{color:var(--text-tertiary, #6b7280)}.dark-theme .voice-sentence-style .style-label,.dark-theme .voice-frequent-words .words-label,.dark-theme .voice-common-phrases .phrases-label{color:var(--text-muted, #9ca3af)}.dark-theme .voice-sentence-style .style-value{color:var(--text-primary, #e5e7eb)}.dark-theme .sentence-distribution{background:#374151}.dark-theme .word-tag{background:#374151;color:var(--text-primary, #e5e7eb)}.dark-theme .phrase-tag{background:#1e3a5f;color:#93c5fd}.dark-theme .word-count,.dark-theme .phrase-count{color:var(--text-muted, #9ca3af)}.cast-tools-panel{display:flex;flex-direction:column;gap:12px;padding:0}.cast-tools-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-primary, #e5e7eb);padding-bottom:8px}.cast-tools-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:none;border-radius:var(--ex-radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.cast-tools-tab:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #374151)}.cast-tools-tab.active{background:var(--accent-bg, #eff6ff);color:var(--accent-primary, #3b82f6)}.cast-tools-tab .material-icon{font-size:18px}.cast-tools-content{flex:1;min-height:0;overflow-y:auto}.section-cast-subtool{display:flex;flex-direction:column;gap:12px}.subtool-header{display:flex;align-items:center;gap:8px}.subtool-title{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0;flex:1}.subtool-count{font-size:11px;color:var(--text-muted, #9ca3af);background:var(--bg-hover, #f3f4f6);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px)}.section-cast-subtool .section-cast-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.section-cast-subtool .section-cast-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px)}.section-cast-subtool .section-cast-indicators{display:flex;gap:2px;align-items:center;flex-shrink:0}.section-cast-subtool .indicator{display:flex;align-items:center;justify-content:center;color:var(--border-primary, #e0e0e0);opacity:.4}.section-cast-subtool .indicator .material-icon{font-size:14px}.section-cast-subtool .indicator.active{opacity:1}.section-cast-subtool .section-cast-name{flex:1;font-size:13px;color:var(--text-primary, #374151);font-weight:500}.section-cast-subtool .section-cast-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;border-radius:var(--ex-radius-sm, 4px);color:var(--text-muted, #9ca3af);cursor:pointer;opacity:0;transition:var(--transition-fast, all .15s ease)}.section-cast-subtool .section-cast-item:hover .section-cast-remove{opacity:1}.section-cast-subtool .section-cast-remove:hover{background:var(--bg-hover, #f3f4f6);color:var(--error-color, #ef4444)}.section-cast-subtool .section-cast-item.is-viewpoint{background:var(--bg-selected, #eff6ff);border-color:var(--primary-color, #3b82f6)}.section-cast-subtool .viewpoint-indicator{position:relative}.section-cast-subtool .viewpoint-indicator:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:10px;height:2px;background:currentColor;border-radius:1px}.section-cast-subtool .section-cast-item{flex-direction:column;padding:0}.section-cast-subtool .section-cast-item-header{display:flex;align-items:center;gap:8px;padding:8px 10px;width:100%;cursor:pointer}.section-cast-subtool .section-cast-item-header:hover{background:var(--bg-hover, #f3f4f6)}.section-cast-subtool .section-cast-fact-count{display:flex;align-items:center;gap:2px;font-size:11px;color:var(--text-muted, #9ca3af);margin-left:auto}.section-cast-subtool .section-cast-fact-count .material-icon{font-size:14px}.section-cast-subtool .section-cast-expand-icon{display:flex;align-items:center;color:var(--text-muted, #9ca3af)}.section-cast-subtool .section-cast-expand-icon .material-icon{font-size:18px}.section-cast-subtool .section-cast-item.is-expanded{background:var(--bg-secondary, #f9fafb)}.section-cast-subtool .section-cast-item-details{width:100%;padding:0 10px 10px;border-top:1px solid var(--border-secondary, #e5e7eb)}.character-facts-list{list-style:none;margin:0;padding:8px 0 0;display:flex;flex-direction:column;gap:6px}.character-fact{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--text-secondary, #6b7280)}.character-fact .fact-icon{display:flex;flex-shrink:0;color:var(--text-muted, #9ca3af)}.character-fact .fact-icon .material-icon{font-size:14px}.character-fact .fact-text{flex:1}.character-fact .fact-related{font-style:italic;color:var(--text-muted, #9ca3af)}.no-facts-message{font-size:12px;color:var(--text-muted, #9ca3af);padding:8px 0;text-align:center}.section-cast-empty{font-size:12px;color:var(--text-muted, #9ca3af);padding:12px;text-align:center}.section-cast-subtool .section-cast-picker,.section-cast-picker{background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);padding:8px}.picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280)}.picker-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;border-radius:var(--ex-radius-sm, 4px);color:var(--text-muted, #9ca3af);cursor:pointer}.picker-close:hover{background:var(--bg-hover, #f3f4f6)}.picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto}.picker-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px;background:none;border:none;border-radius:var(--ex-radius-sm, 4px);font-size:13px;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.picker-item:hover{background:var(--bg-hover, #f3f4f6)}.picker-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.picker-name{flex:1;text-align:left}.picker-empty{font-size:12px;color:var(--text-muted, #9ca3af);padding:8px;text-align:center}.section-cast-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:var(--bg-hover, #f3f4f6);border:1px dashed var(--border-primary, #d1d5db);border-radius:var(--ex-radius-md, 6px);font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.section-cast-add-btn:hover{background:var(--bg-tertiary, #e5e7eb);border-color:var(--border-secondary, #9ca3af);color:var(--text-primary, #374151)}.viewpoint-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.viewpoint-header{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--text-secondary, #6b7280);font-size:12px;font-weight:500}.viewpoint-header .material-icon{font-size:16px}.viewpoint-label{flex:1}.viewpoint-hint{cursor:help;opacity:.6}.viewpoint-hint:hover{opacity:1}.viewpoint-hint .material-icon{font-size:14px}.viewpoint-current{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);font-size:13px;color:var(--text-primary, #374151);cursor:pointer;transition:all .15s ease}.viewpoint-current:hover:not(:disabled){background:var(--bg-tertiary, #e5e7eb);border-color:var(--border-secondary, #9ca3af)}.viewpoint-current:disabled{cursor:not-allowed;opacity:.6}.viewpoint-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.viewpoint-name{flex:1;text-align:left;font-weight:500}.viewpoint-none{flex:1;text-align:left;color:var(--text-tertiary, #9ca3af);font-style:italic}.viewpoint-current .material-icon{font-size:18px;color:var(--text-tertiary, #9ca3af)}.viewpoint-picker{background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);overflow:hidden}.viewpoint-picker .picker-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280)}.viewpoint-picker .picker-close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);color:var(--text-tertiary, #9ca3af);cursor:pointer;transition:all .15s ease}.viewpoint-picker .picker-close:hover{background:var(--bg-hover, #e5e7eb);color:var(--text-primary, #374151)}.viewpoint-picker .picker-list{list-style:none;margin:0;padding:4px;max-height:200px;overflow-y:auto}.viewpoint-picker .picker-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--ex-radius-sm, 4px);font-size:13px;color:var(--text-primary, #374151);cursor:pointer;transition:background .15s ease}.viewpoint-picker .picker-item:hover{background:var(--bg-hover, #f3f4f6)}.viewpoint-picker .picker-item.selected{background:var(--accent-bg, #eff6ff);color:var(--accent-primary, #3b82f6)}.viewpoint-picker .picker-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.viewpoint-picker .picker-name{flex:1;text-align:left}.viewpoint-picker .picker-item .material-icon{font-size:16px;color:var(--accent-primary, #3b82f6)}.subtool-hint{display:flex;align-items:center;gap:8px;margin:8px 0 0;padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-md, 6px);font-size:12px;color:var(--text-tertiary, #6b7280)}.subtool-hint .material-icon{font-size:16px;opacity:.7}.dialogue-subtool{display:flex;flex-direction:column;gap:12px}.dialogue-controls{display:flex;gap:8px;align-items:center}.dialogue-detect-btn{display:flex;align-items:center;gap:8px;flex:1;padding:10px 16px;background:var(--accent-primary, #3b82f6);border:none;border-radius:var(--ex-radius-md, 6px);font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:var(--transition-fast, all .15s ease)}.dialogue-detect-btn:hover:not(:disabled){background:var(--accent-hover, #2563eb)}.dialogue-detect-btn:disabled{opacity:.6;cursor:not-allowed}.dialogue-detect-btn .material-icon{font-size:18px}.dialogue-clear-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);color:var(--text-secondary, #6b7280);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.dialogue-clear-btn:hover{background:var(--error-bg, #fef2f2);border-color:var(--error-color, #ef4444);color:var(--error-color, #ef4444)}.dialogue-clear-btn .material-icon{font-size:18px}.dialogue-review-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--accent-color, #3b82f6);border-radius:var(--ex-radius-md, 6px);background:transparent;color:var(--accent-color, #3b82f6);font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition-fast, all .15s ease)}.dialogue-review-btn:hover{background:var(--accent-color, #3b82f6);color:#fff}.dialogue-review-btn .material-icon{font-size:16px}.dialogue-results{display:flex;flex-direction:column;gap:16px}.dialogue-stats-summary{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--ex-radius-md, 6px)}.dialogue-stats-summary .stat-row{display:flex;justify-content:space-between;align-items:center;font-size:12px}.dialogue-stats-summary .stat-label{color:var(--text-secondary, #6b7280)}.dialogue-stats-summary .stat-value{font-weight:600;color:var(--text-primary, #374151)}.dialogue-stats-summary .stat-row.warning .stat-value{color:var(--warning-color, #f59e0b)}.speaking-cast-section{display:flex;flex-direction:column;gap:8px}.speaking-cast-section .section-title{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0}.speaking-cast-list{display:flex;flex-direction:column;gap:6px}.speaking-cast-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);overflow:hidden;transition:var(--transition-fast, all .15s ease)}.speaking-cast-card.selected{border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 2px var(--accent-bg, #eff6ff)}.speaking-cast-card .card-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;transition:var(--transition-fast, all .15s ease)}.speaking-cast-card .card-header:hover{background:var(--bg-hover, #f3f4f6)}.speaking-cast-card .card-color-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.speaking-cast-card .card-name{flex:1;font-size:13px;font-weight:600;color:var(--text-primary, #374151);text-align:left}.speaking-cast-card .card-stats{font-size:11px;color:var(--text-muted, #9ca3af)}.speaking-cast-card .card-header .material-icon{font-size:18px;color:var(--text-muted, #9ca3af)}.speaking-cast-card .card-details{padding:12px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--bg-secondary, #f9fafb);display:flex;flex-direction:column;gap:12px}.quick-stats{display:flex;gap:16px}.quick-stat{display:flex;flex-direction:column;gap:2px}.quick-stat .stat-value{font-size:14px;font-weight:600;color:var(--text-primary, #374151)}.quick-stat .stat-label{font-size:10px;color:var(--text-muted, #9ca3af);text-transform:uppercase}.voice-style{display:flex;flex-direction:column;gap:4px}.voice-style .style-label{font-size:11px;color:var(--text-muted, #9ca3af)}.voice-style .style-value{font-size:12px;font-weight:500;color:var(--text-primary, #374151)}.voice-style .sentence-distribution{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--bg-tertiary, #e5e7eb)}.voice-style .dist-bar{height:100%;transition:width .3s ease}.voice-style .dist-bar.short{background:#22c55e}.voice-style .dist-bar.medium{background:#3b82f6}.voice-style .dist-bar.long{background:#f59e0b}.sentence-types{display:flex;flex-direction:column;gap:4px}.sentence-types .types-label{font-size:11px;color:var(--text-muted, #9ca3af)}.sentence-types .types-list{display:flex;flex-wrap:wrap;gap:4px}.sentence-types .type-badge{font-size:10px;padding:2px 6px;background:var(--bg-tertiary, #e5e7eb);border-radius:var(--ex-radius-sm, 4px);color:var(--text-secondary, #6b7280)}.complexity-section{display:flex;align-items:center;gap:8px}.complexity-section .complexity-label{font-size:11px;color:var(--text-muted, #9ca3af)}.complexity-section .complexity-bar{flex:1;height:6px;background:var(--bg-tertiary, #e5e7eb);border-radius:3px;overflow:hidden}.complexity-section .complexity-fill{height:100%;background:linear-gradient(90deg,#22c55e,#f59e0b,#ef4444);border-radius:3px;transition:width .3s ease}.complexity-section .complexity-value{font-size:11px;font-weight:500;color:var(--text-secondary, #6b7280)}.frequent-words{display:flex;flex-direction:column;gap:4px}.frequent-words .words-label{font-size:11px;color:var(--text-muted, #9ca3af)}.frequent-words .words-cloud{display:flex;flex-wrap:wrap;gap:4px}.frequent-words .word-tag{display:flex;align-items:center;gap:4px;padding:2px 6px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-sm, 4px);font-size:11px;color:var(--text-primary, #374151)}.frequent-words .word-count{font-size:10px;color:var(--text-muted, #9ca3af)}.common-phrases{display:flex;flex-direction:column;gap:4px}.common-phrases .phrases-label{font-size:11px;color:var(--text-muted, #9ca3af)}.common-phrases .phrases-list{display:flex;flex-wrap:wrap;gap:4px}.common-phrases .phrase-tag{display:flex;align-items:center;gap:4px;padding:2px 8px;background:#eff6ff;border-radius:var(--ex-radius-sm, 4px);font-size:11px;font-style:italic;color:#3b82f6}.common-phrases .phrase-count{font-size:10px;color:#93c5fd;font-style:normal}.question-patterns{display:flex;flex-direction:column;gap:4px}.question-patterns .patterns-label{font-size:11px;color:var(--text-muted, #9ca3af)}.question-patterns .patterns-list{display:flex;flex-wrap:wrap;gap:4px}.question-patterns .pattern-badge{font-size:10px;padding:2px 6px;background:#fef3c7;border-radius:var(--ex-radius-sm, 4px);color:#92400e}.dialogue-share{display:flex;align-items:center;gap:8px}.dialogue-share .share-label{font-size:11px;color:var(--text-muted, #9ca3af);white-space:nowrap}.dialogue-share .share-bar{flex:1;height:6px;background:var(--bg-tertiary, #e5e7eb);border-radius:3px;overflow:hidden}.dialogue-share .share-fill{height:100%;border-radius:3px;transition:width .3s ease}.dialogue-share .share-value{font-size:11px;font-weight:500;color:var(--text-secondary, #6b7280);min-width:36px;text-align:right}.unresolved-section{display:flex;flex-direction:column;gap:8px}.section-header-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 0;background:none;border:none;cursor:pointer;text-align:left}.section-header-btn:hover .section-title{color:var(--text-primary, #374151)}.section-header-btn .section-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--ex-radius-sm, 4px)}.section-header-btn .section-icon.warning{background:#fef3c7;color:#f59e0b}.section-header-btn .section-icon .material-icon{font-size:16px}.section-header-btn .section-title{flex:1;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0}.section-header-btn .section-count{font-size:11px;color:var(--text-muted, #9ca3af);background:var(--bg-hover, #f3f4f6);padding:2px 6px;border-radius:var(--ex-radius-lg, 10px)}.section-header-btn>.material-icon{font-size:18px;color:var(--text-muted, #9ca3af)}.unresolved-list{display:flex;flex-direction:column;gap:4px}.unresolved-item{background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);overflow:hidden}.unresolved-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;text-align:left;transition:var(--transition-fast, all .15s ease)}.unresolved-header:hover{background:var(--bg-hover, #f3f4f6)}.unresolved-quote{flex:1;font-size:12px;font-style:italic;color:var(--text-primary, #374151);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unresolved-reason{font-size:10px;color:var(--text-muted, #9ca3af);white-space:nowrap}.unresolved-header .material-icon{font-size:18px;color:var(--text-muted, #9ca3af)}.unresolved-details{padding:12px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--bg-secondary, #f9fafb);display:flex;flex-direction:column;gap:8px}.detected-speaker{display:flex;align-items:center;gap:6px;font-size:12px}.detected-speaker .label{color:var(--text-muted, #9ca3af)}.detected-speaker .value{font-weight:500;color:var(--text-primary, #374151)}.detected-speaker .confidence{font-size:10px;color:var(--text-muted, #9ca3af)}.speaker-suggestions{display:flex;flex-direction:column;gap:6px}.speaker-suggestions .label{font-size:11px;color:var(--text-muted, #9ca3af)}.suggestion-buttons{display:flex;flex-wrap:wrap;gap:4px}.suggestion-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--ex-radius-md, 6px);font-size:12px;color:var(--text-primary, #374151);cursor:pointer;transition:var(--transition-fast, all .15s ease)}.suggestion-btn:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--accent-primary, #3b82f6)}.suggestion-color{width:8px;height:8px;border-radius:50%}.suggestion-name{font-weight:500}.addressee-info{display:flex;align-items:center;gap:6px;font-size:12px}.addressee-info .label{color:var(--text-muted, #9ca3af)}.addressee-info .value{font-weight:500;color:var(--text-primary, #374151)}.unresolved-more{font-size:12px;color:var(--text-muted, #9ca3af);padding:8px;text-align:center}.dialogue-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:var(--text-muted, #9ca3af)}.dialogue-empty .material-icon{font-size:48px;opacity:.5}.dialogue-empty p{font-size:13px;text-align:center}.dark-theme .cast-tools-tabs{border-bottom-color:#374151}.dark-theme .cast-tools-tab{color:#9ca3af}.dark-theme .cast-tools-tab:hover{background:#374151;color:#e5e7eb}.dark-theme .cast-tools-tab.active{background:#1e3a5f;color:#60a5fa}.dark-theme .section-cast-subtool .section-cast-item{background:#1f2937;border-color:#374151}.dark-theme .section-cast-subtool .section-cast-item.is-viewpoint{background:#1e3a5f;border-color:#3b82f6}.dark-theme .section-cast-subtool .indicator{color:#4b5563}.dark-theme .section-cast-subtool .section-cast-name{color:#e5e7eb}.dark-theme .section-cast-subtool .section-cast-item-header:hover{background:#374151}.dark-theme .section-cast-subtool .section-cast-item.is-expanded{background:#111827}.dark-theme .section-cast-subtool .section-cast-item-details{border-top-color:#374151}.dark-theme .character-fact{color:#9ca3af}.dark-theme .character-fact .fact-icon{color:#6b7280}.dark-theme .section-cast-picker{background:#1f2937;border-color:#374151}.dark-theme .picker-header{border-bottom-color:#374151;color:#9ca3af}.dark-theme .picker-item{color:#e5e7eb}.dark-theme .picker-item:hover{background:#374151}.dark-theme .section-cast-add-btn{background:#1f2937;border-color:#4b5563;color:#9ca3af}.dark-theme .section-cast-add-btn:hover{background:#374151;border-color:#6b7280;color:#e5e7eb}.dark-theme .viewpoint-section{border-top-color:#374151}.dark-theme .viewpoint-header{color:#9ca3af}.dark-theme .viewpoint-current{background:#1f2937;border-color:#4b5563;color:#e5e7eb}.dark-theme .viewpoint-current:hover:not(:disabled){background:#374151;border-color:#6b7280}.dark-theme .viewpoint-none{color:#6b7280}.dark-theme .viewpoint-picker{background:#1f2937;border-color:#374151}.dark-theme .viewpoint-picker .picker-header{background:#111827;border-bottom-color:#374151;color:#9ca3af}.dark-theme .viewpoint-picker .picker-close:hover{background:#374151;color:#e5e7eb}.dark-theme .viewpoint-picker .picker-item{color:#e5e7eb}.dark-theme .viewpoint-picker .picker-item:hover{background:#374151}.dark-theme .viewpoint-picker .picker-item.selected{background:#1e3a5f;color:#60a5fa}.dark-theme .subtool-hint{background:#1f2937;color:#6b7280}.dark-theme .dialogue-stats-summary{background:#1f2937}.dark-theme .dialogue-stats-summary .stat-value{color:#e5e7eb}.dark-theme .speaking-cast-card{background:#1f2937;border-color:#374151}.dark-theme .speaking-cast-card.selected{border-color:#60a5fa;box-shadow:0 0 0 2px #1e3a5f}.dark-theme .speaking-cast-card .card-header:hover{background:#374151}.dark-theme .speaking-cast-card .card-name{color:#e5e7eb}.dark-theme .speaking-cast-card .card-details{border-top-color:#374151;background:#111827}.dark-theme .quick-stat .stat-value{color:#e5e7eb}.dark-theme .voice-style .sentence-distribution{background:#374151}.dark-theme .sentence-types .type-badge{background:#374151;color:#9ca3af}.dark-theme .complexity-section .complexity-bar{background:#374151}.dark-theme .frequent-words .word-tag{background:#374151;border-color:#4b5563;color:#e5e7eb}.dark-theme .common-phrases .phrase-tag{background:#1e3a5f;color:#93c5fd}.dark-theme .question-patterns .pattern-badge{background:#78350f;color:#fcd34d}.dark-theme .dialogue-share .share-bar{background:#374151}.dark-theme .section-header-btn .section-icon.warning{background:#78350f;color:#fcd34d}.dark-theme .unresolved-item{background:#1f2937;border-color:#374151}.dark-theme .unresolved-header:hover{background:#374151}.dark-theme .unresolved-quote{color:#e5e7eb}.dark-theme .unresolved-details{border-top-color:#374151;background:#111827}.dark-theme .detected-speaker .value{color:#e5e7eb}.dark-theme .suggestion-btn{background:#374151;border-color:#4b5563;color:#e5e7eb}.dark-theme .suggestion-btn:hover{background:#4b5563;border-color:#60a5fa}.error-fallback{display:flex;align-items:center;justify-content:center;min-height:300px;padding:var(--ex-space-10, 40px);background:var(--ex-bg-primary, #ffffff)}.error-fallback-content{max-width:500px;text-align:center}.error-fallback-icon{margin-bottom:var(--ex-space-4, 16px)}.error-fallback-icon .material-icon{font-size:var(--ex-font-4xl, 64px);color:var(--ex-danger, #dc2626)}.error-fallback-title{font-size:var(--ex-font-2xl, 24px);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827);margin:0 0 var(--ex-space-2, 8px) 0}.error-fallback-message{font-size:var(--ex-font-sm, 14px);color:var(--ex-text-secondary, #6b7280);margin:0 0 var(--ex-space-4, 16px) 0}.error-fallback-summary{padding:var(--ex-space-3, 12px) var(--ex-space-4, 16px);background:var(--ex-danger-light, #fef2f2);border:1px solid var(--ex-danger-border, #fecaca);border-radius:var(--ex-radius-lg, 8px);margin-bottom:var(--ex-space-5, 20px)}.error-fallback-summary code{font-size:var(--ex-font-xs, 13px);color:var(--ex-danger, #dc2626);word-break:break-word}.error-fallback-actions{display:flex;gap:var(--ex-space-3, 12px);justify-content:center;margin-bottom:var(--ex-space-5, 20px)}.error-fallback-btn{display:inline-flex;align-items:center;gap:var(--ex-space-2, 8px);padding:var(--ex-space-2-5, 10px) var(--ex-space-5, 20px);font-size:var(--ex-font-sm, 14px);font-weight:var(--ex-font-weight-medium, 500);border-radius:var(--ex-radius-lg, 8px);cursor:pointer;transition:all var(--ex-transition-base, .2s);border:none}.error-fallback-btn .material-icon{font-size:var(--ex-font-lg, 18px)}.error-fallback-btn-primary{background:var(--ex-primary, #6366f1);color:var(--ex-text-inverse, #ffffff)}.error-fallback-btn-primary:hover{background:var(--ex-primary-dark, #4f46e5)}.error-fallback-btn-secondary{background:var(--ex-bg-secondary, #f3f4f6);color:var(--ex-text-primary, #111827)}.error-fallback-btn-secondary:hover{background:var(--ex-bg-hover, #e5e7eb)}.error-fallback-details{text-align:left;border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-lg, 8px);overflow:hidden}.error-fallback-details-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ex-space-3, 12px) var(--ex-space-4, 16px);background:var(--ex-bg-secondary, #f3f4f6);border-bottom:1px solid var(--ex-border-default, #e5e7eb);font-size:var(--ex-font-xs, 13px);font-weight:var(--ex-font-weight-semibold, 600);color:var(--ex-text-primary, #111827)}.error-fallback-details-actions{display:flex;gap:var(--ex-space-2, 8px)}.error-fallback-btn-icon{display:inline-flex;align-items:center;gap:var(--ex-space-1, 4px);padding:var(--ex-space-1-5, 6px) var(--ex-space-2, 8px);background:transparent;border:1px solid var(--ex-border-default, #e5e7eb);border-radius:var(--ex-radius-sm, 4px);color:var(--ex-text-secondary, #6b7280);cursor:pointer;font-size:var(--ex-font-xs, 12px);transition:all var(--ex-transition-fast, .15s)}.error-fallback-btn-icon:hover{background:var(--ex-bg-hover, #e5e7eb);color:var(--ex-text-primary, #111827)}.error-fallback-btn-icon .material-icon{font-size:var(--ex-font-base, 16px)}.copied-label{color:var(--ex-success, #22c55e);font-weight:var(--ex-font-weight-medium, 500)}.error-fallback-stack{margin:0;padding:var(--ex-space-4, 16px);background:var(--ex-bg-tertiary, #f9fafb);max-height:300px;overflow:auto}.error-fallback-stack code{font-size:var(--ex-font-xs, 12px);font-family:SF Mono,Monaco,Cascadia Code,Courier New,monospace;color:var(--ex-text-secondary, #6b7280);white-space:pre-wrap;word-break:break-word}.error-fallback-compact{display:flex;align-items:center;gap:var(--ex-space-2, 8px);padding:var(--ex-space-3, 12px) var(--ex-space-4, 16px);background:var(--ex-warning-light, #fef3c7);border:1px solid var(--ex-warning-border, #fde68a);border-radius:var(--ex-radius-lg, 8px);color:var(--ex-warning, #f59e0b)}.error-fallback-compact .material-icon{font-size:var(--ex-font-xl, 20px);flex-shrink:0}.error-fallback-compact-message{flex:1;font-size:var(--ex-font-sm, 14px)}.error-fallback-compact-btn{padding:var(--ex-space-1-5, 6px) var(--ex-space-3, 12px);background:var(--ex-warning, #f59e0b);color:var(--ex-text-inverse, white);border:none;border-radius:var(--ex-radius-sm, 4px);font-size:var(--ex-font-xs, 13px);font-weight:var(--ex-font-weight-medium, 500);cursor:pointer;transition:opacity var(--ex-transition-fast, .15s)}.error-fallback-compact-btn:hover{opacity:.9}.error-fallback-fullpage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--ex-z-max, 9999);display:flex;align-items:center;justify-content:center;background:var(--ex-bg-primary, #ffffff)}:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular: normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular: normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold: normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light: normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid: normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid: normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid: normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-jelly-regular: normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular: normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular: normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular: normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold: normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold: normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold: normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);inset-inline-start:calc(-1 * var(--fa-li-width, 2em));inset-block-start:.25em}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.fa-layers .svg-inline--fa{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color, #ff253a);border-radius:var(--fa-counter-border-radius, 1em);box-sizing:border-box;color:var(--fa-inverse, #fff);line-height:var(--fa-counter-line-height, 1);max-width:var(--fa-counter-max-width, 5em);min-width:var(--fa-counter-min-width, 1.5em);overflow:hidden;padding:var(--fa-counter-padding, .25em .5em);right:var(--fa-right, 0);text-overflow:ellipsis;top:var(--fa-top, 0);transform:scale(var(--fa-counter-scale, .25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left, 0);right:auto;top:var(--fa-top, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:calc((6 / 10 - .375) * 1em)}.fa-xs{font-size:.75em;line-height:calc(1 / 12 * 1em);vertical-align:.125em}.fa-sm{font-size:.875em;line-height:calc(1 / 14 * 1em);vertical-align:calc((6 / 14 - .375) * 1em)}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:calc((6 / 20 - .375) * 1em)}.fa-xl{font-size:1.5em;line-height:calc(1 / 24 * 1em);vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width: auto}.fa-fw,.fa-width-fixed{--fa-width: 1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin, 2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color, #eee);border-radius:var(--fa-border-radius, .1em);border-style:var(--fa-border-style, solid);border-width:var(--fa-border-width, .0625em);box-sizing:var(--fa-border-box-sizing, content-box);padding:var(--fa-border-padding, .1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale, 1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse, #fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.svg-inline--fa.fa-stack-1x{--fa-width: 1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width: 2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index, auto)}
