@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:300 500;font-display:swap;src:url(/fonts/be-vietnam-pro-400-vi.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:300 500;font-display:swap;src:url(/fonts/be-vietnam-pro-400-latin.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/be-vietnam-pro-600-vi.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/be-vietnam-pro-600-latin.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:800 900;font-display:swap;src:url(/fonts/be-vietnam-pro-800-vi.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:800 900;font-display:swap;src:url(/fonts/be-vietnam-pro-800-latin.woff2) format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/bricolage-400-800-vi.woff2) format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/bricolage-400-800-latin.woff2) format("woff2");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}:root{--pb-brand: var(--pb-blue, #1850b0);--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--fs-3xl: 30px;--lh-tight: 1.2;--lh-normal: 1.5;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--sp-0: 0;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--dur-fast: .12s;--dur-med: .22s;--dur-slow: .36s;--ease-out: var(--ease, cubic-bezier(.22, 1, .36, 1));--touch-min: 44px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--density-row: 44px;--density-control: 40px;--density-gap: var(--sp-3);--density-pad: var(--sp-4);--blue-50: #eff5ff;--blue-100: #dbe7fe;--blue-200: #bfd3fd;--blue-300: #93b4fb;--blue-400: #6090f6;--blue-500: #3b6ef0;--blue-600: var(--pb-blue);--blue-700: var(--pb-blue-deep, #123e8a);--blue-800: var(--pb-blue-darker, #0d2e6b);--blue-900: #08245e;--neutral-0: #ffffff;--neutral-50: var(--surface-2, #f6f9fd);--neutral-100: var(--surface-3, #edf3fc);--neutral-200: var(--hairline, #e2e9f4);--neutral-300: var(--hairline-strong, #d2dcec);--neutral-400: var(--gray-light, #97a4be);--neutral-500: var(--gray, #6b7a99);--neutral-600: #55617d;--neutral-700: #3f4860;--neutral-800: #2a3143;--neutral-900: #171c28;--color-success: var(--ok);--color-success-soft: var(--ok-bg);--color-success-line: var(--ok-line);--color-warning: var(--warn);--color-warning-soft: var(--warn-bg);--color-warning-line: var(--warn-line);--color-danger: var(--danger);--color-danger-soft: var(--danger-bg);--color-danger-line: var(--danger-line);--color-info: var(--info);--color-info-soft: var(--info-bg);--elev-1: 0 1px 2px rgba(13, 31, 74, .06), 0 1px 3px rgba(13, 31, 74, .1);--elev-2: 0 2px 6px rgba(13, 31, 74, .08), 0 4px 12px rgba(13, 31, 74, .1);--elev-3: 0 8px 24px rgba(13, 31, 74, .12);--elev-4: 0 16px 48px rgba(13, 31, 74, .18);--focus-ring: 0 0 0 3px rgba(24, 80, 176, .4);--focus-ring-width: 2px;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--fs-display: var(--fs-3xl);--fs-h1: var(--fs-2xl);--fs-h2: var(--fs-xl);--fs-title: var(--fs-lg);--fs-body: var(--fs-md);--fs-caption: var(--fs-xs)}:root[data-density=compact]{--density-row: 34px;--density-control: 32px;--density-gap: var(--sp-2);--density-pad: var(--sp-3)}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-med: 0ms;--dur-slow: 0ms}}html{--t-header-bg: linear-gradient(135deg, #084cae 0%, #006bdb 100%);--t-header-fg: #ffffff;--t-header-border: transparent;--t-header-logo-filter: brightness(0) invert(1);--t-header-btn-bg: rgba(255, 255, 255, .14);--t-header-avatar-ring: rgba(255, 255, 255, .88);--t-shell-bg: #fafbfc;--t-page-bg: #eaf0fa;--t-card-bg: #ffffff;--t-card-border: #dde6f2;--t-card-radius: 18px;--t-card-shadow: 0 4px 14px rgba(29, 74, 132, .06);--t-accent: #0966cf;--t-accent-soft: #edf5ff;--t-title-color: #142b4d;--t-tabbar-bg: #ffffff;--t-tabbar-border: var(--hairline);--t-tabbar-shadow: 0 -8px 24px rgba(20, 52, 94, .08);--t-tab-fg: var(--text-tertiary);--t-tab-active-fg: var(--pb-blue);--t-tab-active-bg: var(--tint-blue);--t-hero-overlay: linear-gradient(90deg, rgba(255, 255, 255, .95), rgba(255, 255, 255, .86) 34%, rgba(255, 255, 255, .42) 60%, rgba(255, 255, 255, 0) 84%);--t-hero-border: #dbe7f5;--t-hero-radius: 20px;--t-hero-fg: var(--t-title-color);--t-hero-fg-muted: #60718a;--t-hero-chip-bg: rgba(255, 255, 255, .82);--t-hero-chip-border: rgba(5, 91, 190, .16);--t-hero-chip-fg: #517092;--t-hex-opacity: 0;--t-hex-size: 190px;--t-hex-filter: none;--t-watermark-opacity: 0;--t-watermark-blur: 8px;--t-nav-bg: var(--white);--t-nav-border: var(--hairline);--t-nav-fg: var(--ink-2);--t-nav-muted: var(--text-tertiary);--t-nav-brand-fg: var(--pb-blue-deep);--t-nav-brand-sub-fg: var(--text-secondary);--t-nav-hover-bg: var(--surface-2);--t-nav-active-bg: var(--tint-blue);--t-nav-active-fg: var(--pb-blue-deep);--t-nav-item-radius: var(--r-md);--t-nav-code-bg: var(--tint-blue);--t-nav-code-fg: var(--pb-blue);--t-nav-code-active-bg: var(--white);--t-nav-logo-filter: none;--t-topbar-bg: rgba(255, 255, 255, .72);--t-topbar-blur: blur(8px);--t-topbar-border: var(--hairline);--t-topbar-fg: var(--ink);--t-topbar-code-fg: var(--pb-blue);--t-stage-bg: var(--app-bg);--t-th-fg: var(--text-tertiary);--t-th-tracking: .06em;--t-th-border: var(--hairline)}html[data-theme=tin-cay]{--app-bg: #f4f7fb;--surface-2: #f7fafd;--surface-3: #eef4fb;--hairline: #e2e9f4;--hairline-strong: #d5dfee;--tint-blue: #eaf6ff;--tint-blue-2: #d9ecfd;--pb-blue-deep: #14305c;--t-nav-bg: #ffffff;--t-nav-border: #e2e9f4;--t-nav-hover-bg: #f7fafd;--t-nav-active-bg: #eef6ff;--t-nav-active-fg: #14305c;--t-nav-code-bg: #f0f5fc;--t-topbar-bg: #ffffff;--t-topbar-blur: none;--t-topbar-border: #e2e9f4;--t-topbar-fg: #14305c;--t-stage-bg: #f4f7fb;--t-th-tracking: .1em}html[data-theme=tin-cay] .card,html[data-theme=tin-cay] .well{box-shadow:none}html[data-theme=dong-hanh]{--app-bg: #eaf6ff;--surface-2: #f4faff;--surface-3: #e6f2fe;--hairline: #dbeafe;--hairline-strong: #c6dcf7;--tint-blue: #eaf6ff;--tint-blue-2: #d6ebfd;--r-md: 10px;--r-lg: 16px;--r-xl: 20px;--t-nav-bg: #ffffff;--t-nav-border: #dbeafe;--t-nav-hover-bg: #f4faff;--t-nav-active-bg: #eaf6ff;--t-nav-item-radius: var(--r-pill);--t-nav-code-bg: #e2f2ff;--t-topbar-bg: rgba(247, 251, 255, .82);--t-topbar-border: #dbeafe;--t-stage-bg: #eaf6ff}html[data-theme=dong-hanh] .card{box-shadow:0 6px 20px #1850b012}html[data-theme=di-san]{--app-bg: #f2f5f9;--surface-2: #f4f7fb;--surface-3: #eaf0f8;--hairline: #d5deeb;--hairline-strong: #c2cfe2;--tint-blue: #eef3fa;--tint-blue-2: #dde7f4;--pb-blue-deep: #14305c;--r-md: 6px;--r-lg: 8px;--r-xl: 10px;--t-nav-bg: #14305c;--t-nav-border: #14305c;--t-nav-fg: rgba(204, 237, 255, .86);--t-nav-muted: rgba(204, 237, 255, .66);--t-nav-brand-fg: #ffffff;--t-nav-brand-sub-fg: rgba(204, 237, 255, .72);--t-nav-hover-bg: rgba(255, 255, 255, .08);--t-nav-active-bg: rgba(255, 255, 255, .14);--t-nav-active-fg: #ffffff;--t-nav-item-radius: 6px;--t-nav-code-bg: rgba(255, 255, 255, .12);--t-nav-code-fg: #ccedff;--t-nav-code-active-bg: rgba(20, 48, 92, .55);--t-nav-logo-filter: brightness(0) invert(1);--t-topbar-bg: #ffffff;--t-topbar-blur: none;--t-topbar-border: #d5deeb;--t-topbar-fg: #14305c;--t-stage-bg: #f2f5f9;--t-th-fg: #14305c;--t-th-tracking: .12em;--t-th-border: #14305c}html[data-theme=di-san] .card,html[data-theme=di-san] .well{box-shadow:none}html[data-theme=di-san] .sec-head>.anchor{padding-top:9px;border-top:2px solid #14305c}html[data-surface=app][data-theme=tin-cay]{--t-header-bg: #ffffff;--t-header-fg: #14305c;--t-header-border: #e2e9f4;--t-header-logo-filter: none;--t-header-btn-bg: #f2f6fc;--t-header-avatar-ring: #dce9fc;--t-shell-bg: #ffffff;--t-page-bg: #f4f7fb;--t-card-bg: #ffffff;--t-card-border: #e2e9f4;--t-card-radius: 14px;--t-card-shadow: none;--t-accent: #1850b0;--t-accent-soft: #eaf6ff;--t-title-color: #14305c;--t-tabbar-bg: #ffffff;--t-tabbar-border: #e2e9f4;--t-tabbar-shadow: none;--t-tab-fg: #6b7a99;--t-tab-active-fg: #1850b0;--t-tab-active-bg: transparent;--t-hero-overlay: linear-gradient(90deg, rgba(255, 255, 255, .97), rgba(255, 255, 255, .92) 40%, rgba(255, 255, 255, .55) 68%, rgba(255, 255, 255, .12) 100%);--t-hero-border: #e2e9f4;--t-hero-radius: 14px;--t-hex-opacity: .07}html[data-surface=app][data-theme=dong-hanh]{--t-header-bg: linear-gradient(135deg, #1850b0 0%, #2f7fe4 100%);--t-header-fg: #ffffff;--t-header-logo-filter: brightness(0) invert(1);--t-shell-bg: #f7fbff;--t-page-bg: #eaf6ff;--t-card-bg: #ffffff;--t-card-border: #dbeafe;--t-card-radius: 20px;--t-card-shadow: 0 6px 20px rgba(24, 80, 176, .08);--t-accent: #1850b0;--t-accent-soft: #eaf6ff;--t-title-color: #14305c;--t-tabbar-bg: #ffffff;--t-tabbar-border: #dbeafe;--t-tab-active-fg: #1850b0;--t-tab-active-bg: #eaf6ff;--t-hero-radius: 20px;--t-hero-border: #cfe4fb;--t-watermark-opacity: .1}html[data-surface=app][data-theme=di-san]{--t-header-bg: #14305c;--t-header-fg: #ffffff;--t-header-logo-filter: brightness(0) invert(1);--t-header-btn-bg: rgba(255, 255, 255, .12);--t-header-avatar-ring: rgba(204, 237, 255, .7);--t-shell-bg: #ffffff;--t-page-bg: #f2f5f9;--t-card-bg: #ffffff;--t-card-border: #d5deeb;--t-card-radius: 8px;--t-card-shadow: none;--t-accent: #285ba3;--t-accent-soft: #eef3fa;--t-title-color: #14305c;--t-tabbar-bg: #14305c;--t-tabbar-border: #14305c;--t-tabbar-shadow: 0 -8px 24px rgba(12, 32, 66, .22);--t-tab-fg: rgba(204, 237, 255, .72);--t-tab-active-fg: #ffffff;--t-tab-active-bg: rgba(255, 255, 255, .14);--t-hero-overlay: linear-gradient(90deg, rgba(20, 48, 92, .92), rgba(20, 48, 92, .78) 42%, rgba(20, 48, 92, .26) 74%, rgba(20, 48, 92, 0) 100%);--t-hero-border: #14305c;--t-hero-radius: 8px;--t-hero-fg: #ffffff;--t-hero-fg-muted: rgba(204, 237, 255, .86);--t-hero-chip-bg: rgba(255, 255, 255, .14);--t-hero-chip-border: rgba(204, 237, 255, .34);--t-hero-chip-fg: #ffffff;--t-hex-opacity: .16;--t-hex-size: 210px;--t-hex-filter: brightness(0) invert(1)}html[data-theme]{--warn: var(--t-accent);--warn-bg: #ffffff;--warn-line: #b9cbe4;--warn-fg: #14305c;--ok: var(--t-accent);--ok-bg: #e8f4ff;--ok-line: #cce4fa;--ok-fg: #14305c}html[data-surface=app] .mobile-stage-scroll:before{content:"";position:fixed;top:calc(58px + env(safe-area-inset-top));right:-54px;width:var(--t-hex-size);height:var(--t-hex-size);background:url(/assets/logo-mark.png) no-repeat center / contain;filter:var(--t-hex-filter);opacity:var(--t-hex-opacity);pointer-events:none;z-index:0}html[data-surface=app] .mobile-route-outlet{position:relative;z-index:1}html[data-surface=app] .app-home-card>.card,html[data-surface=app] .income-balance-card{position:relative;overflow:hidden}html[data-surface=app] .app-home-card>.card:after,html[data-surface=app] .income-balance-card:after{content:"";position:absolute;right:-30px;bottom:-34px;width:148px;height:148px;background:url(/assets/logo-mark.png) no-repeat center / contain;filter:blur(var(--t-watermark-blur));opacity:var(--t-watermark-opacity);pointer-events:none;z-index:0}@media(prefers-reduced-motion:reduce){html[data-surface=app] .mobile-stage-scroll:before{transition:none}}html[data-surface=app][data-theme=tin-cay] .app-home-hero{min-height:104px;background:#fff;border:1px solid #e2e9f4}html[data-surface=app][data-theme=tin-cay] .app-home-hero:after{content:"";position:absolute;right:-40px;top:-30px;width:168px;height:168px;background:url(/assets/logo-mark.png) no-repeat center / contain;opacity:.07;pointer-events:none}html[data-surface=app][data-theme=tin-cay] .app-home-greeting{max-width:74%}html[data-surface=app][data-theme=tin-cay] .app-quick b,html[data-surface=app][data-theme=tin-cay] .app-home-tool-grid>a>span,html[data-surface=app][data-theme=tin-cay] .kpi-bar-icon{background:transparent;border:1px solid #dbe4f1;color:#1850b0}html[data-surface=app][data-theme=tin-cay] .kpi-bar{border-left:0;border-right:0;border-top:0;border-radius:0}html[data-surface=app][data-theme=tin-cay] .kpi-bar:first-child{border-top:1px solid #e2e9f4}html[data-surface=app][data-theme=tin-cay] .kpi-bar:hover{border-color:#e2e9f4;background:#f7fafd;box-shadow:none;transform:none}html[data-surface=app][data-theme=tin-cay] .app-card-title,html[data-surface=app][data-theme=tin-cay] .kpi-board-head>div{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6b7a99}html[data-surface=app][data-theme=dong-hanh] .app-home-hero{min-height:148px}html[data-surface=app][data-theme=dong-hanh] .app-quick b,html[data-surface=app][data-theme=dong-hanh] .app-home-tool-grid>a>span{border-radius:999px}html[data-surface=app][data-theme=dong-hanh] .state-block[role=status]:before,html[data-surface=app][data-theme=dong-hanh] .app-empty:before{content:"";display:block;width:108px;height:108px;margin:0 auto 8px;background:url(/assets/phapha-empty.png) no-repeat center / contain}html[data-surface=app][data-theme=di-san] .app-home-hero{min-height:156px}html[data-surface=app][data-theme=di-san] .app-card-title,html[data-surface=app][data-theme=di-san] .kpi-board-head>div{padding-top:9px;border-top:2px solid #14305c;font-size:15px;letter-spacing:-.01em}html[data-surface=app][data-theme=di-san] .app-quick b,html[data-surface=app][data-theme=di-san] .app-home-tool-grid>a>span,html[data-surface=app][data-theme=di-san] .kpi-bar-icon{border-radius:6px;background:#14305c;color:#fff}html[data-surface=app][data-theme=di-san] .kpi-bar-icon{border-radius:50%}html[data-surface=app][data-theme=di-san] .app-home-actions,html[data-surface=app][data-theme=di-san] .kpi-bar{border-radius:8px}.auth-hero{position:relative;overflow:hidden;padding:calc(var(--sp-8) + env(safe-area-inset-top,0px)) var(--sp-8) var(--sp-6);background:var(--hero-gradient);color:#fff}.auth-hero-logo{height:34px;margin-bottom:var(--sp-4);filter:brightness(0) invert(1)}.auth-hero-eyebrow{font-family:var(--font-display);font-style:italic;font-size:var(--fs-md);opacity:.9}.auth-hero-title{margin-top:var(--sp-1);font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);letter-spacing:-.02em;text-wrap:balance}html[data-theme=tin-cay] .auth-hero{background:#fff;color:#14305c;border-bottom:1px solid #e2e9f4;padding-bottom:var(--sp-7)}html[data-theme=tin-cay] .auth-hero-logo{filter:none}html[data-theme=tin-cay] .auth-hero-eyebrow{color:#556279;opacity:1;font-style:normal;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}html[data-theme=tin-cay] .auth-hero:before{content:"";position:absolute;right:-58px;top:-34px;width:200px;height:200px;background:url(/assets/logo-mark.png) no-repeat center / contain;opacity:.07;pointer-events:none}html[data-surface=app][data-theme=tin-cay] .auth-hero{padding-right:100px}html[data-surface=app][data-theme=tin-cay] .auth-hero-title{font-size:23px}html[data-surface=app][data-theme=tin-cay] .auth-hero:after{content:"";position:absolute;right:4px;bottom:-4px;width:98px;height:98px;background:url(/assets/phapha-science.png) no-repeat right bottom / contain;pointer-events:none}html[data-theme=dong-hanh] .auth-hero{background:linear-gradient(135deg,#1850b0,#2f7fe4)}html[data-surface=app][data-theme=dong-hanh] .auth-hero{padding-right:148px}html[data-surface=app][data-theme=dong-hanh] .auth-hero:after{content:"";position:absolute;right:-14px;bottom:-10px;width:148px;height:148px;background:url(/assets/phapha-welcome.png) no-repeat right bottom / contain;pointer-events:none}html[data-theme=di-san] .auth-hero{background:#14305c;padding-bottom:var(--sp-8)}html[data-theme=di-san] .auth-hero-eyebrow{font-style:normal;font-family:inherit;opacity:1;font-size:10.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:#ccedff}html[data-theme=di-san] .auth-hero-eyebrow:after{content:" · từ 1954"}html[data-surface=app][data-theme=di-san] .auth-hero-eyebrow{letter-spacing:.08em}html[data-theme=di-san] .auth-hero-title{font-size:30px;line-height:1.08;text-wrap:balance}html[data-theme=di-san] .auth-hero:before{content:"";position:absolute;right:-60px;bottom:-56px;width:210px;height:210px;background:url(/assets/logo-mark.png) no-repeat center / contain;filter:brightness(0) invert(1);opacity:.14;pointer-events:none}html[data-surface=app][data-theme=di-san] .auth-hero{padding-right:138px}html[data-surface=app][data-theme=di-san] .auth-hero:after{content:"";position:absolute;right:2px;bottom:-8px;width:132px;height:132px;background:url(/assets/phapha-seal.png) no-repeat right bottom / contain;pointer-events:none}.shell .theme-switch-fab,.shell .theme-switch-panel{bottom:16px;right:16px}.theme-switch-fab{position:fixed;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));min-height:36px;padding:0 14px;border:1px solid var(--t-card-border);border-radius:var(--r-pill);background:#fff;color:var(--t-accent);font:700 12px/1 inherit;box-shadow:0 6px 20px #102a542e;z-index:var(--z-popover)}.theme-switch-panel{position:fixed;right:12px;left:12px;bottom:calc(78px + env(safe-area-inset-bottom));max-width:340px;margin-left:auto;padding:12px;display:flex;flex-direction:column;gap:6px;border:1px solid var(--t-card-border);border-radius:16px;background:#fff;box-shadow:0 18px 44px #102a543d;z-index:var(--z-popover)}.theme-switch-head{display:flex;align-items:center;justify-content:space-between}.theme-switch-head strong{font-size:13px;color:var(--t-title-color)}.theme-switch-head button{min-width:32px;min-height:32px;border:0;background:transparent;color:var(--gray);font-size:22px;line-height:1}.theme-switch-option{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 10px;border:1px solid transparent;border-radius:12px;background:#f6f9fd;text-align:left;font:inherit}.theme-switch-option[aria-pressed=true]{border-color:var(--t-accent);background:#fff}.theme-switch-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-switch-copy b{font-size:12.5px;color:var(--t-title-color)}.theme-switch-copy small{font-size:10.5px;line-height:1.35;color:var(--text-secondary)}.theme-switch-note{margin:2px 0 0;font-size:10px;line-height:1.4;color:var(--text-tertiary)}.theme-swatch{flex:none;width:30px;height:30px;border-radius:9px;border:1px solid rgba(16,42,84,.12)}.theme-swatch-tin-cay{background:linear-gradient(135deg,#fff 0,#fff 50%,#1850b0 50%,#1850b0)}.theme-swatch-dong-hanh{background:linear-gradient(135deg,#1850b0,#2f7fe4)}.theme-swatch-di-san{background:linear-gradient(135deg,#14305c 0,#14305c 60%,#ccedff 60%,#ccedff)}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.isolate{isolation:isolate}.order-1{order:1}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.contents{display:contents}.hidden{display:none}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--pb-blue: #1850B0;--pb-blue-deep: #123E8A;--pb-blue-darker: #0D2E6B;--ink: #0f1a3d;--ink-2: #3a465f;--gray: #6b7a99;--gray-light: #97a4be;--text-secondary: #556279;--text-tertiary: #616d8a;--hairline: #e2e9f4;--hairline-strong: #d2dcec;--white: #ffffff;--app-bg: #eef3fb;--surface: #ffffff;--surface-2: #f6f9fd;--surface-3: #edf3fc;--tint-blue: #eaf1fd;--tint-blue-2: #dce9fc;--ok: #1f8a4c;--ok-bg: #e7f4ec;--ok-line: #bce3c9;--ok-fg: #137038;--warn: #c87f1f;--warn-bg: #fbf1e1;--warn-line: #efd9b4;--warn-fg: #8a5a12;--danger: #c4453a;--danger-bg: #fbeae8;--danger-line: #efc8c3;--danger-fg: #a5342b;--info: var(--pb-blue);--info-bg: #eaf1fd;--hero-gradient: linear-gradient(135deg, #2870c0, var(--blue-600) 55%, var(--blue-700));--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 9999px;--sh-xs: 0 1px 2px rgba(15, 26, 61, .06);--sh-sm: 0 2px 8px rgba(15, 26, 61, .07);--sh-md: 0 10px 30px rgba(15, 26, 61, .1);--sh-lg: 0 24px 60px rgba(15, 26, 61, .16);--font-body: "Be Vietnam Pro", system-ui, -apple-system, sans-serif;--font-display: "Bricolage Grotesque", "Be Vietnam Pro", sans-serif;--row: 34px;--ease: cubic-bezier(.22, 1, .36, 1);--z-stage-bar: 20;--z-nav-scrim: 25;--z-sidebar: 30;--z-bell: 40;--z-bottom-nav: 55;--z-modal: 200;--z-popover: 210;--z-prompt: 220;--z-toast: 300}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--app-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:13px;line-height:1.5}button{font-family:inherit}::-moz-selection{background:var(--tint-blue-2)}::selection{background:var(--tint-blue-2)}.shell{display:flex;min-height:100vh}.nav{width:264px;flex:0 0 264px;background:var(--t-nav-bg);border-right:1px solid var(--t-nav-border);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;z-index:var(--z-sidebar)}.nav-head{padding:16px 18px 14px;border-bottom:1px solid var(--t-nav-border);display:flex;align-items:center;gap:11px}.nav-head .mark{width:32px;height:32px;-o-object-fit:contain;object-fit:contain;filter:var(--t-nav-logo-filter)}.nav-head .wm{font-weight:800;letter-spacing:.12em;color:var(--t-nav-brand-fg);font-size:15px}.nav-head .sub{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:11px;color:var(--t-nav-brand-sub-fg);margin-top:1px}.nav-scroll{overflow-y:auto;flex:1;padding:10px 10px 30px}.nav-group{margin-top:14px}.nav-group:first-child{margin-top:4px}.nav-group-t{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t-nav-muted);padding:6px 10px;display:flex;align-items:center;gap:7px}.nav-item{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:var(--t-nav-item-radius);font-size:12.5px;color:var(--t-nav-fg);cursor:pointer;border:1px solid transparent;line-height:1.25;text-decoration:none;transition:background .12s var(--ease),color .12s}.nav-item:hover{background:var(--t-nav-hover-bg)}.nav-item.active{background:var(--t-nav-active-bg);color:var(--t-nav-active-fg);font-weight:600}.nav-item .code{font-size:9.5px;font-weight:700;letter-spacing:.03em;color:var(--t-nav-code-fg);background:var(--t-nav-code-bg);border-radius:var(--r-xs);padding:2px 5px;flex:0 0 auto;min-width:30px;text-align:center}.nav-item.active .code{background:var(--t-nav-code-active-bg)}.stage{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--t-stage-bg)}.stage-bar{height:56px;flex:0 0 56px;display:flex;align-items:center;gap:14px;padding:0 22px;border-bottom:1px solid var(--t-topbar-border);background:var(--t-topbar-bg);-webkit-backdrop-filter:var(--t-topbar-blur);backdrop-filter:var(--t-topbar-blur);position:sticky;top:0;z-index:var(--z-stage-bar)}.stage-bar .stage-title{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1 1 auto}.stage-bar .scode{font-weight:700;color:var(--t-topbar-code-fg);font-size:12px;letter-spacing:.04em;flex:0 0 auto}.stage-bar .stitle{font-weight:600;color:var(--t-topbar-fg);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-bar .spacer{margin-left:auto}.user-chip{display:flex;align-items:center;gap:10px;margin-right:4px;cursor:pointer;flex:0 0 auto}.user-chip-text{text-align:right;line-height:1.15;min-width:0}.user-chip-text .name{font-weight:700;font-size:13px;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip-text .role{font-size:11px}.bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--hairline-strong);background:var(--white);border-radius:var(--r-md);color:var(--ink-2);cursor:pointer;flex:0 0 auto}@media(hover:hover){.bell-btn:hover{color:var(--pb-blue);border-color:var(--pb-blue)}}.bell-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--pb-blue-darker);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;box-shadow:0 0 0 2px #ffffffeb}.bell-panel{position:absolute;top:44px;right:0;width:320px;max-width:calc(100vw - 32px);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);box-shadow:var(--sh-lg, 0 12px 32px rgba(16,32,64,.16));z-index:var(--z-bell);overflow:hidden}.bell-panel-head{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--hairline)}.bell-act{border:none;background:transparent;color:var(--pb-blue);font-size:11.5px;font-weight:600;cursor:pointer}.bell-act:disabled{color:var(--gray-light);cursor:default}.bell-push-cta{display:block;width:100%;border:none;background:var(--surface-2);color:var(--pb-blue);padding:10px 14px;font-size:12.5px;font-weight:600;text-align:left;cursor:pointer;border-bottom:1px solid var(--hairline)}@media(hover:hover){.bell-push-cta:hover{background:var(--pb-blue);color:#fff}}.offline-banner{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;border-radius:var(--r-md);background:var(--warn-bg);color:var(--warn-fg);border:1px solid var(--warn-line);font-size:12.5px;font-weight:600}.offline-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);flex:0 0 auto}.data-freshness{font-size:var(--fs-xs);color:var(--text-secondary, #4a5670)}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.state-block{text-align:center;padding:var(--sp-8) var(--sp-4)}.app-empty{text-align:center;padding:var(--sp-8) var(--sp-4);color:var(--text-secondary);font-size:var(--fs-sm)}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.update-toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:var(--z-prompt);display:flex;align-items:center;gap:14px;max-width:min(440px,calc(100vw - 24px));padding:12px 14px;border-radius:12px;background:var(--surface-1);color:var(--text-1);border:1px solid var(--hairline);box-shadow:0 8px 30px #0000002e}.update-toast-text{display:flex;flex-direction:column;gap:2px;font-size:12.5px;line-height:1.35}.update-toast-text span{color:var(--text-2)}@media(min-width:900px){.update-toast{bottom:calc(20px + env(safe-area-inset-bottom,0px))}}.bell-list{max-height:360px;overflow-y:auto}.bell-empty{padding:22px 14px;color:var(--text-secondary);font-size:13px;text-align:center}.bell-item{display:block;width:100%;text-align:left;border:none;background:transparent;padding:11px 14px;border-bottom:1px solid var(--hairline);cursor:pointer}@media(hover:hover){.bell-item:hover{background:var(--surface-2)}}.bell-item.unread{background:var(--tint-blue-2, rgba(24,80,176,.06))}.bell-item.unread .bell-item-title{font-weight:700}.bell-item-title{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bell-item-body{font-size:12px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bell-item-time{font-size:11px;color:var(--text-tertiary);margin-top:3px}.bell-viewall{display:block;width:100%;border:none;background:transparent;padding:10px;color:var(--pb-blue);font-size:12.5px;font-weight:600;cursor:pointer;border-top:1px solid var(--hairline)}@media(hover:hover){.bell-viewall:hover{background:var(--surface-2)}}.stage-body{flex:1;overflow:auto;padding:18px 28px 28px}.stage-inner{max-width:1180px;margin:0 auto}.hamburger{display:none;border:1px solid var(--hairline-strong);background:var(--white);border-radius:var(--r-md);width:36px;height:36px;cursor:pointer;color:var(--ink-2);flex:0 0 auto;align-items:center;justify-content:center}.nav-scrim{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;height:38px;border-radius:var(--r-pill);font-family:var(--font-body);font-size:13px;font-weight:600;line-height:1;color:var(--white);background:var(--pb-blue);border:none;cursor:pointer;transition:background .13s,transform .13s,box-shadow .13s;white-space:nowrap}@media(hover:hover){.btn:hover{background:var(--pb-blue-deep);transform:translateY(-1px);box-shadow:var(--sh-sm)}}.btn:active{transform:translateY(0)}.btn:disabled{background:var(--hairline-strong);color:var(--white);cursor:not-allowed;transform:none;box-shadow:none}.btn-lg{height:52px;font-size:15px;padding:0 26px;border-radius:var(--r-lg)}.btn-block{width:100%}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--hairline-strong)}@media(hover:hover){.btn-ghost:hover{background:var(--white);color:var(--pb-blue);border-color:var(--pb-blue)}}.btn-soft{background:var(--tint-blue);color:var(--pb-blue-deep)}.btn-soft:hover{background:var(--tint-blue-2);box-shadow:none}.btn-ok{background:var(--ok)}.btn-ok:hover{background:var(--pb-blue-deep)}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#a83a30}.btn-sm{height:30px;font-size:12px;padding:0 12px}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg)}.card-pad{padding:18px}.well{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-md)}.field-l{display:block;font-size:11.5px;font-weight:600;color:var(--ink-2);margin:0 0 5px}.input{width:100%;height:40px;padding:0 13px;font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--white);border:1px solid var(--hairline-strong);border-radius:var(--r-md);outline:none;transition:border-color .12s,box-shadow .12s}.input::-moz-placeholder{color:var(--text-tertiary)}.input::placeholder{color:var(--text-tertiary)}.input:focus{border-color:var(--pb-blue);box-shadow:0 0 0 3px #1850b021}.input-lg{height:56px;font-size:22px;font-weight:600;text-align:center;letter-spacing:.02em}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:var(--r-pill);font-size:11px;font-weight:600;white-space:nowrap;background:var(--surface-3);color:var(--ink-2);border:1px solid var(--hairline)}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-ok{background:var(--ok-bg);color:var(--ok-fg);border-color:var(--ok-line)}.badge-warn{background:var(--warn-bg);color:var(--warn-fg);border-color:var(--warn-line)}.badge-danger{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-line)}.badge-blue{background:var(--tint-blue);color:var(--pb-blue-deep);border-color:var(--tint-blue-2)}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;cursor:pointer;border-radius:var(--r-pill);border:1px solid var(--hairline-strong);background:var(--white);font-size:12.5px;font-weight:500;color:var(--ink-2);transition:all .12s}@media(hover:hover){.chip:hover{border-color:var(--pb-blue);color:var(--pb-blue)}}.chip.on{background:var(--tint-blue);border-color:var(--pb-blue);color:var(--pb-blue-deep);font-weight:600}.av{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;font-weight:700;color:var(--white);font-size:12px;background:linear-gradient(135deg,var(--pb-blue),var(--pb-blue-deep));line-height:1;overflow:hidden}.eyebrow{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:13px;color:var(--pb-blue);margin:0 0 2px}.anchor{font-family:var(--font-display);font-style:italic;font-weight:800;color:var(--pb-blue-deep);letter-spacing:-.02em;line-height:1;margin:0}.numeral{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.stat-v{font-weight:700;color:var(--pb-blue-deep);letter-spacing:-.02em;line-height:1}.stat-l{font-size:11px;color:var(--gray);letter-spacing:.02em}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:11px;font-weight:600;color:var(--t-th-fg);padding:7px 14px;border-bottom:1px solid var(--t-th-border);letter-spacing:var(--t-th-tracking);text-transform:uppercase;white-space:nowrap}.tbl th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tbl th.sortable:hover{color:var(--pb-blue)}.tbl td{padding:0 14px;height:var(--row);border-bottom:1px solid var(--hairline);font-size:12.5px;color:var(--ink-2);vertical-align:middle;white-space:nowrap}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr:hover td{background:var(--surface-2)}:root[data-density=compact] .stage-body{padding:var(--sp-3) var(--sp-5) var(--sp-6)}:root[data-density=compact] .tbl td{height:30px;padding:0 var(--sp-3);font-size:var(--fs-xs)}:root[data-density=compact] .tbl th{padding:var(--sp-1) var(--sp-3)}:root[data-density=compact] .input{height:34px}:root[data-density=compact] .btn{height:34px}:root[data-density=compact] .btn-sm{height:28px}:root[data-density=compact] .card-pad{padding:var(--sp-3)}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.seg{display:inline-flex;background:var(--surface-3);border-radius:var(--r-pill);padding:3px;gap:2px}.seg button{border:none;background:transparent;padding:0 14px;height:30px;border-radius:var(--r-pill);font-size:12.5px;font-weight:600;color:var(--gray);cursor:pointer;transition:all .12s}.seg button.on{background:var(--white);color:var(--pb-blue-deep);box-shadow:var(--sh-xs)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1a3d6b;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding:60px 20px;overflow:auto;padding-top:max(60px,var(--safe-t));padding-bottom:max(60px,var(--safe-b))}.modal-card{width:460px;max-width:100%}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--hairline)}.modal-x{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:-12px -10px -12px 0;border:none;background:none;cursor:pointer;color:var(--gray);font-size:20px;line-height:1}.modal-body{padding:18px}.modal-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 18px;border-top:1px solid var(--hairline)}body.modal-open .bottom-nav,body.modal-open .nav{pointer-events:none}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7A99' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.sx-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1;padding-right:11px}.sx-trigger[data-disabled]{cursor:not-allowed;opacity:.55;background:var(--surface-2)}.sx-trigger>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx-trigger[data-placeholder]>span:first-child{color:var(--text-tertiary)}.sx-trigger-ic{flex:0 0 auto;color:var(--gray);font-size:11px;transition:transform .14s var(--ease)}.sx-trigger[data-state=open] .sx-trigger-ic{transform:rotate(180deg)}.sx-content{background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:4px;z-index:var(--z-popover);overflow:hidden;min-width:var(--radix-select-trigger-width, var(--radix-popover-trigger-width, 160px));max-height:var(--radix-select-content-available-height, 320px);animation:sxIn .12s var(--ease)}@keyframes sxIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}.sx-viewport{max-height:300px;overflow-y:auto}.sx-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:none;background:transparent;text-align:left;cursor:pointer;outline:none;padding:8px 10px;border-radius:var(--r-sm);font-size:13px;color:var(--ink);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.sx-item[data-highlighted],.sx-item.is-active{background:var(--tint-blue)}@media(hover:hover){.sx-item:hover{background:var(--tint-blue)}}.sx-item[data-state=checked],.sx-item[aria-selected=true]{font-weight:600}.sx-item[data-disabled]{color:var(--gray-light);cursor:not-allowed}.sx-item-main{display:flex;flex-direction:column;gap:1px;min-width:0}.sx-item-main>.nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx-item-sub{color:var(--gray);font-size:11px;flex:0 0 auto}.sx-item-ind{color:var(--pb-blue);font-size:12px;flex:0 0 auto}.sx-item-new{color:var(--pb-blue);font-weight:600}.sx-empty{padding:8px 10px;font-size:12.5px;color:var(--gray)}.sx-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:none;background:transparent;cursor:pointer;color:var(--gray);font-size:14px;line-height:1;padding:4px}.toast-wrap{position:fixed;top:16px;right:16px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:10px;max-width:360px}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;cursor:pointer;border-radius:var(--r-md);background:var(--white);border:1px solid var(--hairline);box-shadow:var(--sh-md);animation:toastIn .24s var(--ease)}.toast.ok{border-color:var(--ok-line);background:var(--ok-bg)}.toast.danger{border-color:var(--danger-line);background:var(--danger-bg)}.toast.info{border-color:var(--tint-blue-2);background:var(--info-bg)}.toast .ic{flex:0 0 auto;margin-top:1px}.toast .ttl{font-weight:600;font-size:12.5px;color:var(--ink)}.toast .msg{font-size:12.5px;color:var(--ink-2);margin-top:1px}@keyframes toastIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.between{display:flex;align-items:center;justify-content:space-between}.sec-head{gap:12px;margin-bottom:12px}.muted{color:var(--text-secondary)}.fade-up{animation:fadeUp .32s var(--ease) both}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}.kpi-bar{transition:border-color .12s var(--ease),box-shadow .12s var(--ease),transform .12s var(--ease)}.kpi-bar:hover{border-color:var(--pb-blue);box-shadow:var(--sh-sm);transform:translateY(-1px)}.kpi-bar:active{transform:translateY(0)}.kpi-bar:focus-visible{outline:2px solid var(--pb-blue);outline-offset:2px}.tree-row{display:flex;align-items:center;gap:10px;padding:10px;flex-wrap:wrap;margin-left:calc(var(--depth, 0) * 22px)}.tree-row .who{flex:1 1 150px;min-width:0}.tree-row .who .nm{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-row .tree-actions{display:flex;gap:6px;flex:0 0 auto;margin-left:auto}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.auth-card{width:100%;max-width:420px;overflow:hidden}.form-card{max-width:460px}.pw-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:1;touch-action:manipulation;height:30px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--pb-blue);font-size:12px;font-weight:600}@media(max-width:480px){.auth-shell{padding:0;align-items:flex-start}.auth-card{max-width:100%;border-radius:0;min-height:100vh}.auth-card .input,.form-card .input,.auth-card .sx-trigger,.form-card .sx-trigger{height:44px;font-size:16px}.auth-card .btn,.form-card .btn{height:44px;font-size:15px}.auth-card .seg{width:100%}.auth-card .seg button{flex:1;height:44px;font-size:13.5px}.auth-card .pw-toggle,.form-card .pw-toggle{min-width:44px;min-height:44px;padding:0 12px}.modal-scrim{align-items:flex-end;padding:0;padding-top:max(24px,var(--safe-t))}.modal-card{width:100%;max-width:100%;border-radius:var(--r-xl) var(--r-xl) 0 0;max-height:92vh;display:flex;flex-direction:column}.modal-body{overflow-y:auto}.modal-foot{position:sticky;bottom:0;background:var(--surface);padding-bottom:max(var(--sp-4),var(--safe-b))}}@media(max-width:480px){.account-area .input{height:44px;font-size:16px}.account-area .btn{min-height:44px}}@media(max-width:900px){.nav{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .2s var(--ease);box-shadow:var(--sh-lg)}.nav.open{transform:translate(0)}.hamburger{display:inline-flex}.nav-scrim.open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1a3d59;z-index:var(--z-nav-scrim)}.stage-bar{padding:0 14px;gap:10px}.stage-bar .scode,.stage-bar .stage-title{display:none}.stage-bar .hamburger{margin-right:auto}.user-chip-text{display:none}.sec-head{flex-direction:column;align-items:stretch;gap:10px}.sec-head-actions>*{flex-wrap:wrap}.stage-body{padding:14px 16px 24px}.cust-detail-grid{grid-template-columns:1fr!important}.tree-row{margin-left:calc(var(--depth, 0) * 12px);gap:8px;padding:8px}.tree-row .tree-actions{margin-left:0;width:100%}.bell-panel{position:fixed;top:calc(58px + env(safe-area-inset-top));left:8px;right:8px;width:auto;max-width:none}.bell-list{max-height:calc(100vh - 140px)}.bell-item-title,.bell-item-body{white-space:normal}}.bottom-nav{display:none}@media(max-width:900px){:root{--bottomnav-h: 64px}.bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:var(--z-bottom-nav);background:var(--surface);border-top:1px solid var(--hairline-strong);box-shadow:0 -6px 20px #0f1a3d0f;padding-bottom:var(--safe-b)}.bn-item{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:var(--touch-min);padding:8px 2px;color:var(--text-secondary);text-decoration:none;font-family:inherit;transition:color var(--dur-fast) var(--ease-out)}.bn-item.active{color:var(--pb-blue)}.bn-item.active .bn-icon{transform:translateY(-1px)}.bn-label{font-size:12px;font-weight:600;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-body{padding-bottom:calc(var(--bottomnav-h) + var(--safe-b) + var(--sp-2))}}@media(max-width:900px){.btn,.input{min-height:var(--touch-min)}.field-l{font-size:var(--fs-sm)}}html[data-surface=app],html[data-surface=app] body{overscroll-behavior:none;-webkit-text-size-adjust:100%;background:var(--t-page-bg)}.mobile-shell{width:min(100%,480px);min-height:100vh;height:100dvh;margin:0 auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--t-shell-bg);box-shadow:0 0 44px #0c2a5c24;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-app-header{min-height:58px;padding:calc(7px + env(safe-area-inset-top)) 12px 7px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;background:var(--t-header-bg);color:var(--t-header-fg);border-bottom:1px solid var(--t-header-border)}.mobile-app-logo{width:32px;height:32px;-o-object-fit:contain;object-fit:contain;filter:var(--t-header-logo-filter)}.mobile-back-button{min-width:44px;min-height:44px;margin-right:4px;border:0;border-radius:50%;background:var(--t-header-btn-bg);color:currentColor;font-size:32px;line-height:1}.mobile-app-header-lead{display:flex;align-items:center;justify-self:start}.mobile-app-header-actions{display:flex;align-items:center;gap:8px;justify-self:end}.mobile-shell .bell-btn{width:44px;height:44px;border:0;background:transparent;color:currentColor;box-shadow:none}.mobile-shell .app-avatar-button .av{box-shadow:0 0 0 2px var(--t-header-avatar-ring);background:#eef5ff;color:var(--pb-blue-deep)}.app-avatar-button,.app-icon-button{min-width:44px;min-height:44px;border:0;background:transparent;display:grid;place-items:center;border-radius:50%;color:inherit}.mobile-stage-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 16px 24px;scroll-behavior:smooth}.mobile-route-outlet{animation:mobile-route-in .19s var(--ease-out)}.app-tab-bar{min-height:66px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));display:flex;align-items:flex-end;justify-content:space-around;gap:2px;background:var(--t-tabbar-bg);border-top:1px solid var(--t-tabbar-border);box-shadow:var(--t-tabbar-shadow);z-index:50}.app-tab-item{min-width:50px;min-height:44px;flex:1 1 0;border:0;background:transparent;color:var(--t-tab-fg);text-decoration:none;font:inherit;font-size:10px;font-weight:var(--fw-semibold);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:14px;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-tab-item.active{color:var(--t-tab-active-fg);background:var(--t-tab-active-bg);font-weight:var(--fw-bold)}.app-tab-icon{font-size:22px;line-height:1}.app-tab-item:active,.app-icon-button:active,.app-avatar-button:active{transform:scale(.96)}html[data-keyboard-open=true] .app-tab-bar{display:none}.mobile-fallback-frame{min-width:0;overflow-x:auto}html[data-surface=app] .btn,html[data-surface=app] .input,html[data-surface=app] .sx-trigger{min-height:44px}html[data-surface=app] .input,html[data-surface=app] .sx-trigger{font-size:16px}html[data-surface=app] .auth-shell{padding:0;align-items:flex-start}html[data-surface=app] .auth-card{max-width:100%;border-radius:0;min-height:100dvh}html[data-surface=app] .auth-card .pw-toggle,html[data-surface=app] .form-card .pw-toggle{min-width:44px;min-height:44px}html[data-surface=app] .modal-scrim{align-items:flex-end;padding:0;padding-top:max(24px,var(--safe-t))}html[data-surface=app] .modal-card{width:min(100%,480px);max-width:100%;max-height:92dvh;border-radius:var(--r-xl) var(--r-xl) 0 0;display:flex;flex-direction:column}html[data-surface=app] .modal-body{overflow-y:auto}html[data-surface=app] .modal-foot{position:sticky;bottom:0;background:var(--surface);padding-bottom:max(var(--sp-4),var(--safe-b))}.route-skeleton{min-height:240px;border-radius:20px;background:linear-gradient(90deg,#edf2f8 25%,#f8fafd,#edf2f8 75%);background-size:200% 100%;animation:app-shimmer 1.2s infinite}.app-home-loading{display:flex;flex-direction:column;gap:12px}.app-home-loading-hero,.app-home-loading-actions>span,.app-home-loading-card{background:linear-gradient(90deg,#edf2f8 25%,#f8fafd,#edf2f8 75%);background-size:200% 100%;animation:app-shimmer 1.2s infinite}.app-home-loading-hero{height:136px;border-radius:20px}.app-home-loading-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.app-home-loading-actions>span{height:76px;border-radius:18px}.app-home-loading-card{height:110px;border-radius:18px}.app-home-loading-card.short{height:70px}.app-home-loading-card.tall{height:150px}.app-home{display:flex;flex-direction:column;gap:12px}.app-home-hero{position:relative;min-height:136px;display:flex;align-items:center;padding:18px;border-radius:var(--t-hero-radius);overflow:hidden;background:var(--t-hero-overlay),url(/assets/home-hero-factory-v1.webp) center/cover no-repeat #fff;color:var(--ink);border:1px solid var(--t-hero-border);box-shadow:var(--t-card-shadow)}.app-home-greeting{position:relative;z-index:1;max-width:60%;display:flex;flex-direction:column;align-items:flex-start}.app-home-greeting>span{font-size:12px;color:var(--t-hero-fg-muted)}.app-home-greeting>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;margin-top:2px;color:var(--t-hero-fg);font-size:20px;line-height:1.18;font-weight:800}.app-home-greeting>small{display:inline-flex;margin-top:11px;padding:5px 9px;border:1px solid var(--t-hero-chip-border);border-radius:999px;background:var(--t-hero-chip-bg);color:var(--t-hero-chip-fg);font-size:9px;font-weight:600;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.app-home-actions{min-height:76px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:8px 0;border:1px solid var(--t-card-border);border-radius:var(--t-card-radius);background:var(--t-card-bg);box-shadow:var(--t-card-shadow)}.app-quick{position:relative;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:4px 8px;border:0;border-right:1px solid var(--t-card-border);border-radius:0;background:transparent;color:var(--ink);text-align:center;text-decoration:none;font-size:11px;font-weight:var(--fw-semibold);box-shadow:none}.app-quick:last-child{border-right:0}.app-quick b{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:var(--t-accent-soft);color:var(--t-accent)}.app-quick b svg{width:20px;height:20px}.app-quick.primary{background:transparent;color:var(--ink);border-color:var(--t-card-border)}.app-quick.primary b{color:var(--t-accent)}.app-quick:active{transform:scale(.97)}.app-home-card{display:flex;flex-direction:column;gap:10px}.app-card-title{font-weight:var(--fw-bold);font-size:var(--fs-md)}.app-home-card>a{min-height:44px;display:flex;align-items:center;justify-content:space-between;color:var(--pb-blue-deep);font-weight:var(--fw-semibold);text-decoration:none}.app-money{font-size:var(--fs-2xl);color:var(--pb-blue-deep)}.app-money-pair,.app-period-revenue{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.app-money-pair span,.app-period-revenue span{font-size:var(--fs-xs);color:var(--ink-2)}.app-money-pair strong:not(.app-money),.app-period-revenue strong{font-size:var(--fs-md);color:var(--pb-blue-deep)}.app-kpi-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-xs)}.app-card-error{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--danger);font-size:var(--fs-xs)}.app-card-error button{min-height:44px;border:0;background:var(--danger-bg);color:var(--danger);border-radius:10px;padding:0 12px}.app-card-skeleton{height:44px;border-radius:12px;background:var(--surface-2)}.app-card-skeleton.lg{height:96px}.app-card-skeleton.xl{height:116px}.app-home-tools{display:flex;flex-direction:column;gap:13px}.app-home-tools-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-home-tools-head>button{min-height:32px;padding:0;border:0;background:transparent;color:#63748b;font:600 11px/1 inherit}.app-home-tools-head b{font-size:17px;color:#9aa9ba}.app-home-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.app-home-tool-grid>a{min-width:0;min-height:65px;padding:3px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;color:var(--pb-blue-deep);text-align:center;text-decoration:none}.app-home-tool-grid>a>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--t-accent-soft);color:var(--t-accent)}.app-home-tool-grid>a strong{max-width:100%;font-size:10px;color:#263a57;white-space:nowrap}.app-home-tool-group{padding-top:12px;border-top:1px solid var(--hairline)}.app-home-tool-group>div{margin-bottom:4px;color:var(--text-tertiary);font-size:10px;font-weight:var(--fw-bold);text-transform:uppercase}.app-home-tool-group>a{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink);font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-decoration:none}.app-home-tool-group>a>span{color:var(--text-tertiary);font-size:20px}.app-home-secondary{display:flex;flex-direction:column;gap:12px}.app-home .kpi-board{padding:13px 14px 14px;border-radius:var(--t-card-radius);box-shadow:var(--t-card-shadow)}.kpi-board-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:11px}.kpi-board-head>div{font-weight:800;font-size:15px;color:var(--t-title-color)}.kpi-board-head>span{color:#728198;font-size:10px}.kpi-board-list{display:flex;flex-direction:column;gap:9px}.kpi-bar{width:100%;min-height:77px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--t-card-border);border-radius:calc(var(--t-card-radius) - 4px);background:var(--t-card-bg);text-align:left;cursor:pointer;font-family:inherit}.kpi-bar-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--t-accent-soft);color:var(--t-accent)}.kpi-bar-body{display:block;min-width:0}.app-home .kpi-bar-body>div:first-child{margin-bottom:6px!important}.app-home .kpi-track{height:6px!important;background:#eaf1fa!important}.app-home .kpi-bar-body>div:last-child{margin-top:6px!important}.app-home .kpi-bar .badge{padding:3px 8px;font-size:9px}.app-home .kpi-bar .numeral{font-size:10px!important}.app-home .kpi-bar .muted{font-size:9px!important}@keyframes app-shimmer{to{background-position:-200% 0}}@keyframes mobile-route-in{0%{opacity:.55;transform:translate(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.route-skeleton,.app-home-loading-hero,.app-home-loading-actions>span,.app-home-loading-card,.mobile-route-outlet{animation:none}.app-tab-item,.app-quick{transition:none!important}}.mobile-wizard-progress{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-4)}.mobile-wizard-progress>span{flex:1;height:4px;border-radius:2px;background:var(--hairline-strong)}.mobile-wizard-progress>span[data-active=true]{background:var(--pb-blue)}.mobile-wizard-footer{width:100%;display:grid;gap:var(--sp-3)}.mobile-wizard-total{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.mobile-wizard-total>span{color:var(--text-secondary);font-size:var(--fs-xs)}.mobile-wizard-total>b{color:var(--pb-blue-deep);font-size:var(--fs-lg)}.mobile-wizard-buttons{display:flex;gap:var(--sp-3)}.mobile-wizard-action{min-height:44px}.mobile-wizard-pricing,.mobile-wizard-error{margin:var(--sp-3) 0 0;font-size:var(--fs-sm)}.mobile-wizard-pricing{color:var(--text-secondary);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.mobile-wizard-error{color:var(--danger)}.orders-page-mobile .sec-head{align-items:center}.orders-page-mobile .sec-head .btn{min-height:44px}.customers-page-mobile,.crm-customers-screen{min-width:0}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.data-grid-pagination-mobile{min-height:42px;display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 0;border-top:1px solid var(--hairline)}.data-grid-page-arrow{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid #d9e3ef;border-radius:11px;background:#fff;color:#31506f;font:700 22px/1 inherit;cursor:pointer}.data-grid-page-arrow:disabled{background:#f6f8fb;color:#bcc6d1;cursor:default}.data-grid-page-count{min-width:42px;color:#718096;font-size:10px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}html[data-surface=app] .sec-head{margin-bottom:12px;flex-direction:row;align-items:flex-start;gap:12px}html[data-surface=app] .sec-head-title{flex:1;min-width:0}html[data-surface=app] .sec-head-title>.anchor{font-size:22px!important;line-height:1.15;letter-spacing:-.015em;color:var(--t-title-color);font-style:normal;font-weight:800}html[data-surface=app] .sec-head-title>.muted{margin-top:3px;font-size:11.5px!important;line-height:1.35;color:var(--text-secondary)}html[data-surface=app] .sec-head-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding-top:1px}html[data-surface=app] .sec-head-actions .btn{height:36px;min-height:36px;gap:5px;padding:0 14px;border-radius:12px;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:none}html[data-surface=app] .sec-head-actions .btn-ghost{background:#fff;border-color:var(--hairline-strong);color:var(--text-secondary)}html[data-surface=app] .sec-head-actions .btn svg{width:15px;height:15px}.crm-category-chips{display:flex;gap:3px;margin:0 0 10px;padding:3px;border-radius:12px;background:#e9eff7}.crm-category-chips>button{flex:1 1 0;min-width:0;min-height:38px;padding:0 6px;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);font:600 12px/1.1 inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-category-chips>button[aria-pressed=true]{background:#fff;color:var(--t-accent);font-weight:700;box-shadow:0 1px 2px #102a5421}html[data-surface=app] .crm-customers-screen>.card{overflow:visible!important;border:0;background:transparent;box-shadow:none}html[data-surface=app] .crm-customers-screen>.card>.between:first-child{padding:0!important;border:0!important}html[data-surface=app] .crm-customers-screen>.card>.between:first-child>div:first-child{max-width:none!important}html[data-surface=app] .crm-customers-screen>.card>.between:first-child .input{height:44px;border:1px solid #dae5f2;border-radius:12px;background:#fff;box-shadow:0 3px 12px #1f46790d}html[data-surface=app] .crm-customers-screen>.card>div:nth-child(2){padding:13px 0!important;gap:10px!important}html[data-surface=app] .crm-customers-screen>.card>.between:last-child{padding:4px 0!important;border:0!important}html[data-surface=app] .crm-customers-screen>.card>.data-grid-pagination-mobile{border-top:0}.crm-customer-card{position:relative;width:100%;min-height:76px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 32px 12px 13px;border:1px solid var(--hairline);border-radius:16px;background:#fff;color:var(--ink);text-align:left;font:inherit;box-shadow:0 1px 3px #1d4a840f;cursor:pointer}.crm-customer-card>.av{background:#eaf3ff;color:#0966cf;font-weight:800}.crm-customer-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.crm-customer-copy>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#17345c;font-size:14.5px;line-height:1.3}.crm-customer-meta{margin-top:4px;max-width:100%;display:flex;align-items:center;gap:6px;overflow:hidden;color:var(--text-secondary);font-size:11.5px;white-space:nowrap}.crm-customer-phone{display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}.crm-customer-meta>.sep{color:#c2cddc}.crm-customer-source{min-width:0;overflow:hidden;text-overflow:ellipsis}.crm-customer-kind{align-self:center;padding:4px 8px;border-radius:999px;background:#f3f5f8;color:#738196;font-size:9px;font-weight:700;white-space:nowrap}.crm-customer-kind.is-customer{background:#eaf8ef;color:#22864b}.crm-customer-kind.is-kol{background:#f1ecff;color:#7149bd}.crm-customer-kind.is-koc{background:#fff0e3;color:#ad6412}.crm-customer-chevron{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#aab6c5}.crm-businesses-screen{min-width:0}html[data-surface=app] .crm-businesses-screen>.card{overflow:visible!important;border:0;background:transparent;box-shadow:none}html[data-surface=app] .crm-businesses-screen>.card>.between:first-child{padding:0!important;border:0!important}html[data-surface=app] .crm-businesses-screen>.card>.between:first-child>div:first-child{max-width:none!important}html[data-surface=app] .crm-businesses-screen>.card>.between:first-child .input{height:44px;border:1px solid #dae5f2;border-radius:12px;background:#fff;box-shadow:0 3px 12px #1f46790d}html[data-surface=app] .crm-businesses-screen>.card>div:nth-child(2){padding:13px 0!important;gap:10px!important}html[data-surface=app] .crm-businesses-screen>.card>.data-grid-pagination-mobile{border-top:0}.order-status-track{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:7px 0 0}.order-status-stage{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:#9aa7b8;font-size:8px;font-weight:600;text-align:center}.order-status-stage:not(:last-child):after{content:"";position:absolute;z-index:-1;left:calc(50% + 10px);top:9px;width:calc(100% - 20px);height:3px;border-radius:3px;background:#dfe6ef}.order-status-stage[data-segment=complete]:after{background:var(--pb-blue-deep)}.order-status-stage[data-segment=active]:after{background:var(--pb-blue)}.order-status-track[data-status=Created] .order-status-stage[data-segment=active]:after{background:var(--tint-blue-2)}.order-status-dot{position:relative;width:20px;height:20px;border:3px solid #fff;border-radius:50%;background:#dfe6ef;box-shadow:0 0 0 1px #d7e0ea}.order-status-stage[data-complete=true]{color:var(--pb-blue-deep)}.order-status-stage[data-complete=true] .order-status-dot{background:var(--pb-blue-deep);box-shadow:0 0 0 1px var(--pb-blue-deep)}.order-status-stage[data-complete=true] .order-status-dot:after{content:"✓";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:800}.order-status-stage[data-current=true]{color:var(--pb-blue)}.order-status-stage[data-current=true] .order-status-dot{background:var(--pb-blue);box-shadow:0 0 0 1px var(--pb-blue)}.order-status-track[data-status=Created] .order-status-stage[data-current=true]{color:var(--pb-blue-deep)}.order-status-track[data-status=Created] .order-status-stage[data-current=true] .order-status-dot{background:#fff;box-shadow:0 0 0 2px var(--pb-blue)}.order-status-track.is-exception{padding-bottom:30px}.order-status-track.is-exception .order-status-dot{background:var(--danger-bg);box-shadow:0 0 0 1px var(--danger)}.order-status-exception{position:absolute;left:0;right:0;bottom:0;color:var(--danger);font-size:10px;text-align:center}html[data-surface=app] .orders-page-mobile>.data-freshness,html[data-surface=app] .orders-page-mobile>div>.data-freshness{display:none}.order-filter-chips{display:flex;gap:6px;margin:0 -16px 10px;padding:0 16px;overflow-x:auto;scrollbar-width:none}.order-filter-chips::-webkit-scrollbar{display:none}.order-filter-chips>button{flex:0 0 auto;min-height:36px;padding:0 13px;border:1px solid var(--hairline-strong);border-radius:999px;background:#fff;color:var(--text-secondary);font:600 11px/1 inherit;white-space:nowrap}.order-filter-chips>button[aria-pressed=true]{border-color:var(--pb-blue);background:var(--pb-blue);color:#fff;box-shadow:none}html[data-surface=app] .orders-page-mobile>div>.card:not(.card-pad){overflow:visible!important;border:0;background:transparent;box-shadow:none}html[data-surface=app] .orders-page-mobile>div>.card:not(.card-pad)>.between:first-child{display:none}html[data-surface=app] .orders-page-mobile>div>.card:not(.card-pad)>div:nth-child(2){padding:0!important;gap:10px!important}html[data-surface=app] .orders-page-mobile>div>.card:not(.card-pad)>.between:last-child{padding:8px 0!important;border:0!important;flex-wrap:wrap;gap:8px}html[data-surface=app] .orders-page-mobile>div>.card:not(.card-pad)>.between:last-child>*{min-width:0}.mobile-order-card{min-height:143px;padding:13px 12px 10px;border:1px solid #dbe5f1;border-radius:16px;background:#fff;box-shadow:0 4px 14px #1d4a840e}.mobile-order-summary{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;padding-right:18px}.mobile-order-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#edf5ff;color:#176bc6}.mobile-order-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.mobile-order-copy>strong{color:#17345c;font-size:13px;line-height:1.15}.mobile-order-copy>span{display:flex;align-items:center;gap:5px;overflow:hidden;color:#718096;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.mobile-order-copy svg{flex:0 0 auto;color:#8b9aae}.mobile-order-meta{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.mobile-order-meta>strong{color:#17345c;font-size:13px;white-space:nowrap}.mobile-order-meta .badge{padding:4px 7px;font-size:8px;white-space:nowrap}.mobile-order-detail{position:absolute;right:-8px;top:20px;width:28px;height:34px;display:grid;place-items:center;border:0;background:transparent;color:#aab6c5}.mobile-order-card .order-status-track{margin-top:8px;border-top:1px solid #edf1f6;padding-top:9px}.app-quick small{font-weight:var(--fw-semibold);opacity:.78;position:absolute;top:0;right:6px;padding:2px 5px;border-radius:999px;background:#edf5ff;color:#1767bd;font-size:8px;line-height:1.2}.placement-inbox-mobile>div>div:not(.sec-head) .card>button{min-height:64px;touch-action:manipulation}.placement-inbox-mobile .btn,.placement-inbox-mobile .input{min-height:44px}.account-page-mobile,.notifications-page-mobile{min-width:0}.account-page-mobile .account-area{padding:0}html[data-surface=app] .account-page-mobile .account-area>div{max-width:none!important;padding-left:var(--sp-4);padding-right:var(--sp-4)}.notifications-page-mobile .cust-detail-grid{grid-template-columns:1fr!important;gap:var(--sp-4)!important}.notifications-page-mobile .chip,.notifications-page-mobile li button{min-height:44px;touch-action:manipulation}.income-wallet-mobile{min-width:0;display:flex;flex-direction:column;gap:13px;padding-bottom:8px}.income-wallet-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.income-wallet-title h1{margin:0;color:#142b4d;font-size:21px;line-height:1.25;font-weight:800}.income-wallet-title p{margin:3px 0 0;color:#6d7d92;font-size:10px}.income-wallet-title label{flex:0 0 116px}.income-wallet-title label>span{display:block;margin-bottom:3px;color:#77869a;font-size:9px;font-weight:700}.income-wallet-title .input{height:38px;min-height:38px;padding:0 9px;border-radius:10px;font-size:12px}.income-balance-card{position:relative;min-height:154px;padding:17px 17px 15px;border-radius:19px;background:linear-gradient(135deg,#0e55b5,#0879d7);color:#fff;box-shadow:0 10px 25px #0e55b538;overflow:hidden}.income-balance-card:after{content:"";position:absolute;right:-37px;top:-43px;width:145px;height:145px;border:28px solid rgba(255,255,255,.08);border-radius:50%}.income-balance-icon{position:absolute;right:17px;top:16px;width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:#ffffff26}.income-balance-card>span{display:block;font-size:11px;opacity:.84}.income-balance-card>strong{position:relative;z-index:1;display:block;margin-top:4px;font-size:29px;line-height:1.2;font-weight:800;font-variant-numeric:tabular-nums}.income-balance-meta{position:absolute;z-index:1;left:17px;right:17px;bottom:15px;display:flex;gap:18px;padding-top:11px;border-top:1px solid rgba(255,255,255,.2);font-size:9px}.income-balance-meta span{display:flex;flex-direction:column;gap:2px;opacity:.86}.income-balance-meta b{font-size:11px;color:#fff}.income-wallet-mobile>.data-freshness{margin:-7px 2px 0;font-size:9px}.income-wallet-actions{display:flex;flex-direction:column;border:1px solid #dbe5f1;border-radius:17px;background:#fff;box-shadow:0 4px 14px #1d4a840e;overflow:hidden}.income-wallet-actions>a,.income-wallet-actions>button{width:100%;min-height:68px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 13px;border:0;border-bottom:1px solid #e9eef5;background:#fff;color:var(--ink);text-align:left;text-decoration:none;font:inherit}.income-wallet-actions>:last-child{border-bottom:0}.income-wallet-actions>a>span:nth-child(2),.income-wallet-actions>button>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:3px}.income-wallet-actions b{color:#1b3558;font-size:12px}.income-wallet-actions small{overflow:hidden;color:#738197;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.income-wallet-actions>a>svg,.income-wallet-actions>button>svg{color:#aab6c5}.income-action-icon{width:40px;height:40px;display:grid!important;place-items:center;border-radius:13px;background:#edf5ff;color:#176bc6}.income-action-icon.is-green{background:#eaf8ef;color:#278b51}.income-bank-editor{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid #dbe5f1;border-radius:17px;background:#fff}.income-bank-editor h2,.income-source-heading h2{margin:0;color:#17345c;font-size:14px}.income-bank-editor p,.income-source-heading p{margin:3px 0 0;color:#748297;font-size:9px}.income-bank-buttons{display:grid;grid-template-columns:auto 1fr;gap:9px}.income-bank-buttons .btn{min-height:42px}.income-bank-success{padding:11px;border-radius:11px;background:var(--ok-bg);color:var(--ok-fg);font-size:11px;font-weight:700}.income-source-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-top:3px}.income-source-list{display:flex;flex-direction:column;gap:8px}.income-source-list>button{width:100%;min-height:72px;display:grid;grid-template-columns:39px minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:10px 11px;border:1px solid #dbe5f1;border-radius:15px;background:#fff;color:var(--ink);text-align:left;font:inherit;box-shadow:0 3px 11px #1d4a840b}.income-source-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eef5ff;color:#176bc6;font-size:14px;font-weight:800}.income-source-mark.is-kolkoc{background:#eaf6ff;color:#1850b0}.income-source-mark.is-npp{background:#dce9fc;color:#123e8a}.income-source-mark.is-direct{background:#c9e0fa;color:#0d2e6b}.income-source-mark.is-team{background:#eef1f5;color:#627087}.income-source-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.income-source-copy b{color:#1c3658;font-size:11px}.income-source-copy small{overflow:hidden;color:#7a8799;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.income-source-value{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.income-source-value b{color:#17345c;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}.income-source-value small{padding:2px 5px;border-radius:999px;background:#f1f3f6;color:#7c8796;font-size:7px;font-weight:700}.income-source-list>button>svg{color:#adb8c6;transition:transform .15s}.income-source-list>button>svg.is-open{transform:rotate(90deg)}.income-source-detail{padding:14px;border:1px solid #cddff2;border-radius:16px;background:#f7fbff}.income-source-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.income-source-detail-head h3{margin:0;color:#17345c;font-size:12px}.income-source-detail-head span{color:#77869a;font-size:9px}.income-source-detail-head>button{width:36px;height:36px;border:0;border-radius:50%;background:#e7f1fc;color:#176bc6;font-size:21px}.income-source-detail>p{margin:11px 0 0;color:#728197;font-size:10px}.income-entry-list{margin-top:10px;display:flex;flex-direction:column}.income-entry-list>div{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #dfe9f3}.income-entry-list>div>span{display:flex;flex-direction:column}.income-entry-list b{font-size:10px}.income-entry-list small{color:#7a889b;font-size:8px}.income-entry-list strong{color:#278b51;font-size:11px}.income-entry-list strong.is-negative{color:var(--danger)}.income-source-note{margin:0 2px;color:#77869a;font-size:8.5px;line-height:1.45}.income-wallet-loading,.income-wallet-empty{padding:30px 8px;color:var(--text-secondary);text-align:center;font-size:12px}html[data-surface=app] .sx-item,html[data-surface=app] .bell-item,html[data-surface=app] .bell-act,html[data-surface=app] .bell-viewall,html[data-surface=app] .bell-push-cta,html[data-surface=app] .chip{min-height:44px}html[data-surface=app] .notifications-page-mobile li>button{min-height:44px}html[data-surface=app] a:active,html[data-surface=app] button:active,html[data-surface=app] .sx-item:active,html[data-surface=app] [role=button]:active{transform:scale(.97)}html[data-surface=app] a:focus-visible,html[data-surface=app] button:focus-visible,html[data-surface=app] .sx-item:focus-visible,html[data-surface=app] .sx-trigger:focus-visible,html[data-surface=app] [role=button]:focus-visible{outline:2px solid var(--pb-blue);outline-offset:2px}.app-money,.app-money-pair strong,.app-period-revenue strong,.app-kpi-row b{font-variant-numeric:tabular-nums lining-nums}.kpi-cfg-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin:0 0 var(--sp-3);flex-wrap:wrap}.kpi-cfg-window{display:flex;align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);font-size:var(--fs-sm)}.kpi-cfg-grid{display:flex;flex-direction:column;font-size:var(--fs-sm)}.kpi-cfg-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr .7fr 1fr 1fr;gap:var(--sp-2);align-items:center;padding:var(--sp-2) 0;border-bottom:1px solid var(--hairline)}.kpi-cfg-row-head{font-size:var(--fs-xs);color:var(--text-tertiary);font-weight:var(--fw-semibold)}.kpi-cfg-row .input{height:32px;font-size:var(--fs-sm);text-align:right}html[data-surface=app] .kpi-cfg-row{grid-template-columns:1fr 1fr;padding:var(--sp-3) 0}html[data-surface=app] .kpi-cfg-row-head{display:none}html[data-surface=app] .kpi-cfg-row>span:first-child{grid-column:1 / -1;font-weight:var(--fw-bold);color:var(--t-title-color, var(--ink))}html[data-surface=app] .kpi-cfg-row .input{height:40px;font-size:16px}html[data-surface=app] .kpi-cfg-row>span[data-label]:before{content:attr(data-label);display:block;margin-bottom:2px;font-size:10px;font-weight:var(--fw-semibold);color:var(--text-tertiary)}html[data-surface=app] .pms-config-grid{display:flex!important;flex-direction:column;gap:12px}html[data-surface=app] .pms-config-page .sec-head,html[data-surface=app] .pms-exec-page .sec-head{flex-direction:column}html[data-surface=app] .pms-exec-stats{grid-template-columns:1fr 1fr!important}html[data-surface=app] .pms-config-page .card,html[data-surface=app] .pms-exec-page .card{min-width:0;max-width:100%;overflow-x:auto}html[data-surface=app] .pms-config-page table{table-layout:fixed;width:100%}html[data-surface=app] .pms-config-page table td:first-child{width:auto;word-break:break-word}html[data-surface=app] .pms-config-page table td:last-child{width:84px}html[data-surface=app] .pms-config-grid>*{min-width:0;max-width:100%}html[data-surface=app] .pms-config-editor{grid-template-columns:minmax(0,1fr);min-width:0}html[data-surface=app] .pms-config-page .card>div,html[data-surface=app] .pms-exec-page .card>div{min-width:0}html[data-surface=app] .pms-config-page .card-pad>div:first-child{flex-wrap:wrap}
