.app-shell{display:flex;min-height:100vh;min-height:100dvh;direction:rtl}.app-main-area{flex:1;display:flex;flex-direction:column;margin-right:var(--sidebar-width);transition:margin-right var(--duration-slow) var(--ease-smooth);min-width:0;background:var(--bg-app)}.app-shell.sidebar-collapsed .app-main-area{margin-right:var(--sidebar-collapsed-width)}.app-loader{position:fixed;inset:0;background:var(--navy-950);display:flex;align-items:center;justify-content:center;z-index:var(--z-loader);transition:opacity .2s ease-out,visibility .2s}.app-loader.hidden{opacity:0;visibility:hidden;pointer-events:none}.loader-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-7)}.loader-logo{animation:loader-breathe 2.5s var(--ease-smooth) infinite}.loader-spinner{width:28px;height:28px;border:2px solid var(--accent-200);border-top-color:var(--accent-400);border-radius:50%;animation:.9s linear infinite spin}.loader-text{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--navy-300);letter-spacing:var(--tracking-wide)}.app-sidebar{position:fixed;top:0;right:0;bottom:0;width:var(--sidebar-width);background:#16181c;color:rgba(255,255,255,.82);display:flex;flex-direction:column;z-index:var(--z-sidebar);transition:width var(--duration-slow) var(--ease-smooth);overflow:hidden;border-left:1px solid rgba(255,255,255,.06)}.sidebar-collapsed .app-sidebar{width:var(--sidebar-collapsed-width)}.sidebar-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4);min-height:var(--header-height);border-bottom:1px solid rgba(255,255,255,.05);position:relative;z-index:1}.sidebar-logo{width:32px;height:32px;border-radius:var(--radius-md);background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;color:#fff}.sidebar-logo svg{width:18px;height:18px}.sidebar-brand{overflow:hidden;white-space:nowrap;transition:opacity var(--duration-normal) var(--ease-default)}.sidebar-collapsed .sidebar-brand{opacity:0;width:0}.sidebar-brand h1{font-family:var(--font-primary);font-size:var(--text-md);font-weight:var(--weight-bold);color:rgba(255,255,255,.92);letter-spacing:var(--tracking-tight)}.sidebar-brand span{font-size:var(--text-2xs);color:rgba(255,255,255,.65);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase}.sidebar-nav{flex:1;padding:var(--space-3) var(--space-2);overflow-y:auto;overflow-x:hidden;position:relative;z-index:1}.nav-section{margin-bottom:var(--space-5)}.nav-section-title{font-size:.625rem;font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:rgba(255,255,255,.65);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);white-space:nowrap;overflow:hidden;transition:opacity var(--duration-normal)}.sidebar-collapsed .nav-section-title{opacity:0}.nav-item{display:flex;align-items:center;gap:var(--space-2-5);padding:7px var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);position:relative;white-space:nowrap;margin-bottom:1px;min-height:36px;color:rgba(255,255,255,.82)}.nav-item:hover{background:rgba(255,255,255,.07);color:rgba(255,255,255,.85)}.nav-item.active{background:rgba(255,255,255,.1);color:rgba(255,255,255,.95)}.nav-item.active::before{content:'';position:absolute;right:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:rgba(255,255,255,.7);border-radius:var(--radius-full) 0 0 var(--radius-full)}.nav-item.active .nav-item-icon{color:rgba(255,255,255,.95)}.nav-item-icon{font-size:18px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.65}.nav-item.active .nav-item-icon,.nav-item:hover .nav-item-icon{opacity:1}.nav-item-label{font-size:var(--text-sm);font-weight:var(--weight-medium);overflow:hidden;transition:opacity var(--duration-normal)}.nav-item.active .nav-item-label{font-weight:var(--weight-semibold)}.sidebar-collapsed .nav-item-label{opacity:0;width:0}.nav-item-badge{margin-right:auto;background:rgba(255,255,255,.14);color:rgba(255,255,255,.75);font-size:.6rem;font-weight:var(--weight-bold);padding:2px 7px;border-radius:var(--radius-full);min-width:18px;text-align:center;line-height:1.3}.sidebar-collapsed .nav-item-badge,.sidebar-collapsed .sidebar-footer>div{display:none}.sidebar-footer{padding:var(--space-3) var(--space-2);border-top:1px solid rgba(255,255,255,.05);flex-shrink:0;margin-top:auto;position:relative;z-index:1}.sidebar-palette-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-md);color:rgba(255,255,255,.72);transition:all var(--duration-fast) var(--ease-default);cursor:pointer;outline:0;border:none;background:0 0}.sidebar-palette-btn:hover{background:rgba(255,255,255,.07);color:rgba(255,255,255,.65)}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:rgba(255,255,255,.65);transition:all var(--duration-fast) var(--ease-default)}.sidebar-toggle-btn:hover{background:rgba(255,255,255,.05);color:rgba(255,255,255,.82)}.sidebar-collapsed .sidebar-toggle-btn .material-icons-round{transform:rotate(180deg);transition:transform var(--duration-slow) var(--ease-spring)}.app-header{position:sticky;top:0;height:var(--header-height);background:var(--bg-header);backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1);border-bottom:1px solid var(--border-default);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);z-index:var(--z-header)}.header-start{display:flex;align-items:center;gap:var(--space-5)}.header-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}.header-breadcrumb .current{font-family:var(--font-primary);color:var(--text-primary);font-weight:var(--weight-semibold);font-size:var(--text-md)}.header-breadcrumb .separator{font-size:var(--text-xs);color:var(--text-muted)}.header-search{position:relative;width:260px}.header-search-input{width:100%;height:34px;padding:0 var(--space-10) 0 var(--space-4);background:var(--bg-sunken);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);transition:background var(--duration-fast),border-color var(--duration-fast),box-shadow var(--duration-fast),width var(--duration-slow) var(--ease-smooth)}.header-search-input::placeholder{color:var(--text-muted)}.header-search-input:focus{background:var(--bg-surface);border-color:var(--border-strong);box-shadow:var(--shadow-focus);width:320px}.header-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:18px;pointer-events:none;transition:color var(--duration-fast)}.header-search-input:focus~.header-search-icon{color:var(--navy-500)}.header-end{display:flex;align-items:center;gap:var(--space-2)}.header-action-btn{position:relative;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);transition:background var(--duration-fast),color var(--duration-fast)}.header-action-btn .material-icons-round{font-size:19px}.header-action-btn:hover{background:var(--bg-sunken);color:var(--text-primary)}.header-action-btn:active{background:var(--gray-100)}.header-action-btn .badge-dot{position:absolute;top:7px;left:8px;width:7px;height:7px;border-radius:50%;background:var(--accent-500);border:1.5px solid var(--bg-header);animation:2.5s ease-in-out infinite pulse-dot}.header-user-wrapper{position:relative;margin-right:var(--space-2)}.header-user{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;padding:var(--space-1-5) var(--space-2) var(--space-1-5) var(--space-3);border-radius:var(--radius-lg);transition:background var(--duration-fast)}.header-user:hover{background:var(--gray-50)}.header-user-info{text-align:end}.header-user-name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--leading-tight)}.header-user-role{font-size:var(--text-2xs);color:var(--text-tertiary);font-weight:var(--weight-medium)}.header-user-avatar{width:30px;height:30px;border-radius:var(--radius-md);background:#1b1f26;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--text-xs);font-weight:var(--weight-bold);overflow:hidden}.header-user-avatar img{width:100%;height:100%;object-fit:cover}.page-container{flex:1;padding:var(--space-7) var(--page-padding);max-width:var(--page-max-width);width:100%}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-7)}.page-title{font-family:var(--font-primary);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:var(--tracking-tight)}.page-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-1);font-weight:var(--weight-regular)}.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#0e1014;position:relative;overflow:hidden}.login-bg-effects{position:absolute;inset:0;pointer-events:none}.login-orb{position:absolute;border-radius:50%;filter:blur(120px);opacity:.15;animation:20s ease-in-out infinite orb-drift}.login-orb-1{width:500px;height:500px;background:radial-gradient(circle,rgba(100,130,200,.6) 0,transparent 70%);top:-10%;right:-10%;animation-duration:22s}.login-orb-2{width:350px;height:350px;background:radial-gradient(circle,rgba(150,160,220,.5) 0,transparent 70%);bottom:-10%;left:-5%;animation-duration:25s;animation-delay:-7s}.login-orb-3{display:none}.login-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse at center,black 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,black 20%,transparent 75%)}.login-card{position:relative;z-index:1;width:100%;max-width:400px;margin:var(--space-6);animation:login-card-enter .5s var(--ease-out)}.login-card-glow{display:none}.login-card-inner{background:#161a22;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-8);text-align:center}.login-logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--space-6)}.login-logo{width:60px;height:60px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--navy-700),var(--navy-800));display:flex;align-items:center;justify-content:center;position:relative;z-index:1;box-shadow:0 8px 32px rgba(8,14,26,.6);border:1px solid var(--accent-100)}.login-logo svg{width:30px;height:30px}.login-logo-ring{position:absolute;inset:-10px;border:1.5px solid var(--accent-100);border-radius:22px;animation:4s ease-in-out infinite login-ring-glow}.login-title{font-family:var(--font-primary);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:rgba(255,255,255,.92);margin-bottom:var(--space-1-5);letter-spacing:var(--tracking-tight)}.login-subtitle{font-size:var(--text-sm);color:rgba(255,255,255,.72);margin-bottom:var(--space-7);line-height:var(--leading-relaxed)}.login-features{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-7);flex-wrap:wrap}.login-feature{display:flex;align-items:center;gap:var(--space-1-5);font-size:var(--text-xs);color:rgba(255,255,255,.72);padding:4px var(--space-2-5);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md)}.login-feature-icon{font-size:12px!important;color:rgba(255,255,255,.72)}.google-signin-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;height:46px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:rgba(255,255,255,.8);transition:background var(--duration-fast),border-color var(--duration-fast);position:relative;overflow:hidden}.google-signin-btn::before{display:none}.google-signin-btn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.15);transform:none}.google-signin-btn:active{background:rgba(255,255,255,.08)}.google-signin-btn.loading{pointer-events:none;opacity:.7}.google-signin-btn svg{width:18px;height:18px;flex-shrink:0}.onboarding-btn-secondary{background:0 0!important;color:var(--navy-200)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important}.onboarding-btn-secondary:hover{border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.03)!important}.onboarding-form .form-input,.onboarding-input{background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.08)!important;color:#f1f5f9!important;height:44px;border-radius:var(--radius-md);width:100%;padding:0 var(--space-4);font-family:var(--font-primary);font-size:var(--text-sm)}.onboarding-input::placeholder{color:var(--navy-500)!important}.onboarding-input:focus{border-color:var(--accent-500)!important;box-shadow:var(--shadow-focus-accent)!important}.onboarding-form .form-group{margin-bottom:var(--space-4);text-align:start}.login-back-link{display:block;width:100%;margin-top:var(--space-4);color:var(--navy-400);font-size:var(--text-sm);text-align:center;cursor:pointer;transition:color var(--duration-fast);background:0 0;border:none}.login-back-link:hover{color:var(--navy-200)}.login-footer{margin-top:var(--space-8);font-size:var(--text-2xs);color:var(--navy-500);line-height:var(--leading-relaxed)}.login-link{color:var(--accent-400);text-decoration:underline;text-decoration-color:var(--accent-300);text-underline-offset:3px;transition:text-decoration-color var(--duration-fast)}.login-link:hover{text-decoration-color:var(--accent-400)}.auth-form{text-align:start}.auth-field-group{margin-bottom:var(--space-4)}.auth-field-label{display:block;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--navy-300);margin-bottom:var(--space-1-5);letter-spacing:var(--tracking-wide)}.auth-field-wrapper{position:relative;display:flex;align-items:center}.auth-field-icon{position:absolute;right:var(--space-3);font-size:18px!important;color:var(--navy-500);pointer-events:none;transition:color var(--duration-fast);z-index:1}.auth-field-input{width:100%;height:46px;padding:0 var(--space-10) 0 var(--space-10);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);font-family:var(--font-primary);font-size:var(--text-sm);color:#f1f5f9;direction:rtl;transition:border-color var(--duration-fast),box-shadow var(--duration-fast),background var(--duration-fast)}.auth-field-input::placeholder{color:var(--navy-500)}.auth-field-input:hover{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.05)}.auth-field-input:focus{border-color:var(--accent-500);box-shadow:var(--shadow-focus-accent);background:rgba(255,255,255,.06);outline:0}.auth-field-input:focus~.auth-field-icon,.auth-field-wrapper:focus-within .auth-field-icon{color:var(--accent-400)}.auth-field-wrapper.has-error .auth-field-input{border-color:var(--danger-500);box-shadow:0 0 0 3px rgba(239,68,68,.1)}.auth-field-wrapper.has-error .auth-field-icon{color:var(--danger-400)}.auth-field-toggle{position:absolute;left:var(--space-3);font-size:18px!important;color:var(--navy-500);cursor:pointer;background:0 0;border:none;padding:2px;z-index:1;transition:color var(--duration-fast)}.auth-field-toggle:hover{color:var(--navy-300)}.auth-field-error{font-size:var(--text-xs);color:var(--danger-400);min-height:0;max-height:0;overflow:hidden;opacity:0;transition:max-height var(--duration-normal) var(--ease-default),opacity var(--duration-normal),margin var(--duration-normal);font-weight:var(--weight-medium)}.auth-field-error.visible{max-height:24px;opacity:1;margin-top:var(--space-1)}.auth-form-error{text-align:center;font-size:var(--text-sm);color:var(--danger-400);background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.15);border-radius:var(--radius-md);padding:0;max-height:0;overflow:hidden;opacity:0;transition:max-height var(--duration-slow) var(--ease-default),padding var(--duration-slow),opacity var(--duration-normal),margin var(--duration-slow);font-weight:var(--weight-medium)}.auth-form-error.visible{max-height:60px;padding:var(--space-3) var(--space-4);opacity:1;margin-bottom:var(--space-4)}.auth-password-strength{display:flex;align-items:center;gap:var(--space-3);margin-top:calc(-1 * var(--space-2));margin-bottom:var(--space-4);padding:0 var(--space-1)}.auth-strength-bar{flex:1;height:3px;background:rgba(255,255,255,.06);border-radius:var(--radius-full);overflow:hidden}.auth-strength-fill{height:100%;width:0;border-radius:var(--radius-full);transition:width var(--duration-normal) var(--ease-spring),background var(--duration-normal)}.auth-strength-text{font-size:var(--text-2xs);font-weight:var(--weight-semibold);white-space:nowrap;min-width:60px;text-align:start;transition:color var(--duration-normal)}.auth-submit-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:48px;background:linear-gradient(135deg,var(--navy-600),var(--navy-700));color:#fff;border-radius:var(--radius-lg);font-family:var(--font-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);cursor:pointer;border:1px solid rgba(255,255,255,.06);transition:transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-normal),background var(--duration-normal);box-shadow:0 2px 12px rgba(41,59,94,.4);position:relative;overflow:hidden}.auth-submit-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 60%,var(--accent-50));opacity:0;transition:opacity var(--duration-normal)}.auth-submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(41,59,94,.45)}.auth-submit-btn:hover::before{opacity:1}.auth-submit-btn:active{transform:translateY(0)}.auth-submit-btn.loading{pointer-events:none;opacity:.8}.auth-submit-btn:disabled{opacity:.5;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0}.auth-divider-line{flex:1;height:1px;background:rgba(255,255,255,.06)}.auth-divider-text{font-size:var(--text-xs);color:var(--navy-500);font-weight:var(--weight-medium)}.auth-google-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;height:46px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--gray-300);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),transform var(--duration-normal) var(--ease-spring)}.auth-google-btn:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);transform:translateY(-1px)}.auth-google-btn:active{transform:translateY(0)}.auth-google-btn.loading{pointer-events:none;opacity:.7}.auth-google-btn svg{flex-shrink:0}.auth-toggle-wrap{text-align:center;margin-top:var(--space-5);font-size:var(--text-sm)}.auth-toggle-link{color:var(--accent-400);font-weight:var(--weight-semibold);background:0 0;border:none;cursor:pointer;font-family:var(--font-primary);font-size:var(--text-sm);transition:color var(--duration-fast);text-decoration:underline;text-decoration-color:var(--accent-200);text-underline-offset:3px}.auth-toggle-link:hover{color:var(--accent-300);text-decoration-color:var(--accent-300)}.auth-inline-link{font-size:var(--text-xs);color:var(--navy-400);background:0 0;border:none;cursor:pointer;font-family:var(--font-primary);transition:color var(--duration-fast)}.auth-inline-link:hover{color:var(--accent-400)}@media (max-width:640px){.page-container{padding:var(--space-4) var(--space-4)}.login-card-inner{padding:var(--space-8) var(--space-5)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1;height:38px;white-space:nowrap;transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast),border-color var(--duration-fast),box-shadow var(--duration-normal),transform var(--duration-fast) var(--ease-spring);cursor:pointer;border:1px solid transparent;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:2px solid var(--navy-400);outline-offset:2px}.btn .material-icons-round{font-size:17px}.btn-primary{background:var(--gradient-navy);color:#fff;border-color:rgba(255,255,255,.06);box-shadow:0 1px 3px rgba(41,59,94,.25),0 4px 12px rgba(41,59,94,.15)}.btn-primary:hover{box-shadow:0 4px 8px rgba(41,59,94,.25),0 12px 24px rgba(41,59,94,.2);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-default);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{background:var(--gray-75);color:var(--text-primary)}.btn-accent{background:var(--gradient-gold);color:var(--navy-950);border-color:rgba(255,255,255,.1);box-shadow:0 1px 3px rgba(200,149,42,.25),0 4px 12px rgba(200,149,42,.15)}.btn-accent:hover{box-shadow:0 4px 8px rgba(200,149,42,.25),0 12px 24px rgba(200,149,42,.2);transform:translateY(-1px)}.btn-danger{background:var(--danger-500);color:#fff;border-color:var(--danger-500)}.btn-danger:hover{background:var(--danger-600)}.btn-danger-ghost{background:0 0;color:var(--danger-400);border:1px solid transparent;opacity:.6;transition:all var(--duration-fast)}.btn-danger-ghost:hover{opacity:1;background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.2)}.btn-success{background:var(--gradient-emerald);color:#fff;box-shadow:0 1px 3px rgba(16,185,129,.25)}.btn-success:hover{box-shadow:0 4px 12px rgba(16,185,129,.25);transform:translateY(-1px)}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;pointer-events:none;transform:none!important;box-shadow:none!important}.btn.loading{position:relative;pointer-events:none;opacity:.75}.btn.loading .material-icons-round{visibility:hidden}.btn.loading::after{content:'';position:absolute;right:12px;top:50%;width:16px;height:16px;margin-top:-8px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:.6s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-sm{height:30px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm)}.btn-lg{height:46px;padding:var(--space-3) var(--space-8);font-size:var(--text-md);border-radius:var(--radius-lg)}.btn-icon{width:38px;padding:0}.btn-icon.btn-sm{width:30px}.card{background:var(--bg-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:box-shadow var(--duration-normal) var(--ease-default),border-color var(--duration-normal) var(--ease-default);border:1px solid var(--border-default)}.card:hover{box-shadow:var(--shadow-card-hover)}.card:has(.data-table):hover,.card:has(.tx-table):hover{transform:none;box-shadow:var(--shadow-card)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-default)}.card-title{font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:0;display:flex;align-items:center;gap:var(--space-2)}.card-title .material-icons-round{font-size:18px;color:var(--text-tertiary)}.card-body{padding:var(--space-5)}.card-footer{padding:var(--space-3-5) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--bg-sunken)}.stat-card{display:flex;align-items:flex-start;gap:var(--space-3-5);padding:var(--space-5) var(--space-5)}.stat-icon{width:38px;height:38px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.card:hover .stat-icon{transform:none}.stat-icon .material-icons-round{font-size:19px}.stat-icon.primary{background:rgba(77,103,147,.08);color:var(--navy-600)}.stat-icon.accent{background:rgba(200,149,42,.08);color:var(--gold-700)}.stat-icon.success{background:rgba(16,185,129,.08);color:var(--emerald-600)}.stat-icon.info{background:rgba(59,130,246,.08);color:var(--info-700)}.stat-value{font-family:var(--font-primary);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);line-height:var(--leading-none);letter-spacing:var(--tracking-tight);font-feature-settings:'tnum' 1}.stat-label{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1-5);font-weight:var(--weight-medium)}.stat-change{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-2xs);font-weight:var(--weight-semibold);margin-top:var(--space-1-5);padding:2px 6px;border-radius:var(--radius-sm)}.stat-change.up{background:rgba(16,185,129,.08);color:var(--emerald-700)}.stat-change.down{background:rgba(239,68,68,.08);color:var(--danger-700)}.badge{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:3px 9px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap}.badge::before{content:'';width:5px;height:5px;border-radius:50%;flex-shrink:0}.badge-draft{background:rgba(0,0,0,.05);color:var(--text-tertiary)}.badge-draft::before{background:var(--gray-400)}.badge-active{background:rgba(77,103,147,.08);color:var(--navy-700)}.badge-active::before{background:var(--navy-500)}.badge-pending{background:rgba(200,149,42,.08);color:var(--gold-700)}.badge-pending::before{background:var(--gold-500)}.badge-signed{background:rgba(59,130,246,.08);color:var(--info-700)}.badge-signed::before{background:var(--info-500)}.badge-completed{background:rgba(16,185,129,.08);color:var(--emerald-700)}.badge-completed::before{background:var(--emerald-500)}.badge-cancelled{background:rgba(239,68,68,.08);color:var(--danger-700)}.badge-cancelled::before{background:var(--danger-500)}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.form-input{width:100%;height:42px;padding:0 var(--space-4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);font-family:var(--font-primary);font-size:var(--text-sm);color:var(--text-primary);direction:rtl;transition:border-color var(--duration-fast),box-shadow var(--duration-fast),background var(--duration-fast)}.form-input:hover{border-color:var(--gray-300)}.form-input:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus),0 0 0 1px rgba(77,103,147,.08);background:var(--gray-0)}.form-input:focus-visible{outline:0}.form-input::placeholder{color:var(--text-muted)}.form-input.error{border-color:var(--danger-500);box-shadow:0 0 0 3px rgba(239,68,68,.08)}.form-textarea{min-height:100px;padding:var(--space-3) var(--space-4);resize:vertical;line-height:var(--leading-normal)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236e7a89' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center;padding-left:var(--space-10)}.form-hint{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1)}.form-error{font-size:var(--text-xs);color:var(--danger-500);margin-top:var(--space-1);font-weight:var(--weight-medium)}.data-table{width:100%;text-align:start;border-collapse:collapse}.data-table thead{border-bottom:1px solid var(--border-default)}.data-table th{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:var(--tracking-wide);padding:var(--space-2) var(--space-3);white-space:nowrap;background:var(--bg-sunken)}.data-table td{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);vertical-align:middle}.data-table tbody tr{transition:background var(--duration-fast)}.data-table tbody tr:nth-child(2n){background:0 0}.data-table tbody tr:hover{background:var(--bg-sunken)}.data-table tbody tr:active{background:var(--gray-100)}.data-table .cell-number,.data-table td[data-type=currency],.data-table td[data-type=number]{font-family:var(--font-primary);font-feature-settings:'tnum' 1;font-weight:var(--weight-semibold);letter-spacing:-.01em}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center;background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(77,103,147,.015) 10px,rgba(77,103,147,.015) 20px);animation:.5s both empty-enter}@keyframes empty-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.empty-state-icon-wrap{position:relative;margin-bottom:var(--space-5);animation:.6s cubic-bezier(.34,1.56,.64,1) .1s both empty-icon-pop}@keyframes empty-icon-pop{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.empty-state-icon-bg{position:absolute;inset:-16px;border-radius:50%;background:radial-gradient(circle,rgba(77,103,147,.06) 0,transparent 70%);animation:4s ease-in-out infinite pulse-scale}.empty-state-icon{font-size:64px;color:var(--navy-300);opacity:.6;position:relative;z-index:1;animation:4s ease-in-out infinite float-gentle}.empty-state-icon .material-icons-round{font-size:inherit}.empty-state-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);animation:.5s .2s both empty-enter}.empty-state-text{font-size:var(--text-sm);color:var(--text-secondary);max-width:360px;margin-bottom:var(--space-6);line-height:var(--leading-relaxed);animation:.5s .3s both empty-enter}.modal-overlay{position:fixed;inset:0;background:rgba(8,14,26,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-6);animation:modal-bg-in var(--duration-normal) var(--ease-out)}.modal-content{background:var(--bg-surface);border-radius:var(--radius-xl);width:100%;max-width:540px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 8px 16px rgba(15,24,41,.06),0 32px 64px rgba(15,24,41,.14);animation:modal-slide-in var(--duration-slow) var(--ease-spring);border:1px solid rgba(0,0,0,.06)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle)}.modal-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold)}.modal-body{padding:var(--space-6);flex:1;overflow-y:auto;min-height:0}.modal-footer{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--gray-25)}.toast-container{position:fixed;top:var(--space-5);left:50%;transform:translateX(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none;max-width:440px;width:100%}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3-5) var(--space-5);background:var(--navy-900);color:#f1f5f9;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--weight-medium);box-shadow:var(--shadow-xl);pointer-events:auto;animation:toast-enter var(--duration-slow) var(--ease-spring);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(12px);position:relative;overflow:hidden;cursor:default}.toast:hover{box-shadow:var(--shadow-2xl)}.toast .toast-icon{font-size:20px;flex-shrink:0}.toast .toast-message{flex:1;line-height:var(--leading-snug)}.toast.toast-success .toast-icon{color:var(--emerald-400)}.toast.toast-error .toast-icon{color:var(--danger-400)}.toast.toast-warning .toast-icon{color:var(--gold-400)}.toast.toast-info .toast-icon{color:var(--info-500)}.toast-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:0 0;border:none;color:var(--gray-400);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast);padding:0}.toast-close:hover{background:rgba(255,255,255,.1);color:var(--gray-200)}.toast-close .material-icons-round{font-size:16px}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:rgba(255,255,255,.08)}.toast-progress-fill{height:100%;border-radius:0 var(--radius-xs) var(--radius-xs) 0;animation:linear forwards toast-timer-shrink;transform-origin:right}.toast-progress-success{background:var(--emerald-400)}.toast-progress-error{background:var(--danger-400)}.toast-progress-warning{background:var(--gold-400)}.toast-progress-info{background:var(--info-500)}@keyframes toast-timer-shrink{from{width:100%}to{width:0%}}.toast.toast-success{border-right:3px solid var(--emerald-400)}.toast.toast-error{border-right:3px solid var(--danger-400)}.toast.toast-warning{border-right:3px solid var(--gold-400)}.toast.toast-info{border-right:3px solid var(--info-500)}.toast.removing{animation:toast-exit var(--duration-normal) var(--ease-in) forwards}.dropdown{position:relative}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:200px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 4px 6px rgba(15,24,41,.02),0 12px 28px rgba(15,24,41,.09),0 0 0 1px rgba(0,0,0,.03);z-index:var(--z-dropdown);padding:var(--space-1-5);animation:dropdown-open var(--duration-normal) var(--ease-spring);transform-origin:top right}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast);white-space:nowrap;color:var(--text-secondary)}.dropdown-item .material-icons-round{font-size:18px;opacity:.6}.dropdown-item:hover{background:var(--gray-50);color:var(--text-primary)}.dropdown-item:hover .material-icons-round{opacity:1}.dropdown-divider{height:1px;background:var(--border-subtle);margin:var(--space-1-5) 0}.tabs{display:flex;gap:var(--space-1);border-bottom:2px solid var(--gray-100);padding:0 var(--space-2)}.tab{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-tertiary);cursor:pointer;position:relative;transition:color var(--duration-fast);border-bottom:2px solid transparent;margin-bottom:-2px}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--navy-600);border-bottom-color:var(--navy-600)}.btn:active,button:active{transform:translateY(1px)}.is-loading{opacity:.85;pointer-events:none}.ux-ready:focus-visible{outline:rgba(59,130,246,.6) solid 2px;outline-offset:2px}.btn,button{min-height:44px}.mobile-actions{position:sticky;bottom:0}html{scroll-behavior:smooth}.qa-fab{position:fixed;bottom:28px;z-index:900;width:56px;height:56px;border-radius:50%;border:none;background:var(--gradient-navy);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(41,59,94,.35),0 8px 24px rgba(41,59,94,.2);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;outline:0}.qa-fab:hover{transform:scale(1.08);box-shadow:0 6px 16px rgba(41,59,94,.4),0 12px 32px rgba(41,59,94,.25)}.qa-fab:active{transform:scale(.94)}.qa-fab:focus-visible{box-shadow:0 0 0 3px var(--bg-surface),0 0 0 5px var(--navy-400)}.qa-fab-icon{display:flex;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.qa-fab-icon .material-icons-round{font-size:26px}.qa-fab.open .qa-fab-icon{transform:rotate(45deg)}.qa-fab-pulse{position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--navy-300);opacity:0;animation:3s ease-in-out infinite qa-pulse;pointer-events:none}@keyframes qa-pulse{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.25;transform:scale(1.15)}}.qa-fab.open .qa-fab-pulse,.qa-fab:hover .qa-fab-pulse{animation:none;opacity:0}.qa-overlay{position:fixed;inset:0;z-index:1000;background:rgba(15,23,42,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;opacity:0;transition:opacity .22s}.qa-overlay.visible{opacity:1}.qa-overlay.closing{opacity:0;pointer-events:none}.qa-palette{width:100%;max-width:520px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);box-shadow:0 20px 60px rgba(0,0,0,.14),0 4px 16px rgba(0,0,0,.06);overflow:hidden;transform:translateY(-20px) scale(.96);opacity:0;transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .22s}.qa-overlay.visible .qa-palette{transform:translateY(0) scale(1);opacity:1}.qa-overlay.closing .qa-palette{transform:translateY(-12px) scale(.97);opacity:0}.qa-palette-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle)}.qa-palette-title-row{display:flex;align-items:center;gap:var(--space-3)}.qa-palette-badge{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--gradient-navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}.qa-palette-badge .material-icons-round{font-size:20px;color:#fff}.qa-palette-title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);margin:0;line-height:1.3}.qa-palette-sub{font-size:var(--text-xs);color:var(--text-tertiary);margin:0;line-height:1.3}.qa-close-btn{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:0 0;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;outline:0}.qa-close-btn:hover{background:var(--gray-100);color:var(--text-primary)}.qa-close-btn:focus-visible{box-shadow:0 0 0 2px var(--navy-400)}.qa-close-btn .material-icons-round{font-size:18px}.qa-ctx-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-6);background:rgba(59,130,246,.06);border-bottom:1px solid rgba(59,130,246,.12);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--info-600)}.qa-ctx-banner .material-icons-round{font-size:16px}.qa-list{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.qa-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3-5);border-radius:var(--radius-xl);cursor:pointer;transition:background .12s,transform .12s;position:relative;outline:0;opacity:0;transform:translateY(8px);animation:.35s forwards qa-card-in}@keyframes qa-card-in{to{opacity:1;transform:translateY(0)}}.qa-card:hover{background:var(--gray-50)}.qa-card:focus-visible{background:var(--gray-50);box-shadow:inset 0 0 0 2px var(--navy-300)}.qa-card:active{background:var(--gray-100);transform:scale(.985)}.qa-card-icon{width:42px;height:42px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(41,59,94,.08);transition:background .15s}.qa-card-icon .material-icons-round{font-size:20px;color:var(--qa-c,var(--navy-500));transition:transform .15s}.qa-card:hover .qa-card-icon .material-icons-round{transform:scale(1.1)}.qa-card-icon[style*="--qa-c:var(--navy-500)"]{background:rgba(41,59,94,.08)}.qa-card-icon[style*="--qa-c:var(--info-500)"]{background:rgba(59,130,246,.08)}.qa-card-icon[style*="--qa-c:var(--success-500)"]{background:rgba(16,185,129,.08)}.qa-card-icon[style*="--qa-c:var(--gold-500)"]{background:rgba(245,158,11,.08)}.qa-card-icon[style*="--qa-c:var(--navy-400)"]{background:rgba(96,125,179,.08)}.qa-card-icon[style*="--qa-c:var(--success-600)"]{background:rgba(5,150,105,.08)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--navy-500)"]{background:rgba(41,59,94,.14)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--info-500)"]{background:rgba(59,130,246,.14)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--success-500)"]{background:rgba(16,185,129,.14)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--gold-500)"]{background:rgba(245,158,11,.14)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--navy-400)"]{background:rgba(96,125,179,.14)}.qa-card:hover .qa-card-icon[style*="--qa-c:var(--success-600)"]{background:rgba(5,150,105,.14)}.qa-card-text{flex:1;min-width:0}.qa-card-label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);line-height:1.3}.qa-card-desc{font-size:var(--text-2xs);color:var(--text-tertiary);line-height:1.4;margin-top:1px}.qa-card-shortcut{flex-shrink:0;opacity:0;transition:opacity .15s}.qa-card:focus-visible .qa-card-shortcut,.qa-card:hover .qa-card-shortcut{opacity:1}.qa-card-shortcut kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-canvas);font-family:var(--font-primary);font-size:11px;font-weight:var(--weight-bold);color:var(--text-muted);box-shadow:0 1px 0 var(--gray-200)}.qa-card-arrow{flex-shrink:0;opacity:0;transform:translateX(4px);transition:.15s;color:var(--text-muted)}.qa-card-arrow .material-icons-round{font-size:18px}.qa-card:hover .qa-card-arrow{opacity:.6;transform:translateX(0)}.qa-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--space-3) var(--space-6);border-top:1px solid var(--border-subtle);background:var(--bg-canvas)}.qa-hint{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-2xs);color:var(--text-muted);white-space:nowrap}.qa-hint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;border-radius:3px;border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-primary);font-size:10px;font-weight:var(--weight-semibold);color:var(--text-secondary);box-shadow:0 1px 0 var(--gray-200)}[data-mode=black],[data-mode=dark]{background:rgba(0,0,0,.55)}[data-mode=black],[data-mode=dark]{border-color:var(--gray-700);box-shadow:0 20px 60px rgba(0,0,0,.4),0 4px 16px rgba(0,0,0,.25)}[data-mode=black],[data-mode=dark]{background:var(--gray-800)}[data-mode=black],[data-mode=dark]{background:rgba(59,130,246,.08);border-bottom-color:rgba(59,130,246,.15)}[data-mode=black],[data-mode=dark]{background:rgba(255,255,255,.05)}[data-mode=black],[data-mode=dark]{background:rgba(255,255,255,.08)}[data-mode=black],[data-mode=dark]{box-shadow:inset 0 0 0 2px var(--navy-400)}[data-mode=black],[data-mode=dark]{background:rgba(255,255,255,.06)}[data-mode=black],[data-mode=dark]{background:rgba(255,255,255,.1)}[data-mode=black],[data-mode=dark]{background:var(--gray-800);border-color:var(--gray-700);box-shadow:0 1px 0 var(--gray-900)}[data-mode=black],[data-mode=dark]{background:rgba(0,0,0,.15)}[data-mode=black],[data-mode=dark]{background:var(--gray-800);border-color:var(--gray-700);box-shadow:0 1px 0 var(--gray-900)}@media print{.qa-fab,.qa-overlay{display:none!important}}.ob-page{position:fixed;inset:0;z-index:1000;background:var(--navy-950);display:flex;align-items:center;justify-content:center;direction:rtl;overflow-y:auto;font-family:var(--font-primary)}.ob-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.ob-bg-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.25;animation:20s ease-in-out infinite ob-float}.ob-bg-orb-1{width:500px;height:500px;top:-10%;right:-5%;background:radial-gradient(circle,var(--navy-500),transparent 70%);animation-delay:0s}.ob-bg-orb-2{width:400px;height:400px;bottom:-10%;left:-5%;background:radial-gradient(circle,var(--gold-500),transparent 70%);animation-delay:-7s;animation-duration:25s}.ob-bg-orb-3{width:300px;height:300px;top:40%;left:30%;background:radial-gradient(circle,var(--emerald-500),transparent 70%);animation-delay:-14s;animation-duration:22s;opacity:.15}@keyframes ob-float{0%,100%{transform:translate(0,0) scale(1)}25%{transform:translate(30px,-40px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(10px,30px) scale(1.02)}}.ob-container{position:relative;z-index:1;width:100%;max-width:640px;padding:var(--space-6);display:flex;flex-direction:column;align-items:center;transition:opacity 280ms,transform 280ms}.ob-enter{opacity:0;transform:translateY(20px) scale(.97)}.ob-active{opacity:1;transform:translateY(0) scale(1)}.ob-exit{opacity:0;transform:translateY(-16px) scale(.97);pointer-events:none}.ob-progress-wrap{width:100%;margin-bottom:var(--space-6)}.ob-progress-dots{display:flex;align-items:center;justify-content:center;gap:var(--space-8);margin-bottom:var(--space-3)}.ob-progress-dot-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.ob-progress-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.15);border:2px solid rgba(255,255,255,.2);transition:.3s}.ob-progress-dot.done{background:var(--emerald-400);border-color:var(--emerald-400);box-shadow:0 0 8px rgba(16,185,129,.4)}.ob-progress-dot.current{background:var(--gold-400);border-color:var(--gold-400);box-shadow:0 0 8px rgba(228,177,66,.4);animation:1.5s ease-in-out infinite ob-pulse}.ob-progress-dot-label{font-size:var(--text-2xs);color:rgba(255,255,255,.82);font-weight:var(--weight-medium);white-space:nowrap}.ob-progress-dot-wrap:has(.done) .ob-progress-dot-label{color:var(--emerald-300)}.ob-progress-dot-wrap:has(.current) .ob-progress-dot-label{color:var(--gold-300)}.ob-progress-track{width:100%;height:3px;border-radius:var(--radius-full);background:rgba(255,255,255,.08);overflow:hidden}.ob-progress-fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--emerald-400),var(--gold-400));transition:width .5s var(--ease-spring)}@keyframes ob-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}.ob-card{width:100%;background:rgba(255,255,255,.06);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-2xl);padding:var(--space-10) var(--space-8);color:#fff;box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.08)}.ob-card-hero{text-align:center;padding:var(--space-12) var(--space-8)}.ob-card-complete{text-align:center}.ob-shake{animation:.4s ease-in-out ob-shake}@keyframes ob-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}.ob-welcome-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--navy-600),var(--navy-800));display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);position:relative;box-shadow:0 4px 24px rgba(77,103,147,.4)}.ob-welcome-icon::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(228,177,66,.3);animation:12s linear infinite ob-spin-slow}.ob-welcome-icon .material-icons-round{font-size:36px;color:var(--gold-300)}@keyframes ob-spin-slow{from{transform:rotate(0)}to{transform:rotate(360deg)}}.ob-welcome-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tighter);margin-bottom:var(--space-3);line-height:1.3}.ob-brand{color:var(--gold-300);background:linear-gradient(135deg,var(--gold-300),var(--gold-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ob-welcome-subtitle{font-size:var(--text-base);color:rgba(255,255,255,.7);line-height:1.7;margin-bottom:var(--space-8);max-width:440px;margin-left:auto;margin-right:auto}.ob-welcome-features{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-8);text-align:start}.ob-feature{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:rgba(255,255,255,.04);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.06);transition:background .2s}.ob-feature:hover{background:rgba(255,255,255,.08)}.ob-feature .material-icons-round{font-size:22px;color:var(--gold-400);flex-shrink:0}.ob-feature span:last-child{font-size:var(--text-sm);color:rgba(255,255,255,.85)}.ob-step-header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.ob-step-icon{width:52px;height:52px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--navy-600),var(--navy-800));display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(77,103,147,.3)}.ob-step-icon .material-icons-round{font-size:24px;color:#fff}.ob-step-icon-gold{background:linear-gradient(135deg,var(--gold-500),var(--gold-700))}.ob-step-icon-emerald{background:linear-gradient(135deg,var(--emerald-500),var(--emerald-700))}.ob-step-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:#fff;margin-bottom:var(--space-1)}.ob-step-subtitle{font-size:var(--text-sm);color:rgba(255,255,255,.6);line-height:1.5}.ob-form{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-4)}.ob-form-row{display:flex;gap:var(--space-4)}.ob-form-row>.ob-field{flex:1}.ob-form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-4)}.ob-field{display:flex;flex-direction:column;gap:var(--space-1)}.ob-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:rgba(255,255,255,.7);display:flex;align-items:center;gap:3px}.ob-required{color:var(--danger-400)}.ob-input-wrap{display:flex;align-items:center;gap:var(--space-2);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:0 var(--space-3);transition:border-color .2s,background .2s,box-shadow .2s}.ob-input-wrap:focus-within{border-color:var(--gold-400);background:rgba(255,255,255,.08);box-shadow:0 0 0 3px rgba(228,177,66,.12)}.ob-input-wrap-error{border-color:var(--danger-400)!important;box-shadow:0 0 0 3px rgba(239,68,68,.15)!important}.ob-input-icon{font-size:18px;color:rgba(255,255,255,.72);flex-shrink:0}.ob-input{flex:1;border:none;background:0 0;outline:0;padding:var(--space-2-5) 0;font-size:var(--text-sm);font-family:var(--font-primary);color:#fff;min-width:0}.ob-input::placeholder{color:rgba(255,255,255,.72)}.ob-input-error{color:var(--danger-300)}.ob-select{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:var(--space-2-5) var(--space-3);font-size:var(--text-sm);color:#fff;font-family:var(--font-primary);cursor:pointer;transition:border-color .2s}.ob-select:focus{border-color:var(--gold-400);outline:0}.ob-select option{background:var(--navy-900);color:#fff}.ob-field-error{font-size:var(--text-2xs);color:var(--danger-400);min-height:1em}.ob-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-4);width:100%}.ob-actions-left,.ob-actions-right{display:flex;align-items:center;gap:var(--space-2)}.ob-actions-complete{flex-direction:column;align-items:center;gap:var(--space-3);margin-top:var(--space-6)}.ob-btn-start{min-width:220px;font-size:var(--text-base)!important;padding:var(--space-3-5) var(--space-8)!important;gap:var(--space-2)}.ob-btn-next{gap:var(--space-2)}.ob-btn-skip{color:rgba(255,255,255,.78)!important;font-size:var(--text-xs)!important}.ob-btn-skip:hover{color:rgba(255,255,255,.7)!important}.ob-btn-skip-step{color:rgba(255,255,255,.82)!important;font-size:var(--text-xs)!important}.ob-btn-enter{min-width:240px;font-size:var(--text-base)!important;padding:var(--space-3-5) var(--space-8)!important;gap:var(--space-2)}.ob-btn-tour{gap:var(--space-2);color:rgba(255,255,255,.7)!important;border-color:rgba(255,255,255,.15)!important}.ob-tour-preview{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.ob-tour-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:rgba(255,255,255,.04);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.06);transition:background .2s,border-color .2s}.ob-tour-item:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}.ob-tour-item>.material-icons-round{font-size:24px;color:var(--gold-400);flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(228,177,66,.1);border-radius:var(--radius-md)}.ob-tour-item div{display:flex;flex-direction:column;gap:2px}.ob-tour-item strong{font-size:var(--text-sm);color:#fff;font-weight:var(--weight-semibold)}.ob-tour-item span:last-child{font-size:var(--text-xs);color:rgba(255,255,255,.82)}.ob-complete-icon{position:relative;margin:0 auto var(--space-6)}.ob-complete-circle{width:88px;height:88px;border-radius:50%;margin:0 auto;background:linear-gradient(135deg,var(--emerald-400),var(--emerald-600));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 24px rgba(16,185,129,.4);animation:ob-check-pop .6s var(--ease-spring) both;animation-delay:.3s}.ob-complete-circle .material-icons-round{font-size:44px;color:#fff}@keyframes ob-check-pop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.ob-confetti{position:absolute;inset:0;pointer-events:none}.ob-confetti-piece{position:absolute;width:8px;height:8px;border-radius:2px;animation:1.5s ease-out both ob-confetti-fall}.ob-c1{background:var(--gold-400);top:50%;right:50%;animation-delay:.4s;--ob-x:-60px;--ob-y:-80px}.ob-c2{background:var(--navy-300);top:50%;right:50%;animation-delay:.5s;--ob-x:50px;--ob-y:-70px}.ob-c3{background:var(--emerald-300);top:50%;right:50%;animation-delay:450ms;--ob-x:-40px;--ob-y:-90px}.ob-c4{background:var(--danger-400);top:50%;right:50%;animation-delay:550ms;--ob-x:70px;--ob-y:-60px}.ob-c5{background:var(--info-400);top:50%;right:50%;animation-delay:480ms;--ob-x:-20px;--ob-y:-100px}.ob-c6{background:var(--gold-300);top:50%;right:50%;animation-delay:520ms;--ob-x:30px;--ob-y:-85px;width:6px;height:12px}@keyframes ob-confetti-fall{0%{transform:translate(0,0) rotate(0) scale(0);opacity:0}20%{opacity:1;transform:translate(calc(var(--ob-x) * .3),calc(var(--ob-y) * .3)) rotate(90deg) scale(1)}100%{opacity:0;transform:translate(var(--ob-x),calc(var(--ob-y) + 40px)) rotate(360deg) scale(.5)}}.ob-complete-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:#fff;margin-bottom:var(--space-3)}.ob-complete-subtitle{font-size:var(--text-base);color:rgba(255,255,255,.65);line-height:1.7;margin-bottom:var(--space-6)}.ob-complete-tips{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);text-align:start}.ob-tip{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:rgba(255,255,255,.04);border-radius:var(--radius-md);font-size:var(--text-sm);color:rgba(255,255,255,.7)}.ob-tip .material-icons-round{font-size:18px;color:var(--navy-300);flex-shrink:0}.ob-tip kbd{padding:1px 6px;border-radius:var(--radius-xs);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);font-size:var(--text-2xs);font-family:var(--font-mono);color:var(--gold-300)}.tour-overlay{position:fixed;inset:0;z-index:10000;pointer-events:auto;opacity:0}.tour-overlay.tour-visible{opacity:1}.tour-overlay.tour-exit{opacity:0;transition:opacity 250ms;pointer-events:none!important}.tour-svg{position:absolute;inset:0;width:100%;height:100%}.tour-tooltip{position:fixed;z-index:10001;width:340px;max-width:90vw;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:0 12px 40px rgba(0,0,0,.3);padding:var(--space-5);color:var(--text-primary);direction:rtl;opacity:0;transform:translateY(8px);transition:opacity 250ms,transform 250ms}.tour-tooltip-visible{opacity:1;transform:translateY(0)}.tour-counter{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.tour-counter span{font-size:var(--text-2xs);font-weight:var(--weight-bold);color:var(--text-muted)}.tour-progress{flex:1;height:3px;background:var(--gray-100);border-radius:var(--radius-full);overflow:hidden}.tour-progress-fill{height:100%;background:linear-gradient(90deg,var(--navy-500),var(--gold-500));border-radius:var(--radius-full);transition:width .3s var(--ease-spring)}.tour-content{margin-bottom:var(--space-4)}.tour-step-icon .material-icons-round{font-size:28px;color:var(--navy-500);margin-bottom:var(--space-2)}.tour-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);margin-bottom:var(--space-1)}.tour-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.tour-nav{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.tour-nav-btns{display:flex;gap:var(--space-2)}.tour-skip-btn{color:var(--text-muted)!important;font-size:var(--text-xs)!important}.tour-target-pulse{position:relative;z-index:10002}.tour-target-pulse::after{content:'';position:absolute;inset:-6px;border-radius:var(--radius-md);border:2px solid var(--gold-400);animation:1.5s ease-in-out infinite tour-ring-pulse;pointer-events:none}@keyframes tour-ring-pulse{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.03)}}@media (max-width:480px){.ob-welcome-icon{width:64px;height:64px}.ob-welcome-icon .material-icons-round{font-size:28px}.ob-welcome-title{font-size:var(--text-xl)}.ob-step-title{font-size:var(--text-lg)}.ob-complete-circle{width:72px;height:72px}.ob-complete-circle .material-icons-round{font-size:36px}.ob-complete-title{font-size:var(--text-2xl)}}[data-theme=dark] .tour-tooltip{background:var(--gray-900);border-color:rgba(255,255,255,.1);box-shadow:0 12px 40px rgba(0,0,0,.5)}.ob-checklist{position:fixed;bottom:90px;left:24px;width:340px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:0 12px 40px rgba(0,0,0,.12),0 4px 12px rgba(0,0,0,.06);z-index:250;overflow:hidden;animation:ob-cl-slide-in .4s var(--ease-smooth) both;direction:rtl;font-family:var(--font-primary)}@keyframes ob-cl-slide-in{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ob-checklist.ob-cl-complete{animation:.6s both ob-cl-celebrate}@keyframes ob-cl-celebrate{0%{transform:scale(1)}30%{transform:scale(1.03)}60%{border-color:var(--success-400);box-shadow:0 0 20px var(--success-200)}100%{opacity:0;transform:translateY(20px) scale(.95)}}.ob-cl-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,var(--accent-600),var(--accent-700));color:#fff;cursor:pointer;user-select:none;transition:background .2s}.ob-cl-header:hover{background:linear-gradient(135deg,var(--accent-500),var(--accent-600))}.ob-cl-header-right{display:flex;align-items:center;gap:8px}.ob-cl-header-right .material-icons-round{font-size:20px}.ob-cl-header-title{font-weight:700;font-size:14px}.ob-cl-header-left{display:flex;align-items:center;gap:6px}.ob-cl-progress-text{font-size:12px;font-weight:600;opacity:.85;font-variant-numeric:tabular-nums}.ob-cl-expand{font-size:20px;transition:transform .2s;opacity:.7}.ob-cl-progress-bar{height:4px;background:var(--bg-muted);border-radius:2px;margin:12px 16px 8px;overflow:hidden}.ob-cl-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-500),var(--success-500));border-radius:2px;transition:width .5s var(--ease-smooth)}.ob-cl-body{padding:0 0 4px;max-height:360px;overflow-y:auto}.ob-cl-item{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-subtle);transition:background 150ms}.ob-cl-item:hover{background:var(--bg-hover)}.ob-cl-item:last-of-type{border-bottom:none}.ob-cl-item.done{opacity:.55}.ob-cl-item.done .ob-cl-item-title{text-decoration:line-through}.ob-cl-check{flex-shrink:0;margin-top:1px}.ob-cl-check .material-icons-round{font-size:20px;color:var(--text-muted);transition:color .2s}.ob-cl-item.done .ob-cl-check .material-icons-round{color:var(--success-500)}.ob-cl-item-content{flex:1;min-width:0}.ob-cl-item-title{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4}.ob-cl-item-desc{font-size:11px;color:var(--text-muted);margin-top:2px;line-height:1.4}.ob-cl-item-action{flex-shrink:0;font-size:11px!important;padding:2px 8px!important;align-self:center}.ob-cl-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-top:1px solid var(--border-subtle);background:var(--bg-muted)}.ob-cl-demo-btn{font-size:11px!important;gap:4px}.ob-cl-demo-btn .material-icons-round{font-size:14px}.ob-cl-dismiss{font-size:10px!important;opacity:.5}.ob-cl-dismiss:hover{opacity:1}.ctx-tooltip{position:fixed;z-index:500;max-width:300px;background:var(--bg-surface);border:1px solid var(--accent-200);border-radius:var(--radius-xl);box-shadow:0 8px 30px rgba(0,0,0,.12),0 0 0 1px var(--accent-100);padding:14px 16px 10px;animation:ctx-tooltip-in .3s var(--ease-smooth) both;direction:rtl;font-family:var(--font-primary)}@keyframes ctx-tooltip-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ctx-tooltip-arrow{position:absolute;width:12px;height:12px;background:var(--bg-surface);border:1px solid var(--accent-200);transform:rotate(45deg)}.ctx-tooltip-top .ctx-tooltip-arrow{bottom:-7px;left:50%;margin-left:-6px;border-top:none;border-left:none}.ctx-tooltip-bottom .ctx-tooltip-arrow{top:-7px;left:50%;margin-left:-6px;border-bottom:none;border-right:none}.ctx-tooltip-left .ctx-tooltip-arrow{right:-7px;top:50%;margin-top:-6px;border-left:none;border-bottom:none}.ctx-tooltip-right .ctx-tooltip-arrow{left:-7px;top:50%;margin-top:-6px;border-right:none;border-top:none}.ctx-tooltip-title{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.ctx-tooltip-text{font-size:12px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.ctx-tooltip-close{position:absolute;top:8px;left:8px;background:0 0;border:none;cursor:pointer;padding:2px;border-radius:50%;color:var(--text-muted);transition:color 150ms}.ctx-tooltip-close:hover{color:var(--text-primary)}.ctx-tooltip-got-it{font-size:11px!important;color:var(--accent-600)!important;font-weight:600!important}[data-theme=dark] .ob-checklist{box-shadow:0 12px 40px rgba(0,0,0,.4)}[data-theme=dark] .ctx-tooltip{border-color:var(--accent-800);box-shadow:0 8px 30px rgba(0,0,0,.4),0 0 0 1px var(--accent-900)}[data-theme=dark] .ctx-tooltip-arrow{border-color:var(--accent-800)}@media (max-width:768px){.ob-checklist{left:12px;right:12px;bottom:80px;width:auto}.ctx-tooltip{max-width:calc(100vw - 32px)}}.ob-demo-section{margin-top:var(--space-4);padding-top:var(--space-2)}.ob-demo-divider{display:flex;align-items:center;gap:12px;margin-bottom:var(--space-4);color:var(--text-muted);font-size:var(--text-sm)}.ob-demo-divider::after,.ob-demo-divider::before{content:'';flex:1;height:1px;background:var(--border-subtle)}.ob-demo-divider span{font-weight:600}.ob-btn-demo{width:100%;justify-content:center;gap:8px;padding:12px!important;font-size:var(--text-sm)!important;border-style:dashed!important}.ob-btn-demo .material-icons-round{font-size:20px}.ob-demo-hint{text-align:center;font-size:11px;color:var(--text-muted);margin-top:var(--space-2);line-height:1.5}.header-hamburger{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:0 0;border:none;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.header-hamburger:hover{background:var(--bg-hover);color:var(--text-primary)}.header-hamburger .material-icons-round{font-size:24px}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,0);z-index:399;transition:background .3s;pointer-events:none}.sidebar-overlay.visible{background:rgba(0,0,0,.5);pointer-events:auto}@media (max-width:1024px){.header-hamburger{display:flex}.app-sidebar{position:fixed;top:0;right:0;bottom:0;width:280px;z-index:500;transform:translateX(100%);transition:transform .3s var(--ease-smooth)}.app-sidebar.mobile-open{transform:translateX(0);box-shadow:-8px 0 30px rgba(0,0,0,.3)}.sidebar-overlay{z-index:499}.app-main-area{margin-right:0!important}.sidebar-collapsed .app-sidebar{width:280px}.sidebar-collapsed .app-main-area{margin-right:0!important}.sidebar-collapsed .nav-item-badge,.sidebar-collapsed .nav-item-label,.sidebar-collapsed .nav-section-title,.sidebar-collapsed .sidebar-brand,.sidebar-collapsed .sidebar-footer>div{display:unset}.sidebar-toggle-btn{display:none}}@media (max-width:768px){.page-container{padding:var(--space-3)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.page-title{font-size:var(--text-xl)}.app-header{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.header-search{display:none}.header-end{gap:var(--space-1)}.data-table,.data-table-wrap{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:600px}.fin-edit-row,.ob-form-row,.ob-form-row-3,.skeleton-card-grid,.tasks-form-row,.txd-contact-grid,.txd-docs-grid{grid-template-columns:1fr!important}.modal-content{width:95vw!important;max-width:none!important;margin:var(--space-3)}.txd-overview{grid-template-columns:1fr!important}.txd-kpi-strip{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:var(--space-2)}.txd-kpi-strip>*{flex-shrink:0}.fin-summary-row{grid-template-columns:repeat(2,1fr)!important;gap:var(--space-2)}.txd-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.txd-tab{white-space:nowrap;flex-shrink:0}.ds-kpi-grid{grid-template-columns:repeat(2,1fr)!important}.kanban-board{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.kanban-column{min-width:280px;flex-shrink:0}.filter-bar{flex-wrap:wrap;gap:var(--space-2)}.stats-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.stats-bar>*{flex-shrink:0}.btn-sm{min-height:36px;min-width:36px}.btn-icon{min-width:40px;min-height:40px}.txd-stepper{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.page-container{padding:var(--space-2)}.ds-kpi-grid,.fin-summary-row{grid-template-columns:1fr!important}.login-card-inner{padding:var(--space-6) var(--space-4)}.modal-content{margin:var(--space-2)}.txd-contact-add-row{flex-direction:column}.toast-container{max-width:calc(100vw - 32px);left:16px;right:16px;transform:none}.toast{font-size:13px}.modal-footer{flex-wrap:wrap;gap:var(--space-2)}.modal-footer .btn{flex:1 1 auto;min-width:0;justify-content:center}.modal-body,.modal-footer,.modal-header{padding:var(--space-3) var(--space-4)}.qa-palette{width:calc(100vw - 32px)!important;max-height:70vh}.qa-fab{bottom:calc(16px + env(safe-area-inset-bottom,0px));left:16px}.ob-checklist{width:auto;left:8px;right:8px;bottom:calc(80px + env(safe-area-inset-bottom,0px));max-width:100%}.ob-cl-body{max-height:200px}.ob-cl-header{min-height:48px;padding:10px 14px}.ob-cl-item{min-height:48px;padding:8px 14px}.ob-cl-item-action{min-height:36px;min-width:36px;padding:6px 12px}.ob-cl-dismiss{min-height:40px;padding:8px 16px;font-size:var(--text-sm)}.ob-cl-footer{padding:8px 14px;gap:8px}.ob-cl-demo-btn{min-height:40px}}@media (max-width:768px){.header-action-btn{width:44px;height:44px}.qa-fab{width:56px;height:56px;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:16px}.modal-footer{flex-direction:column;gap:8px}.modal-footer .btn{width:100%;justify-content:center}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.qa-card-shortcut,.qa-footer,kbd{display:none}.qa-overlay .qa-palette{width:calc(100vw - 24px)!important;max-height:80vh}.nc-panel{width:calc(100vw - 16px);max-width:100%;right:8px}}.ob-cl-close-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:0 0;color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;margin-inline-start:4px;flex-shrink:0}.ob-cl-close-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.ob-cl-close-btn .material-icons-round{font-size:18px}@media (max-width:768px){.ob-cl-close-btn{display:flex;width:44px;height:44px}.ob-cl-close-btn .material-icons-round{font-size:20px}}#page-content,.app-main-area{overflow-x:hidden}.qa-fab{left:auto!important;right:28px}.header-new-btn{display:inline-flex;align-items:center;gap:5px;padding:0 14px 0 10px;height:34px;background:#1b2232;border:1px solid rgba(77,103,147,.35);border-radius:var(--radius-full,9999px);color:rgba(255,255,255,.82);font-size:.8125rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background 150ms,border-color 150ms,transform 120ms,box-shadow 150ms;letter-spacing:.01em;flex-shrink:0}.header-new-btn .material-icons-round{font-size:18px;color:rgba(255,255,255,.82);transition:color 150ms,transform .2s}.header-new-btn:hover{background:#243047;border-color:rgba(77,103,147,.6);box-shadow:0 2px 8px rgba(41,59,94,.25);transform:translateY(-1px)}.header-new-btn:hover .material-icons-round{color:rgba(255,255,255,.9);transform:rotate(90deg)}.header-new-btn:active{transform:scale(.95) translateY(0)}.header-new-btn:focus-visible{outline:0;box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px var(--navy-400)}[data-mode=light] .header-new-btn{background:rgba(27,34,50,.9);border-color:rgba(77,103,147,.4)}[data-mode=black] .header-new-btn,[data-mode=dark] .header-new-btn{background:rgba(77,103,147,.18);border-color:rgba(77,103,147,.3)}.qa-body{max-height:72vh;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.qa-body::-webkit-scrollbar{width:4px}.qa-body::-webkit-scrollbar-thumb{background:var(--gray-200);border-radius:2px}.qa-group-label{display:flex;align-items:center;gap:6px;padding:10px 20px 6px;font-size:.6875rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.qa-group-label .material-icons-round{font-size:14px;color:var(--text-muted);opacity:.7}.qa-section-divider{height:1px;background:var(--border-subtle);margin:8px 16px}.qa-list-nav{display:grid!important;grid-template-columns:1fr 1fr;gap:2px!important;padding:4px 12px 12px!important}.qa-list-nav .qa-card{padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg)}.qa-list-nav .qa-card-icon{width:34px;height:34px}.qa-list-nav .qa-card-icon .material-icons-round{font-size:17px}.qa-list-nav .qa-card-label{font-size:var(--text-xs)}.qa-list-nav .qa-card-arrow{display:none}[data-mode=black] .qa-group-label,[data-mode=dark] .qa-group-label{color:rgba(255,255,255,.65)}[data-mode=black] .qa-body::-webkit-scrollbar-thumb,[data-mode=dark] .qa-body::-webkit-scrollbar-thumb{background:var(--gray-700)}@media (max-width:600px){.qa-list-nav{grid-template-columns:1fr}.header-new-btn span:not(.material-icons-round){display:none}.header-new-btn{padding:0 10px;width:36px;justify-content:center}}.wb-bar{display:flex;align-items:center;gap:var(--space-3);padding:12px 20px;margin-bottom:var(--space-6);background:linear-gradient(135deg,rgba(27,34,50,.96) 0,rgba(36,48,71,.96) 100%);border:1px solid rgba(77,103,147,.28);border-radius:var(--radius-xl);color:rgba(255,255,255,.85);direction:rtl;position:relative;overflow:hidden;opacity:0;transform:translateY(-6px);transition:opacity 260ms,transform 260ms cubic-bezier(.22,1,.36,1)}.wb-bar::before{content:'';position:absolute;top:0;bottom:0;right:0;width:160px;background:radial-gradient(ellipse at right center,rgba(78,117,84,.14) 0,transparent 70%);pointer-events:none}.wb-bar.wb-visible{opacity:1;transform:translateY(0)}.wb-bar.wb-hiding{opacity:0;transform:translateY(-4px);transition:opacity 220ms,transform 220ms}.wb-bar-wave{font-size:22px;color:rgba(255,215,100,.85);flex-shrink:0;animation:2.4s ease-in-out 1.2s 3 wb-wave}@keyframes wb-wave{0%,100%{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(14deg)}60%{transform:rotate(-10deg)}80%{transform:rotate(8deg)}}.wb-bar-text{display:flex;flex-direction:column;gap:1px;min-width:0}.wb-bar-title{font-size:.8125rem;font-weight:700;color:rgba(255,255,255,.93);white-space:nowrap}.wb-bar-sub{font-size:.6875rem;font-weight:500;color:rgba(255,255,255,.78)}.wb-bar-spacer{flex:1}.wb-bar-dots{display:flex;align-items:center;gap:5px;flex-shrink:0}.wb-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.15);transition:background .3s}.wb-dot-active{background:rgba(78,117,84,.9);width:10px;border-radius:3px}.wb-bar-start{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:rgba(78,117,84,.22);border:1px solid rgba(78,117,84,.4);border-radius:var(--radius-full);color:rgba(155,210,160,.95);font-size:.8125rem;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background 150ms,border-color 150ms,transform 130ms}.wb-bar-start .material-icons-round{font-size:16px;color:rgba(155,210,160,.8)}.wb-bar-start:hover{background:rgba(78,117,84,.35);border-color:rgba(78,117,84,.6);transform:translateY(-1px)}.wb-bar-start:active{transform:scale(.96)}.wb-bar-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);border:none;background:0 0;color:rgba(255,255,255,.65);cursor:pointer;flex-shrink:0;transition:background 140ms,color 140ms}.wb-bar-close .material-icons-round{font-size:18px}.wb-bar-close:hover{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7)}@media (max-width:640px){.wb-bar{flex-wrap:wrap;gap:var(--space-2)}.wb-bar-dots,.wb-bar-spacer,.wb-bar-sub{display:none}}[data-mode=black] .tour-tooltip,[data-mode=dark] .tour-tooltip{background:var(--gray-900);border-color:rgba(255,255,255,.1);box-shadow:0 16px 48px rgba(0,0,0,.5)}.tour-overlay{transition:opacity 280ms}.toast.toast-success{background:#0d2318;border-color:rgba(52,211,153,.2);border-right-color:#34d399}.toast.toast-success .toast-icon{color:#34d399}.toast.toast-success .toast-message{color:rgba(255,255,255,.9);animation:.38s 60ms both toast-text-in}.toast.toast-error{background:#1f0f0f;border-color:rgba(248,113,113,.2);border-right-color:#f87171}.toast.toast-warning{background:#1a1200;border-color:rgba(251,191,36,.2);border-right-color:#fbbf24}.toast.toast-success .toast-icon .material-icons-round{animation:.45s cubic-bezier(.22,1,.36,1) both toast-icon-pop}@keyframes toast-icon-pop{0%{transform:scale(.5) rotate(-20deg);opacity:0}60%{transform:scale(1.2) rotate(4deg)}100%{transform:scale(1) rotate(0);opacity:1}}@keyframes toast-text-in{from{opacity:0;transform:translateX(6px)}to{opacity:1;transform:translateX(0)}}.btn-flash-success{background:rgba(52,211,153,.18)!important;border-color:rgba(52,211,153,.45)!important;color:#34d399!important;pointer-events:none;transition:background .2s,border-color .2s,color .2s!important}.btn-flash-success .material-icons-round{color:#34d399!important}.saved-pill{position:fixed;z-index:9500;display:inline-flex;align-items:center;gap:5px;padding:4px 11px 4px 9px;background:#0d2318;border:1px solid rgba(52,211,153,.35);border-radius:99px;font-size:.6875rem;font-weight:700;color:#34d399;pointer-events:none;white-space:nowrap;letter-spacing:.02em;opacity:0;transform:translateY(4px) scale(.92);animation:.28s cubic-bezier(.22,1,.36,1) forwards saved-pill-in,.28s 1.2s forwards saved-pill-out}.saved-pill .material-icons-round{font-size:13px;color:#34d399}@keyframes saved-pill-in{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes saved-pill-out{to{opacity:0;transform:translateY(-4px) scale(.9)}}

/* ── Mobile sidebar logout button ── */
.sidebar-logout-mobile {
    display: none;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 12px;
    margin-bottom: 8px;
    border-radius: var(--radius-md);
    background: rgba(239,68,68,0.07);
    border: 1px solid rgba(239,68,68,0.18);
    color: rgba(239,100,100,0.9);
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
    cursor: pointer;
    transition: background var(--duration-fast), border-color var(--duration-fast);
    text-align: right;
    direction: rtl;
}
.sidebar-logout-mobile .material-icons-round {
    font-size: 18px;
    flex-shrink: 0;
}
.sidebar-logout-mobile:hover {
    background: rgba(239,68,68,0.14);
    border-color: rgba(239,68,68,0.35);
    color: rgba(255,100,100,1);
}
@media (max-width: 1024px) {
    .sidebar-logout-mobile { display: flex; }
}
/* ═══════════════════════════════════════════════════════════
   DASHBOARD WIDGETS GRID
   ═══════════════════════════════════════════════════════════ */
.dash-widgets-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.25rem;
    margin-top: 1.25rem;
}

