:root{--c-bg: #F6F7F9;--c-surface: #ffffff;--c-surface-2: #FAFBFC;--c-border: #E6E8EC;--c-border-strong: #D3D7DE;--c-text: #0D1117;--c-text-muted: #5B6470;--c-text-faint: #6F7887;--c-primary: #4F46E5;--c-primary-hover: #4338CA;--c-primary-active: #3730A3;--c-primary-soft: #EEF0FE;--c-danger: #DC2626;--c-danger-soft: #FEF2F2;--c-danger-border: #FECACA;--c-success: #059669;--c-success-soft: #E7F6EC;--c-warn: #B45309;--c-warn-soft: #FEF3E2;--c-warn-border: #F3D9A5;--c-violet: #6D28D9;--c-violet-soft: #F1EBFE;--c-navy: #0F172A;--c-navy-2: #1E293B;--c-accent: #0EA5A4;--c-accent-soft: #E3F6F4;--c-accent-strong: #0B6E6D;--c-sidebar: #0F172A;--c-input-bg: #F3F4F6;--c-hover: #F6F7F9;--c-ghost-bg: #F4F5F7;--c-ghost-bg-hover: #E6E8EC;--c-ghost-text: #334155;--c-chip-bg: #ffffff;--c-chip-text: #475569;--c-overlay: rgba(13, 17, 23, .5);--skeleton-1: #ECEEF1;--skeleton-2: #DEE2E7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-full: 999px;--fs-xs: 11px;--fs-caption: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-display: 24px;--fs-kpi: 28px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 12px rgba(16, 24, 40, .06);--shadow-md: 0 8px 24px rgba(16, 24, 40, .1);--shadow-lg: 0 24px 60px rgba(16, 24, 40, .22);--ring: 0 0 0 3px rgba(79, 70, 229, .35);--sidebar-w: 224px;--topbar-h: 60px;--content-pad: 28px}html[data-theme=dark]{--c-bg: #0A0C10;--c-surface: #14171D;--c-surface-2: #181C23;--c-border: #242A33;--c-border-strong: #323A45;--c-text: #F0F3F7;--c-text-muted: #A7B0BD;--c-text-faint: #7E8896;--c-primary: #818CF8;--c-primary-hover: #A5B4FC;--c-primary-active: #6366F1;--c-primary-soft: #1D2030;--c-danger: #F87171;--c-danger-soft: #3B1D22;--c-danger-border: #7F1D1D;--c-success: #4ADE80;--c-success-soft: #13241A;--c-warn: #FBBF24;--c-warn-soft: #2A2113;--c-warn-border: #4A3B18;--c-violet: #A78BFA;--c-violet-soft: #221A33;--c-accent: #2DD4BF;--c-accent-soft: #10221F;--c-accent-strong: #5EEAD4;--c-sidebar: #08090C;--c-input-bg: #0E1117;--c-hover: #1E232B;--c-ghost-bg: #1E232B;--c-ghost-bg-hover: #242A33;--c-ghost-text: #CBD5E1;--c-chip-bg: #14171D;--c-chip-text: #CBD5E1;--c-overlay: rgba(2, 6, 16, .66);--skeleton-1: #1E232B;--skeleton-2: #242A33;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 20px rgba(0, 0, 0, .45);--shadow-md: 0 12px 32px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .6)}html[data-theme=dark] body{color-scheme:dark}html[data-density=compact]{--space-2: 6px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 22px}html[data-density=compact]{--content-pad: 16px;--topbar-h: 50px}html[data-density=compact] .topbar{height:50px;padding:0 18px}html[data-density=compact] .btn{padding:6px 11px}html[data-density=compact] .btn-sm{padding:4px 8px}html[data-density=compact] .input,html[data-density=compact] .select,html[data-density=compact] .textarea{padding:6px 8px}html[data-density=compact] .nav-item{padding:7px 10px}html[data-density=compact] .modal-body{padding:16px 18px}html[data-density=compact] .card{padding:var(--space-3)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;background:var(--c-bg);color:var(--c-text);font-size:var(--fs-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--c-text);font-weight:700;letter-spacing:-.02em;line-height:1.2}h4{letter-spacing:-.01em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:var(--fs-sm);font-weight:600;line-height:1.2;white-space:nowrap;border:1px solid transparent;border-radius:var(--r-sm);padding:8px 14px;cursor:pointer;transition:background .12s ease,box-shadow .12s ease,border-color .12s ease,transform .04s ease,color .12s ease}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--c-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--c-primary-hover)}.btn-primary:active:not(:disabled){background:var(--c-primary-active)}.btn-ghost{background:var(--c-ghost-bg);color:var(--c-ghost-text)}.btn-ghost:hover:not(:disabled){background:var(--c-ghost-bg-hover)}.btn-danger{background:var(--c-surface);color:var(--c-danger);border-color:var(--c-danger-border)}.btn-danger:hover:not(:disabled){background:var(--c-danger-soft)}.btn-sm{padding:6px 10px;font-size:var(--fs-xs)}.btn-icon{background:transparent;color:var(--c-text-faint);padding:6px;border-radius:var(--r-sm)}.btn-icon:hover:not(:disabled){background:var(--c-hover);color:var(--c-text)}.input,.select,.textarea{width:100%;font-family:inherit;font-size:var(--fs-sm);color:var(--c-text);background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-sm);padding:8px 10px;transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.input:focus,.select:focus,.textarea:focus{outline:none;background:var(--c-surface);border-color:var(--c-primary);box-shadow:var(--ring)}.input::placeholder,.textarea::placeholder{color:var(--c-text-faint)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--c-border);color:var(--c-text-faint);cursor:not-allowed}.textarea{resize:vertical;line-height:1.5}.w-auto{width:auto}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.card-interactive{cursor:pointer;transition:box-shadow .18s ease,border-color .12s ease,background .12s ease,transform .18s cubic-bezier(.2,.8,.2,1)}.card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--c-border-strong);transform:translateY(-1px)}.card-interactive:focus-visible{outline:none;box-shadow:var(--ring)}.card-selected{background:var(--c-primary-soft);border-color:var(--c-primary)}.label{font-size:var(--fs-xs);font-weight:600;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em}.badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:600;padding:3px 9px;border-radius:var(--r-full);line-height:1.3;white-space:nowrap}.badge-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.read-field{min-width:0}.read-value{margin-top:3px;font-size:15px;font-weight:600;color:var(--c-text);line-height:1.4;overflow-wrap:anywhere}.read-empty{color:var(--c-text-faint);font-weight:400}html[data-density=compact] .read-value{font-size:var(--fs-md)}.field-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px;align-items:start}.field-col{display:grid;gap:10px;align-content:start;min-width:0}.field-divider{border:none;border-top:1px solid var(--c-border);margin:0}.tag-pill{display:inline-flex;align-items:center;padding:4px 11px;border-radius:var(--r-sm);border:1px solid var(--c-border-strong);background:var(--c-chip-bg);color:var(--c-chip-text);font-size:var(--fs-xs);font-weight:600}.tag-link{font:inherit;cursor:pointer;line-height:1.3;display:inline-flex;align-items:center;border:1px solid transparent}.tag-link:disabled{cursor:default}.tag-link:focus-visible{outline:none;box-shadow:var(--ring)}.tag-link-pill{padding:4px 11px;border-radius:var(--r-sm);border-color:var(--c-border-strong);background:var(--c-chip-bg);color:var(--c-chip-text);font-size:var(--fs-xs);font-weight:600}.tag-link-pill:hover:not(:disabled){border-color:var(--c-primary);color:var(--c-primary)}.tag-link-badge{padding:3px 9px;border-radius:var(--r-full);background:var(--c-hover);color:var(--c-text-muted);font-size:var(--fs-xs);font-weight:600}.tag-link-badge:hover:not(:disabled){background:var(--c-primary-soft);color:var(--c-primary)}.tag-link-inline{padding:0;margin:0;background:none;border:none;color:var(--c-primary);font-size:11px;font-weight:600}.tag-link-inline:hover:not(:disabled){text-decoration:underline}.page-head-band{margin:calc(-1 * var(--content-pad)) calc(-1 * var(--content-pad)) 0;padding:16px var(--content-pad) 12px;background:var(--c-surface)}.page-head{display:flex;align-items:center;gap:16px}.page-head-id{display:grid;gap:3px;min-width:0;flex:1}.page-head-nameline{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.page-head-name{margin:0;font-size:24px;line-height:1.2}.page-head-sub{font-size:var(--fs-sm);color:var(--c-text-muted)}.page-head-accent{color:var(--c-primary);font-weight:600}.page-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.contact-avatar{width:64px;height:64px;border-radius:var(--r-full);display:grid;place-items:center;background:var(--c-primary-soft);color:var(--c-primary);border:1px solid var(--c-border);font-size:22px;font-weight:700;letter-spacing:.5px}.contact-avatar-img{object-fit:cover;background:var(--c-surface)}.contact-edit-btn{flex-shrink:0;font-size:14px;border:none}.contact-edit-btn:hover:not(:disabled){color:var(--c-primary)}.social-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.social-link{width:28px;height:28px;border-radius:var(--r-full);display:inline-flex;align-items:center;justify-content:center;background:var(--c-surface);border:1px solid var(--c-border-strong);color:var(--c-text-muted);font-size:13px;font-weight:700;text-decoration:none;line-height:1}.social-link:hover{border-color:var(--c-primary);color:var(--c-primary)}.social-link.social-linkedin:hover{border-color:#0a66c2;color:#0a66c2}.social-link.social-facebook:hover{border-color:#1877f2;color:#1877f2}.social-link.social-x:hover{border-color:var(--c-text);color:var(--c-text)}.social-link.social-instagram:hover{border-color:#c13584;color:#c13584}.social-link.social-youtube:hover{border-color:red;color:red}.photo-field{display:flex;align-items:center;gap:12px}.photo-preview{width:64px;height:64px;border-radius:var(--r-full);object-fit:cover;border:1px solid var(--c-border-strong);background:var(--c-surface)}.photo-preview-empty{display:grid;place-items:center;background:var(--c-primary-soft);color:var(--c-primary);font-size:22px;font-weight:700;letter-spacing:.5px}@media (max-width: 900px){.page-head{flex-wrap:wrap}.page-head-actions{width:100%;justify-content:flex-start}}.ctab-bar{display:flex;overflow-x:auto;overflow-y:hidden;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);position:sticky;top:var(--topbar-h);z-index:1}.ctab{position:relative;flex:1 1 0;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 6px 8px;font:inherit;color:var(--c-text-muted);cursor:pointer;background:transparent;border:none;border-left:1px solid var(--c-border);border-top:2px solid transparent}.ctab:first-child{border-left:none}.ctab:hover{background:var(--c-surface);color:var(--c-text)}.ctab:focus-visible{outline:none;box-shadow:var(--ring)}.ctab-icon{display:block}.ctab-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.ctab.on{background:var(--c-surface);color:var(--c-primary);border-top-color:var(--c-primary)}.ctab-count{position:absolute;top:5px;right:8px;min-width:17px;height:17px;padding:0 5px;box-sizing:border-box;border-radius:var(--r-full);background:var(--c-primary-soft);color:var(--c-primary);font-size:var(--fs-xs);font-weight:700;line-height:17px;text-align:center}.ctab.on .ctab-count{background:var(--c-primary);color:#fff}@media (max-width: 640px){.ctab-bar{overflow-x:auto}.ctab-label{font-size:var(--fs-xs)}}.feed-check{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.feed-check input{accent-color:var(--c-primary);cursor:pointer}.feed-compose{font:inherit;text-align:left;cursor:text;color:var(--c-text-muted);background:var(--c-surface);border:1px dashed var(--c-border);border-radius:var(--r-md);padding:12px 14px}.feed-compose:hover{border-color:var(--c-primary);color:var(--c-text)}.feed-list{display:grid}.feed-list>*{background:transparent;border:none;border-radius:0;box-shadow:none;border-top:1px solid var(--c-border);padding:12px 2px}.feed-list>:first-child{border-top:none;padding-top:2px}.feed-list .note-view{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.feed-row{display:grid;font-size:13px;cursor:pointer;gap:6px}.feed-email-subject{min-width:0;cursor:pointer;overflow-wrap:anywhere}.feed-email-subject:hover strong{color:var(--c-primary)}.feed-email-meta{display:grid;gap:1px;font-size:12px;color:var(--c-text-faint);overflow-wrap:anywhere}.feed-snippet{font-size:13px;color:var(--c-text);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.addr-edit{display:grid;gap:6px;padding:10px;border:1px solid var(--c-border);border-radius:var(--r-sm);background:var(--c-surface-2)}@media (max-width: 860px){.field-cols{grid-template-columns:1fr}}.skeleton{background:linear-gradient(90deg,var(--skeleton-1) 25%,var(--skeleton-2) 37%,var(--skeleton-1) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--r-sm)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.empty{display:grid;justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-6) var(--space-4);color:var(--c-text-muted)}.empty-icon{font-size:30px;opacity:.7;line-height:1}.empty-title{font-size:var(--fs-md);font-weight:600;color:var(--c-text)}.empty-hint{font-size:var(--fs-sm);color:var(--c-text-faint);max-width:320px}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--c-sidebar);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar-brand{padding:20px 20px 16px;font-size:var(--fs-lg);font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.sidebar-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--c-primary),var(--c-accent));display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:#fff;flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:8px 12px;flex:1;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;color:#cbd5e1;border:none;border-radius:var(--r-sm);padding:9px 12px;font-size:var(--fs-sm);font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s ease,color .12s ease}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item:focus-visible{outline:none;box-shadow:var(--ring)}.nav-item.active{background:var(--c-primary);color:#fff}.nav-item-icon{width:18px;text-align:center;flex-shrink:0}.sidebar-foot{position:relative;display:block;width:100%;text-align:left;padding:14px 16px;border:none;border-top:1px solid rgba(255,255,255,.08);background:transparent;color:inherit;font-family:inherit;cursor:pointer;transition:background .12s ease}.sidebar-foot:hover{background:#ffffff12}.sidebar-foot:focus-visible{outline:none;box-shadow:var(--ring)}.sidebar-user{font-size:var(--fs-sm);font-weight:600;color:#fff;padding-right:22px}.sidebar-firm{font-size:var(--fs-xs);color:#94a3b8;margin-top:1px;padding-right:22px}.sidebar-foot-gear{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.5;transition:opacity .12s ease;display:inline-flex;align-items:center}.sidebar-foot:hover .sidebar-foot-gear,.sidebar-foot:focus-visible .sidebar-foot-gear{opacity:.85}.account-head{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--c-border)}.settings-layout{display:grid;grid-template-columns:184px minmax(0,1fr);gap:36px;align-items:start}.settings-rail{position:sticky;top:calc(var(--topbar-h) + 8px);display:flex;flex-direction:column;gap:2px}.settings-rail-item{font-size:var(--fs-sm);color:var(--c-text-muted);text-decoration:none;padding:6px 10px;border-radius:var(--r-sm);border-left:2px solid transparent;transition:background .12s,color .12s}.settings-rail-item:hover{background:var(--c-surface-2);color:var(--c-text)}.settings-rail-item.active{color:var(--c-primary);background:var(--c-primary-soft);border-left-color:var(--c-primary);font-weight:600}.settings-content{min-width:0;max-width:640px;display:flex;flex-direction:column;gap:28px}.settings-section{scroll-margin-top:16px}.settings-section-title{margin:0 0 4px}.settings-section-desc{font-size:13px;margin:0 0 12px;line-height:1.5}@media (max-width: 860px){.settings-layout{grid-template-columns:1fr;gap:12px}.settings-rail{position:static;flex-direction:row;flex-wrap:wrap}}.setup-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;font-size:var(--fs-sm);color:var(--c-warn);background:var(--c-warn-soft);border-bottom:1px solid var(--c-warn-border)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:60px;flex-shrink:0;background:var(--c-surface);border-bottom:1px solid var(--c-border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}.topbar-title{font-size:var(--fs-lg);font-weight:700;letter-spacing:-.01em}.content{padding:var(--content-pad);margin:0 auto;width:100%}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--c-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:overlay-in .14s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--c-surface);border-radius:var(--r-lg);width:100%;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:modal-in .16s ease}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--c-border)}.modal-title{margin:0;font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em}.modal-body{padding:22px 24px;overflow-y:auto}.toast-stack{position:fixed;bottom:22px;right:22px;z-index:2000;display:flex;flex-direction:column;gap:10px;max-width:min(380px,calc(100vw - 32px))}.toast{display:flex;align-items:flex-start;gap:10px;background:var(--c-navy-2);color:#fff;border-radius:var(--r-md);padding:12px 14px;font-size:var(--fs-sm);box-shadow:var(--shadow-md);animation:toast-in .18s ease;border-left:3px solid var(--c-primary)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.toast-success{border-left-color:#34d399}.toast-error{border-left-color:#f87171}.toast-icon{flex-shrink:0}.toast-msg{flex:1;line-height:1.4}.toast-close{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:15px;padding:0;line-height:1}.toast-close:hover{color:#fff}.row{display:flex;align-items:center;gap:var(--space-2)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.stack{display:grid;gap:var(--space-2)}.wrap{flex-wrap:wrap}.muted{color:var(--c-text-muted)}.faint{color:var(--c-text-faint)}.chip{padding:5px 12px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;cursor:pointer;border:1px solid var(--c-border-strong);background:var(--c-chip-bg);color:var(--c-chip-text);transition:background .12s ease,border-color .12s ease,color .12s ease}.chip:hover{border-color:var(--c-primary)}.chip:focus-visible{outline:none;box-shadow:var(--ring)}.chip.on{background:var(--c-primary);border-color:var(--c-primary);color:#fff}.link-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--c-primary);font-size:var(--fs-xs);font-weight:600;justify-self:start}.link-btn:hover{text-decoration:underline}.link-inline{color:var(--c-primary);cursor:pointer;font-weight:600}.link-inline:hover{text-decoration:underline}.link-inline:focus-visible{outline:none;box-shadow:var(--ring);border-radius:3px}.clamp-10{display:-webkit-box;-webkit-line-clamp:10;-webkit-box-orient:vertical;overflow:hidden}.tl-item{border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden}.tl-head{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--c-surface);border:none;cursor:pointer;text-align:left;font-size:var(--fs-sm);color:var(--c-text-muted)}.tl-head:hover{background:var(--c-surface-2)}.tl-icon{flex-shrink:0;width:18px;text-align:center}.tl-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-when{flex-shrink:0;font-size:var(--fs-xs)}.tl-caret{flex-shrink:0;color:var(--c-text-faint);font-size:11px}.tl-detail{display:grid;gap:6px;padding:10px 12px;background:var(--c-surface-2);border-top:1px solid var(--c-border)}.tl-detail-row{display:grid;grid-template-columns:90px 1fr;gap:8px;font-size:var(--fs-sm)}.tl-detail-k{color:var(--c-text-faint);font-weight:600}.tl-detail-v{color:var(--c-text);white-space:pre-wrap}.tl-badge{flex-shrink:0;font-size:var(--fs-xs);font-weight:600;color:var(--c-primary);background:var(--c-primary-soft);padding:1px 8px;border-radius:var(--r-full)}.tl-changes{display:grid;gap:4px;white-space:normal}.tl-change{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.tl-change-field{color:var(--c-text-faint);font-weight:600;min-width:84px}.tl-change-old{color:var(--c-text-muted);text-decoration:line-through}.tl-change-arrow{color:var(--c-text-faint)}.tl-change-new{color:var(--c-text);font-weight:600}.file-tree{border:1px solid var(--c-border);border-radius:var(--r-md);padding:6px 4px;font-size:var(--fs-sm)}.tree-row{display:flex;align-items:center;gap:6px;width:100%;padding:4px 6px;border-radius:var(--r-sm);color:var(--c-text);text-align:left}.tree-root{font-size:var(--fs-md);padding:4px 6px 6px}.tree-folder{background:none;border:none;cursor:pointer;font-weight:600}.tree-folder:hover{background:var(--c-surface-2)}.tree-caret{width:12px;color:var(--c-text-faint);font-size:11px}.tree-file{cursor:pointer}.tree-file:hover{text-decoration:underline}.tree-row.tree-drop{outline:2px dashed var(--c-primary);outline-offset:-2px;background:var(--c-primary-soft)}.tree-act{background:none;border:none;cursor:pointer;color:var(--c-text-faint);font-size:12px;padding:2px 6px;border-radius:var(--r-sm);min-width:24px;min-height:24px;opacity:.45}.tree-row:hover .tree-act,.tree-act:focus-visible{opacity:1}.tree-act:hover{background:var(--c-ghost-bg-hover);color:var(--c-text)}.rowmenu{position:relative;display:inline-flex}.rowmenu-btn{background:none;border:none;cursor:pointer;color:var(--c-text-faint);font-size:15px;line-height:1;padding:2px 6px;border-radius:var(--r-sm);min-width:24px;min-height:24px;opacity:.45}.tree-row:hover .rowmenu-btn,.doc-table tr:hover .rowmenu-btn,.rowmenu-btn.open{opacity:1}.rowmenu-btn:hover,.rowmenu-btn.open{background:var(--c-ghost-bg-hover);color:var(--c-text)}.rowmenu-pop{position:absolute;right:0;top:calc(100% + 2px);z-index:60;min-width:180px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:4px;display:grid}.rowmenu-item{text-align:left;background:none;border:none;cursor:pointer;padding:7px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--c-text);white-space:nowrap}.rowmenu-item:hover:not(:disabled){background:var(--c-hover)}.rowmenu-item:disabled{opacity:.45;cursor:default}.rowmenu-item.danger{color:var(--c-danger)}.rowmenu-item.danger:hover:not(:disabled){background:var(--c-danger-soft)}.movedlg-item{display:block;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:7px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--c-text)}.movedlg-item:hover:not(:disabled){background:var(--c-hover)}.movedlg-item:disabled{opacity:.5;cursor:default}.fb{display:flex;align-items:stretch;min-height:560px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.fb-rail{width:236px;flex-shrink:0;background:var(--c-surface-2);border-right:1px solid var(--c-border);padding:12px 10px;display:flex;flex-direction:column;gap:2px;max-height:78vh;overflow:auto}.fb-rail-label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-faint);padding:12px 10px 4px}.fb-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;padding:7px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--c-text);min-width:0}.fb-item:hover{background:var(--c-hover)}.fb-item.on{background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.fb-item:focus-visible{outline:none;box-shadow:var(--ring)}.fb-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-item-count{margin-left:auto;flex-shrink:0;font-size:var(--fs-xs);color:var(--c-text-faint)}.fb-item.on .fb-item-count{color:var(--c-primary);font-weight:700}.fb-item.fb-drop{outline:2px dashed var(--c-primary);outline-offset:-2px;background:var(--c-primary-soft)}.fb-railrow{display:flex;align-items:center;gap:2px}.fb-railrow .fb-item{flex:1 1 auto;min-width:0}.fb-railrow:hover .rowmenu-btn,.fb-row:hover .rowmenu-btn,.fb-detail .rowmenu-btn{opacity:1}.fb-storage{margin-top:auto;padding:10px;border-top:1px solid var(--c-border);display:flex;align-items:baseline;justify-content:space-between;font-size:var(--fs-xs);color:var(--c-text-faint)}.fb-list{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.fb-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--c-border);min-height:57px}.fb-crumbs{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);min-width:0}.fb-crumb-root{color:var(--c-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-crumb-here{font-weight:700;letter-spacing:-.01em;white-space:nowrap}.fb-head,.fb-row{display:grid;grid-template-columns:24px minmax(0,1fr) 126px 104px;align-items:center;gap:10px;padding:9px 16px;border-bottom:1px solid var(--c-border)}.fb-head{padding:8px 16px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-faint)}.fb-sort{background:none;border:none;padding:0;font:inherit;cursor:pointer;color:inherit;letter-spacing:inherit;text-transform:inherit;display:inline-flex;align-items:center;gap:4px}.fb-sort:hover{color:var(--c-text)}.fb-sort:focus-visible{outline:none;box-shadow:var(--ring);border-radius:4px}.fb-row{cursor:pointer}.fb-row:hover{background:var(--c-hover)}.fb-row.on{background:var(--c-primary-soft)}.fb-row:focus-visible{outline:none;box-shadow:inset var(--ring)}.fb-row.fb-drop{outline:2px dashed var(--c-primary);outline-offset:-2px}.fb-main{display:flex;align-items:center;gap:10px;min-width:0}.fb-name{display:block;font-size:var(--fs-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-sub{display:block;font-size:var(--fs-xs);color:var(--c-text-faint);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-when{font-size:12px;color:var(--c-text-muted)}.fb-foot{margin-top:auto;display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--c-border);font-size:12px;color:var(--c-text-faint)}.fb-tile{width:32px;height:32px;border-radius:var(--r-sm);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;background:var(--c-ghost-bg);color:var(--c-text-muted)}.fb-tile-doc{background:var(--c-danger-soft);color:var(--c-danger)}.fb-tile-word{background:var(--c-primary-soft);color:var(--c-primary)}.fb-tile-sheet{background:var(--c-success-soft);color:var(--c-success)}.fb-tile-img{background:var(--c-accent-soft);color:var(--c-accent-strong)}.fb-check{width:18px;height:18px;border-radius:4px;padding:0;cursor:pointer;border:1px solid var(--c-border-strong);background:var(--c-surface);display:flex;align-items:center;justify-content:center;color:#fff}.fb-check.on{background:var(--c-primary);border-color:var(--c-primary)}.fb-check:focus-visible{outline:none;box-shadow:var(--ring)}.fb-pill{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:3px 9px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid transparent}.fb-pill-plain{background:var(--c-ghost-bg);color:var(--c-chip-text);border-color:var(--c-border-strong)}.fb-pill-hh{background:var(--c-accent-soft);color:var(--c-accent-strong)}.fb-pill-client{background:var(--c-warn-soft);color:var(--c-warn)}.fb-pill-portal{background:var(--c-primary-soft);color:var(--c-primary)}.fb-bulk{background:var(--c-primary-soft)}.fb-bulk-count{font-size:var(--fs-sm);font-weight:700;color:var(--c-primary);white-space:nowrap}.fb-detail{width:300px;flex-shrink:0;border-left:1px solid var(--c-border);display:flex;flex-direction:column;max-height:78vh;overflow:auto}.fb-preview{background:var(--c-surface-2);border-bottom:1px solid var(--c-border);padding:22px;display:flex;align-items:center;justify-content:center;min-height:196px}.fb-preview img,.fb-preview embed{max-width:100%;max-height:240px;border-radius:6px;border:1px solid var(--c-border);background:var(--c-surface)}.fb-preview embed{width:100%;height:240px}.fb-preview-none{display:grid;gap:8px;justify-items:center;color:var(--c-text-faint);font-size:var(--fs-xs)}.fb-detail-title{font-size:var(--fs-md);font-weight:700;letter-spacing:-.01em;line-height:1.35;overflow-wrap:anywhere}.fb-kv{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 16px;border-top:1px solid var(--c-border);font-size:var(--fs-sm)}.fb-kv-k{color:var(--c-text-muted);flex-shrink:0}.fb-kv-v{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}.fb-switch{width:34px;height:20px;border-radius:var(--r-full);flex-shrink:0;cursor:pointer;border:none;padding:2px;background:var(--c-border-strong);display:flex;align-items:center;justify-content:flex-start;transition:background .12s ease}.fb-switch.on{background:var(--c-primary);justify-content:flex-end}.fb-switch:disabled{opacity:.5;cursor:not-allowed}.fb-switch:focus-visible{outline:none;box-shadow:var(--ring)}.fb-switch-knob{width:16px;height:16px;border-radius:50%;background:#fff}.fb-ver{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px 0}.fb-ver-no{width:26px;height:19px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;background:var(--c-ghost-bg);color:var(--c-text-muted)}.fb-ver-no.on{background:var(--c-primary-soft);color:var(--c-primary)}.fb-ver-dl{margin-left:auto;background:none;border:none;cursor:pointer;padding:2px 6px;border-radius:var(--r-sm);color:var(--c-text-faint);display:inline-flex}.fb-ver-dl:hover{background:var(--c-ghost-bg-hover);color:var(--c-text)}@media (max-width: 1100px){.fb-detail{width:260px}.fb-rail{width:208px}}@media (max-width: 860px){.fb{flex-direction:column;min-height:0}.fb-rail{width:100%;max-height:none;border-right:none;border-bottom:1px solid var(--c-border);flex-direction:row;overflow-x:auto;align-items:center;gap:6px}.fb-rail-label,.fb-storage{display:none}.fb-rail .input{flex:0 0 170px}.fb-item{width:auto;flex-shrink:0}.fb-railrow{flex-shrink:0}.fb-detail{width:100%;max-height:none;border-left:none;border-top:1px solid var(--c-border)}.fb-head,.fb-row{grid-template-columns:24px minmax(0,1fr) 104px}.fb-head>:nth-child(3),.fb-row>:nth-child(3){display:none}}.ctable-wrap{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);overflow-x:auto}.ctable-wrap .doc-table tr.click:focus-visible{outline:none;box-shadow:inset var(--ring)}.hh-item{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:7px 10px;border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--c-text)}.hh-item:hover{background:var(--c-hover)}.hh-item.active{background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.doc-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.doc-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-faint);padding:8px 12px;border-bottom:1px solid var(--c-border)}.doc-table td{padding:9px 12px;border-bottom:1px solid var(--c-border)}.doc-table tbody tr:last-child td{border-bottom:none}.doc-table tr.click{cursor:pointer}.doc-table tr.click:hover{background:var(--c-hover)}.doc-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}@media (max-width: 860px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:sticky;top:0;z-index:20;flex-direction:row;align-items:center;gap:8px;padding:0 12px}.sidebar-brand{padding:12px 8px;font-size:var(--fs-md)}.sidebar-mark{width:24px;height:24px;font-size:13px}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:8px;gap:4px}.nav-item{padding:8px 12px;white-space:nowrap}.nav-item-label{display:none}.nav-item-icon{font-size:16px}.sidebar-foot{display:none}.topbar{padding:0 16px;height:52px}:root{--content-pad: 16px;--topbar-h: 52px}}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#0f172a,#1e3a8a)}.auth-box{width:380px;max-width:100%}.auth-brand{display:flex;align-items:center;gap:10px;color:#fff;justify-content:center;margin-bottom:18px}.auth-brand .sidebar-mark{width:34px;height:34px;font-size:18px}.auth-brand-name{font-size:22px;font-weight:700}.auth-card{display:grid;gap:12px;padding:28px;box-shadow:var(--shadow-lg)}.auth-title{margin:0;font-size:19px}.auth-sub{margin:4px 0 0;font-size:var(--fs-sm);color:var(--c-text-muted)}.auth-switch{background:none;border:none;cursor:pointer;color:var(--c-primary-hover);font-size:var(--fs-sm);font-weight:600}.auth-divider{display:flex;align-items:center;gap:10px;color:var(--c-text-muted);font-size:var(--fs-sm);margin:2px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--c-border)}.splash{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--c-text-muted)}.form-error{color:var(--c-danger);font-size:var(--fs-sm);background:var(--c-danger-soft);padding:8px 10px;border-radius:var(--r-sm)}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:38px;padding:5px 8px;background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-sm);transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.tag-input:focus-within{background:var(--c-surface);border-color:var(--c-primary);box-shadow:var(--ring)}.tag-chip{display:inline-flex;align-items:center;gap:5px;background:var(--c-primary-soft);color:var(--c-primary);border-radius:var(--r-full);padding:3px 7px 3px 10px;font-size:var(--fs-xs);font-weight:600}.tag-chip button{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0;opacity:.65}.tag-chip button:hover{opacity:1}.tag-input-field{flex:1;min-width:90px;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--fs-sm);color:var(--c-text);padding:2px}.tag-input-field::placeholder{color:var(--c-text-faint)}.cm-primary{font-size:var(--fs-xs);font-weight:600;color:var(--c-primary);background:var(--c-primary-soft);padding:1px 8px;border-radius:var(--r-full);white-space:nowrap}.cm-copy{background:none;border:none;cursor:pointer;color:var(--c-text-faint);font-size:13px;line-height:1;padding:2px 4px;border-radius:4px;min-width:24px;min-height:24px;display:inline-flex;align-items:center;justify-content:center}.cm-copy:hover{color:var(--c-text);background:var(--c-hover)}.hh-member{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:1px solid var(--c-border);border-radius:var(--r-sm);padding:7px 10px;cursor:pointer;font-family:inherit;font-size:var(--fs-sm);color:var(--c-text);transition:background .12s ease,border-color .12s ease}.hh-member:hover{background:var(--c-surface-2);border-color:var(--c-border-strong)}.hh-member:focus-visible{outline:none;box-shadow:var(--ring)}.topbar-tools{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm)}.theme-toggle{background:var(--c-ghost-bg);color:var(--c-ghost-text);border:1px solid var(--c-border);border-radius:var(--r-sm);width:32px;height:32px;cursor:pointer;font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease}.theme-toggle:hover{background:var(--c-ghost-bg-hover)}.theme-toggle:focus-visible{outline:none;box-shadow:var(--ring)}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--c-text-muted)}.switch input{width:18px;height:18px;cursor:pointer;accent-color:var(--c-primary)}.switch input:disabled{cursor:not-allowed}.seg{display:inline-flex;background:var(--c-ghost-bg);border:1px solid var(--c-border);border-radius:var(--r-sm);padding:2px}.seg-btn{background:none;border:none;cursor:pointer;font-family:inherit;font-size:var(--fs-xs);font-weight:600;color:var(--c-text-muted);padding:6px 12px;border-radius:4px;line-height:1.4;transition:background .12s ease,color .12s ease}.seg-btn:hover{color:var(--c-text)}.seg-btn.on{background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-sm)}.seg-btn:focus-visible{outline:none;box-shadow:var(--ring)}.statusbar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.stat-pill{display:inline-flex;align-items:center;gap:7px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-full);padding:5px 12px;cursor:pointer;font-size:var(--fs-sm);color:var(--c-text);font-family:inherit;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.stat-pill:hover{border-color:var(--c-border-strong)}.stat-pill:focus-visible{outline:none;box-shadow:var(--ring)}.stat-pill.on{border-color:var(--c-primary);box-shadow:0 0 0 1px var(--c-primary)}.stat-pill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.stat-pill-label{text-transform:capitalize;color:var(--c-text-muted)}.stat-pill-count{font-weight:700}.board{display:flex;gap:var(--space-4);overflow-x:auto;align-items:stretch;padding-bottom:var(--space-2)}.board.board-compact{gap:var(--space-3)}.board-col{flex:1 0 224px;min-width:224px;max-width:320px;background:var(--c-ghost-bg);border-radius:var(--r-lg);padding:0 0 12px;border:2px solid transparent;transition:background .12s ease,border-color .12s ease;display:flex;flex-direction:column;max-height:calc(100vh - var(--topbar-h) - 140px)}.board-compact .board-col{flex-basis:200px;min-width:200px;max-width:280px}.board-col.drop-over{background:var(--c-primary-soft);border-color:var(--c-primary);border-style:dashed}.board-col-head{padding:14px 16px 10px;display:flex;justify-content:space-between;align-items:center}.board-col-title{font-size:var(--fs-sm);font-weight:700;color:var(--c-text)}.board-col-dot{width:10px;height:10px;border-radius:50%}.board-col-count{background:var(--c-border);color:var(--c-text-muted);font-size:var(--fs-xs);font-weight:700;padding:2px 8px;border-radius:20px}.board-col-body{padding:0 10px;overflow-y:auto;min-height:0;flex:1 1 auto}.board-empty{padding:20px 12px;text-align:center;font-size:var(--fs-xs);color:var(--c-text-faint);font-style:italic}.task-card{background:var(--c-surface);border-radius:var(--r-md);padding:14px 16px;cursor:grab;box-shadow:var(--shadow-sm);margin-bottom:10px;border-left:3px solid var(--c-border-strong)}.task-card:focus-visible{outline:none;box-shadow:var(--ring)}.task-card-top{display:flex;justify-content:space-between;margin-bottom:8px}.task-card-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text);line-height:1.35;flex:1;margin-right:8px}.task-card-pri{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:4px}.task-card-client{font-size:12px;color:var(--c-text-muted);margin-bottom:10px}.task-card-foot{display:flex;justify-content:space-between;align-items:center}.task-type-tag{padding:2px 8px;border-radius:20px;font-size:var(--fs-xs);font-weight:600}.task-due{font-size:var(--fs-xs);font-weight:600;padding:2px 6px;border-radius:4px;background:var(--c-hover);color:var(--c-text-muted)}.task-due.overdue{background:var(--c-danger-soft);color:var(--c-danger)}.task-due.urgent{background:var(--c-warn-soft);color:var(--c-warn)}.task-assignee{margin-top:8px;display:flex;align-items:center;gap:6px}.task-avatar{width:24px;height:24px;border-radius:50%;background:var(--c-border);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;color:var(--c-text-muted)}.agenda{display:grid;gap:var(--space-5)}.agenda-group{display:grid;gap:var(--space-2)}.agenda-group-head{display:flex;align-items:baseline;gap:8px;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-muted)}.agenda-group-head .count{color:var(--c-text-faint);font-weight:600}.agenda-group-head.overdue{color:var(--c-danger)}.agenda-row{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:var(--space-3);background:var(--c-surface);border:1px solid var(--c-border);border-left:3px solid var(--c-border-strong);border-radius:var(--r-md);padding:10px 14px;cursor:pointer;text-align:left;width:100%;font-family:inherit;transition:box-shadow .12s ease,border-color .12s ease}.agenda-row:hover{box-shadow:var(--shadow-sm);border-color:var(--c-border-strong)}.agenda-row:focus-visible{outline:none;box-shadow:var(--ring)}.agenda-row.done .agenda-title{text-decoration:line-through;color:var(--c-text-faint)}.agenda-date{font-size:var(--fs-sm);font-weight:700;color:var(--c-text)}.agenda-date-sub{font-size:var(--fs-xs);font-weight:600;color:var(--c-text-faint)}.agenda-date-sub.overdue{color:var(--c-danger)}.agenda-date-sub.urgent{color:var(--c-warn)}.agenda-main{min-width:0}.agenda-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-sub{font-size:12px;color:var(--c-text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.cmdk-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--c-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;animation:cmdk-fade .12s ease}@keyframes cmdk-fade{0%{opacity:0}to{opacity:1}}.cmdk-panel{width:720px;max-width:92vw;max-height:78vh;display:flex;flex-direction:column;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:cmdk-pop .16s cubic-bezier(.2,.8,.2,1)}@keyframes cmdk-pop{0%{transform:translateY(-8px) scale(.98);opacity:.6}to{transform:none;opacity:1}}.cmdk-search{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--c-border);flex-shrink:0}.cmdk-search-icon{display:inline-flex;color:var(--c-text-faint);flex-shrink:0}.cmdk-input{flex:1 1 auto;min-width:0;border:none;outline:none;background:transparent;color:var(--c-text);font-family:inherit;font-size:var(--fs-lg)}.cmdk-input::placeholder{color:var(--c-text-faint)}.cmdk-count{font-size:var(--fs-xs);color:var(--c-text-faint);white-space:nowrap}.cmdk-tagbar{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:10px 18px;border-bottom:1px solid var(--c-border);background:var(--c-surface-2)}.cmdk-tag-clear{background:none;border:none;padding:0;cursor:pointer;color:inherit;line-height:1;font-size:14px;font-family:inherit}.cmdk-filters{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0;padding:11px 18px;border-bottom:1px solid var(--c-border);background:var(--c-surface-2)}.cmdk-list{padding:8px 10px;overflow-y:auto;flex:1 1 auto;min-height:0}.cmdk-loading{display:grid;gap:6px;padding:6px 2px}.cmdk-empty{padding:22px 18px;text-align:center;color:var(--c-text-faint);font-size:var(--fs-sm)}.cmdk-group+.cmdk-group{margin-top:8px}.cmdk-group-label{padding:8px 12px 6px}.cmdk-row{display:flex;align-items:center;gap:12px;width:100%;background:transparent;border:none;border-radius:var(--r-md);padding:10px 12px;cursor:pointer;font-family:inherit;font-size:var(--fs-md);color:var(--c-text);text-align:left}.cmdk-row.is-active{background:var(--c-primary-soft);color:var(--c-primary)}.cmdk-row:disabled{cursor:default;color:var(--c-text-muted)}.cmdk-row-icon{width:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--c-text-muted)}.cmdk-row.is-active .cmdk-row-icon{color:inherit}.cmdk-row-label{flex:1;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-row.is-page .cmdk-row-label{font-weight:600}.cmdk-row-meta{font-size:var(--fs-xs);color:var(--c-text-faint);flex-shrink:0}.cmdk-row.is-active .cmdk-row-meta{color:var(--c-primary)}.cmdk-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 18px;flex-shrink:0;border-top:1px solid var(--c-border);font-size:var(--fs-xs);color:var(--c-text-faint)}.cmdk-foot-keys{display:flex;gap:16px}.cmdk-kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:5px;padding:2px 5px;color:var(--c-text-muted);margin:0 1px}.cmdk-trigger{display:inline-flex;align-items:center;gap:8px;height:32px;width:min(540px,40vw);padding:0 12px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);cursor:text;transition:border-color .12s ease,box-shadow .12s ease}.cmdk-trigger:hover{border-color:var(--c-border-strong)}.cmdk-trigger:focus-within{border-color:var(--c-primary);box-shadow:var(--ring)}.cmdk-trigger-icon{display:inline-flex;color:var(--c-text-faint);flex-shrink:0}.cmdk-trigger-input{flex:1 1 auto;min-width:0;padding:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--fs-sm);color:var(--c-text)}.cmdk-trigger-input::placeholder{color:var(--c-text-faint)}@media (max-width: 640px){.cmdk-trigger{width:auto;flex:0 1 200px}.cmdk-trigger .cmdk-kbd,.cmdk-foot-note{display:none}}.dash{display:flex;flex-direction:column;gap:20px}.dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dash-greeting{font-size:26px;letter-spacing:-.02em}.dash-date{color:var(--c-text-muted);font-size:var(--fs-md);margin-top:4px}.dash-head-actions{flex-shrink:0}.dash-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}.dash-kpi{display:flex;flex-direction:column;gap:8px}.dash-kpi-label{font-size:var(--fs-sm);color:var(--c-text-muted);display:flex;align-items:center;gap:7px}.dash-kpi-value{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1}.dash-kpi-badge{align-self:flex-start;font-size:var(--fs-xs);font-weight:600;color:var(--c-danger);background:var(--c-danger-soft);padding:2px 8px;border-radius:var(--r-full)}.dash-kpi-sub{font-size:var(--fs-xs);color:var(--c-text-muted)}.dash-panels{display:grid;gap:20px;margin-top:20px;align-items:start;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.dash-panel-hint{font-size:var(--fs-sm);color:var(--c-text-muted)}.dash-panel{padding:0;overflow:hidden}.dash-panel-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--c-border)}.dash-panel-head h3{font-size:var(--fs-lg)}.dash-link{background:none;border:none;cursor:pointer;font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--c-primary)}.dash-link:hover{text-decoration:underline}.dash-rows{display:flex;flex-direction:column}.dash-row{display:flex;align-items:center;gap:13px;padding:13px 18px;cursor:pointer;border-bottom:1px solid var(--c-border);transition:background .12s ease}.dash-row:last-child{border-bottom:none}.dash-row:hover{background:var(--c-hover)}.recency-stale{background:var(--c-warn-soft)}.recency-cold{background:var(--c-danger-soft)}.dash-row.recency-stale,.dash-row.recency-stale:hover{background:var(--c-warn-soft)}.dash-row.recency-cold,.dash-row.recency-cold:hover{background:var(--c-danger-soft)}.recency-banner{padding:12px 14px;border-radius:var(--r-md)}.dash-row:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-sm)}.dash-row-icon{font-size:16px;width:22px;text-align:center;flex-shrink:0}.dash-row-main{flex:1;min-width:0}.dash-row-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-row-sub{font-size:12px;color:var(--c-text-muted);margin-top:2px}.dash-pill{flex-shrink:0;font-size:var(--fs-xs);font-weight:600;padding:3px 9px;border-radius:var(--r-full);white-space:nowrap}.dash-pill-time{background:var(--c-primary-soft);color:var(--c-primary)}.dash-pill-due{background:var(--c-accent-soft);color:var(--c-accent-strong)}.dash-pill-over{background:var(--c-danger-soft);color:var(--c-danger)}.dash-feed{padding:8px 18px 14px}.dash-feed-item{display:flex;gap:12px;padding:10px 0}.dash-feed-dot{width:26px;height:26px;border-radius:var(--r-full);flex-shrink:0;display:grid;place-items:center;font-size:13px;background:var(--c-surface-2);border:1px solid var(--c-border)}.dash-feed-body{flex:1;min-width:0}.dash-feed-body p{margin:0;font-size:var(--fs-sm);color:var(--c-text);line-height:1.45}.dash-feed-time{font-size:var(--fs-caption);color:var(--c-text-faint)}.insight{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border:1px solid var(--c-border);border-radius:var(--r-lg);background:linear-gradient(120deg,var(--c-primary-soft),var(--c-accent-soft));box-shadow:var(--shadow-sm)}.insight-spark{width:32px;height:32px;flex-shrink:0;border-radius:var(--r-md);display:grid;place-items:center;font-size:17px;background:var(--c-surface);box-shadow:var(--shadow-sm)}.insight-body{flex:1;font-size:var(--fs-md);line-height:1.6;color:var(--c-text-muted)}.insight-body b{color:var(--c-text);font-weight:600}.insight-pending{font-style:italic;color:var(--c-text-faint)}.src-chip{font-size:11px;font-weight:600;padding:3px 9px;border-radius:var(--r-full);display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.src-chip.derived{background:var(--c-accent-soft);color:var(--c-accent-strong)}.src-chip.override{background:var(--c-warn-soft);color:var(--c-warn)}.card-help{font-size:12px;color:var(--c-text-faint);line-height:1.5}.wbar{display:flex;gap:2px;height:14px;border-radius:var(--r-md);overflow:hidden}.wbar i{height:100%}.wlegend{display:flex;flex-wrap:wrap;gap:8px 28px}.wleg{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);min-width:0}.wdot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.wleg-nm{color:var(--c-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wleg-am{font-weight:600;font-variant-numeric:tabular-nums}.wleg-am.negative{color:var(--c-danger)}.rt-editor{border:1px solid var(--c-border);border-radius:var(--r-sm);background:var(--c-input-bg);transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.rt-editor:focus-within{background:var(--c-surface);border-color:var(--c-primary);box-shadow:var(--ring)}.rt-toolbar{display:flex;flex-wrap:wrap;gap:2px;align-items:center;padding:5px 6px;border-bottom:1px solid var(--c-border)}.rt-tool{font:inherit;font-size:var(--fs-xs);line-height:1;color:var(--c-text-muted);background:transparent;border:1px solid transparent;border-radius:6px;padding:6px 8px;cursor:pointer;min-width:26px;min-height:24px}.rt-tool:hover{background:var(--c-ghost-bg-hover);color:var(--c-text)}.rt-tool.is-active{background:var(--c-primary-soft);color:var(--c-primary);border-color:var(--c-primary-soft)}.rt-tool:disabled{opacity:.4;cursor:default}.rt-sep{width:1px;align-self:stretch;background:var(--c-border);margin:2px 4px}.rt-content{font-size:var(--fs-sm);color:var(--c-text);line-height:1.55;word-break:break-word}.rt-editor .rt-content{padding:9px 11px;min-height:96px;outline:none}.rt-content p{margin:0 0 .5em}.rt-content p:last-child{margin-bottom:0}.rt-content p,.rt-content li{white-space:pre-wrap;-moz-tab-size:4;tab-size:4}.rt-content ul,.rt-content ol{margin:.25em 0 .5em;padding-left:1.4em}.rt-content li{margin:.15em 0}.rt-content a{color:var(--c-primary);text-decoration:underline}.rt-content table{border-collapse:collapse;margin:.4em 0;width:auto}.rt-content th,.rt-content td{border:1px solid var(--c-border-strong);padding:4px 8px;text-align:left;vertical-align:top;min-width:2.5em}.rt-content th{background:var(--c-surface-2);font-weight:600}.rt-content.rt-readonly{color:var(--c-text-muted)}.rt-editor .rt-content.is-editor-empty:first-child:before,.rt-editor .rt-content p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--c-text-faint);float:left;height:0;pointer-events:none}.note-view{padding:0;overflow:hidden}.note-view-body{padding:var(--space-4)}.note-head{display:flex;flex-direction:column;gap:6px;background:var(--c-surface-2);border-bottom:1px solid var(--c-border);padding:12px var(--space-4)}.note-head-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.note-head-meta .note-stamp{margin-left:auto}.note-head-meta .note-edit{margin-left:4px}.note-title{font-weight:700;font-size:var(--fs-md);color:var(--c-text)}.note-stamp{font-size:11px;color:var(--c-text-faint)}.note-status{font-size:11px;font-weight:600}.note-status.is-editable{color:var(--c-warn)}.note-status.is-locked{color:var(--c-success)}.note-body{font-size:var(--fs-sm);color:var(--c-text-muted);line-height:1.6}.note-editor{padding:0;overflow:hidden}.note-editor-head{background:var(--c-surface-2);border-bottom:1px solid var(--c-border);padding:14px 16px 12px;display:flex;flex-direction:column;gap:8px}.input.note-subject{font-size:var(--fs-lg);font-weight:700;border:none;background:transparent;border-radius:0;padding:2px 0;box-shadow:none}.input.note-subject:focus{outline:none;box-shadow:none;border-bottom:2px solid var(--c-primary)}.note-editor-body{padding:16px;display:grid;gap:12px}.note-editor-actions{justify-content:flex-end;gap:8px}.nav-item-lock{margin-left:auto;font-size:11px;opacity:.7}.locked-feature{max-width:520px;margin:40px auto;padding:28px 32px;text-align:center;display:grid;gap:10px;justify-items:center}.locked-feature-icon{font-size:28px}.locked-feature h3{margin:0;font-size:var(--fs-lg);color:var(--c-text)}.locked-feature p{margin:0;font-size:var(--fs-sm);color:var(--c-text-muted);line-height:1.5}.storage-meter{display:grid;gap:6px;font-size:var(--fs-sm)}.storage-meter-head{display:flex;justify-content:space-between;gap:8px;font-weight:600;color:var(--c-text)}.storage-meter-warn{color:var(--c-warn);font-weight:600}.storage-meter-track{height:8px;border-radius:4px;background:var(--c-surface-2);border:1px solid var(--c-border);overflow:hidden}.storage-meter-fill{height:100%;background:var(--c-primary);transition:width .3s ease}.storage-meter-fill.warn{background:var(--c-warn)}.storage-meter-breakdown{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:3px}.storage-meter-breakdown li{display:flex;justify-content:space-between;gap:12px;color:var(--c-text-muted);font-size:12px}.billing-status{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;margin-bottom:12px;border:1px solid var(--c-border);border-radius:var(--r-sm);font-size:var(--fs-sm)}.plan-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}.plan-card{position:relative;border:1px solid var(--c-border);border-radius:10px;background:var(--c-surface);padding:18px 16px 16px;display:grid;gap:8px;align-content:start}.plan-card.popular{border-color:var(--c-primary);box-shadow:0 0 0 1px var(--c-primary)}.plan-card.current{background:var(--c-primary-soft)}.plan-card-flag{position:absolute;top:-9px;left:50%;transform:translate(-50%);background:var(--c-primary);color:#fff;font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 10px;border-radius:999px;white-space:nowrap}.plan-card-name{font-weight:700;font-size:var(--fs-md);color:var(--c-text)}.plan-card-price{font-size:26px;font-weight:800;color:var(--c-text)}.plan-card-price span{font-size:var(--fs-sm);font-weight:500;color:var(--c-text-muted)}.plan-card-storage{font-size:var(--fs-sm);color:var(--c-text-muted);font-weight:600}.plan-card-features{list-style:none;margin:4px 0 8px;padding:0;display:grid;gap:5px}.plan-card-features li{font-size:12px;color:var(--c-text-muted);line-height:1.4;padding-left:18px;position:relative}.plan-card-features li:before{content:"✓";position:absolute;left:0;color:var(--c-success);font-weight:700}.entry-row{border-radius:var(--r-sm);margin:0 -8px;padding:5px 8px;cursor:pointer}.entry-row:hover{background:var(--c-hover)}.entry-row .entry-edit{opacity:.45;transition:opacity .12s ease;min-width:24px;min-height:24px;justify-content:center}.entry-row:hover .entry-edit{opacity:1}.entry-row .entry-edit:focus-visible{opacity:1;outline:none;box-shadow:var(--ring);border-radius:4px}.ov-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}.ov-col{display:flex;flex-direction:column;gap:16px;min-width:0}@media (max-width: 1100px){.ov-grid{grid-template-columns:1fr}}.scard{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden}.scard-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--c-border)}.scard-title{font-size:var(--fs-md);font-weight:700;flex:1 1 auto;display:flex;align-items:center;gap:8px;min-width:0}.scard-hint{font-size:12px;color:var(--c-text-faint);white-space:nowrap}.scard-body{padding:12px 16px}.scard-foot{padding:10px 16px;font-size:12px;color:var(--c-text-faint);background:var(--c-surface-2);border-top:1px solid var(--c-border);line-height:1.5}.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--c-border)}.fcell{background:var(--c-surface);padding:10px 16px 11px;display:flex;flex-direction:column;gap:3px;min-width:0}.fcell.req{background:var(--c-surface)}.fcell-span{grid-column:1 / -1}.fsection{grid-column:1 / -1;background:var(--c-surface-2);padding:7px 16px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-muted)}.flabel{display:flex;align-items:center;gap:8px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-faint)}.fbadge-req{font-size:var(--fs-xs);font-weight:700;letter-spacing:.03em;padding:1px 6px;border-radius:5px;background:var(--c-warn-soft);color:var(--c-warn);border:1px solid var(--c-warn-border)}.fval{font-size:15px;font-weight:600;color:var(--c-text);line-height:1.4;overflow-wrap:anywhere;display:flex;align-items:center;gap:8px;flex-wrap:wrap}html[data-density=compact] .fval{font-size:var(--fs-md)}.fval-add{color:var(--c-primary);font-weight:600;font-size:var(--fs-sm)}.fval-note{font-size:12px;font-weight:400;color:var(--c-text-faint)}.inline-value{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer;min-width:0;max-width:100%;min-height:24px;display:inline-flex;align-items:center;gap:6px;border-radius:4px}.inline-value:disabled{cursor:default}.inline-value:focus-visible{outline:none;box-shadow:var(--ring)}.inline-value-text{min-width:0;overflow-wrap:anywhere}.inline-pencil{font-size:12px;color:var(--c-text-faint);opacity:.35;transition:opacity .12s ease;flex-shrink:0}.inline-value:hover .inline-pencil,.inline-value:focus-visible .inline-pencil{opacity:1}.input.inline-input,.select.inline-input{padding:4px 8px;font-size:var(--fs-sm);width:auto;min-width:140px;max-width:100%}.ready-body{display:flex;flex-direction:column;gap:12px;padding:14px 16px}.ready-stat{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ready-pct{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.ready-sub{font-size:var(--fs-sm);color:var(--c-text-muted)}.ready-missing{font-size:var(--fs-sm);font-weight:600;color:var(--c-warn)}.ready-ok{font-size:var(--fs-sm);font-weight:600;color:var(--c-success)}.ready-track{height:6px;border-radius:var(--r-full);background:var(--c-ghost-bg-hover);overflow:hidden}.ready-fill{height:100%;border-radius:var(--r-full);background:var(--c-primary);transition:width .3s ease}.ready-chips{display:flex;flex-wrap:wrap;gap:8px}.miss-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;min-height:24px;box-sizing:border-box;border-radius:var(--r-full);font:inherit;font-size:12px;font-weight:600;background:var(--c-surface);border:1px solid var(--c-border-strong);color:var(--c-text-muted);cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.miss-chip span{font-weight:700;color:var(--c-primary)}.miss-chip:hover{border-color:var(--c-primary);color:var(--c-text)}.miss-chip:focus-visible{outline:none;box-shadow:var(--ring)}.rrows{display:flex;flex-direction:column}.rrow{display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--c-border);font-size:var(--fs-sm)}.rrow:first-child{border-top:none}.rrow-main{flex:1 1 auto;min-width:0}.rrow-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text);overflow-wrap:anywhere}.rrow-sub{font-size:12px;color:var(--c-text-faint)}.rrow-end{margin-left:auto;flex-shrink:0;font-size:12px;color:var(--c-text-faint);font-variant-numeric:tabular-nums}.rel-kind{flex-shrink:0;width:76px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-muted);overflow:hidden;text-overflow:ellipsis}.kvrow{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 16px;border-top:1px solid var(--c-border);font-size:var(--fs-sm)}.kvrow:first-child{border-top:none}.kv-k{color:var(--c-text-muted);flex-shrink:0}.kv-v{font-weight:600;font-variant-numeric:tabular-nums;text-align:right;min-width:0;overflow-wrap:anywhere}.review-banner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.rb-main{flex:1 1 260px;display:grid;gap:4px}.rb-block{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.rb-hint{font-size:12px;font-weight:600;color:var(--c-warn);text-align:right}.chg-field{flex-shrink:0;width:118px;font-weight:600;color:var(--c-text);text-transform:capitalize;overflow-wrap:anywhere}.chg-old{color:var(--c-text-muted);text-decoration:line-through;overflow-wrap:anywhere;min-width:0}.chg-arrow{color:var(--c-text-faint);flex-shrink:0}.chg-new{font-weight:600;overflow-wrap:anywhere;min-width:0}.crumbs{display:flex;align-items:center;gap:8px;font-size:var(--fs-md);min-width:0}.crumb-root{background:none;border:none;padding:0;font:inherit;cursor:pointer;color:var(--c-text-muted);font-weight:600;min-height:24px;display:inline-flex;align-items:center}.crumb-root:hover{color:var(--c-primary)}.crumb-root:focus-visible{outline:none;box-shadow:var(--ring);border-radius:4px}.crumb-sep{color:var(--c-text-faint)}.crumb-here{font-weight:700;letter-spacing:-.01em;font-size:var(--fs-lg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-page{display:flex;flex-direction:column;gap:16px}.contact-page-body{display:flex;flex-direction:column;gap:16px;max-width:1500px;width:100%;min-width:0}.ttab-bar{display:flex;align-items:center;gap:4px;box-shadow:inset 0 -1px 0 var(--c-border);overflow-x:auto;overflow-y:hidden;position:sticky;top:var(--topbar-h);z-index:1;background:var(--c-surface)}.contact-page>.ttab-bar{margin:-16px calc(-1 * var(--content-pad)) 0;padding:0 calc(var(--content-pad) - 14px)}.ttab{position:relative;padding:8px 14px 10px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit;font-size:var(--fs-md);font-weight:600;color:var(--c-text-muted);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.ttab:hover{color:var(--c-text)}.ttab:focus-visible{outline:none;box-shadow:var(--ring);border-radius:6px}.ttab.on{color:var(--c-primary);border-bottom-color:var(--c-primary)}.ttab-count{min-width:17px;height:17px;padding:0 5px;box-sizing:border-box;border-radius:var(--r-full);background:var(--c-primary-soft);color:var(--c-primary);font-size:var(--fs-xs);font-weight:700;line-height:17px;text-align:center}.ttab.on .ttab-count{background:var(--c-primary);color:#fff}.tile-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tile-row-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tile{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:14px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm)}.tile.recency-stale{background:var(--c-warn-soft)}.tile.recency-cold{background:var(--c-danger-soft)}.tile-label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-faint)}.tile-value{font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.tile-sub{font-size:12px;color:var(--c-text-faint);display:flex;align-items:center;gap:6px;flex-wrap:wrap}@media (max-width: 860px){.tile-row{grid-template-columns:1fr}}.kv-tag{font-size:var(--fs-xs);font-weight:600;color:var(--c-primary);background:var(--c-primary-soft);padding:1px 7px;border-radius:var(--r-full)}.kv-multi{line-height:1.5;font-size:var(--fs-sm);font-weight:600}.kv-social{display:flex;justify-content:flex-end;padding:8px 16px 10px;border-top:1px solid var(--c-border)}.hh-dot{margin-left:auto;flex-shrink:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--c-surface);border:1px solid var(--c-border-strong);color:var(--c-text-muted);font-size:11px;font-weight:700}.na-row{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-top:1px solid var(--c-border)}.na-row:first-child{border-top:none}.na-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0}.na-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:6px}.na-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text)}.na-sub{font-size:12px;color:var(--c-text-faint)}.na-chip{align-self:flex-start;display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--r-sm);border:1px solid var(--c-border-strong);background:var(--c-surface);color:var(--c-ghost-text);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.na-chip:hover{border-color:var(--c-primary);color:var(--c-primary)}.na-chip:focus-visible{outline:none;box-shadow:var(--ring)}.rel-remove{background:none;border:none;cursor:pointer;color:var(--c-text-faint);font-size:12px;line-height:1;padding:2px 6px;border-radius:var(--r-sm);min-width:24px;min-height:24px;opacity:.45;transition:opacity .12s ease;flex-shrink:0}.rrow:hover .rel-remove,.rel-remove:focus-visible{opacity:1}.rel-remove:hover{background:var(--c-danger-soft);color:var(--c-danger)}@media (hover: none){.tree-act,.rowmenu-btn,.inline-pencil,.entry-row .entry-edit,.rel-remove,.sidebar-foot-gear{opacity:1}}@media (max-width: 1100px){.topbar-email{display:none}}.rp{position:relative;display:grid;gap:0}.rp-label{margin-bottom:4px}.rp-token{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;text-align:left;font-family:inherit;color:var(--c-text);background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-sm);padding:6px 8px 6px 6px;cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.rp-token:hover{border-color:var(--c-border-strong)}.rp-token:focus-visible{outline:none;border-color:var(--c-primary);box-shadow:var(--ring)}.rp-avatar{width:30px;height:30px;border-radius:var(--r-full);display:grid;place-items:center;flex-shrink:0;background:var(--c-primary-soft);color:var(--c-primary);border:1px solid var(--c-border);font-size:var(--fs-xs);font-weight:700;letter-spacing:.4px}.rp-idblock{flex:1 1 auto;min-width:0}.rp-name{display:block;font-size:var(--fs-md);font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-name-empty{font-weight:400;color:var(--c-text-faint);font-size:var(--fs-sm)}.rp-sub{display:block;font-size:var(--fs-xs);color:var(--c-text-faint);line-height:1.3;margin-top:1px}.rp-change{flex-shrink:0;padding:4px 6px;font-size:var(--fs-xs);font-weight:600;color:var(--c-primary)}.rp-token:hover .rp-change{text-decoration:underline}.rp-clear{margin-top:6px}.rp-open{position:relative}.rp-field{display:flex;align-items:center;gap:9px;min-height:44px;background:var(--c-surface);border:1px solid var(--c-primary);border-radius:var(--r-sm);padding:9px 10px;box-shadow:var(--ring)}.rp-field-icon{display:inline-flex;color:var(--c-text-faint);flex-shrink:0}.rp-input{flex:1 1 auto;min-width:0;border:none;outline:none;background:transparent;color:var(--c-text);font-family:inherit;font-size:var(--fs-md)}.rp-input::placeholder{color:var(--c-text-faint)}.rp-esc{flex-shrink:0;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:5px;padding:3px 5px;color:var(--c-text-muted)}.rp-panel{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;display:flex;flex-direction:column;max-height:320px;overflow:hidden;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.rp-list{padding:6px;overflow-y:auto;flex:1 1 auto;min-height:0}.rp-group+.rp-group{margin-top:6px}.rp-glabel{padding:8px 10px 5px;font-size:var(--fs-xs);font-weight:600;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em}.rp-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:none;border-radius:var(--r-md);padding:8px 10px;cursor:pointer;font-family:inherit;font-size:var(--fs-md);color:var(--c-text)}.rp-row.on{background:var(--c-primary-soft);color:var(--c-primary)}.rp-icon{width:20px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--c-text-faint)}.rp-row.on .rp-icon{color:inherit}.rp-rowlabel{flex:1 1 auto;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-hit{font-weight:700;color:var(--c-primary);background:var(--c-primary-soft);border-radius:3px}.rp-row.on .rp-hit{background:transparent}.rp-meta{font-size:var(--fs-xs);color:var(--c-text-faint);flex-shrink:0;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-row.on .rp-meta{color:var(--c-primary)}.rp-note{padding:20px 18px;text-align:center;color:var(--c-text-faint);font-size:var(--fs-sm);line-height:1.5}.rp-note b{color:var(--c-text-muted);font-weight:600}.rp-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 12px;flex-shrink:0;border-top:1px solid var(--c-border);background:var(--c-surface-2);font-size:var(--fs-xs);color:var(--c-text-faint)}@media (max-width: 700px){.rp-keys{display:none}}.rp-hint{font-size:var(--fs-caption);color:var(--c-text-faint);margin-top:7px}.rp-hint-lead{margin-top:0;margin-bottom:6px}.rp-hint-bad{color:var(--c-danger)}.rp-applies{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px}.rp-applies-lead{font-size:var(--fs-xs);color:var(--c-text-faint)}.rp-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rp-member{display:inline-flex;align-items:center;gap:4px;padding:5px 6px 5px 12px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;background:var(--c-primary-soft);color:var(--c-primary);border:1px solid transparent}.rp-member-x{display:inline-flex;background:none;border:none;padding:2px;cursor:pointer;color:inherit;opacity:.65;border-radius:var(--r-full)}.rp-member-x:hover{opacity:1;background:#00000012}.rp-add{border-style:dashed}.badge.b-client{background:var(--c-success-soft);color:var(--c-success)}.badge.b-prospect{background:var(--c-warn-soft);color:var(--c-warn)}.badge.b-lead{background:var(--c-ghost-bg);color:var(--c-text-muted)}.badge.b-violet{background:var(--c-violet-soft);color:var(--c-violet)}.badge.b-danger{background:var(--c-danger-soft);color:var(--c-danger)}
