@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}:root{color-scheme:light;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--background: #e4ebf3;--background-elevated: #eef3f8;--panel: #f3f7fb;--panel-muted: #e8eef5;--border: #c8d3e0;--border-strong: #b6c3d3;--text-primary: #111827;--text-secondary: #4f5a69;--text-muted: #6f7c8f;--primary: #3b82f6;--primary-hover: #2563eb;--success: #16a34a;--danger: #dc2626;--warning: #d97706;--chart-grid: rgba(15, 23, 42, .08);--chart-line: #3b82f6;--table-row-hover: #dde6f0;--sidebar-active: #d9e6fb;--sidebar-hover: #e1e9f2;--input-background: #f7f9fc;--input-border: #c7d2df;--focus-ring: rgba(59, 130, 246, .18);--chart-area: rgba(59, 130, 246, .14);--tooltip-background: rgba(244, 248, 252, .98);--tooltip-border: #c2cedb;--tooltip-shadow: 0 18px 36px rgba(15, 23, 42, .12);--background-glow-a: rgba(59, 130, 246, .07);--background-glow-b: rgba(148, 163, 184, .18);--overlay: rgba(15, 23, 42, .24);--sidebar-surface: rgba(239, 244, 249, .96);--sidebar-border: rgba(188, 201, 216, .95);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 28px rgba(15, 23, 42, .07);--shadow-md: 0 20px 44px rgba(15, 23, 42, .1);--chart-palette-1: #3b82f6;--chart-palette-2: #10b981;--chart-palette-3: #f59e0b;--chart-palette-4: #ef4444;--chart-palette-5: #8b5cf6;--chart-palette-6: #06b6d4;--chart-palette-7: #64748b;--chart-palette-8: #14b8a6;--chart-palette-9: #2563eb}:root[data-theme=dark]{color-scheme:dark;--background: #0f172a;--background-elevated: #111827;--panel: #111827;--panel-muted: #162033;--border: #243041;--border-strong: #334155;--text-primary: #e5e7eb;--text-secondary: #b6c0cf;--text-muted: #8a97ab;--primary: #60a5fa;--primary-hover: #3b82f6;--success: #22c55e;--danger: #f87171;--warning: #f59e0b;--chart-grid: rgba(226, 232, 240, .1);--chart-line: #60a5fa;--table-row-hover: #172132;--sidebar-active: #1e293b;--sidebar-hover: #172132;--input-background: #0f172a;--input-border: #334155;--focus-ring: rgba(96, 165, 250, .22);--chart-area: rgba(96, 165, 250, .18);--tooltip-background: rgba(15, 23, 42, .96);--tooltip-border: #334155;--tooltip-shadow: 0 16px 36px rgba(2, 6, 23, .3);--background-glow-a: rgba(96, 165, 250, .12);--background-glow-b: rgba(14, 165, 233, .08);--overlay: rgba(2, 6, 23, .56);--sidebar-surface: rgba(17, 24, 39, .94);--sidebar-border: rgba(51, 65, 85, .88);--shadow-sm: 0 1px 2px rgba(2, 6, 23, .2), 0 10px 24px rgba(2, 6, 23, .18);--shadow-md: 0 20px 42px rgba(2, 6, 23, .32);--chart-palette-1: #60a5fa;--chart-palette-2: #34d399;--chart-palette-3: #fbbf24;--chart-palette-4: #f87171;--chart-palette-5: #a78bfa;--chart-palette-6: #22d3ee;--chart-palette-7: #94a3b8;--chart-palette-8: #2dd4bf;--chart-palette-9: #93c5fd}html{min-height:100%;background:var(--background);font-family:var(--font-sans)}body{margin:0;min-height:100vh;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text-primary);background:radial-gradient(circle at top left,var(--background-glow-a) 0%,transparent 30%),radial-gradient(circle at top right,var(--background-glow-b) 0%,transparent 22%),var(--background);transition:background-color .18s ease,color .18s ease}#app{min-height:100vh}button,input,select,textarea{font-family:inherit;color:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 4px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--text-muted)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 1px),calc(100% - 13px) calc(50% - 1px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}select option{background:var(--panel);color:var(--text-primary)}input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}::selection{background:var(--focus-ring)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background-clip:padding-box;background-color:var(--border-strong)}.app-root{min-height:100vh;color:var(--text-primary)}.login-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:32px 20px;background:linear-gradient(135deg,#0f172a85,#0f172a38),linear-gradient(180deg,#f8fafc1f,#0f172a47),url(/assets/fondoLogin-CjYcpxPN.png);background-position:center;background-repeat:no-repeat;background-size:cover}.login-card{display:flex;align-items:center;align-self:flex-start;gap:18px;padding:20px 24px;margin-left:clamp(28px,8vw,140px);border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#f0f4f957;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 18px 38px #0f172a29;max-width:720px;width:min(720px,100%)}:root[data-theme=dark] .login-card{border-color:#94a3b82e;background:#0f172a57;box-shadow:0 20px 42px #02061747}.login-fields{display:flex;flex-direction:column;gap:12px;flex:1}.pill-field{display:flex;align-items:center;gap:12px;min-height:40px;padding:9px 14px;border:1px solid rgba(199,210,223,.66);border-radius:12px;background:#ffffff80;color:var(--text-secondary);font-weight:600;letter-spacing:.04em}:root[data-theme=dark] .pill-field{border-color:#94a3b838;background:#0f172a3d}.pill-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus-ring)}.pill-field span{width:88px;font-size:11px;font-weight:600;letter-spacing:.05em;color:var(--text-muted)}.pill-field input{width:100%;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:13px;font-weight:500}.pill-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;min-width:128px;padding:10px 18px;border:1px solid var(--primary);border-radius:12px;background:var(--primary);color:#f8fafc;font-size:12px;font-weight:600;letter-spacing:.03em;cursor:pointer;box-shadow:0 6px 16px #2563eb24}.pill-button.secondary{border-color:var(--border);background:var(--panel-muted);color:var(--text-primary);box-shadow:none}.pill-button.secondary.danger{border-color:var(--danger);background:var(--panel);color:var(--danger)}.pill-button:disabled,.pill-tab:disabled,.ghost-button:disabled,.sidebar-rail-toggle:disabled,.sidebar-icon-tab:disabled{cursor:not-allowed;opacity:.6}.pill-button:not(:disabled):hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 12px 24px #2563eb2e}.pill-button.secondary:not(:disabled):hover{border-color:var(--border-strong);background:var(--table-row-hover);box-shadow:none}.auth-status{margin:0;align-self:flex-start;margin-left:clamp(28px,8vw,140px);padding:10px 14px;border:1px solid rgba(248,113,113,.34);border-radius:12px;background:#0f172a8f;color:#fee2e2;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-shell{padding:28px clamp(16px,3vw,48px) 48px}.app-header{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-bottom:28px}.brand{display:flex;flex-direction:column;gap:4px}.brand-title{font-size:24px;font-weight:700;letter-spacing:-.03em;color:var(--text-primary)}.brand-subtitle{font-size:13px;font-weight:500;color:var(--text-secondary)}.header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;position:relative;gap:10px;margin-left:auto;padding:6px;border:1px solid var(--border);border-radius:16px;background:var(--background-elevated);box-shadow:var(--shadow-sm)}.user-pill{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--panel-muted);color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 14px;border:1px solid var(--border);border-radius:12px;background:var(--background-elevated);color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:-.01em;cursor:pointer}.ghost-button.compact{min-height:34px;padding:6px 12px;font-size:12px}.ghost-button.danger{border-color:color-mix(in srgb,var(--danger) 30%,var(--border));color:var(--danger)}.ghost-button:not(:disabled):hover{border-color:var(--border-strong);background:var(--table-row-hover);color:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.ghost-button.danger:not(:disabled):hover{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-strong));background:color-mix(in srgb,var(--danger) 10%,var(--panel));color:var(--danger)}.theme-toggle{white-space:nowrap}.user-menu{position:relative}.user-menu-trigger{min-width:150px;justify-content:space-between}.user-menu-chevron{color:var(--text-muted);font-size:11px}.user-menu-panel{position:absolute;top:calc(100% + 10px);right:0;width:min(360px,calc(100vw - 32px));display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--background-elevated);box-shadow:var(--shadow-md);z-index:70}.user-menu-section{display:flex;flex-direction:column;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--border)}.user-menu-section:last-child{padding-bottom:0;border-bottom:none}.user-menu-heading{margin:0;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.user-menu-identity{margin:0;color:var(--text-primary);font-size:16px;font-weight:700;letter-spacing:-.02em}.user-menu-meta{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5}.user-menu-field{display:flex;flex-direction:column;gap:8px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.user-menu-field select{min-height:42px;padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;background-color:var(--input-background);color:var(--text-primary);font-size:14px;font-weight:500}.user-menu-action{width:100%;justify-content:flex-start}.user-menu-status{margin-top:-2px}.app-main{display:flex;flex-direction:column;gap:20px}.portfolio-page{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:18px;align-items:start;transition:grid-template-columns .2s ease}.portfolio-page.sidebar-closed{grid-template-columns:84px minmax(0,1fr)}.sidebar-toggle-row{grid-column:1 / -1;display:flex;justify-content:flex-start;position:relative;z-index:30}.sidebar-toggle{font-size:12px;letter-spacing:.04em;padding:8px 14px}.portfolio-sidebar{grid-column:1;display:flex;flex-direction:column;gap:14px;position:sticky;top:16px;z-index:30}.portfolio-sidebar.collapsed{gap:0}.page-dim-overlay{position:fixed;top:0;right:0;bottom:0;left:0;border:none;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:74;pointer-events:auto}.sidebar-card,.sidebar-rail-card{border:1px solid var(--sidebar-border);background:var(--sidebar-surface);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sidebar-card{display:flex;flex-direction:column;gap:14px;padding:18px 16px;border-radius:16px;color:var(--text-primary)}.sidebar-title{margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.sidebar-rail-card{display:flex;flex-direction:column;gap:12px;min-height:420px;padding:14px 10px;border-radius:18px}.sidebar-rail-toggle{align-self:flex-end;width:36px;height:36px;border:1px solid var(--border);border-radius:12px;background:var(--panel-muted);color:var(--text-secondary);font-weight:700;cursor:pointer}.sidebar-rail-toggle:not(:disabled):hover{border-color:var(--border-strong);background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-rail-heading{padding-inline:8px;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-field{display:flex;flex-direction:column;gap:8px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.sidebar-field select{min-height:42px;padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;background-color:var(--input-background);color:var(--text-primary);font-size:14px;font-weight:500}.sidebar-tabs{display:flex;flex-direction:column;gap:8px}.sidebar-tabs.compact{align-items:center}.sidebar-icon-tab{width:100%;display:flex;align-items:center;gap:12px;min-height:48px;padding:0 12px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:-.01em;cursor:pointer}.sidebar-tabs.compact .sidebar-icon-tab{width:48px;height:48px;justify-content:center;padding:0}.sidebar-icon-tab:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-icon-tab.active{background:var(--sidebar-active);color:var(--primary)}.sidebar-icon{width:22px;height:22px;fill:currentColor;flex:0 0 auto}.sidebar-icon-label{text-align:left;line-height:1.2;font-size:13px}.sidebar-actions{display:flex;flex-direction:column;gap:8px}.sidebar-actions .ghost-button{width:100%}.sidebar-hint{font-size:12px;color:var(--text-muted)}.portfolio-content{grid-column:2;display:flex;flex-direction:column;gap:18px;min-width:0}.portfolio-page.sidebar-closed .portfolio-content{grid-column:2}.pill-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 18px;border:1px solid var(--border);border-radius:12px;background:var(--panel-muted);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;letter-spacing:-.01em}.pill-tab:not(:disabled):hover{border-color:var(--border-strong);background:var(--table-row-hover);color:var(--text-primary)}.pill-tab.active{border-color:var(--primary);background:var(--primary);color:#f8fafc}.pill-tab.active:not(:disabled):hover{border-color:var(--primary-hover);background:var(--primary-hover);color:#f8fafc}.panel{border:1px solid var(--border);border-radius:16px;background:var(--panel);padding:20px 20px 12px;box-shadow:var(--shadow-sm)}.pill-tab.manage{width:100%}.sidebar-card .pill-tab.manage{border-color:var(--border);background:var(--panel-muted);color:var(--text-primary)}.sidebar-card .pill-tab.manage:not(:disabled):hover{border-color:var(--border-strong);background:var(--sidebar-hover)}.sidebar-card .pill-tab.manage:disabled{opacity:.5}.sidebar-card .form-status{color:var(--text-secondary)}.status-row{margin-bottom:8px}.table-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px}.compact-action{min-height:40px}.manage-panel{padding:20px 24px}.hint{font-size:13px;line-height:1.5;font-weight:500;color:var(--text-secondary)}.section-title{margin:0;font-size:20px;font-weight:700;letter-spacing:-.03em;color:var(--text-primary)}.empty-state-card{display:flex;align-items:center;justify-content:center;min-height:120px;border:1px dashed var(--border);border-radius:16px;background:var(--panel-muted);color:var(--text-secondary);text-align:center}.table-link-button{padding:0;border:none;background:transparent;color:var(--primary);font:inherit;font-weight:700;text-align:left;cursor:pointer}.table-link-button:hover{color:var(--primary-hover);text-decoration:underline}.thesis-panel,.thesis-page{display:flex;flex-direction:column;gap:18px}.thesis-toolbar,.thesis-section-header,.thesis-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.thesis-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.thesis-section{display:flex;flex-direction:column;gap:14px}.thesis-card,.thesis-editor-block{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--panel-muted)}.thesis-card-copy{display:flex;flex-direction:column;gap:8px}.thesis-card-topline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.thesis-card-meta,.thesis-page-meta{margin:0}.thesis-summary{margin:0;color:var(--text-secondary);white-space:pre-line}.thesis-card-actions{display:flex;flex-wrap:wrap;gap:10px}.thesis-link-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.thesis-link-option{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel-muted)}.thesis-link-copy{display:flex;flex-direction:column;gap:4px}.thesis-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.thesis-page-copy{display:flex;flex-direction:column;gap:8px}.thesis-summary-panel{padding-top:20px}.thesis-blocks{display:flex;flex-direction:column;gap:16px}.thesis-block{padding:22px}.thesis-text-block{margin:0;white-space:pre-line;color:var(--text-primary);font-size:15px;line-height:1.7}.thesis-image-block{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:14px;border:1px solid var(--border);background:var(--background-elevated)}.thesis-editor-grid,.thesis-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.thesis-editor-grid label,.thesis-add-grid label{display:flex;flex-direction:column;gap:8px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.thesis-editor-grid input,.thesis-editor-grid select,.thesis-editor-grid textarea,.thesis-add-grid input,.thesis-add-grid textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;background-color:var(--input-background);color:var(--text-primary);font-size:14px}.thesis-editor-grid textarea,.thesis-add-grid textarea{min-height:120px;resize:vertical}.thesis-editor-extras{display:flex;flex-direction:column;gap:18px}.thesis-editor-blocks{display:flex;flex-direction:column;gap:14px}.thesis-inline-textarea{width:100%;min-height:140px;padding:12px 14px;border:1px solid var(--input-border);border-radius:12px;background:var(--input-background);color:var(--text-primary);resize:vertical}.analytics-stack{display:flex;flex-direction:column;gap:18px}.analytics-card{padding:22px}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.analytics-title{margin:0;font-size:18px;font-weight:600;letter-spacing:-.03em;color:var(--text-primary)}.analytics-subtitle{margin:6px 0 0;color:var(--text-secondary);font-size:13px;font-weight:500}.analytics-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.analytics-chip{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:var(--panel-muted);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:-.01em}.analytics-note{margin:0 0 14px;color:var(--text-secondary);font-size:13px;font-weight:500}.analytics-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(260px,1fr);gap:18px;align-items:center}.analytics-chart{width:100%}.donut-chart,.line-chart{height:340px}.analytics-legend{display:flex;flex-direction:column;gap:10px}.analytics-legend-row{display:grid;grid-template-columns:12px minmax(110px,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--panel-muted)}.legend-bullet{width:12px;height:12px;border-radius:999px}.legend-name,.legend-value,.legend-share{font-size:13px;font-weight:600}.legend-name{color:var(--text-primary)}.legend-value,.legend-share{color:var(--text-secondary)}.legend-value,.legend-share{text-align:right}.metric-selector{display:flex;flex-wrap:wrap;gap:8px}.metric-button.active{border-color:var(--primary);background:var(--primary);color:#f8fafc}.history-chart-wrap{width:100%}.analytics-empty{padding:24px 12px;text-align:center;font-weight:600;color:var(--text-secondary)}.manage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.manage-card{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,var(--panel) 0%,var(--panel-muted) 100%)}.manage-card h3{margin:0 0 4px;font-size:18px;font-weight:600;letter-spacing:-.03em;color:var(--text-primary)}.manage-card label{display:flex;flex-direction:column;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.manage-card input,.manage-card select{min-height:40px;padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;background-color:var(--input-background);color:var(--text-primary);font-size:14px}.manage-card input:focus,.manage-card select:focus,.sidebar-field select:focus{border-color:var(--primary)}.form-status{margin:0;font-size:12px;font-weight:600;color:var(--text-secondary)}.inline-check{flex-direction:row;align-items:center;gap:8px}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:14px;background:var(--background-elevated);box-shadow:inset 0 1px #ffffff80}.positions-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}.positions-table.is-compact{min-width:520px}.positions-table th,.positions-table td{padding:12px 14px;text-align:left;white-space:nowrap;font-size:13px;border-bottom:1px solid var(--border)}.positions-table th{background:var(--panel-muted);color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.positions-table th:first-child{border-top-left-radius:14px}.positions-table th:last-child{border-top-right-radius:14px}.positions-table td{color:var(--text-primary)}.positions-table tbody tr:last-child td{border-bottom:none}.positions-table th.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none}.positions-table th.sortable-header:hover{background:var(--table-row-hover);color:var(--text-primary)}.positions-table tbody tr:hover td{background:var(--table-row-hover)}.positions-table input[type=checkbox]{display:block;margin:0 auto}.empty-cell{padding:30px 10px;text-align:center;font-weight:600;color:var(--text-secondary)}.placeholder{padding:40px 12px;text-align:center;font-weight:600;color:var(--text-secondary)}.pos{color:var(--success);font-weight:600}.neg{color:var(--danger);font-weight:600}.positions-table td.pos{color:var(--success)!important}.positions-table td.neg{color:var(--danger)!important}@media (max-width: 1100px){.portfolio-page,.portfolio-page.sidebar-open,.portfolio-page.sidebar-closed{grid-template-columns:1fr}.portfolio-sidebar{position:fixed;top:16px;left:16px;right:auto;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px;grid-column:1 / -1;z-index:60}.portfolio-content{grid-column:1 / -1}}@media (max-width: 900px){.login-card{flex-direction:column;align-items:stretch;align-self:auto;margin-left:0}.pill-button{width:100%}.auth-status{align-self:stretch;margin-left:0}.app-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:flex-start}.user-menu-panel{right:auto;left:0;width:min(360px,calc(100vw - 24px))}.portfolio-sidebar{width:min(320px,calc(100vw - 24px));top:12px;left:12px;max-height:calc(100vh - 24px)}.positions-table.is-compact{min-width:420px}.analytics-header,.analytics-grid{display:flex;flex-direction:column;grid-template-columns:1fr}.analytics-header{align-items:stretch}.donut-chart,.line-chart{height:300px}.analytics-legend-row{grid-template-columns:12px minmax(90px,1fr) auto}.legend-value{justify-self:end}.legend-share{grid-column:2 / -1;justify-self:start;text-align:left}}@media (max-width: 540px){.app-shell{padding-inline:12px}.panel,.manage-panel{padding-inline:14px}.positions-table.is-compact{min-width:360px}}.portfolio-page{position:relative;display:block;min-height:100%}.portfolio-sidebar{position:fixed;top:16px;left:16px;z-index:45;width:76px}.sidebar-rail-card{width:76px;min-height:calc(100vh - 48px);align-items:center;padding:14px 10px}.portfolio-sidebar-drawer{position:fixed;top:16px;left:16px;z-index:140;width:min(360px,calc(100vw - 32px))}.sidebar-drawer-card{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:24px;background:color-mix(in srgb,var(--background-elevated) 82%,transparent);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar-drawer-header{display:flex;align-items:center;gap:14px}.sidebar-drawer-close{width:40px;height:40px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--panel-muted) 86%,transparent);color:var(--text-secondary);font-weight:700;cursor:pointer}.sidebar-drawer-close:hover{border-color:var(--border-strong);background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-nav-list{display:flex;flex-direction:column;gap:10px}.sidebar-nav-button{width:100%;display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid transparent;border-radius:18px;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.sidebar-nav-button:hover{background:var(--sidebar-hover)}.sidebar-nav-button.active{border-color:color-mix(in srgb,var(--primary) 24%,transparent);background:var(--sidebar-active)}.sidebar-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--panel-muted);color:var(--text-secondary);flex:0 0 auto}.sidebar-nav-button.active .sidebar-nav-icon{color:var(--primary)}.sidebar-nav-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.sidebar-nav-title{color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:-.01em}.sidebar-nav-hint{color:var(--text-secondary);font-size:12px;line-height:1.4}.sidebar-tabs.compact{width:100%}.sidebar-tabs.compact .sidebar-icon-tab{width:48px;height:48px;justify-content:center;padding:0;margin-inline:auto}.portfolio-content{display:flex;flex-direction:column;gap:12px;min-width:0;padding-left:112px}.portfolio-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:18px}.portfolio-header-copy{display:flex;flex-direction:column;gap:4px}.title-eyebrow{margin:0;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.page-title{margin:0;color:var(--text-primary);font-size:clamp(24px,3vw,34px);line-height:1.05;letter-spacing:-.04em}.portfolio-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.notice-banner{margin:0;padding:10px 14px;border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);border-radius:12px;background:color-mix(in srgb,var(--primary) 10%,var(--panel));color:var(--text-primary);font-size:13px;font-weight:600}.portfolio-kpi-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kpi-card{display:flex;flex-direction:column;gap:6px;padding:14px 18px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,var(--panel) 0%,var(--panel-muted) 100%);box-shadow:var(--shadow-sm)}.kpi-label{color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.kpi-value{color:var(--text-primary);font-size:24px;letter-spacing:-.04em}.table-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 10px;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.badge-neutral{background:var(--panel-muted);color:var(--text-secondary);border-color:var(--border)}.badge-info,.badge-ib{background:color-mix(in srgb,var(--primary) 16%,var(--panel));color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,transparent)}.badge-manual{background:color-mix(in srgb,var(--warning) 18%,var(--panel));color:var(--warning);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.badge-stale,.badge-missing{background:color-mix(in srgb,var(--danger) 14%,var(--panel));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.row-actions-cell{width:1%}.row-actions{position:relative;display:inline-flex;justify-content:flex-end;width:100%}.row-action-trigger{min-width:42px;justify-content:center}.row-action-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--background-elevated);box-shadow:var(--shadow-md);z-index:20}.row-action-item{width:100%;min-height:40px;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text-primary);text-align:left;font-size:13px;font-weight:600;cursor:pointer}.row-action-item:hover{background:var(--table-row-hover)}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:90}.modal-card{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column;gap:18px;padding:22px;border:1px solid var(--border);border-radius:22px;background:var(--background-elevated);box-shadow:var(--shadow-md)}.modal-card-lg{width:min(860px,calc(100vw - 32px))}.modal-card-sm{width:min(520px,calc(100vw - 32px))}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.modal-header h3{margin:4px 0 0;color:var(--text-primary);font-size:24px;letter-spacing:-.03em}.modal-body{display:flex;flex-direction:column;gap:12px}.permission-table{min-width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label{display:flex;flex-direction:column;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.form-grid input,.form-grid select{min-height:42px;padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;background-color:var(--input-background);color:var(--text-primary);font-size:14px}.field-span-2{grid-column:1 / -1}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.modal-actions.split{justify-content:space-between}.modal-action-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.sidebar-panel-enter-active,.sidebar-panel-leave-active{transition:opacity .18s ease,transform .18s ease}.sidebar-panel-enter-from,.sidebar-panel-leave-to{opacity:0;transform:translate(-8px)}@media (max-width: 1100px){.portfolio-sidebar-drawer{top:12px;left:12px;width:min(340px,calc(100vw - 24px));max-height:calc(100vh - 24px);z-index:140}.sidebar-drawer-card{max-height:calc(100vh - 24px);overflow-y:auto}.sidebar-rail-card{width:100%;min-height:auto}.portfolio-content{padding-left:0}.portfolio-header{flex-direction:column}.portfolio-header-actions{justify-content:flex-start}.portfolio-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid,.thesis-editor-grid,.thesis-add-grid,.thesis-sections{grid-template-columns:1fr}.field-span-2{grid-column:auto}}@media (max-width: 720px){.user-menu-trigger{width:100%}.user-menu-panel,.portfolio-sidebar-drawer{width:min(100vw - 24px,360px)}.portfolio-kpi-strip{grid-template-columns:1fr}.modal-layer{padding:12px;align-items:flex-end}.modal-card,.modal-card-sm{width:100%;max-height:calc(100vh - 24px);overflow-y:auto;border-radius:18px}.modal-actions,.modal-actions.split,.modal-action-group{flex-direction:column;align-items:stretch}.thesis-page-header,.thesis-toolbar,.thesis-section-header,.thesis-editor-toolbar{flex-direction:column;align-items:flex-start}}