/* ═══════════════════════════════════════════════════════════
   POMODORO WIDGET
   ═══════════════════════════════════════════════════════════ */
.pomo-widget {
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--ql-card-radius);
    box-shadow: var(--ql-card-shadow);
    padding: 1.25rem 1rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    transition: box-shadow 140ms ease, border-color 140ms ease;
    user-select: none;
}
.pomo-widget:hover {
    box-shadow: var(--ql-card-shadow-hover);
    border-color: var(--border-strong);
}

/* Header */
.pomo-header {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
    align-self: flex-start;
}
.pomo-header .material-icons-round { font-size: 14px; opacity: 0.6; }

/* Ring */
.pomo-ring-wrap {
    position: relative;
    width: 148px;
    height: 148px;
    flex-shrink: 0;
}
.pomo-ring {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}
.pomo-ring-track {
    fill: none;
    stroke: var(--border-subtle);
    stroke-width: 7;
}
.pomo-ring-progress {
    fill: none;
    stroke: var(--accent-500, #4e7554);
    stroke-width: 7;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.9s linear, stroke 0.3s ease;
}

/* State-based ring colors */
.pomo-widget[data-state="short_break"] .pomo-ring-progress,
.pomo-widget[data-state="long_break"]  .pomo-ring-progress {
    stroke: var(--ql-status-warning-dot, #a07c30);
}
.pomo-widget[data-state="paused"] .pomo-ring-progress {
    stroke: var(--text-muted);
    transition: none;
}

/* Center text inside ring */
.pomo-center {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
}
.pomo-time {
    font-size: 1.875rem;
    font-weight: 700;
    letter-spacing: -0.04em;
    line-height: 1;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum' 1;
}
.pomo-state-label {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-tertiary);
    letter-spacing: 0.01em;
}

/* Session dots */
.pomo-dots {
    display: flex;
    align-items: center;
    gap: 6px;
}
.pomo-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--border-default);
    transition: background 200ms ease, transform 200ms ease;
}
.pomo-dot.filled {
    background: var(--accent-500, #4e7554);
    transform: scale(1.1);
}

/* Task label */
.pomo-task-label {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    text-align: center;
    max-width: 200px;
    line-height: 1.5;
    min-height: 1.5em;
}

/* Actions */
.pomo-actions {
    display: flex;
    gap: 6px;
    align-items: center;
}
.pomo-btn {
    height: 32px;
    padding: 0 0.875rem;
    border-radius: var(--ql-btn-radius-sm);
    font-size: 0.75rem;
    font-weight: 550;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}
.pomo-btn .material-icons-round { font-size: 15px; line-height: 1; }
.pomo-btn-primary  {
    background: var(--ql-ink-800);
    color: rgba(255,255,255,0.92);
}
.pomo-btn-primary:hover  { background: var(--ql-ink-700); }
.pomo-btn-secondary {
    background: var(--bg-sunken);
    color: var(--text-secondary);
    border-color: var(--border-default);
}
.pomo-btn-secondary:hover { background: var(--bg-elevated); border-color: var(--border-strong); }
.pomo-btn-ghost {
    background: transparent;
    color: var(--text-muted);
}
.pomo-btn-ghost:hover { background: var(--bg-sunken); color: var(--text-secondary); }

[data-mode=dark] .pomo-btn-primary,
[data-mode=black] .pomo-btn-primary {
    background: rgba(255,255,255,0.12);
    color: rgba(255,255,255,0.9);
}
[data-mode=dark] .pomo-btn-primary:hover,
[data-mode=black] .pomo-btn-primary:hover {
    background: rgba(255,255,255,0.18);
}

@media (max-width: 768px) {
    .dash-widgets-grid { grid-template-columns: 1fr; }
    .pomo-ring-wrap { width: 132px; height: 132px; }
    .pomo-time { font-size: 1.625rem; }
}

/* ═══════════════════════════════════════════════════════════
   SHARED WIDGET CARD BASE
   ═══════════════════════════════════════════════════════════ */
.dash-widget-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--ql-card-radius);
    box-shadow: var(--ql-card-shadow);
    padding: 1rem 1.125rem 1.125rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    transition: box-shadow 140ms ease, border-color 140ms ease;
    min-height: 0;
}
.dash-widget-card:hover {
    box-shadow: var(--ql-card-shadow-hover);
    border-color: var(--border-strong);
}
.dash-widget-header {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
}
.dash-widget-header .material-icons-round { font-size: 14px; opacity: 0.65; }
.dash-widget-body { display: flex; flex-direction: column; gap: 0; }
.dash-widget-empty {
    display: flex; align-items: center; gap: 6px;
    padding: 0.75rem 0;
    font-size: 0.75rem; color: var(--text-muted);
}
.dash-widget-empty .material-icons-round { font-size: 16px; opacity: 0.5; color: var(--accent-500); }

