@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,600&display=swap";:root{--ink-50: #f7f7f6;--ink-100: #ececeb;--ink-200: #d6d6d4;--ink-300: #b1b1ae;--ink-400: #7a7a78;--ink-500: #4a4a48;--ink-600: #2e2e2d;--ink-700: #1f1f1e;--ink-800: #15161a;--ink-900: #0c0d10;--slate-50: #f3f6f8;--slate-100: #e6ecf0;--slate-200: #d4dee5;--slate-300: #b9c8d3;--slate-400: #a6bbc8;--slate-500: #7e96a6;--slate-600: #5d7787;--slate-700: #455a6a;--slate-800: #324452;--slate-900: #1f2c36;--bone-0: #ffffff;--bone-50: #fafaf7;--bone-100: #f4f4f0;--bone-200: #ebebe6;--bone-300: #dedeD8;--bone-400: #e4e4df;--brass-100: #f6efe1;--brass-400: #c9a972;--brass-600: #8e7438;--green-50: #ecf3ec;--green-500: #4f7a4f;--green-700: #2f5a30;--amber-50: #f7eedb;--amber-500: #b88019;--amber-700: #8a5d0e;--red-50: #f6e5e3;--red-500: #b13a2e;--red-700: #872417;--info-50: #e9eff3;--info-500: #4a6f8a;--info-700: #2f4c63}:root{--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-display: var(--font-sans);--t-xs: .75rem;--t-sm: .8125rem;--t-base: .875rem;--t-md: 1rem;--t-lg: 1.125rem;--t-xl: 1.25rem;--t-2xl: 1.5rem;--t-3xl: 1.75rem;--t-4xl: 2.25rem;--t-5xl: 3rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.15;--lh-snug: 1.3;--lh-normal: 1.5;--lh-loose: 1.65;--ls-tight: -.02em;--ls-snug: -.01em;--ls-normal: 0;--ls-wide: .04em;--ls-wider: .08em}:root{--bg: var(--bone-50);--surface: var(--bone-0);--surface-muted: var(--bone-100);--surface-hover: var(--bone-200);--surface-sunken: var(--slate-50);--surface-ink: var(--ink-800);--text: var(--ink-800);--text-strong: var(--ink-900);--text-muted: var(--ink-500);--text-faint: var(--ink-400);--text-on-ink: var(--bone-50);--text-on-primary: #ffffff;--border: var(--bone-400);--border-strong: var(--bone-300);--border-focus: var(--slate-700);--brand: var(--slate-400);--brand-soft: var(--slate-100);--brand-strong: var(--slate-700);--primary: var(--slate-800);--primary-hover: var(--slate-900);--primary-soft: var(--slate-100);--primary-fg: #ffffff;--success: var(--green-700);--success-soft: var(--green-50);--warning: var(--amber-700);--warning-soft: var(--amber-50);--danger: var(--red-700);--danger-soft: var(--red-50);--info: var(--info-700);--info-soft: var(--info-50);--accent: var(--brass-600);--accent-soft: var(--brass-100)}:root{--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 9999px;--shadow-xs: 0 1px 0 rgba(21, 22, 26, .04);--shadow-sm: 0 1px 2px rgba(21, 22, 26, .05);--shadow-md: 0 6px 18px -8px rgba(21, 22, 26, .12), 0 1px 2px rgba(21, 22, 26, .05);--shadow-lg: 0 16px 40px -12px rgba(21, 22, 26, .18), 0 2px 4px rgba(21, 22, 26, .06);--shadow-focus: 0 0 0 3px rgba(50, 68, 82, .18);--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--topbar-height: 72px;--topbar-logo-h: 38px;--space-16: 64px;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur-base: .18s;--dur-slow: .28s}*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);font-size:var(--t-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:var(--fw-semibold);letter-spacing:var(--ls-snug);color:var(--text-strong)}h1{font-size:var(--t-2xl);line-height:var(--lh-tight)}h2{font-size:var(--t-xl);line-height:var(--lh-snug)}h3{font-size:var(--t-lg);line-height:var(--lh-snug)}h4{font-size:var(--t-md);line-height:var(--lh-snug);font-family:var(--font-sans)}p{margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-mono);font-size:.875em}hr{border:0;border-top:1px solid var(--border);margin:var(--space-4) 0}button{font-family:inherit}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:var(--t-sm)}.row{display:flex;gap:var(--space-2);align-items:center}.row-end{display:flex;justify-content:flex-end;gap:var(--space-2)}.stack>*+*{margin-top:var(--space-3)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;padding:calc(var(--topbar-height) + var(--space-6)) var(--space-4) var(--space-6)}.main-content{width:min(90%,1800px);margin:0 auto}@media (max-width: 1100px){.main-content{width:95%}}@media (max-width: 640px){.main{padding:calc(var(--topbar-height) + var(--space-3)) 0 var(--space-4)}.main-content{width:98%}}.topbar{display:flex;align-items:center;gap:var(--space-4);height:var(--topbar-height);padding:0 var(--space-5);background:var(--surface);border-bottom:1px solid var(--border);position:fixed;top:0;left:0;right:0;z-index:30}.topbar-apps-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:7px 12px;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:var(--t-base);font-weight:var(--fw-medium);cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.topbar-apps-btn:hover{background:var(--surface-hover);border-color:var(--border-strong);text-decoration:none}.topbar-azimut-logo{display:block;height:var(--topbar-logo-h);width:auto;border:0}.topbar-apps-btn{padding:var(--space-1) var(--space-3)}.topbar-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--t-base)}.topbar-breadcrumb-root{color:var(--text-muted)}.topbar-breadcrumb-sep{color:var(--border-strong);font-size:var(--t-md);line-height:1}.topbar-breadcrumb-current{color:var(--text);font-weight:var(--fw-semibold)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.user-menu{position:relative}.user-menu-trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:7px 10px;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text);font-size:var(--t-base);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.user-menu-trigger:hover{background:var(--surface-muted);border-color:var(--border)}.user-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:var(--space-1) 0;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),visibility var(--dur-fast);z-index:100}.user-menu:hover .user-menu-dropdown,.user-menu:focus-within .user-menu-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.user-menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:0;color:var(--text);font-family:inherit;font-size:var(--t-base);text-align:left;text-decoration:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.user-menu-item:hover{background:var(--surface-muted);text-decoration:none}.user-menu-version{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted);text-align:center;-webkit-user-select:none;user-select:none}.user-menu-dropdown-header{display:none}@media (max-width: 768px){.user-menu-dropdown{position:fixed;top:0;right:0;left:auto;bottom:0;height:100vh;width:min(300px,85vw);min-width:0;border:0;border-left:1px solid var(--border);border-radius:0;box-shadow:-4px 0 20px #00000026;padding:0;z-index:50;overflow-y:auto;transform:translate(100%);opacity:1;visibility:hidden;transition:transform .3s var(--ease-out, ease),visibility 0s linear .3s}.user-menu:hover .user-menu-dropdown,.user-menu:focus-within .user-menu-dropdown{transform:translate(100%);visibility:hidden}.user-menu.is-mobile-open .user-menu-dropdown{transform:translate(0);visibility:visible;transition:transform .3s var(--ease-out, ease),visibility 0s linear 0s}.user-menu-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}.user-menu-item{padding:var(--space-3) var(--space-4);font-size:.9375rem}.user-menu-version{margin-top:var(--space-2)}}.notif-menu{position:relative}.notif-menu-trigger{display:inline-flex;align-items:center;justify-content:center;position:relative;width:36px;height:36px;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.notif-menu-trigger:hover{background:var(--surface-muted);border-color:var(--border)}.notif-menu-badge{position:absolute;top:2px;right:2px;background:var(--danger);color:#fff;font-size:10px;font-weight:var(--fw-semibold);min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--surface)}.notif-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:360px;max-height:480px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;z-index:100}.notif-menu-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--t-base);font-weight:var(--fw-semibold)}.notif-menu-list{overflow-y:auto;flex:1}.notif-menu-item{display:block;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);text-decoration:none;color:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.notif-menu-item:last-child{border-bottom:0}.notif-menu-item:hover{background:var(--surface-muted);text-decoration:none}.notif-menu-item.unread{border-left:3px solid var(--primary);padding-left:calc(var(--space-4) - 3px)}.notif-menu-item-title{font-weight:var(--fw-semibold);font-size:var(--t-sm);color:var(--text-strong);margin-bottom:2px}.notif-menu-item-body{font-size:var(--t-sm);color:var(--text);line-height:var(--lh-normal)}.notif-menu-item-meta{font-size:var(--t-xs);color:var(--text-muted);margin-top:4px}.notif-menu-empty{padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--t-sm)}.notif-menu-footer{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);text-align:center;font-size:var(--t-sm)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.card-title{font-size:var(--t-md);font-weight:var(--fw-semibold);color:var(--text-strong)}.card-subtitle{color:var(--text-muted);font-size:var(--t-sm);margin-top:2px;line-height:var(--lh-normal)}.card-footer{padding:var(--space-3) var(--space-4);background:var(--surface-muted);border-radius:var(--radius)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:8px 14px;white-space:nowrap;font:inherit;font-size:var(--t-base);font-weight:var(--fw-medium);background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.btn:hover{background:var(--surface-muted)}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{background:#6a1c10;border-color:#6a1c10}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn-ghost:hover{background:var(--surface-muted);color:var(--text)}.btn-sm{padding:6px 10px;font-size:var(--t-sm)}.btn-plus:before{content:"+";display:inline-block;margin-right:4px;font-weight:var(--fw-bold)}.field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.field-label{font-size:var(--t-sm);font-weight:var(--fw-medium);color:var(--text)}.field-input,.field-select,.field-textarea{font:inherit;font-size:var(--t-base);padding:8px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field-input:focus,.field-select:focus,.field-textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--shadow-focus)}.field-input:disabled,.field-select:disabled,.field-textarea:disabled{background:var(--surface-muted);color:var(--text-muted);cursor:not-allowed}.field-textarea{resize:vertical;min-height:90px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.field-hint{font-size:var(--t-xs);color:var(--text-muted);margin-top:2px}.field-code-preview{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 8px;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--t-sm);color:var(--text)}.field-toggle{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--t-base);cursor:pointer;-webkit-user-select:none;user-select:none}.field-toggle input{margin:2px 0 0;cursor:pointer;accent-color:var(--primary)}.form{display:flex;flex-direction:column;gap:var(--space-5)}.form-section{display:flex;flex-direction:column;gap:var(--space-3)}.form-section-title{font-size:var(--t-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--text-muted);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.form-grid .field{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface-muted)}.segmented button{padding:6px 14px;background:transparent;border:0;font:inherit;font-size:var(--t-base);cursor:pointer;color:var(--text-muted);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.segmented button+button{border-left:1px solid var(--border)}.segmented button:hover{background:var(--surface-hover)}.segmented button.active{background:var(--surface);color:var(--text);font-weight:var(--fw-medium)}.badge{display:inline-block;padding:2px 10px;font-size:var(--t-xs);font-weight:var(--fw-medium);white-space:nowrap;border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--text-muted)}.badge-primary{background:var(--primary-soft);color:var(--primary)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-muted{background:var(--surface-muted);color:var(--text-muted)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:var(--t-base)}.table th{font-weight:var(--fw-medium);color:var(--text-muted);background:var(--surface-muted);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--ls-wide)}.table tbody tr:hover{background:var(--surface-muted)}.table tbody tr:last-child td{border-bottom:0}.table td.actions{text-align:right}.table td.actions .row{justify-content:flex-end}.system-layout{display:flex;flex-direction:column;gap:var(--space-5)}.system-page-header{display:flex;align-items:center;gap:var(--space-4)}.system-page-header-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--brand-soft);color:var(--brand-strong);border-radius:var(--radius-lg);flex-shrink:0}.system-page-header-text{flex:1;min-width:0}.system-page-header-text h1{font-size:var(--t-2xl);margin-bottom:2px}.system-page-header-text p{color:var(--text-muted);font-size:var(--t-base)}.system-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;position:sticky;top:var(--topbar-height);background:var(--surface);z-index:20;box-shadow:0 1px 0 var(--border);scrollbar-width:none}.system-tabs::-webkit-scrollbar{display:none}.system-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:10px 16px;color:var(--text-muted);font-size:var(--t-base);font-weight:var(--fw-medium);border-bottom:2px solid transparent;margin-bottom:-1px;text-decoration:none;white-space:nowrap;cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.system-tab:hover{color:var(--text);background:var(--surface-muted);text-decoration:none}.system-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.system-tab.active:hover{background:transparent}.system-content{padding-top:var(--space-3)}.apps-home{display:flex;flex-direction:column;gap:var(--space-6)}.apps-greeting{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.apps-greeting h1{font-size:var(--t-3xl);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.apps-greeting p{color:var(--text-muted);font-size:var(--t-md);margin-top:var(--space-1)}.apps-greeting-subtitle-mobile{display:none}.view-switch{position:relative}.view-switch-mobile{display:none!important}.view-switch-trigger{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;color:var(--text);font:inherit;font-size:.875rem;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.view-switch-trigger:hover{background:var(--surface-muted)}.view-switch-label{font-weight:var(--fw-medium)}.view-switch-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:4px;z-index:50}.view-switch-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 10px;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:.875rem;cursor:pointer;text-align:left}.view-switch-item:hover{background:var(--surface-muted)}.view-switch-item.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:var(--fw-medium)}.apps-toolbar{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap}.apps-toolbar-right{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;flex:0 0 auto}.apps-toolbar>.apps-fav-filter{margin-left:auto}.apps-search{display:flex;align-items:center;gap:var(--space-2);padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);flex:1 1 280px;min-width:0;max-width:480px}.apps-search input{flex:1;min-width:0;background:transparent;border:0;font:inherit;font-size:var(--t-base);color:var(--text);outline:none}.apps-fav-filter{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font:inherit;font-size:.875rem;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);flex:0 0 auto}.apps-fav-filter:hover:not(:disabled){background:var(--surface-muted)}.apps-fav-filter.active{background:color-mix(in srgb,#f5b40d 15%,transparent);border-color:#f5b40d;color:#b8830a;font-weight:var(--fw-medium)}.apps-fav-filter.disabled,.apps-fav-filter:disabled{opacity:.45;cursor:not-allowed}.apps-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:168px;gap:var(--space-4);justify-items:stretch;align-items:stretch}@media (max-width: 1100px){.apps-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.apps-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.apps-grid{grid-template-columns:1fr}}.apps-list{display:flex;flex-direction:column;gap:var(--space-2)}.apps-compact{display:flex;flex-direction:column;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.app-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.app-card-link{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit;text-decoration:none;cursor:pointer}.app-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.app-card-star{position:absolute;top:6px;right:6px;z-index:2;background:transparent;border:0;cursor:pointer;padding:6px;border-radius:var(--radius-sm);color:var(--text-muted);opacity:0;display:flex;align-items:center;justify-content:center;transition:opacity var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.app-card:hover .app-card-star{opacity:1}.app-card-star:hover{background:var(--surface-muted);color:#f5b40d}.app-card-star.active{opacity:1;color:#f5b40d}.app-card.view-grid{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}.app-card.view-grid .app-card-icon{align-self:flex-start}.app-card.view-grid .app-card-body{flex:1}.app-card.view-list{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);padding-right:40px}.app-card.view-compact{display:flex;align-items:center;gap:var(--space-3);padding:8px var(--space-3);padding-right:40px;border:0;border-radius:0;min-height:0}.app-card.view-compact:hover{background:var(--surface-muted);box-shadow:none}.app-card.view-compact .app-card-star{top:50%;transform:translateY(-50%)}.app-card-icon{display:flex;align-items:center;justify-content:center;background:var(--brand-soft);color:var(--brand-strong);border-radius:var(--radius);flex-shrink:0}.app-card.view-grid .app-card-icon{width:48px;height:48px}.app-card.view-list .app-card-icon{width:40px;height:40px}.app-card.view-compact .app-card-icon{width:28px;height:28px;border-radius:var(--radius-sm)}.app-card-body{min-width:0;display:flex;flex-direction:column;gap:4px}.app-card.view-list .app-card-body,.app-card.view-compact .app-card-body{flex:1}.app-card-title{font-size:var(--t-lg);font-weight:var(--fw-semibold);color:var(--text-strong);display:flex;align-items:center;gap:var(--space-2)}.app-card.view-compact .app-card-title{font-size:var(--t-base)}.app-card-desc{color:var(--text-muted);font-size:var(--t-sm);line-height:var(--lh-normal);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-card-external{font-size:.6875rem;vertical-align:middle}@media (max-width: 640px){.apps-grid{grid-auto-rows:144px}.app-card.view-grid{padding:var(--space-4)}.app-card.view-grid .app-card-icon{width:40px;height:40px}.view-switch-desktop{display:none!important}.view-switch-mobile{display:inline-flex!important;padding:6px 8px}.view-switch-label,.apps-fav-filter-label{display:none}.apps-fav-filter{padding:6px 8px}.apps-search{flex:1 1 100%}.apps-toolbar-right{margin-left:auto;justify-content:flex-end}.apps-greeting{flex-direction:column;align-items:center;text-align:center}.apps-greeting>div{text-align:center;width:100%}.apps-greeting-subtitle-desktop{display:none}.apps-greeting-subtitle-mobile{display:block}}.list-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.list-header-text{display:flex;flex-direction:column;gap:2px}.list-header-text .card-title{font-size:var(--t-md)}.list-header-text .card-subtitle{font-size:var(--t-sm)}@media (max-width: 600px){.list-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.list-header-text{width:100%}.list-header>.row,.list-header>.btn{width:100%;justify-content:stretch}.list-header>.row>.btn,.list-header>.btn{flex:1 1 auto;justify-content:center}}.list-toolbar{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.list-toolbar .field-input{flex:1;min-width:220px}.list-toolbar .field-input[type=search]{max-width:380px}.list-toolbar select.field-input{max-width:200px;flex:0 0 auto}.list-toolbar .toolbar-count{font-size:var(--t-sm);color:var(--text-muted)}.multi-row{display:flex;flex-direction:column;gap:var(--space-2)}.multi-row-item{display:grid;grid-template-columns:1fr 1.4fr 1.8fr auto;gap:var(--space-2);align-items:start}.multi-row-item .field{margin-bottom:0}.multi-row-remove{width:32px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;margin-top:var(--space-5);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.multi-row-remove:hover{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.multi-row-remove:disabled{opacity:.4;cursor:not-allowed}.multi-row-add{align-self:flex-start;display:inline-flex;align-items:center;gap:6px}.multi-row-item.has-error .field-input{border-color:var(--danger);background:var(--danger-soft)}.multi-row-item.has-error .field-code-preview{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.priv-select-toolbar{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);flex-wrap:wrap}.priv-select-toolbar .field-input{flex:1;min-width:200px}.priv-select-table-wrap{max-height:55vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius)}.priv-select-table{width:100%;border-collapse:collapse;font-size:var(--t-base)}.priv-select-table thead th{position:sticky;top:0;z-index:1;background:var(--surface-muted);text-align:left;font-size:var(--t-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.priv-select-table tbody tr{border-bottom:1px solid var(--border);cursor:pointer;transition:background 80ms var(--ease-out)}.priv-select-table tbody tr:last-child{border-bottom:0}.priv-select-table tbody tr:hover{background:var(--surface-muted)}.priv-select-table tbody tr.selected{background:var(--primary-soft)}.priv-select-table td{padding:var(--space-2) var(--space-3);vertical-align:middle}.priv-select-table td.check-col{width:36px;text-align:center}.priv-select-table td.check-col input{width:16px;height:16px;margin:0;accent-color:var(--primary);cursor:pointer}.priv-select-table td.code-col{width:32%}.priv-select-table td.module-col{width:18%}.module-icon{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;font-size:var(--t-lg);line-height:1}.module-icon img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-sm)}.module-icon-preview{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:var(--t-xl)}.module-icon-preview img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-sm)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f101873;display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:200;animation:modalFade var(--dur-base) var(--ease-out)}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:calc(100vh - var(--space-12));display:flex;flex-direction:column;overflow:hidden;animation:modalSlide var(--dur-base) var(--ease-out)}.modal-lg{max-width:720px}.modal-xl{max-width:960px}.modal-header{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-header h2{font-size:var(--t-md);font-weight:var(--fw-semibold)}.modal-close{background:transparent;border:0;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--t-xl);line-height:1;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.modal-close:hover{background:var(--surface-muted);color:var(--text)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1}.modal-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:var(--space-2)}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-shell{min-height:100vh;display:grid;place-items:center;background:var(--bg);padding:var(--space-8)}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.auth-brand-mark{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-strong);margin-bottom:var(--space-2)}.auth-brand-mark svg{color:var(--brand-strong)}.auth-brand{font-size:var(--t-xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);font-family:var(--font-sans)}.auth-subtitle{color:var(--text-muted);font-size:var(--t-sm);margin:var(--space-1) 0 var(--space-6);line-height:var(--lh-normal)}.empty{text-align:center;padding:var(--space-10) var(--space-4);color:var(--text-muted);font-size:var(--t-base);border:1px dashed var(--border-strong);border-radius:var(--radius)}.notif{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);background:var(--surface);transition:border-color var(--dur-fast) var(--ease-out)}.notif:hover{border-color:var(--border-strong)}.notif.unread{border-left:3px solid var(--primary)}.notif-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1)}.notif-title{font-weight:var(--fw-semibold);font-size:var(--t-md);color:var(--text-strong)}.notif-meta{font-size:var(--t-xs);color:var(--text-muted);display:flex;gap:var(--space-2);align-items:center}.notif-body{color:var(--text);font-size:var(--t-base);margin-bottom:var(--space-3)}.notif-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.profile-grid{display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:var(--space-2) var(--space-4);align-items:center}.profile-row{display:contents}.profile-label{font-size:var(--t-sm);color:var(--text-muted);font-weight:var(--fw-medium)}.profile-value{font-size:var(--t-base);color:var(--text)}.priv-editor{display:flex;flex-direction:column;gap:var(--space-3)}.priv-editor-header{display:flex;gap:var(--space-2);align-items:center}.priv-editor-footer{display:flex;justify-content:flex-end;gap:var(--space-2)}.priv-editor-groups{display:flex;flex-direction:column;gap:var(--space-3)}.priv-group{border:1px solid var(--border);border-radius:var(--radius)}.priv-group-header{padding:var(--space-2) var(--space-3);background:var(--surface-muted);border-bottom:1px solid var(--border)}.priv-group-name{font-weight:var(--fw-semibold);font-size:var(--t-sm)}.priv-group-count{font-size:var(--t-xs);color:var(--text-muted);margin-left:var(--space-2)}.priv-group-items{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.priv-item{padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer}.priv-item:hover{background:var(--surface-muted)}.priv-item-content{display:flex;align-items:flex-start;gap:var(--space-2)}.priv-item-desc{font-size:var(--t-xs);color:var(--text-muted);margin-top:2px}.role-privs{display:flex;flex-wrap:wrap;gap:4px}.toast-stack{position:fixed;bottom:var(--space-4);right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:300}.toast{padding:var(--space-3) var(--space-4);border-radius:var(--radius);font-size:var(--t-sm);background:var(--surface-ink);color:var(--text-on-ink);box-shadow:var(--shadow-md);max-width:360px;animation:toastSlide var(--dur-base) var(--ease-out)}.toast-success{background:var(--success);color:#fff}.toast-error{background:var(--danger);color:#fff}@keyframes toastSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.config-layout{display:grid;grid-template-columns:240px 1fr;gap:var(--space-6);align-items:start}.config-sidebar{position:sticky;top:calc(var(--topbar-height) + var(--space-6));display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.config-sidebar-header{display:flex;flex-direction:column;gap:2px}.config-sidebar-title{font-family:var(--font-display);font-size:var(--t-lg);font-weight:var(--fw-semibold);letter-spacing:var(--ls-snug);color:var(--text-strong)}.config-sidebar-subtitle{font-size:var(--t-sm);color:var(--text-muted);line-height:var(--lh-normal)}.config-nav{display:flex;flex-direction:column;gap:var(--space-2)}.config-nav-group{display:flex;flex-direction:column;gap:var(--space-1)}.config-nav-group-title{font-size:.6875rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted);padding:var(--space-1) var(--space-2);margin-top:var(--space-2)}.config-nav-group-items{display:flex;flex-direction:column;gap:2px}.config-nav-link{display:flex;align-items:center;gap:var(--space-2);padding:8px var(--space-3);border-radius:var(--radius);color:var(--text-muted);font-size:var(--t-base);font-weight:var(--fw-medium);text-decoration:none;cursor:pointer;border-left:2px solid transparent;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.config-nav-link:hover{background:var(--surface-muted);color:var(--text);text-decoration:none}.config-nav-link.active{background:var(--primary-soft);color:var(--primary);border-left-color:var(--primary)}.config-nav-link.indented{padding-left:var(--space-5)}.config-content{min-width:0;display:flex;flex-direction:column;gap:var(--space-4)}.config-content-header{display:flex;flex-direction:column;gap:4px;padding-bottom:var(--space-4);border-bottom:1px solid var(--border);margin-bottom:var(--space-2)}.config-content-title{font-family:var(--font-display);font-size:var(--t-2xl);font-weight:var(--fw-semibold);letter-spacing:var(--ls-snug);color:var(--text-strong);line-height:var(--lh-tight)}.config-content-subtitle{font-size:var(--t-base);color:var(--text-muted);line-height:var(--lh-normal)}@media (max-width: 768px){.config-layout{grid-template-columns:1fr;gap:var(--space-4)}.config-sidebar{position:static;top:auto}}.sortable-th{transition:background var(--dur-fast) var(--ease-out)}.sortable-th:hover{background:var(--surface-hover)}.sortable-th.active{color:var(--text-strong);font-weight:var(--fw-semibold)}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--border);flex-wrap:wrap}.table-footer-info{font-size:.8125rem;color:var(--text-muted)}.pagination .btn-sm{min-width:2rem;justify-content:center}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);padding:0}.icon-btn-sm{width:28px;height:28px}.icon-btn-md{width:34px;height:34px}.icon-btn:hover:not(:disabled){background:var(--surface-hover, var(--surface-muted));border-color:var(--border-strong, var(--border))}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:var(--danger);color:var(--danger)}.icon-btn-success:hover:not(:disabled){background:color-mix(in srgb,var(--success) 10%,transparent);border-color:var(--success);color:var(--success)}.icon-btn-group{display:inline-flex;gap:4px;align-items:center;justify-content:flex-end}.page-size-select{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:.75rem;color:var(--text-muted);flex:0 0 auto;white-space:nowrap}.page-size-select-label{font-size:.75rem}.page-size-select-input{font:inherit;font-size:.8125rem;padding:4px 22px 4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;width:auto}.page-size-select-input:hover{border-color:var(--border-strong, var(--border))}@media (max-width: 640px){.page-size-select-label{display:none}.page-size-select{margin-left:0}}.table-wrap{-webkit-overflow-scrolling:touch}.table{min-width:640px}.table th,.table td{white-space:nowrap}.table td.wrap,.table th.wrap{white-space:normal;min-width:200px}@media (max-width: 768px){.table-wrap{background:linear-gradient(to right,var(--surface) 30%,rgba(255,255,255,0)),linear-gradient(to right,rgba(0,0,0,0),var(--surface) 70%) 100% 0,radial-gradient(farthest-side at 0 50%,#0000001f,#0000),radial-gradient(farthest-side at 100% 50%,#0000001f,#0000) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}}.list-toolbar{flex-wrap:wrap}@media (max-width: 640px){.list-toolbar{gap:var(--space-2)}.list-toolbar .field-input{min-width:0;flex:1 1 100%}.list-toolbar select.field-input{flex:1 1 calc(50% - var(--space-2));max-width:none}.list-toolbar .toolbar-count{order:99;flex:1 1 100%;text-align:right}}.topbar-mobile-toggle{display:none;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;padding:6px;align-items:center;justify-content:center}@media (max-width: 768px){:root{--topbar-height: 64px;--topbar-logo-h: 34px}.topbar{padding:0 var(--space-3);gap:var(--space-2)}.topbar-breadcrumb{flex:1;min-width:0;overflow:hidden}.topbar-breadcrumb-system,.topbar-breadcrumb-sep{display:none}.topbar-breadcrumb-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-trigger>span:not(.user-menu-chevron){display:none}.user-menu-chevron{display:none}.topbar-right{gap:var(--space-2)}}@media (max-width: 768px){.system-page-header{flex-direction:column;align-items:center;text-align:center;gap:var(--space-1)}.system-page-header-icon{display:none}.system-page-header-text{flex:0 1 auto;text-align:center}.system-page-header-text h1{font-size:1.125rem}.system-page-header-text p{font-size:.8125rem}}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}.form-actions{flex-wrap:wrap;gap:var(--space-2)}.form-actions .btn{flex:1 1 auto}}.config-mobile-header,.config-mobile-toggle,.config-nav-mobile{display:none}.config-sidebar-desktop{display:flex;flex-direction:column;gap:var(--space-4)}@media (max-width: 768px){.config-layout{grid-template-columns:1fr;gap:var(--space-3)}.config-mobile-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-1);margin-bottom:var(--space-2)}.config-mobile-header .system-page-header-text h1{font-size:1.125rem;line-height:var(--lh-tight);letter-spacing:var(--ls-snug);color:var(--text-strong)}.config-mobile-header .system-page-header-text p{font-size:.8125rem;color:var(--text-muted);margin-top:2px}.config-sidebar{display:none}}.system-tabs-toggle,.config-mobile-toggle{display:none!important}@media (max-width: 768px){.system-tabs{display:none}}.topbar-apps-btn-mobile{display:none}@media (max-width: 768px){.topbar-apps-btn-desktop{display:none}.topbar-apps-btn-mobile{display:inline-flex}}.topbar-mobile-overlay{display:none}@media (max-width: 768px){.topbar-mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:45;animation:topbar-mobile-overlay-fade-in .2s var(--ease-out, ease)}}@keyframes topbar-mobile-overlay-fade-in{0%{opacity:0}to{opacity:1}}.topbar-mobile-menu{display:none}@media (max-width: 768px){.topbar-mobile-menu{display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;width:min(300px,85vw);background:var(--surface);border-right:1px solid var(--border);box-shadow:4px 0 20px #00000026;overflow-y:auto;z-index:50;transform:translate(-100%);visibility:hidden;transition:transform .3s var(--ease-out, ease),visibility 0s linear .3s}.topbar-mobile-menu.open{transform:translate(0);visibility:visible;transition:transform .3s var(--ease-out, ease),visibility 0s linear 0s}}.topbar-mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}.topbar-mobile-menu-section{display:flex;flex-direction:column;padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.topbar-mobile-menu-section:last-child{border-bottom:0}.topbar-mobile-menu-section-title{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:.75rem;font-weight:var(--fw-semibold, 600);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.topbar-mobile-menu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--text);text-decoration:none;font-size:.9375rem;border-left:3px solid transparent;transition:background var(--dur-fast) var(--ease-out)}.topbar-mobile-menu-item:hover{background:var(--surface-muted);text-decoration:none}.topbar-mobile-menu-item.active{background:var(--surface-muted);color:var(--primary);border-left-color:var(--primary);font-weight:var(--fw-medium)}.topbar-mobile-menu-item-secondary{color:var(--text-muted);font-size:.8125rem}.topbar-mobile-menu-item-section{padding-left:calc(var(--space-4) + var(--space-3))}@media (max-width: 640px){.notif-menu-dropdown{position:fixed;top:calc(var(--topbar-height) + 8px);left:50%;right:auto;transform:translate(-50%);width:calc(100vw - 16px);max-width:420px;max-height:calc(100vh - var(--topbar-height) - 24px)}}.col-settings{position:relative;display:inline-block}.col-settings-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:280px;max-width:340px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md, 6px);box-shadow:0 6px 24px #0000001f;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.col-settings-header{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem .5rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.col-settings-list{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto}.col-settings-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:var(--radius-sm, 4px);cursor:grab;-webkit-user-select:none;user-select:none}.col-settings-item:hover{background:var(--surface-muted)}.col-settings-item.is-dragging{opacity:.4}.col-settings-item.is-drag-over{background:var(--primary-soft, var(--surface-muted));outline:2px dashed var(--primary);outline-offset:-2px}.col-settings-item-locked{cursor:default;opacity:.75}.col-settings-grip{display:inline-flex;align-items:center;justify-content:center;width:18px;color:var(--text-muted);flex-shrink:0}.col-settings-item-locked .col-settings-grip{visibility:hidden}.col-settings-label{display:flex;align-items:center;gap:.5rem;flex:1;cursor:pointer;min-width:0}.col-settings-item-locked .col-settings-label{cursor:default}.col-settings-label input[type=checkbox]{margin:0}.col-settings-hint{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted);padding:.5rem;border-top:1px solid var(--border);margin-top:.25rem}.bulk-actions-bar{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:var(--primary-soft, var(--surface-muted));border:1px solid var(--primary);border-radius:var(--radius-md, 6px);margin-bottom:.75rem;flex-wrap:wrap}.bulk-actions-count{font-weight:600;color:var(--primary)}.bulk-actions-buttons{display:flex;gap:.5rem;flex-wrap:wrap;margin-left:auto}.table th.is-th-dragging{opacity:.5}.table th.is-th-drag-over{border-left:2px solid var(--primary)}.table th[draggable=true] .th-drag-handle{display:inline-flex;align-items:center;color:var(--text-muted);cursor:grab;margin-right:.25rem;opacity:0;transition:opacity .15s}.table th[draggable=true]:hover .th-drag-handle{opacity:.8}.table th.col-select,.table td.col-select{width:36px;padding-left:.5rem;padding-right:.25rem;text-align:center}.table td.col-select input[type=checkbox],.table th.col-select input[type=checkbox]{margin:0;cursor:pointer}.list-toolbar-actions{display:flex;align-items:center;gap:.375rem;margin-left:auto}.vault-detail-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.vault-detail-header-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.vault-detail-header-title h1{font-size:var(--t-lg);font-weight:var(--fw-semibold);color:var(--text-strong);margin:0}.vault-detail-header-title .muted{font-size:var(--t-sm)}.vault-detail-header-actions{display:flex;align-items:center;gap:var(--space-2)}.vault-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:var(--t-sm);color:var(--text-muted)}.vault-back-btn:hover{color:var(--text)}@media (max-width: 600px){.vault-detail-header{flex-wrap:wrap;gap:var(--space-2)}.vault-back-btn{order:-1;flex-basis:100%}.vault-detail-header-actions{margin-left:auto}}.vault-secrets-grid{display:grid;grid-template-columns:minmax(220px,280px) 1fr;grid-template-areas:"folders content";gap:var(--space-4);align-items:start}.vault-secrets-grid>.folder-tree{grid-area:folders}.vault-secrets-grid>.vault-secrets-content{grid-area:content;min-width:0}@media (max-width: 900px){.vault-secrets-grid{grid-template-columns:1fr;grid-template-areas:"content" "folders"}}.folder-tree{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2);display:flex;flex-direction:column;gap:2px}.folder-tree-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-2) var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-1)}.folder-tree-header h3{font-size:var(--t-sm);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--text-muted);margin:0}.folder-tree-node{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;background:transparent;border:0;text-align:left;width:100%;color:var(--text);font-size:var(--t-sm)}.folder-tree-node:hover{background:var(--surface-muted)}.folder-tree-node.active{background:var(--primary-soft);color:var(--primary);font-weight:var(--fw-medium)}.folder-tree-node-icon{width:18px;display:inline-flex;justify-content:center;color:var(--text-muted);flex-shrink:0}.folder-tree-node.active .folder-tree-node-icon{color:var(--primary)}.folder-tree-node-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-tree-node-actions{opacity:0;display:flex;gap:2px}.folder-tree-node:hover .folder-tree-node-actions{opacity:1}.folder-tree-node.drag-target{background:var(--primary-soft);outline:2px dashed var(--primary);outline-offset:-2px}.folder-tree-node-root .folder-tree-node-icon{font-family:var(--font-mono);font-size:1rem;font-weight:var(--fw-bold);color:var(--text-muted)}.folder-tree-node-root .folder-tree-node-name{font-weight:var(--fw-semibold)}.folder-tree-node-root.active .folder-tree-node-icon,.folder-tree-node-root.active .folder-tree-node-name{color:var(--primary)}.folder-tree-divider{border-top:1px dashed var(--border);margin:var(--space-2) 0}.folder-tree-node-virtual .folder-tree-node-name{color:var(--text-muted);font-style:italic}.folder-tree-node-virtual.active .folder-tree-node-name{color:var(--primary);font-style:normal}.folder-tree-chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--text-muted);cursor:pointer;border-radius:3px;flex-shrink:0}.folder-tree-chevron:hover{background:var(--surface-hover);color:var(--text)}.folder-icon-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}@media (max-width: 600px){.folder-icon-picker{grid-template-columns:repeat(5,1fr)}}.folder-icon-picker-item{display:flex;align-items:center;justify-content:center;height:36px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);transition:background .12s,color .12s,border-color .12s}.folder-icon-picker-item:hover{background:var(--surface-muted);color:var(--text)}.folder-icon-picker-item.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.secret-value-hint{font-size:var(--t-xs);color:var(--text-muted);margin-top:var(--space-2)}.input-with-actions{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;transition:border-color .12s,box-shadow .12s}.input-with-actions:focus-within{border-color:var(--primary);box-shadow:var(--shadow-focus)}.input-with-actions>.input-content{flex:1;min-width:0;border:0;border-radius:0;background:transparent;padding:var(--space-3);font:inherit;color:var(--text);resize:none}.input-with-actions>.input-content:focus{outline:none;box-shadow:none}.input-with-actions>.input-content.is-readonly{font-family:var(--font-mono);font-size:var(--t-sm);word-break:break-all;white-space:pre-wrap;max-height:240px;overflow-y:auto}.input-with-actions>.input-actions{display:flex;flex-direction:column;background:var(--surface-muted);border-left:1px solid var(--border);flex-shrink:0}.input-with-actions>.input-actions>button{border:0;background:transparent;padding:var(--space-2) var(--space-3);font-size:var(--t-sm);color:var(--text);display:inline-flex;align-items:center;gap:6px;flex:1;min-height:36px;cursor:pointer;white-space:nowrap}.input-with-actions>.input-actions>button+button{border-top:1px solid var(--border)}.input-with-actions>.input-actions>button:hover{background:var(--surface-hover)}.input-with-actions>.input-actions>button:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.input-with-actions>.input-actions:only-child>button{min-height:100%}.secret-value-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.vault-perm-OWNER{background:var(--primary-soft);color:var(--primary)}.vault-perm-EDITOR{background:var(--success-soft);color:var(--success)}.vault-perm-VISUALIZER{background:var(--warning-soft);color:var(--warning)}.vault-perm-READER{background:var(--surface-muted);color:var(--text-muted)}.invite-code-chip{font-family:var(--font-mono);font-size:var(--t-sm);background:var(--surface-muted);padding:2px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);letter-spacing:.06em}.table tbody tr.draggable-row{cursor:grab}.table tbody tr.draggable-row:active{cursor:grabbing}.table tbody tr.draggable-row .actions,.table tbody tr.draggable-row .col-select,.table tbody tr.draggable-row a{cursor:auto}.table tbody tr.clickable-row{cursor:pointer}.table tbody tr.clickable-row .actions,.table tbody tr.clickable-row .col-select,.table tbody tr.clickable-row a{cursor:auto}.th-resize-handle{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:2}.th-resize-handle:hover,.th-resize-handle:active{background:var(--primary-soft)}.sortable-th.is-th-resizable{padding-right:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.table.table-resizable{table-layout:fixed;width:100%}.table.table-resizable th,.table.table-resizable td{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.table.table-resizable td>*{max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:bottom}.table.table-resizable th.col-select,.table.table-resizable td.col-select,.table.table-resizable th.actions,.table.table-resizable td.actions{overflow:visible;white-space:normal;text-overflow:clip}.table.table-resizable td.actions>*,.table.table-resizable td.col-select>*{display:flex;overflow:visible}.table.table-resizable td .badge{white-space:nowrap}