/* ═══════════════════════════════════════════════════════════
   1. PIPELINE
   ═══════════════════════════════════════════════════════════ */
.pipe-row {
    display: grid;
    grid-template-columns: 130px 1fr 28px;
    align-items: center;
    gap: 8px;
    padding: 5px 0;
    cursor: pointer;
    border-radius: 4px;
    transition: background 100ms;
}
.pipe-row:hover { background: var(--bg-sunken); }
.pipe-label {
    font-size: 0.75rem;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: end;
}
.pipe-track {
    height: 8px;
    background: var(--bg-sunken);
    border-radius: 99px;
    overflow: hidden;
}
.pipe-fill {
    height: 100%;
    border-radius: 99px;
    transition: width 0.6s cubic-bezier(0.25, 0, 0.15, 1);
    min-width: 4px;
}
.pipe-count {
    font-size: 0.75rem;
    font-weight: 650;
    color: var(--text-primary);
    text-align: center;
    font-feature-settings: 'tnum' 1;
}
.pipe-total {
    margin-top: 4px;
    padding-top: 8px;
    border-top: 1px solid var(--border-subtle);
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-align: center;
}

/* ═══════════════════════════════════════════════════════════
   2. URGENT TASKS
   ═══════════════════════════════════════════════════════════ */
.utask-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 4px;
    border-bottom: 1px solid var(--border-subtle);
    cursor: pointer;
    border-radius: 4px;
    transition: background 100ms;
}
.utask-row:last-child { border-bottom: none; }
.utask-row:hover { background: var(--bg-sunken); }
.utask-dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}
.utask-dot.priority-urgent { background: var(--danger-500); }
.utask-dot.priority-high   { background: var(--warning-500); }
.utask-dot.priority-medium { background: var(--accent-500); }
.utask-dot.priority-low    { background: var(--border-strong); }
.utask-info { flex: 1; min-width: 0; }
.utask-title {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.utask-tx {
    font-size: 0.6875rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 1px;
}
.utask-date {
    display: flex;
    align-items: center;
    gap: 3px;
    font-size: 0.6875rem;
    color: var(--text-muted);
    white-space: nowrap;
    flex-shrink: 0;
}
.utask-date .material-icons-round { font-size: 13px; }
.utask-date.red   { color: var(--danger-500); }
.utask-date.amber { color: var(--warning-500); }

/* ═══════════════════════════════════════════════════════════
   3. UPCOMING EVENTS
   ═══════════════════════════════════════════════════════════ */
.uevent-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 4px;
    border-bottom: 1px solid var(--border-subtle);
    cursor: pointer;
    border-radius: 4px;
    transition: background 100ms;
}
.uevent-row:last-child { border-bottom: none; }
.uevent-row:hover { background: var(--bg-sunken); }
.uevent-date {
    display: flex; flex-direction: column; align-items: center;
    width: 36px; flex-shrink: 0;
    background: var(--bg-sunken);
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    padding: 3px 0;
}
.uevent-date.today {
    background: var(--accent-500);
    border-color: var(--accent-500);
    color: white;
}
.uevent-day {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
}
.uevent-mon { font-size: 0.5625rem; font-weight: 500; letter-spacing: 0.04em; }
.uevent-info { flex: 1; min-width: 0; }
.uevent-title {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.uevent-time { font-size: 0.6875rem; color: var(--text-muted); margin-top: 1px; }

/* ═══════════════════════════════════════════════════════════
   4. SPARKLINE
   ═══════════════════════════════════════════════════════════ */
.spark-summary {
    display: flex; align-items: baseline; gap: 6px;
}
.spark-total {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--text-primary);
    font-feature-settings: 'tnum' 1;
}
.spark-sub { font-size: 0.6875rem; color: var(--text-muted); }
.spark-svg { width: 100%; height: 64px; overflow: visible; }
.spark-area {
    fill: var(--accent-500);
    opacity: 0.08;
}
.spark-line {
    fill: none;
    stroke: var(--accent-500);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.spark-dot {
    fill: var(--accent-500);
    stroke: var(--bg-surface);
    stroke-width: 1.5;
}
.spark-labels {
    display: flex;
    justify-content: space-between;
    padding: 0 8px;
    margin-top: -4px;
}
.spark-labels span {
    font-size: 0.5625rem;
    color: var(--text-muted);
    letter-spacing: 0.03em;
}

/* ═══════════════════════════════════════════════════════════
   5. HEATMAP
   ═══════════════════════════════════════════════════════════ */
.hm-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 6px;
}
.hm-cell {
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    border-radius: 6px;
    padding: 6px 2px;
    gap: 2px;
    background: var(--bg-sunken);
    border: 1px solid var(--border-subtle);
    transition: transform 120ms ease;
    cursor: default;
}
.hm-cell:hover { transform: scale(1.05); }
.hm-cell.level-1 { background: color-mix(in srgb, var(--accent-500) 18%, var(--bg-sunken)); border-color: color-mix(in srgb, var(--accent-500) 30%, transparent); }
.hm-cell.level-2 { background: color-mix(in srgb, var(--accent-500) 40%, var(--bg-sunken)); border-color: color-mix(in srgb, var(--accent-500) 50%, transparent); }
.hm-cell.level-3 { background: color-mix(in srgb, var(--accent-500) 70%, var(--bg-sunken)); border-color: var(--accent-500); }
.hm-day {
    font-size: 0.5625rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--text-muted);
}
.hm-cell.level-2 .hm-day,
.hm-cell.level-3 .hm-day { color: rgba(255,255,255,0.8); }
.hm-val {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-primary);
    font-feature-settings: 'tnum' 1;
    min-height: 1em;
}
.hm-cell.level-2 .hm-val,
.hm-cell.level-3 .hm-val { color: white; }
.hm-summary {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-align: center;
}

/* ═══════════════════════════════════════════════════════════
   6. PROGRESS RINGS
   ═══════════════════════════════════════════════════════════ */
.rings-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.ring-item {
    display: flex; flex-direction: column;
    align-items: center; gap: 5px;
    padding: 6px 4px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 100ms;
}
.ring-item:hover { background: var(--bg-sunken); }
.ring-svg {
    width: 60px; height: 60px;
    transform: rotate(-90deg);
    overflow: visible;
}
.ring-bg {
    fill: none;
    stroke: var(--border-subtle);
    stroke-width: 5;
}
.ring-fill {
    fill: none;
    stroke-width: 5;
    stroke-linecap: round;
    stroke-dasharray: 138.23;
    transition: stroke-dashoffset 0.8s cubic-bezier(0.25, 0, 0.15, 1);
}
.ring-txt {
    font-size: 11px;
    font-weight: 700;
    fill: var(--text-primary);
    text-anchor: middle;
    transform: rotate(90deg);
    transform-origin: 30px 30px;
    font-feature-settings: 'tnum' 1;
}
.ring-addr {
    font-size: 0.5625rem;
    color: var(--text-muted);
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 72px;
    line-height: 1.3;
}

@media (max-width: 768px) {
    .pipe-row   { grid-template-columns: 100px 1fr 24px; }
    .pipe-label { font-size: 0.6875rem; }
    .rings-grid { grid-template-columns: repeat(3, 1fr); }
    .ring-svg   { width: 52px; height: 52px; }
}

/* ── Contacts modal tabs ── */
.contacts-modal-tabs {
    display: flex;
    gap: 4px;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--border-subtle);
}
.contacts-tab-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 14px;
    border-radius: var(--radius-md);
    font-size: var(--text-xs);
    font-weight: 600;
    cursor: pointer;
    background: transparent;
    border: 1px solid var(--border-subtle);
    color: var(--text-muted);
    transition: all 120ms ease;
}
.contacts-tab-btn.active {
    background: var(--bg-sunken);
    border-color: var(--border-default);
    color: var(--text-primary);
}
.contacts-tab-btn .material-icons-round { font-size: 15px; }

/* ── Email Thread View ── */
.email-thread-wrap { border-bottom: 1px solid var(--border-subtle); }
.email-thread-wrap.expanded { background: var(--bg-sunken); border-radius: 6px; margin: 4px; border: 1px solid var(--border-default); }
.email-thread-hdr {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    cursor: pointer;
    transition: background 100ms;
}
.email-thread-hdr:hover { background: var(--bg-sunken); }
.email-thread-hdr.expanded { background: var(--bg-elevated); border-bottom: 1px solid var(--border-subtle); }
.email-thread-msgs { border-top: 1px solid var(--border-subtle); }
.email-thread-msgs .email-row { padding-right: 32px; }
.email-thread-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 5px;
    background: var(--bg-sunken);
    border: 1px solid var(--border-default);
    border-radius: 9px;
    font-size: 0.625rem;
    font-weight: 700;
    color: var(--text-muted);
}
.email-thread-hdr.email-unread .email-thread-count {
    background: var(--accent-100);
    border-color: var(--accent-300);
    color: var(--accent-600);
}

/* ── Timeline visual summary ── */
.txd-tl-summary {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 16px 20px;
    background: var(--bg-sunken);
    border-radius: 10px;
    margin-bottom: 20px;
    border: 1px solid var(--border-subtle);
}
.txd-tl-ring {
    width: 64px;
    height: 64px;
    transform: rotate(-90deg);
    flex-shrink: 0;
}
.txd-tl-ring-bg {
    fill: none;
    stroke: var(--border-default);
    stroke-width: 6;
}
.txd-tl-ring-fill {
    fill: none;
    stroke: var(--accent-500);
    stroke-width: 6;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.8s cubic-bezier(.25,0,.15,1);
}
.txd-tl-ring-txt {
    font-size: 13px;
    font-weight: 700;
    fill: var(--text-primary);
    text-anchor: middle;
    transform: rotate(90deg);
    transform-origin: 32px 32px;
    font-feature-settings: 'tnum' 1;
}
.txd-tl-stats {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}
.txd-tl-stat { display: flex; flex-direction: column; gap: 2px; }
.txd-tl-stat-val {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.02em;
    font-feature-settings: 'tnum' 1;
}
.txd-tl-stat-val.accent { color: var(--accent-500); font-size: 0.875rem; }
.txd-tl-stat-val.danger { color: var(--danger-500); }
.txd-tl-stat-lbl { font-size: 0.6875rem; color: var(--text-muted); font-weight: 500; }

/* ── Calendar Mini-View Widget ── */
.cal-mini-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    margin-bottom: 12px;
}
.cal-mini-cell {
    display: flex; flex-direction: column; align-items: center;
    padding: 6px 2px;
    border-radius: 7px;
    background: var(--bg-sunken);
    border: 1px solid transparent;
    cursor: default;
    transition: border-color 120ms;
}
.cal-mini-cell.today {
    background: var(--accent-500);
    color: white;
}
.cal-mini-cell.today .cal-mini-day,
.cal-mini-cell.today .cal-mini-num { color: white; }
.cal-mini-cell.has-items { border-color: var(--border-default); }
.cal-mini-day { font-size: 0.5625rem; font-weight: 600; color: var(--text-muted); letter-spacing: 0.03em; }
.cal-mini-num { font-size: 0.875rem; font-weight: 700; color: var(--text-primary); line-height: 1.2; }
.cal-mini-dots { display: flex; gap: 2px; margin-top: 2px; }
.cal-dot { width: 5px; height: 5px; border-radius: 50%; }
.cal-dot.event { background: var(--info-500, #3b82f6); }
.cal-dot.task  { background: var(--warning-500, #f59e0b); }
.cal-mini-cell.today .cal-dot { background: rgba(255,255,255,0.8); }

.cal-mini-list { display: flex; flex-direction: column; gap: 0; }
.cal-mini-item {
    display: flex; align-items: center; gap: 8px;
    padding: 7px 4px;
    border-bottom: 1px solid var(--border-subtle);
    cursor: default;
}
.cal-mini-item:last-child { border-bottom: none; }
.cal-mini-item .material-icons-round { font-size: 14px; color: var(--text-muted); flex-shrink: 0; }
.cal-mini-item-info { flex: 1; min-width: 0; }
.cal-mini-item-label { font-size: 0.75rem; font-weight: 500; color: var(--text-primary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cal-mini-item-date  { font-size: 0.625rem; color: var(--text-muted); margin-top: 1px; }

/* ── Bulk Action Bar ── */
.tx-bulk-bar {
    position: fixed;
    bottom: 24px; left: 50%; transform: translateX(-50%);
    display: flex; align-items: center; gap: 12px;
    padding: 10px 20px 10px 16px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-strong);
    border-radius: 40px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.25);
    z-index: 800;
    animation: bulk-bar-in 180ms cubic-bezier(0.34,1.56,0.64,1) both;
    white-space: nowrap;
}
@keyframes bulk-bar-in {
    from { opacity:0; transform:translateX(-50%) translateY(12px); }
    to   { opacity:1; transform:translateX(-50%) translateY(0); }
}
.tx-bulk-count {
    font-size: 0.8125rem; font-weight: 600;
    color: var(--text-primary);
    padding-left: 8px;
    border-left: 1px solid var(--border-subtle);
}
.tx-bulk-actions { display:flex; gap:6px; }

/* ── Health Score Cell ── */
.tx-health-cell { text-align:center; }

/* ── Workflow Tour ── */
.tour-card {
    background: linear-gradient(135deg, var(--bg-elevated) 0%, var(--bg-surface) 100%);
    border: 1px solid var(--border-gold, var(--border-strong));
    border-radius: var(--ql-card-radius);
    padding: 20px 24px;
    display: flex; flex-direction: column; gap: 16px;
    box-shadow: var(--ql-card-shadow);
}
.tour-header { display:flex; flex-direction:column; gap:10px; }
.tour-title-wrap { display:flex; align-items:center; gap:8px; }
.tour-title { font-weight:700; font-size:0.9375rem; color:var(--text-primary); flex:1; }
.tour-progress { font-size:0.75rem; font-weight:700; color:var(--text-muted); }
.tour-dismiss { background:none; border:none; cursor:pointer; color:var(--text-muted); padding:2px; border-radius:4px; }
.tour-dismiss:hover { color:var(--text-secondary); background:var(--bg-sunken); }
.tour-dismiss .material-icons-round { font-size:18px; }
.tour-bar { height:4px; background:var(--border-subtle); border-radius:2px; overflow:hidden; }
.tour-bar-fill { height:100%; background:var(--accent-500); border-radius:2px; transition:width 0.5s ease; }
.tour-steps { display:flex; flex-direction:column; gap:10px; }
.tour-step {
    display:flex; align-items:center; gap:12px;
    padding:10px 14px;
    background:var(--bg-sunken);
    border-radius:8px;
    border:1px solid var(--border-subtle);
    transition:opacity 200ms;
}
.tour-step.done { opacity:0.55; }
.tour-step-num {
    width:26px; height:26px; border-radius:50%; flex-shrink:0;
    display:flex; align-items:center; justify-content:center;
    background:var(--accent-500); color:white;
    font-size:0.75rem; font-weight:700;
}
.tour-step.done .tour-step-num { background:var(--success-500,#22c55e); }
.tour-step-info { flex:1; min-width:0; }
.tour-step-title { font-size:0.8125rem; font-weight:600; color:var(--text-primary); }
.tour-step-desc  { font-size:0.6875rem; color:var(--text-muted); margin-top:1px; }
.tour-step-btn   { flex-shrink:0; }

/* ── AI Summary Modal ── */
.ai-summary-body { display:flex; flex-direction:column; gap:12px; }
.ai-sum-section { padding:12px 16px; background:var(--bg-sunken); border-radius:8px; border:1px solid var(--border-subtle); }
.ai-sum-section.warning { border-color:rgba(239,68,68,0.25); background:rgba(239,68,68,0.04); }
.ai-sum-section.good    { border-color:rgba(34,197,94,0.25); background:rgba(34,197,94,0.04); }
.ai-sum-section-header  { display:flex; align-items:center; gap:6px; font-size:0.6875rem; font-weight:700; color:var(--text-muted); letter-spacing:0.06em; text-transform:uppercase; margin-bottom:6px; }
.ai-sum-section-header .material-icons-round { font-size:14px; }
.ai-sum-section-body { font-size:0.8125rem; color:var(--text-primary); line-height:1.7; }

/* ── Tags in Transaction Detail Header ── */
.txd-tags-strip {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    overflow: hidden;
    max-width: 200px;
}
.txd-tag-chip {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 99px;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--accent-100);
    color: var(--accent-700);
    border: 1px solid var(--accent-200);
    cursor: pointer;
    white-space: nowrap;
    transition: background 100ms, opacity 100ms;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
}
.txd-tag-chip:hover {
    background: var(--accent-200);
    opacity: 0.8;
    text-decoration: line-through;
}
.txd-tag-add-btn {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 8px;
    border-radius: 99px;
    font-size: 0.6875rem;
    font-weight: 500;
    background: transparent;
    border: 1px dashed var(--border-default);
    color: var(--text-muted);
    cursor: pointer;
    white-space: nowrap;
    transition: border-color 100ms, color 100ms;
}
.txd-tag-add-btn:hover { border-color: var(--accent-400); color: var(--accent-500); }
.txd-tag-add-btn .material-icons-round { font-size: 13px; }

/* ── Kanban drag & drop ── */
.kanban-drop-zone { transition: background 150ms; }
.kanban-drag-over { background: var(--accent-50, rgba(99,160,110,0.08)) !important; outline: 2px dashed var(--accent-400); outline-offset: -4px; }

/* ── Activity Feed Widget ── */
.activity-row {
    display: flex; align-items: center; gap: 10px;
    padding: 7px 4px;
    border-bottom: 1px solid var(--border-subtle);
}
.activity-row:last-child { border-bottom: none; }
.activity-dot {
    width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
}
.activity-info { flex: 1; min-width: 0; }
.activity-label {
    font-size: 0.75rem; font-weight: 600; color: var(--text-primary);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.activity-addr {
    font-size: 0.6875rem; color: var(--text-muted);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.activity-time { font-size: 0.625rem; color: var(--text-muted); flex-shrink: 0; text-align: left; direction: ltr; }

/* ── Inner search bar ── */
.txd-inner-search {
    display: none;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    background: var(--bg-sunken);
    border-bottom: 1px solid var(--border-default);
}
.txd-inner-search .material-icons-round { font-size: 18px; color: var(--text-muted); flex-shrink: 0; }
.txd-inner-search-input {
    flex: 1;
    border: none; background: transparent;
    font-size: 0.875rem; color: var(--text-primary);
    font-family: var(--font-primary);
    outline: none;
    direction: rtl;
}
.txd-inner-search-input::placeholder { color: var(--text-muted); }
.txd-inner-search-close {
    background: none; border: none; cursor: pointer;
    color: var(--text-muted); border-radius: 4px; padding: 2px;
}
.txd-inner-search-close:hover { background: var(--bg-elevated); }
.txd-task-row.search-match { background: var(--accent-50, rgba(99,160,110,0.07)); }
.txd-task-row.search-hide  { display: none !important; }

/* ── Comment thread ── */
.txd-comments-col { display:flex; flex-direction:column; gap:8px; }
.txd-mini-feed { display:flex; flex-direction:column; gap:6px; }
.txd-mini-feed-empty { font-size:11px; color:var(--text-muted); text-align:center; padding:8px 0; }
.txd-mini-comment { display:flex; align-items:flex-start; gap:8px; }
.txd-mini-avatar {
    width:26px; height:26px; border-radius:50%; flex-shrink:0;
    background:var(--accent-200); color:var(--accent-700);
    display:flex; align-items:center; justify-content:center;
    font-size:9px; font-weight:700;
}
.txd-mini-info { flex:1; min-width:0; }
.txd-mini-author { font-size:9px; color:var(--text-muted); margin-bottom:1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.txd-mini-text { font-size:11px; color:var(--text-primary); line-height:1.5; word-break:break-word; }
.txd-mini-add-input { width:100%; resize:none; font-size:12px; }

/* Full comment thread (notesTab) */
.comment-item { display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid var(--border-subtle); }
.comment-item:last-child { border-bottom:none; }
.comment-avatar {
    width:32px; height:32px; border-radius:50%; flex-shrink:0;
    background:var(--accent-200); color:var(--accent-700);
    display:flex; align-items:center; justify-content:center;
    font-size:11px; font-weight:700;
}
.comment-bubble { flex:1; min-width:0; }
.comment-hdr { display:flex; align-items:center; gap:6px; margin-bottom:4px; flex-wrap:wrap; }
.comment-author { font-size:0.75rem; font-weight:600; color:var(--text-primary); }
.comment-ts { font-size:0.6875rem; color:var(--text-muted); }
.comment-edited { font-size:0.625rem; color:var(--text-muted); font-style:italic; }
.comment-actions { margin-right:auto; display:flex; gap:2px; }
.comment-actions .btn { min-height:24px !important; padding:2px 6px !important; }
.comment-body { font-size:0.8125rem; color:var(--text-primary); line-height:1.6; white-space:pre-wrap; }
.comment-edit-area { width:100%; font-size:0.8125rem; }

/* Dashboard customize modal */
.dash-customize-body { display:flex; flex-direction:column; gap:4px; }
.dash-customize-row {
    display:flex; align-items:center; gap:10px;
    padding:10px 12px; border-radius:8px;
    background:var(--bg-sunken); border:1px solid var(--border-subtle);
    cursor:grab; transition:background 100ms;
    color: var(--text-primary);
}
.dash-customize-row:hover { background:var(--bg-elevated); color:var(--text-primary); }
.dash-customize-row span { color: var(--text-primary) !important; }
.dash-customize-row.dragging { opacity:0.5; }
.dash-customize-row.drag-over { background:var(--accent-50, rgba(99,160,110,0.08)); border-color:var(--accent-400); }
.drag-handle { color:var(--text-muted); flex-shrink:0; }

/* ── Mobile responsive sweep ── */
@media (max-width: 768px) {
    /* TDP header — wrap buttons */
    .txd-hdr-group { flex-wrap:wrap; gap:4px !important; }
    .txd-hdr-group .btn { min-height:32px !important; padding:0 8px !important; }
    .txd-tags-strip { max-width:140px; }

    /* Dashboard widgets — single column */
    .dash-widgets-grid { grid-template-columns:1fr !important; }

    /* Bulk bar — more compact */
    .tx-bulk-bar { padding:8px 14px; gap:8px; border-radius:24px; }
    .tx-bulk-count { font-size:12px; }

    /* Pipeline kanban */
    .kanban-board { flex-direction:column !important; }
    .kanban-column { width:100% !important; min-width:unset !important; }

    /* Activity feed */
    .activity-time { display:none; }

    /* Leads funnel */
    .leads-section { padding:10px !important; }
}

@media (max-width: 480px) {
    /* Hide less-important table columns on very small screens */
    .tx-health-cell { display:none !important; }
    .txd-tags-strip { display:none; }

    /* Header compress */
    .txd-hdr-group:last-child .btn:nth-child(n+4) { display:none; }
}

/* ── Virtual Calendar Events (tx deadlines + tasks) ── */
[data-virtual="true"],
.cal-event[data-virtual],
.cal-event._virtual {
    opacity: 0.85;
    border-style: dashed !important;
    border-width: 1px !important;
    font-style: italic;
}

/* Calendar recurrence select */
.cal-modal-recurrence {
    min-width: 140px;
}

/* ── Dashboard grid header row ── */
.dash-grid-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    padding: 0 2px;
}
.dash-grid-title {
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
}
/* Customize button — clean, visible in all themes */
#dash-customize-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 30px;
    padding: 0 12px;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: var(--radius-md);
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 120ms, border-color 120ms, color 120ms;
    white-space: nowrap;
}
#dash-customize-btn:hover {
    background: var(--bg-elevated);
    border-color: var(--border-strong);
    color: var(--text-primary);
}
#dash-customize-btn .material-icons-round { font-size: 15px; }

/* ── Signatures Tab ── */
.sig-tab-wrap { display:flex; flex-direction:column; gap:16px; }
.sig-info-banner {
    display:flex; align-items:center; gap:10px;
    padding:10px 14px; background:var(--bg-sunken);
    border:1px solid var(--border-subtle); border-radius:8px;
    font-size:13px; color:var(--text-secondary);
}
.sig-info-banner .material-icons-round { font-size:18px; color:var(--accent-500); flex-shrink:0; }
.sig-info-banner p { margin:0; }

.sig-empty {
    display:flex; flex-direction:column; align-items:center; gap:8px;
    padding:32px; text-align:center; color:var(--text-muted);
}
.sig-empty .material-icons-round { font-size:36px; opacity:0.4; }
.sig-empty-sub { font-size:12px; }

.sig-card {
    display:flex; align-items:flex-start; gap:14px;
    padding:14px 16px; border-radius:10px;
    border:1px solid var(--border-default);
    background:var(--bg-surface);
    transition:border-color 150ms;
}
.sig-card.signed { border-color:var(--success-500); background:rgba(34,197,94,0.03); }
.sig-card.pending { border-color:var(--warning-500); background:rgba(245,158,11,0.03); }

.sig-card-icon .material-icons-round {
    font-size:28px;
    color: var(--text-muted);
}
.sig-card.signed .sig-card-icon .material-icons-round { color: var(--success-500); }
.sig-card.pending .sig-card-icon .material-icons-round { color: var(--warning-500); }

.sig-card-info { flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; }
.sig-card-name { font-size:14px; font-weight:600; color:var(--text-primary); }
.sig-card-meta { font-size:11px; color:var(--text-muted); }
.sig-card-signed-info {
    display:flex; align-items:center; gap:4px;
    font-size:12px; color:var(--success-500); font-weight:500;
}
.sig-card-thumb {
    max-width:140px; max-height:50px; border-radius:6px;
    border:1px solid var(--border-default); background:#fff;
    cursor:pointer; object-fit:contain; margin-top:4px;
}
.sig-hash {
    display:flex; align-items:center; gap:4px;
    font-size:10px; color:var(--text-muted); margin-top:4px;
    font-family:monospace;
}
.sig-hash .material-icons-round { font-size:13px; }
.sig-card-actions { display:flex; align-items:flex-start; }

.sign-modal-info {
    display:flex; align-items:center; gap:8px;
    font-size:12px; color:var(--text-muted);
    background:var(--bg-sunken); border-radius:8px; padding:10px 12px;
}
.sign-modal-info .material-icons-round { font-size:16px; color:var(--accent-500); flex-shrink:0; }
