:root{--bs-body-font-family:var(--font-sans);--bs-body-bg:transparent;--bs-body-color:oklch(0.22 0.03 255);--bs-primary:#2e466f;--bs-primary-rgb:46,70,111;--bs-secondary:#cfa063;--bs-secondary-rgb:207,160,99;--bs-info:#567dbf;--bs-info-rgb:86,125,191;--bs-success:#2f8063;--bs-success-rgb:47,128,99;--bs-warning:#cfa063;--bs-warning-rgb:207,160,99;--bs-border-radius:1rem;--bs-border-radius-lg:1.5rem;--bs-border-radius-xl:2rem;--bs-border-radius-2xl:2.25rem;--bs-card-border-color:rgba(42,50,84,0.08);--bs-card-bg:rgba(255,255,255,0.9);--bs-card-cap-bg:transparent;--bs-card-box-shadow:0 20px 60px rgba(21,30,49,0.06);--bs-box-shadow-sm:0 12px 32px rgba(26,33,52,0.08);--bs-box-shadow:0 20px 60px rgba(21,30,49,0.08);--bs-box-shadow-lg:0 28px 90px rgba(26,33,52,0.14);--background:oklch(0.985 0.01 75);--foreground:oklch(0.22 0.03 255);--card:oklch(1 0.008 75);--card-foreground:oklch(0.22 0.03 255);--popover:oklch(0.998 0.008 75);--popover-foreground:oklch(0.22 0.03 255);--primary:oklch(0.31 0.05 250);--primary-foreground:oklch(0.99 0.01 75);--secondary:oklch(0.95 0.012 70);--secondary-foreground:oklch(0.26 0.04 252);--muted:oklch(0.963 0.008 72);--muted-foreground:oklch(0.52 0.03 245);--accent:oklch(0.82 0.08 55);--accent-foreground:oklch(0.24 0.02 245);--destructive:oklch(0.577 0.245 27.325);--border:oklch(0.91 0.014 68);--input:oklch(0.91 0.014 68);--ring:oklch(0.64 0.08 55);--chart-1:oklch(0.6 0.15 45);--chart-2:oklch(0.55 0.11 245);--chart-3:oklch(0.72 0.09 145);--chart-4:oklch(0.68 0.14 12);--chart-5:oklch(0.76 0.07 80);--radius:1rem;--sidebar:oklch(0.24 0.03 252);--sidebar-foreground:oklch(0.97 0.01 75);--sidebar-primary:oklch(0.78 0.08 54);--sidebar-primary-foreground:oklch(0.2 0.03 255);--sidebar-accent:oklch(0.28 0.025 252);--sidebar-accent-foreground:oklch(0.97 0.01 75);--sidebar-border:oklch(0.31 0.025 252);--sidebar-ring:oklch(0.78 0.08 54);--color-background:var(--background);--color-foreground:var(--foreground);--font-mono:var(--font-display);--color-sidebar-ring:var(--sidebar-ring);--color-sidebar-border:var(--sidebar-border);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar:var(--sidebar);--color-chart-5:var(--chart-5);--color-chart-4:var(--chart-4);--color-chart-3:var(--chart-3);--color-chart-2:var(--chart-2);--color-chart-1:var(--chart-1);--color-ring:var(--ring);--color-input:var(--input);--color-border:var(--border);--color-destructive:var(--destructive);--color-accent-foreground:var(--accent-foreground);--color-accent:var(--accent);--color-muted-foreground:var(--muted-foreground);--color-muted:var(--muted);--color-secondary-foreground:var(--secondary-foreground);--color-secondary:var(--secondary);--color-primary-foreground:var(--primary-foreground);--color-primary:var(--primary);--color-popover-foreground:var(--popover-foreground);--color-popover:var(--popover);--color-card-foreground:var(--card-foreground);--color-card:var(--card);--radius-sm:calc(var(--radius) * 0.6);--radius-md:calc(var(--radius) * 0.8);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) * 1.4);--radius-2xl:calc(var(--radius) * 1.8);--radius-3xl:calc(var(--radius) * 2.2);--radius-4xl:calc(var(--radius) * 2.6);--pv-shell-max-width:1480px;--pv-shell-max-width-wide:1640px;--pv-sidebar-width:19rem;--pv-space-1:0.5rem;--pv-space-2:1rem;--pv-space-3:1.5rem;--pv-space-4:2rem;--pv-space-5:2.5rem;--pv-space-6:3rem;--pv-shadow-soft:0 18px 44px rgba(22,30,49,0.06);--pv-shadow-panel:0 28px 80px rgba(18,27,44,0.1);--pv-border-soft:rgba(42,50,84,0.08);--eds-primary:#2e466f;--eds-primary-light:#e8f0fe;--eds-secondary:#2f8063;--eds-secondary-light:#e6f4ee;--eds-accent-gold:#cfa063;--eds-danger:#dc2626;--eds-warning:#d97706;--eds-text-primary:#1a2033;--eds-text-secondary:#6b7280;--eds-text-muted:#9ca3af;--eds-surface:#f7f8fb;--eds-surface-card:#ffffff;--eds-border:#e5e7eb;--eds-border-strong:rgba(42,50,84,0.15);--eds-radius-sm:6px;--eds-radius-md:10px;--eds-radius-lg:16px;--eds-radius-xl:24px;--eds-shadow-sm:0 1px 3px rgba(0,0,0,0.08);--eds-shadow-md:0 4px 16px rgba(46,70,111,0.12);--eds-shadow-lg:0 8px 32px rgba(46,70,111,0.16)}.dark{--background:oklch(0.145 0 0);--foreground:oklch(0.985 0 0);--card:oklch(0.205 0 0);--card-foreground:oklch(0.985 0 0);--popover:oklch(0.205 0 0);--popover-foreground:oklch(0.985 0 0);--primary:oklch(0.922 0 0);--primary-foreground:oklch(0.205 0 0);--secondary:oklch(0.269 0 0);--secondary-foreground:oklch(0.985 0 0);--muted:oklch(0.269 0 0);--muted-foreground:oklch(0.708 0 0);--accent:oklch(0.269 0 0);--accent-foreground:oklch(0.985 0 0);--destructive:oklch(0.704 0.191 22.216);--border:oklch(1 0 0/10%);--input:oklch(1 0 0/15%);--ring:oklch(0.556 0 0);--chart-1:oklch(0.809 0.105 251.813);--chart-2:oklch(0.623 0.214 259.815);--chart-3:oklch(0.546 0.245 262.881);--chart-4:oklch(0.488 0.243 264.376);--chart-5:oklch(0.424 0.199 265.638);--sidebar:oklch(0.205 0 0);--sidebar-foreground:oklch(0.985 0 0);--sidebar-primary:oklch(0.488 0.243 264.376);--sidebar-primary-foreground:oklch(0.985 0 0);--sidebar-accent:oklch(0.269 0 0);--sidebar-accent-foreground:oklch(0.985 0 0);--sidebar-border:oklch(1 0 0/10%);--sidebar-ring:oklch(0.556 0 0)}*{border-color:var(--border)}html{font-family:var(--font-sans),"Segoe UI",sans-serif;scroll-behavior:smooth}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-thai),"Sukhumvit Set","Thonburi",var(--font-sans),"Segoe UI",sans-serif;font-feature-settings:"kern","liga","clig","calt","kern";font-kerning:normal;line-height:1.58;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:hidden;background:radial-gradient(circle at top left,rgba(214,169,101,.08),transparent 24rem),linear-gradient(180deg,rgba(252,249,243,1),rgba(247,243,236,1) 52%,rgba(243,239,233,1))}button,input,select,textarea{font:inherit}::selection{background:color-mix(in oklab,var(--accent) 42%,white);color:var(--foreground)}.pv-skip-link{position:fixed;left:1rem;top:-4rem;z-index:200;border-radius:999px;padding:.75rem 1rem;color:white;font-weight:700;box-shadow:0 18px 44px rgba(20,28,45,.18);transition:top .16s ease}.pv-skip-link:focus{top:1rem}.font-display{font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),serif;letter-spacing:-.03em}.surface-glass{background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,251,245,.74)),radial-gradient(circle at top,rgba(218,177,116,.12),transparent 22rem);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);animation:shimmer-slide 1.5s ease-in-out infinite}.pv-bootstrap-shell{width:min(100%,var(--pv-shell-max-width-wide));margin-inline:auto;background:radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 22rem),radial-gradient(circle at top right,rgba(75,117,189,.04),transparent 20rem)}.pv-app-main,.pv-app-shell,.pv-app-shell-inner,.pv-auth-shell{min-height:100dvh}.pv-app-main,.pv-app-shell{overflow-x:hidden}.pv-app-main{min-width:0;padding-top:5.6rem}.pv-app-content{width:100%;padding:.75rem .75rem 3rem}.pv-shell-loading{display:grid;gap:.9rem;align-content:start}.pv-shell-loading-bar{position:relative;height:.28rem;overflow:hidden;border-radius:999px;background:rgba(42,50,84,.08)}.pv-shell-loading-bar:after{content:"";position:absolute;inset:0;width:38%;border-radius:inherit;background:linear-gradient(90deg,rgba(210,164,92,.95),rgba(76,120,211,.85));animation:pv-loading-indeterminate 1.05s ease-in-out infinite}.pv-shell-loading-card{display:grid;gap:.7rem;max-width:32rem;min-height:5.75rem;padding:1rem 1.1rem;border:1px solid rgba(42,50,84,.08);border-radius:1.5rem;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(250,247,241,.9)),radial-gradient(circle at top left,rgba(218,177,116,.1),transparent 16rem);box-shadow:0 14px 42px rgba(26,33,52,.06)}.pv-shell-loading-pill{display:inline-flex;width:fit-content;align-items:center;gap:.5rem;padding:.45rem .75rem;border:1px solid rgba(210,164,92,.16);border-radius:999px;background:rgba(255,248,238,.92);color:oklch(.42 .06 55);font-size:.78rem;font-weight:700;letter-spacing:.01em}.pv-shell-loading-dot{width:.48rem;height:.48rem;border-radius:999px;background:currentColor;box-shadow:0 0 0 0 rgba(210,164,92,.34);animation:pv-loading-pulse 1.2s ease-in-out infinite}.pv-shell-loading-copy{color:oklch(.47 .03 248);font-size:.92rem;line-height:1.65}.pv-page-hero.card{border:1px solid rgba(255,255,255,.7);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,246,239,.96)),radial-gradient(circle at top left,rgba(218,177,116,.12),transparent 20rem);box-shadow:var(--pv-shadow-panel)}.pv-page-hero.is-workspace .pv-page-hero-main{padding:1.35rem 1.5rem}.pv-page-hero.is-workspace .pv-page-hero-rail{padding:1rem 1.1rem}.pv-page-hero.is-landing .pv-page-hero-main{padding:1.85rem}.pv-page-hero-grid{display:grid;gap:0}.pv-page-hero-grid.has-aside{grid-template-columns:minmax(0,1fr)}.pv-page-hero-main{position:relative;padding:1.75rem}.pv-page-hero-rail{border-top:1px solid rgba(42,50,84,.08);padding:1.25rem}.pv-page-actions{display:flex;flex-wrap:wrap;gap:.75rem}.pv-page-stats,.pv-page-stats-grid{display:grid;gap:.75rem}.pv-page-stats-grid,.pv-page-stats-grid-four{grid-template-columns:repeat(1,minmax(0,1fr))}.pv-action-rail{display:grid;gap:1rem;height:100%;border-radius:1.9rem;padding:1.1rem;background:radial-gradient(circle at top right,rgba(210,164,92,.12),transparent 18rem),linear-gradient(180deg,rgba(41,54,88,1),rgba(24,33,55,1));color:white}.pv-action-rail-copy{display:grid;gap:.1rem}.pv-action-rail-body{display:grid;gap:.9rem;align-content:start}.pv-action-rail-footer{margin-top:auto}.pv-page-toolbar{display:flex;flex-direction:column;gap:.9rem;border-bottom:1px solid rgba(42,50,84,.06);background:rgba(248,246,242,.82);padding:1rem 1.1rem}.pv-page-toolbar-leading,.pv-page-toolbar-trailing{min-width:0}.pv-search-input{max-width:22rem}.pv-data-card.card{border:1px solid rgba(42,50,84,.08);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(250,247,241,.95)),radial-gradient(circle at top left,rgba(218,177,116,.06),transparent 16rem);box-shadow:var(--pv-shadow-soft)}.pv-empty-state-card{display:grid;place-items:center;gap:.7rem;min-height:13rem;border:1px dashed rgba(42,50,84,.16);border-radius:1.65rem;background:rgba(249,248,245,.94);padding:1.5rem;text-align:center}.pv-empty-state-card.is-compact{min-height:9.5rem}.pv-empty-state-icon{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:999px;background:rgba(42,50,84,.05);color:rgba(42,50,84,.34)}.pv-empty-state-title{font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),sans-serif;font-size:1.18rem;font-weight:700;line-height:1.2;color:oklch(.24 .03 252)}.pv-empty-state-copy{max-width:36rem;color:oklch(.48 .03 248);font-size:.92rem;line-height:1.65}.pv-surface-card{border:1px solid rgba(42,50,84,.08);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(250,247,241,.94)),radial-gradient(circle at top left,rgba(218,177,116,.14),transparent 18rem);box-shadow:0 24px 80px rgba(26,33,52,.08)}.pv-section-chip{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(210,164,92,.18);background:rgba(255,248,238,.92);color:oklch(.45 .07 55);font-size:.78rem;font-weight:700;letter-spacing:.01em}.pv-hero-card.card{border:1px solid rgba(255,255,255,.65);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(251,247,241,.96)),radial-gradient(circle at top left,rgba(218,177,116,.14),transparent 20rem);box-shadow:0 24px 72px rgba(26,33,52,.08)}.pv-run-panel{background:radial-gradient(circle at top right,rgba(210,164,92,.12),transparent 18rem),linear-gradient(180deg,rgba(41,54,88,1),rgba(24,33,55,1))}.pv-stat-card.card{border:1px solid rgba(42,50,84,.08);background:rgba(249,248,245,.95);box-shadow:inset 0 1px 0 rgba(255,255,255,.64)}.pv-action-card.card{border:1px solid rgba(42,50,84,.08);background:radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 18rem),linear-gradient(180deg,rgba(255,255,255,.94),rgba(249,247,242,.96));box-shadow:0 18px 50px rgba(21,30,49,.06);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.pv-action-card.card:hover{transform:translateY(-4px);border-color:rgba(210,164,92,.2);box-shadow:0 22px 60px rgba(21,30,49,.12)}.pv-quick-btn.btn{border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:white;font-weight:600}.pv-quick-btn.btn:hover{background:rgba(255,255,255,.14);color:white}.pv-sidebar-shell{position:fixed;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;background:radial-gradient(circle at top,rgba(210,164,92,.14),transparent 14rem),linear-gradient(180deg,rgba(31,43,71,.98),rgba(20,29,49,1))}.pv-sidebar-header{border-bottom:1px solid rgba(255,255,255,.08)}.pv-sidebar-close{position:relative;z-index:3}.pv-mobile-nav{border-bottom:1px solid rgba(42,50,84,.08);background:rgba(255,249,241,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.pv-mobile-nav-title{color:oklch(.23 .03 252);font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),sans-serif;font-size:1.02rem;font-weight:700;line-height:1.1}.pv-mobile-nav-copy{color:oklch(.47 .03 248);font-size:.74rem;line-height:1.45}.pv-mobile-nav-toggle{width:2.9rem;height:2.9rem;border:1px solid rgba(42,50,84,.08);border-radius:1rem;background:rgba(255,255,255,.92);color:oklch(.24 .03 252);box-shadow:0 10px 30px rgba(26,33,52,.08)}.pv-sidebar-shell:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.08;background:radial-gradient(circle at top left,rgba(255,255,255,.15),transparent 32rem),linear-gradient(180deg,transparent,rgba(255,255,255,.03))}.pv-sidebar-card.card{border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03)),rgba(255,255,255,.03);color:white;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 44px rgba(8,14,27,.14)}.pv-sidebar-account,.pv-sidebar-context{border:1px solid rgba(255,255,255,.08);border-radius:1.6rem;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025)),rgba(255,255,255,.025);color:white;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 16px 38px rgba(8,14,27,.12);padding:1rem}.pv-sidebar-context-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-radius:1.1rem;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);padding:.75rem .85rem}.pv-brand-mark{display:inline-flex;height:3.65rem;width:3.65rem;align-items:center;justify-content:center;border-radius:1.2rem;background:linear-gradient(145deg,rgba(211,160,94,.95),rgba(241,221,176,.78));box-shadow:0 12px 30px rgba(209,151,74,.25)}.pv-brand-icon{color:oklch(.2 .03 252)}.pv-sidebar-brand{font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),sans-serif;white-space:nowrap;color:white;font-size:1.1rem;font-weight:700;line-height:1}.pv-sidebar-brand-copy{color:rgba(240,234,224,.64);font-size:.8rem}.pv-sidebar-muted{color:rgba(240,234,224,.56)}.pv-sidebar-copy{color:rgba(240,234,224,.68)}.pv-sidebar-workspace-title{color:white;font-size:1.1rem;font-weight:700;line-height:1.08}.pv-status-dot{display:inline-flex;height:.65rem;width:.65rem;border-radius:999px;background:rgba(255,210,125,.92);box-shadow:0 0 0 .2rem rgba(255,210,125,.14)}.pv-sidebar-group{margin-bottom:1.35rem}.pv-sidebar-group-title{color:rgba(255,245,227,.92);font-size:.76rem;font-weight:700;letter-spacing:.01em}.pv-sidebar-group-caption{color:rgba(240,234,224,.5);font-size:.72rem;line-height:1.45}.pv-sidebar-link{border:1px solid transparent;color:rgba(250,247,239,.76);padding-block:.85rem!important;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.pv-sidebar-link:hover{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.05);color:white;transform:translateX(2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.pv-sidebar-link.is-active{border-color:rgba(218,177,116,.34);background:linear-gradient(90deg,rgba(218,177,116,.2),rgba(218,177,116,.06)),rgba(255,255,255,.02);color:white;box-shadow:inset 0 0 0 1px rgba(218,177,116,.12)}.pv-sidebar-link-copy{color:rgba(241,235,225,.56);font-size:.75rem;line-height:1.5;display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.pv-sidebar-link.is-active .pv-sidebar-link-copy,.pv-sidebar-link:hover .pv-sidebar-link-copy{color:rgba(255,250,242,.76)}.pv-sidebar-badge{border-radius:999px;padding:.18rem .55rem;background:rgba(255,255,255,.1);color:rgba(255,248,236,.9);font-size:.62rem;font-weight:700;letter-spacing:.03em;white-space:nowrap}.pv-sidebar-badge,.pv-sidebar-icon{display:inline-flex;align-items:center;justify-content:center}.pv-sidebar-icon{height:2.35rem;width:2.35rem;border-radius:.95rem;background:rgba(255,255,255,.06);color:rgba(250,247,239,.8);transition:background-color .16s ease,color .16s ease}.pv-sidebar-link.is-active .pv-sidebar-icon,.pv-sidebar-link:hover .pv-sidebar-icon{background:rgba(218,177,116,.18);color:white}.pv-page-header.card{border:1px solid rgba(255,255,255,.7);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,246,239,.96)),radial-gradient(circle at top left,rgba(218,177,116,.12),transparent 18rem);box-shadow:0 20px 64px rgba(26,33,52,.08)}.pv-page-kicker{color:oklch(.48 .06 55);font-size:.82rem;letter-spacing:.01em}.pv-page-title{color:oklch(.22 .03 252);line-height:1.08;text-wrap:balance}.pv-page-title-xl{font-size:clamp(1.95rem,3.4vw,3rem);font-weight:700}.pv-page-copy-lg{font-size:.96rem}.pv-login-title{max-width:14ch;font-size:clamp(2.15rem,4.6vw,3.8rem);line-height:1.08}.pv-page-copy{color:oklch(.47 .03 248);line-height:1.62;text-wrap:pretty}.pv-data-shell.card{border:1px solid rgba(42,50,84,.08);background:rgba(255,255,255,.9);box-shadow:0 18px 50px rgba(21,30,49,.06)}.pv-toolbar{background:rgba(248,246,242,.8);border-bottom:1px solid rgba(42,50,84,.06)}.pv-table thead th{border-bottom-color:rgba(42,50,84,.08);color:oklch(.49 .03 250);font-size:.78rem;font-weight:700;letter-spacing:.03em}.pv-table tbody td{color:oklch(.36 .03 250);border-bottom-color:rgba(42,50,84,.06);vertical-align:middle}.pv-table tbody tr:hover{background:rgba(45,58,94,.02)}.pv-filter-select.form-select,.pv-search-field.form-control{border-color:rgba(42,50,84,.12);border-radius:1rem;min-height:2.9rem;box-shadow:none}.pv-filter-select.form-select:focus,.pv-search-field.form-control:focus{border-color:rgba(210,164,92,.52);box-shadow:0 0 0 .24rem rgba(210,164,92,.14)}.pv-input-group .input-group-text{border-color:rgba(42,50,84,.12);border-radius:1rem 0 0 1rem;background:white}.pv-input-group .pv-search-field.form-control{border-left:0;border-radius:0 1rem 1rem 0}.pv-form-label{color:oklch(.42 .03 248);font-size:.8rem;font-weight:700;text-transform:none}.pv-dialog-note{border:1px solid rgba(210,164,92,.16);background:rgba(255,249,239,.9);color:oklch(.42 .03 248);border-radius:1.35rem;font-size:.875rem;line-height:1.625}.pv-empty-state{color:oklch(.5 .03 248)}.pv-dialog-surface{display:flex;flex-direction:column;min-height:0;max-height:min(92dvh,980px);overflow:hidden;border:1px solid rgba(42,50,84,.1);background:radial-gradient(circle at top left,rgba(218,177,116,.12),transparent 26rem),linear-gradient(180deg,rgba(255,252,247,.98),rgba(255,255,255,.98));box-shadow:0 40px 120px rgba(16,24,40,.18)}.pv-bootstrap-modal{background:rgba(17,24,39,.24);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pv-modal-close{position:absolute;right:1rem;top:1rem;z-index:2;border-radius:999px;background-color:rgba(255,255,255,.78);box-shadow:0 10px 24px rgba(21,30,49,.12)}.pv-modal-sm{max-width:460px}.pv-modal-md{max-width:520px}.pv-modal-md-wide{max-width:560px}.pv-modal-lg{max-width:720px}.pv-modal-xl{max-width:840px}.pv-modal-xxl{max-width:920px}.pv-dialog-header{position:relative;z-index:1;flex-shrink:0;border-bottom:1px solid rgba(42,50,84,.08);background:radial-gradient(circle at top left,rgba(76,120,211,.1),transparent 24rem),linear-gradient(180deg,rgba(255,250,245,1),rgba(255,255,255,.96))}.pv-dialog-kicker{color:oklch(.5 .03 250);font-size:.78rem;font-weight:700;letter-spacing:.01em;text-transform:none}.pv-dialog-title{color:oklch(.22 .03 252);line-height:1.12;text-wrap:balance}.pv-dialog-copy{color:oklch(.45 .03 248);text-wrap:pretty}.pv-form-grid{display:grid;gap:1rem}.pv-form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-form-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.pv-field{display:flex;flex-direction:column;gap:.5rem}.pv-input,.pv-select,.pv-textarea{width:100%;border:1px solid rgba(42,50,84,.12);border-radius:1rem;background:white;color:oklch(.24 .03 252);box-shadow:none;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.pv-input,.pv-select{min-height:2.9rem;padding:.65rem 1rem;font-size:.92rem}.pv-textarea{min-height:8rem;padding:.85rem 1rem;font-size:.92rem;resize:vertical}.pv-input:focus,.pv-select:focus,.pv-textarea:focus{border-color:rgba(210,164,92,.52);box-shadow:0 0 0 .24rem rgba(210,164,92,.14)}.pv-dialog-footer{position:relative;z-index:1;flex-shrink:0;border-top:1px solid rgba(42,50,84,.08);background:rgba(255,252,247,.98)}.pv-confirm-footer{gap:.75rem}.pv-dialog-surface>form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.pv-dialog-scaffold{display:flex;flex:1 1 auto;max-height:inherit;min-height:0;flex-direction:column}.pv-dialog-form{display:flex;flex:1 1 auto;min-height:0}.pv-dialog-body{display:grid;flex:1 1 auto;gap:1.25rem;min-height:0;padding:1.25rem;overflow-y:auto;overscroll-behavior:contain;align-content:start}.pv-dialog-body.has-aside{grid-template-columns:minmax(0,1fr)}.pv-dialog-main{min-height:0;min-width:0}.pv-dialog-side{display:grid;gap:1rem;min-height:0;align-content:start}.pv-dialog-summary-card{height:100%}.pv-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;border-radius:1rem;background:oklch(.31 .07 252);color:white;font-size:.92rem;font-weight:700;transition:background-color .16s ease,opacity .16s ease}.pv-btn-primary:hover{background:oklch(.27 .07 252)}.pv-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;border:1px solid rgba(42,50,84,.12);border-radius:1rem;background:white;color:oklch(.28 .03 252);font-size:.92rem;font-weight:700;transition:background-color .16s ease}.pv-btn-secondary:hover{background:rgba(42,50,84,.03)}.pv-btn-danger-soft{gap:.5rem;min-height:3rem;border:1px solid rgba(186,69,69,.18);border-radius:1rem;background:rgba(255,243,243,.92);color:oklch(.49 .13 24);font-size:.92rem;font-weight:700}.pv-btn-danger-soft,.pv-mini-trigger{display:inline-flex;align-items:center;justify-content:center}.pv-mini-trigger{height:2rem;width:2rem;border-radius:.8rem;border:1px solid rgba(42,50,84,.08);background:white;color:oklch(.46 .03 248);transition:border-color .16s ease,background-color .16s ease,color .16s ease}.pv-mini-trigger:hover{border-color:rgba(210,164,92,.26);background:rgba(255,249,239,.92);color:oklch(.44 .07 55)}.pv-add-trigger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.9rem;border-radius:1rem;padding-inline:1.1rem;font-size:.9rem;font-weight:700}.pv-soft-panel{border:1px solid rgba(42,50,84,.08);border-radius:1.35rem;background:rgba(249,248,245,.95)}.pv-sidebar-spotlight{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;border-radius:1.4rem;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);padding:.9rem 1rem}.pv-sidebar-user-grid{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(0,1fr))}.pv-sidebar-permission-pill{border:1px solid rgba(255,255,255,.08);border-radius:1rem;background:rgba(255,255,255,.04);padding:.58rem .68rem;color:rgba(245,239,229,.88);font-size:.71rem;line-height:1.35}.pv-sidebar-permission-pill strong{display:block;margin-top:.12rem;color:white;font-size:.8rem;font-weight:700}.offcanvas.pv-sidebar-shell{width:var(--pv-sidebar-width);border-right:1px solid rgba(255,255,255,.08);box-shadow:16px 0 60px rgba(19,31,56,.22)}.pv-sidebar-footer{border-top-color:rgba(255,255,255,.08)!important}@media (min-width:992px){.pv-mobile-nav{display:none!important}.offcanvas.pv-sidebar-shell{position:fixed;inset:0 auto 0 0;visibility:visible!important;transform:none!important;z-index:1030}.offcanvas-backdrop{display:none!important}.pv-app-main{padding-top:0;width:calc(100% - (var(--pv-sidebar-width) + 1rem));margin-left:calc(var(--pv-sidebar-width) + 1rem)}.pv-app-content{padding:1rem 1rem 3.25rem}}@media (min-width:1200px){.pv-app-content{padding-inline:1.25rem}}.pv-sidebar-shell nav::-webkit-scrollbar{width:.45rem}.pv-sidebar-shell nav::-webkit-scrollbar-track{background:transparent}.pv-sidebar-shell nav::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(255,255,255,.15)}.pv-metric-card{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(248,245,239,.94)),radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 14rem)}.pv-metric-card,.pv-page-stat{border:1px solid rgba(42,50,84,.08);border-radius:1.55rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.64)}.pv-page-stat{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,245,239,.96)),radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 14rem);min-height:7.4rem;padding:1rem 1.1rem}.pv-page-stat[data-tone=accent]{background:linear-gradient(180deg,rgba(255,250,243,.96),rgba(255,255,255,.98)),radial-gradient(circle at top left,rgba(210,164,92,.14),transparent 14rem)}.pv-page-stat[data-tone=info]{background:linear-gradient(180deg,rgba(246,249,255,.96),rgba(255,255,255,.98)),radial-gradient(circle at top left,rgba(76,120,211,.12),transparent 14rem)}.pv-page-stat[data-tone=success]{background:linear-gradient(180deg,rgba(244,251,247,.96),rgba(255,255,255,.98)),radial-gradient(circle at top left,rgba(46,133,92,.12),transparent 14rem)}.pv-metric-eyebrow{color:oklch(.49 .03 250);font-size:.78rem;font-weight:700;letter-spacing:.01em}.pv-metric-value{color:oklch(.22 .03 252);line-height:1.14;overflow-wrap:anywhere;text-wrap:balance}.pv-dark-panel{border-radius:2rem;background:radial-gradient(circle at top right,rgba(210,164,92,.12),transparent 18rem),linear-gradient(180deg,rgba(41,54,88,1),rgba(24,33,55,1))}.pv-dark-panel-card{border:1px solid rgba(255,255,255,.12);border-radius:1.8rem;background:rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.pv-dark-signal{border:1px solid rgba(255,255,255,.1);border-radius:1.2rem;background:rgba(255,255,255,.04)}.pv-action-grid{display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr)}.pv-action-grid>*{min-width:0}.pv-action-grid .pv-action-grid-span{grid-column:1/-1}.pv-kpi-tile{border:1px solid rgba(42,50,84,.08);border-radius:1.4rem;background:rgba(249,248,245,.96);min-height:7.2rem}.pv-kpi-value{line-height:1.15;overflow-wrap:anywhere;text-wrap:balance}.pv-data-code{display:inline-flex;align-items:center;border-radius:.85rem;border:1px solid rgba(42,50,84,.08);background:rgba(249,248,245,.95);padding:.35rem .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.76rem;font-weight:700;color:oklch(.33 .03 252)}.pv-icon-tile{height:2.25rem;width:2.25rem;border-radius:.9rem;border:1px solid rgba(42,50,84,.06);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(247,244,238,.96)),radial-gradient(circle at top left,rgba(210,164,92,.12),transparent 10rem);color:oklch(.39 .04 252);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.pv-chip,.pv-icon-tile{display:inline-flex;align-items:center;justify-content:center}.pv-chip{gap:.35rem;border-radius:999px;padding:.32rem .7rem;font-size:.73rem;line-height:1;border:1px solid rgba(42,50,84,.08);white-space:nowrap}.pv-chip-neutral{background:rgba(249,248,245,.95);color:oklch(.34 .03 252)}.pv-chip-accent{background:rgba(255,249,239,.95);border-color:rgba(210,164,92,.16);color:oklch(.47 .07 55)}.pv-chip-info{background:rgba(243,247,255,.95);border-color:rgba(76,120,211,.12);color:oklch(.4 .08 250)}.pv-chip-success{background:rgba(241,251,246,.95);border-color:rgba(46,133,92,.12);color:oklch(.48 .08 156)}.pv-chip-danger{background:rgba(255,243,243,.95);border-color:rgba(186,69,69,.12);color:oklch(.49 .13 24)}.pv-toolbar-note{color:oklch(.5 .03 248);font-size:.84rem;line-height:1.5}.pv-action-icon{display:inline-flex;align-items:center;justify-content:center;height:2.2rem;min-width:2.2rem;border-radius:.85rem;border:1px solid rgba(42,50,84,.08);background:white;color:oklch(.45 .03 248);transition:background-color .16s ease,color .16s ease,border-color .16s ease}.pv-action-icon:hover{background:rgba(255,249,239,.95);border-color:rgba(210,164,92,.2);color:oklch(.44 .07 55)}.pv-entity-list{display:grid;gap:.65rem}.pv-entity-list-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid rgba(42,50,84,.08);border-radius:1rem;background:rgba(255,255,255,.82);padding:.85rem .95rem}[data-slot=dialog-content]:not(.pv-dialog-surface){border:1px solid rgba(42,50,84,.1);background:radial-gradient(circle at top left,rgba(218,177,116,.08),transparent 24rem),linear-gradient(180deg,rgba(255,252,247,.98),rgba(255,255,255,.98));box-shadow:0 36px 110px rgba(16,24,40,.16)}[data-slot=dialog-content] [data-slot=dialog-title]{color:oklch(.22 .03 252);font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),sans-serif;font-size:1.45rem;font-weight:700;letter-spacing:-.02em;line-height:1.12;text-wrap:balance}[data-slot=dialog-content] label{color:oklch(.42 .03 248);font-size:.8rem;font-weight:700;letter-spacing:.01em!important;text-transform:none!important}[data-slot=dialog-content] input:not([type=hidden]),[data-slot=dialog-content] select,[data-slot=dialog-content] textarea{width:100%;border:1px solid rgba(42,50,84,.12);border-radius:1rem;background:white;box-shadow:none;color:oklch(.24 .03 252)}[data-slot=dialog-content] input:not([type=hidden]),[data-slot=dialog-content] select{min-height:2.9rem;padding-inline:1rem}[data-slot=dialog-content] textarea{min-height:8rem;padding:.85rem 1rem}[data-slot=dialog-content] input:not([type=hidden]):focus,[data-slot=dialog-content] select:focus,[data-slot=dialog-content] textarea:focus{border-color:rgba(210,164,92,.52);box-shadow:0 0 0 .24rem rgba(210,164,92,.14);outline:none}@media (max-width:767.98px){.pv-form-grid.three-col,.pv-form-grid.two-col{grid-template-columns:minmax(0,1fr)}}@media (min-width:768px){.pv-page-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pv-page-stats-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.pv-page-toolbar{align-items:center;flex-direction:row;justify-content:space-between}.pv-dialog-body.has-aside{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)}}@media (min-width:1200px){.pv-page-hero-grid.has-aside{grid-template-columns:minmax(0,1fr) 22rem}.pv-page-hero-main{padding:2rem}.pv-page-hero-rail{border-top:0;border-left:1px solid rgba(42,50,84,.08);padding:1.5rem}.pv-page-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pv-page-hero.is-workspace .pv-page-hero-main{padding:1.55rem 1.7rem}.pv-page-hero.is-workspace .pv-page-hero-rail{padding:1.15rem}}@keyframes shimmer-slide{to{transform:translateX(100%)}}@keyframes pv-loading-indeterminate{0%{transform:translateX(-130%)}to{transform:translateX(330%)}}@keyframes pv-loading-pulse{0%,to{transform:scale(.92);box-shadow:0 0 0 0 rgba(210,164,92,.28)}50%{transform:scale(1);box-shadow:0 0 0 .4rem rgba(210,164,92,0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.pv-shell-loading-bar:after{width:100%;transform:none}.pv-shell-loading-dot{transform:none;box-shadow:none}}@media (min-width:1024px){*{scrollbar-width:thin;scrollbar-color:rgba(78,90,118,.3) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(78,90,118,.28);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:rgba(78,90,118,.42);background-clip:padding-box}}@media print{aside{display:none!important}main{margin-left:0!important}body{background:white!important}}.pv-btn-primary{box-shadow:0 2px 8px rgba(46,70,111,.18),inset 0 1px 0 rgba(255,255,255,.08);letter-spacing:.01em}.pv-btn-primary:hover:not(:disabled){background:oklch(.26 .07 252);box-shadow:0 6px 20px rgba(46,70,111,.32),inset 0 1px 0 rgba(255,255,255,.08)}.pv-btn-primary:disabled{opacity:.6;cursor:not-allowed}.pv-btn-secondary:hover:not(:disabled){border-color:rgba(210,164,92,.32);background:rgba(255,252,246,.98);color:oklch(.26 .03 252)}.pv-action-card.card{cursor:pointer}.pv-action-card.card:hover{transform:translateY(-6px);border-color:rgba(210,164,92,.3);box-shadow:0 32px 80px rgba(21,30,49,.14)}.pv-page-stat{transition:transform .2s ease,box-shadow .2s ease}.pv-stat-has-tooltip{position:relative;cursor:help}.pv-stat-has-tooltip:after{content:attr(data-tooltip);bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);background:oklch(.18 .025 255);color:#fff;font-size:.72rem;font-weight:400;padding:.35rem .75rem;border-radius:.5rem;white-space:nowrap;max-width:220px;text-align:center;white-space:normal;word-break:keep-all;transition:opacity .14s ease,transform .14s ease;box-shadow:0 4px 16px rgba(0,0,0,.18)}.pv-stat-has-tooltip:after,.pv-stat-has-tooltip:before{position:absolute;left:50%;pointer-events:none;opacity:0;z-index:9998}.pv-stat-has-tooltip:before{content:"";bottom:calc(100% + 3px);transform:translateX(-50%);border:5px solid transparent;border-top-color:oklch(.18 .025 255);transition:opacity .14s ease}.pv-stat-has-tooltip:focus-visible:after,.pv-stat-has-tooltip:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}.pv-stat-has-tooltip:focus-visible:before,.pv-stat-has-tooltip:hover:before{opacity:1}.pv-metric-card{transition:box-shadow .2s ease,transform .2s ease}.pv-table tbody tr{transition:background-color .12s ease}.pv-table tbody tr:hover{background:rgba(45,58,94,.03)!important}.pv-table thead th{font-size:.76rem;letter-spacing:.04em;text-transform:uppercase;padding-block:1rem}.pv-table tbody td{padding-block:1rem}.pv-input:focus,.pv-select:focus,.pv-textarea:focus{border-color:rgba(210,164,92,.6);box-shadow:0 0 0 .2rem rgba(210,164,92,.16),0 1px 4px rgba(210,164,92,.1);background:rgba(255,253,248,.98)}.pv-sidebar-link{border-radius:1.2rem!important}.pv-sidebar-link.is-active{background:linear-gradient(90deg,rgba(218,177,116,.24),rgba(218,177,116,.08)),rgba(255,255,255,.03)!important;border-color:rgba(218,177,116,.4)!important}.pv-sidebar-link.is-active .pv-sidebar-icon{background:rgba(218,177,116,.22);color:rgba(255,224,163,1);box-shadow:0 0 0 1px rgba(218,177,116,.14)}.pv-brand-mark{box-shadow:0 12px 30px rgba(209,151,74,.28),inset 0 1px 0 rgba(255,255,255,.22)}.pv-page-hero.card{box-shadow:var(--pv-shadow-panel),inset 0 1px 0 rgba(255,255,255,.82)}.pv-data-card.card{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(252,249,243,.97)),radial-gradient(circle at top left,rgba(218,177,116,.07),transparent 18rem)}.pv-dark-panel{background:radial-gradient(ellipse at top right,rgba(218,177,116,.16),transparent 22rem),radial-gradient(ellipse at bottom left,rgba(76,120,211,.08),transparent 18rem),linear-gradient(160deg,rgba(43,57,94,1),rgba(22,31,52,1))}.pv-action-rail{background:radial-gradient(ellipse at top right,rgba(218,177,116,.16),transparent 20rem),radial-gradient(ellipse at bottom left,rgba(76,120,211,.06),transparent 16rem),linear-gradient(160deg,rgba(43,57,94,1),rgba(22,31,52,1))}.pv-chip{font-size:.72rem;letter-spacing:normal;font-weight:700}.pv-dialog-surface{box-shadow:0 50px 140px rgba(14,22,38,.22),0 0 0 1px rgba(42,50,84,.08)}.pv-dialog-header{flex-direction:column;align-items:flex-start;gap:.25rem;background:radial-gradient(circle at top left,rgba(218,177,116,.1),transparent 22rem),linear-gradient(180deg,rgba(255,252,248,1),rgba(255,255,255,.98))}.pv-empty-state-card{background:radial-gradient(circle at center,rgba(249,248,245,.98),rgba(245,243,238,.98))}.pv-mobile-nav{-webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4);border-bottom-color:rgba(42,50,84,.1)!important}.pv-mobile-nav-toggle{box-shadow:0 4px 12px rgba(26,33,52,.1),inset 0 1px 0 rgba(255,255,255,.9)}.pv-page-kicker{color:oklch(.46 .07 55);font-size:.8rem;font-weight:700;letter-spacing:.02em}.pv-page-toolbar{background:rgba(250,248,244,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pv-section-chip{border-radius:999px}.pv-soft-panel{background:linear-gradient(180deg,rgba(252,250,246,.98),rgba(248,246,240,.98))}.pv-data-code{font-size:.74rem;letter-spacing:.02em}.pv-action-icon{transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.pv-action-icon:hover{box-shadow:0 4px 12px rgba(210,164,92,.14)}.pv-skip-link{background:oklch(.31 .07 252);box-shadow:0 8px 24px rgba(20,28,45,.22)}.pv-alert-panel{border-radius:1.65rem}@media (min-width:1400px){.pv-app-content{padding-inline:1.75rem}:root{--pv-sidebar-width:20rem}}.pv-timetable-day-row:hover .pv-timetable-day-label{background:rgba(247,245,240,1)}details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}details{transition:box-shadow .2s ease}details[open]{box-shadow:0 20px 60px rgba(21,30,49,.07)}.pv-filter-form select:focus{border-color:oklch(.54 .07 55);box-shadow:0 0 0 3px oklch(.54 .07 55/.14)}.pv-preflight-card{transition:background-color .16s ease,box-shadow .2s ease,transform .16s ease}.pv-preflight-card:hover{transform:translateY(-2px)}.pv-section-heading{font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.3;color:oklch(.22 .03 252);margin-bottom:0}.pv-dark-score{background:rgba(218,177,116,.14);border:1px solid rgba(218,177,116,.22);border-radius:1.2rem;padding:.85rem 1rem;min-width:6rem}.pv-studio-banner-success{border-color:rgba(46,133,92,.18);background:rgba(241,251,246,.95);color:oklch(.36 .08 156);box-shadow:0 14px 32px rgba(21,30,49,.04)}.pv-studio-banner-error{border-color:rgba(186,69,69,.18);background:rgba(255,243,243,.95);color:oklch(.49 .15 24);box-shadow:0 14px 32px rgba(21,30,49,.04)}.pv-studio-banner{animation:slide-in-banner .3s cubic-bezier(.16,1,.3,1)}@keyframes slide-in-banner{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pv-live-pulse{0%,to{box-shadow:0 0 0 0 oklch(.55 .16 156/0)}50%{box-shadow:0 0 0 6px oklch(.55 .16 156/.12)}}.pv-slot-list-card-selected{ring:2px solid oklch(.54 .07 55/.3)}.pv-data-shell{box-shadow:0 2px 12px rgba(21,30,49,.05),inset 0 1px 0 rgba(255,255,255,.9)}.pv-auto-refresh-shell{gap:.5rem;-webkit-user-select:none;user-select:none}.pv-auto-refresh-shell-default{border:1px solid rgba(42,50,84,.08);border-radius:999px;background:white;padding:.5rem .75rem;box-shadow:0 10px 28px rgba(21,30,49,.08);font-size:.8rem}.pv-auto-refresh-shell-compact{border:1px solid rgba(255,255,255,.14);border-radius:1rem;background:rgba(255,255,255,.06);padding:.55rem .7rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);font-size:.78rem}.pv-auto-refresh-shell-compact .btn-outline-light{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.18)}.pv-auto-refresh-shell-compact .btn-outline-light:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}.pv-auto-refresh-shell-compact .btn-link{color:rgba(255,255,255,.82)}.pv-auto-refresh-shell-compact .btn-link:hover{color:#fff}.pv-auto-refresh-label{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.pv-auto-refresh-shell-compact .pv-auto-refresh-label{max-width:132px}.pv-filter-form select{cursor:pointer}.pv-studio-view-switch .btn{flex:1 1 9rem;min-height:2.9rem;border-radius:1rem;font-weight:600}.pv-studio-view-switch .btn-secondary{box-shadow:0 14px 28px rgba(76,120,211,.14)}.pv-studio-view-switch .btn-outline-secondary{background:rgba(255,255,255,.82)}.pv-studio-view-switch .btn-outline-secondary:hover{background:rgba(249,248,245,.98)}.pv-modal-dialog-form .modal-content{display:flex;flex:1 1 auto;height:100%;max-height:none}.pv-schedule-dialog .pv-dialog-footer{position:sticky;bottom:0;box-shadow:0 -16px 32px rgba(21,30,49,.06)}.pv-assignment-dialog{max-width:min(94vw,920px);width:100%}.pv-assignment-dialog .pv-dialog-footer{position:sticky;bottom:0;box-shadow:0 -16px 32px rgba(21,30,49,.06)}.pv-dialog-preview-table{overflow:auto;max-height:min(34dvh,20rem)}.pv-modal-dialog-form{display:flex;align-items:stretch;width:min(94vw,920px);max-width:920px;min-height:calc(100dvh - 2rem);height:calc(100dvh - 2rem);margin:1rem auto}.pv-assignment-dialog .pv-dialog-main,.pv-schedule-dialog .pv-dialog-main{display:grid;align-content:start}.pv-assignment-dialog-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:1rem}.pv-assignment-dialog-icon,.pv-assignment-dialog-icon-accent{background:rgba(76,120,211,.1);color:oklch(.4 .08 250)}.pv-assignment-dialog-icon-warm{background:rgba(210,164,92,.14);color:oklch(.47 .07 55)}.pv-assignment-dialog-context-panel{border:1px solid rgba(42,50,84,.08);border-radius:1.1rem;padding:.95rem 1rem;background:rgba(255,255,255,.78)}.pv-input-icon{border:1px solid rgba(42,50,84,.12);border-right:0;border-radius:1rem 0 0 1rem;background:white;color:oklch(.46 .03 248)}.pv-input-icon+.pv-input.form-control{border-left:0;border-radius:0 1rem 1rem 0}@media (max-width:767.98px){.pv-modal-dialog-form{margin:0;width:100%;min-height:100dvh;height:100dvh}.pv-modal-dialog-form .modal-content{min-height:100dvh;max-height:100dvh;border-radius:0;border-inline:0;border-bottom:0}.pv-assignment-dialog .pv-dialog-footer,.pv-assignment-dialog .pv-dialog-header,.pv-schedule-dialog .pv-dialog-footer,.pv-schedule-dialog .pv-dialog-header{padding-inline:1rem!important}.pv-assignment-dialog .pv-dialog-footer,.pv-schedule-dialog .pv-dialog-footer{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.pv-assignment-dialog .pv-dialog-body,.pv-schedule-dialog .pv-dialog-body{padding:1rem}.pv-dialog-summary-card{height:auto}.pv-assignment-dialog .pv-dialog-title,.pv-schedule-dialog .pv-dialog-title{font-size:1.75rem}.pv-studio-view-switch .btn{flex-basis:100%}}.pv-dark-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.7rem 1.25rem;border-radius:1rem;font-size:.875rem;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.13);cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease;background:rgba(255,255,255,.07);text-decoration:none;text-align:center;letter-spacing:.01em}.pv-dark-btn:hover:not(:disabled){background:rgba(255,255,255,.12);color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.18)}.pv-dark-btn:disabled{opacity:.48;cursor:not-allowed}.pv-dark-btn-primary{background:rgba(218,177,116,.2);border-color:rgba(218,177,116,.22)}.pv-dark-btn-primary:hover:not(:disabled){background:rgba(218,177,116,.28);color:#fff;box-shadow:0 4px 16px rgba(218,177,116,.2)}.pv-dark-btn-navy{background:rgba(48,66,110,.65);border-color:rgba(255,255,255,.1)}.pv-dark-btn-navy:hover:not(:disabled){background:rgba(42,58,96,.82);color:#fff}.pv-dark-btn-danger{background:rgba(180,58,58,.18);border-color:rgba(255,100,100,.15)}.pv-dark-btn-danger:hover:not(:disabled){background:rgba(180,58,58,.28);color:#fff}.pv-studio-command-card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,245,239,.96)),radial-gradient(circle at top right,rgba(210,164,92,.08),transparent 18rem)}.pv-studio-command-card .btn{min-height:2.9rem;border-radius:1rem;font-weight:600;box-shadow:none}.pv-studio-command-card .btn-secondary{box-shadow:0 14px 28px rgba(76,120,211,.14)}.pv-studio-command-card .btn-primary{box-shadow:0 14px 28px rgba(46,70,111,.22)}.pv-studio-command-card .btn-outline-danger,.pv-studio-command-card .btn-outline-primary,.pv-studio-command-card .btn-outline-secondary{background:rgba(255,255,255,.82)}.pv-studio-command-card .btn-outline-primary:hover,.pv-studio-command-card .btn-outline-secondary:hover{background:rgba(249,248,245,.98)}.pv-studio-command-card .btn-outline-danger:hover{background:rgba(255,243,243,.96)}.pv-studio-rail-actions .btn{min-height:2.9rem;border-radius:1rem;font-weight:600}.pv-studio-rail-actions .btn-outline-light{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.16)}.pv-studio-rail-actions .btn-outline-light:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.22)}.pv-studio-rail-actions .btn-outline-danger{border-color:rgba(255,143,143,.5);color:rgba(255,224,224,.96)}.pv-studio-rail-actions .btn-outline-danger:hover{background:rgba(186,69,69,.18);border-color:rgba(255,143,143,.62);color:#fff}.pv-studio-rail-warning{color:rgba(255,224,172,.96)}.pv-schedule-grid-shell{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,244,.98)),radial-gradient(circle at top right,rgba(210,164,92,.06),transparent 18rem)}.pv-schedule-grid-row{background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(255,255,255,.42));overflow:hidden}.pv-schedule-cell{position:relative;flex-shrink:0;border-right:1px solid rgba(42,50,84,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);pointer-events:none}.pv-schedule-cell[data-cell-popover=true]{pointer-events:auto;cursor:help}.pv-schedule-cell[data-cell-popover=true]:focus-visible{outline:2px solid rgba(70,108,198,.42);outline-offset:-2px;z-index:2}.pv-schedule-cell-free{background:rgba(220,245,226,.98)}.pv-schedule-cell-blocked{background:rgba(223,236,252,.98)}.pv-schedule-cell-occupied{background:rgba(239,244,249,.98)}.pv-schedule-cell-occupied-hidden{background:rgba(232,239,247,.96)}.pv-schedule-cell-current{background:rgba(255,245,220,.96)}.pv-schedule-cell-system{background:rgba(245,240,230,.96)}.pv-schedule-cell-label{position:absolute;inset-inline:.35rem;bottom:.45rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:.68rem;font-weight:700;letter-spacing:-.01em;line-height:1.1}.pv-schedule-cell-label-free{color:oklch(.47 .09 154)}.pv-schedule-cell-label-blocked{color:oklch(.47 .07 240)}.pv-schedule-cell-label-occupied{color:oklch(.46 .06 240)}.pv-schedule-cell-label-current{color:oklch(.48 .08 70)}.pv-schedule-cell-label-system{color:oklch(.44 .03 70)}.pv-slot-card{position:absolute;overflow:hidden;border-radius:1.15rem;border:1px solid rgba(42,50,84,.08);text-align:left;box-sizing:border-box;padding:.62rem .68rem;contain:layout paint;transition:transform .16s cubic-bezier(.2,0,0,1),box-shadow .16s cubic-bezier(.2,0,0,1);box-shadow:0 12px 28px rgba(32,38,52,.08);background:linear-gradient(180deg,rgba(247,250,255,1),rgba(255,255,255,1))}.pv-slot-card-manual{border-color:rgba(210,164,92,.32);background:linear-gradient(180deg,rgba(255,250,240,1),rgba(255,255,255,1))}.pv-slot-card-selected{z-index:10;box-shadow:0 16px 40px rgba(28,36,54,.14);outline:2px solid rgba(210,164,92,.28);outline-offset:0}.pv-slot-card-interactive{cursor:grab}.pv-slot-card-interactive:not(.pv-slot-card-selected):hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(32,38,52,.12)}.pv-slot-card-dragging{opacity:.45!important;cursor:grabbing!important;transform:none!important;box-shadow:none!important}.pv-schedule-cell-drag-over{background:rgba(var(--bs-primary-rgb,46,70,111),.18)!important;outline:2px dashed rgba(var(--bs-primary-rgb,46,70,111),.5);outline-offset:-2px}.pv-slot-card-content{display:grid;grid-template-rows:auto 1fr;min-width:0;height:100%}.pv-slot-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem;min-width:0}.pv-slot-card-code{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em;line-height:1.02;color:oklch(.23 .03 252)}.pv-slot-card-lines{display:grid;gap:.18rem;min-width:0;align-content:start;margin-top:.32rem}.pv-slot-card-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.22rem;min-width:0;line-height:1.12}.pv-slot-card-line-label{flex-shrink:0;white-space:nowrap;font-size:.58rem;color:oklch(.36 .03 248)}.pv-slot-card-line-value{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;color:oklch(.43 .03 248)}.pv-slot-card-badge{align-self:flex-start;font-size:.625rem;flex-shrink:0}.pv-slot-card-badge-auto{background:rgba(55,101,186,.1);color:oklch(.4 .08 250)}.pv-slot-card-badge-manual{background:rgba(210,164,92,.14);color:oklch(.47 .07 55)}.pv-slot-card-conflict{border-color:#f97316!important;background-color:#fff7ed!important}.pv-slot-card-conflict .pv-slot-card-code{color:#c2410c}.pv-slot-card-conflict-badge{display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;line-height:1;color:#c2410c;background:rgba(249,115,22,.12);border:1px solid rgba(249,115,22,.25);border-radius:.375rem;padding:.1rem .3rem;flex-shrink:0;cursor:help}.pv-slot-card-mode-compact .pv-slot-card-code{font-size:.82rem}.pv-slot-card-mode-regular .pv-slot-card-code{font-size:.89rem}.pv-slot-card-mode-expanded .pv-slot-card-code{font-size:.95rem}.pv-slot-card-mode-compact{padding:.48rem .52rem}.pv-slot-card-mode-compact .pv-slot-card-lines{gap:.12rem;margin-top:.22rem}.pv-slot-card-mode-compact .pv-slot-card-line-label{font-size:.54rem}.pv-slot-card-mode-compact .pv-slot-card-line-value{font-size:.62rem}.pv-slot-card-mode-expanded .pv-slot-card-lines{gap:.22rem;margin-top:.36rem}.pv-slot-card-mode-expanded .pv-slot-card-line-label{font-size:.6rem}.pv-slot-card-mode-expanded .pv-slot-card-line-value{font-size:.72rem}.pv-schedule-legend{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border-radius:999px;padding:.32rem .7rem;font-size:.73rem;font-weight:700;line-height:1;border:1px solid rgba(42,50,84,.08);white-space:nowrap}.pv-schedule-legend-success{background:rgba(220,245,226,.98);border-color:rgba(46,133,92,.14);color:oklch(.48 .08 156)}.pv-schedule-legend-info{background:rgba(223,236,252,.98);border-color:rgba(76,120,211,.14);color:oklch(.4 .08 250)}.pv-schedule-legend-neutral{background:rgba(239,244,249,.98);border-color:rgba(42,50,84,.08);color:oklch(.34 .03 252)}.pv-schedule-legend-accent{background:rgba(255,249,239,.98);border-color:rgba(210,164,92,.16);color:oklch(.47 .07 55)}.pv-schedule-popover{--bs-popover-max-width:22rem;--bs-popover-border-color:rgba(42,50,84,0.14);--bs-popover-header-bg:rgba(245,239,230,0.96);--bs-popover-header-color:oklch(0.24 0.03 252);--bs-popover-body-padding-x:0.9rem;--bs-popover-body-padding-y:0.85rem;--bs-popover-body-color:oklch(0.38 0.03 248);--bs-popover-bg:rgba(255,255,255,0.98);--bs-popover-box-shadow:0 20px 48px rgba(21,30,49,0.16);--bs-popover-font-size:0.78rem}.pv-schedule-popover .popover-header{font-weight:700}.pv-schedule-popover .popover-body{line-height:1.5}.pv-schedule-popover .popover-body p{color:oklch(.44 .03 248)}.pv-schedule-popover .popover-body hr{border-color:rgba(42,50,84,.08)}.pv-schedule-popover .popover-body ul{margin-bottom:0}.pv-schedule-popover .popover-body li+li{margin-top:.65rem}.pv-schedule-popover .popover-body strong{color:oklch(.25 .03 252)}.pv-text-white-soft{color:rgba(255,255,255,.62)}.pv-dark-badge{display:inline-flex;align-items:center;padding:.22rem .75rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.02em;line-height:1.4}.pv-assignments-overview{display:grid;gap:1rem;border:1px solid rgba(42,50,84,.08);border-radius:1.7rem;padding:1.1rem 1.2rem;background:radial-gradient(circle at top right,rgba(210,164,92,.1),transparent 16rem),linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,245,239,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.74)}.pv-assignment-department-card{display:grid;gap:1.4rem;border:1px solid rgba(42,50,84,.08);border-radius:1.9rem;padding:1.2rem;background:radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 18rem),linear-gradient(180deg,rgba(255,255,255,.96),rgba(249,247,242,.98));box-shadow:0 18px 48px rgba(21,30,49,.06)}.pv-assignment-department-head{display:grid;gap:.9rem}.pv-assignment-branch-card{display:grid;gap:1rem;border:1px solid rgba(42,50,84,.08);border-radius:1.55rem;padding:1rem;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(251,248,243,.98)),radial-gradient(circle at top left,rgba(86,125,191,.05),transparent 14rem);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.pv-assignment-branch-head{display:grid;gap:.95rem}.pv-assignment-branch-summary{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(8.25rem,1fr))}.pv-assignment-branch-stat{display:grid;gap:.2rem;border:1px solid rgba(42,50,84,.08);border-radius:1rem;padding:.7rem .8rem;background:rgba(255,255,255,.74);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.pv-assignment-branch-stat strong{font-size:1rem;font-weight:700;color:rgba(21,30,49,.92)}.pv-assignment-group-accordion{display:grid;gap:.8rem}.pv-assignment-group-card{overflow:hidden;border:1px solid rgba(42,50,84,.08);border-radius:1.3rem;background:radial-gradient(circle at top right,rgba(210,164,92,.08),transparent 12rem),linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,247,242,.98));box-shadow:0 10px 24px rgba(21,30,49,.04)}.pv-assignment-group-head{display:grid;gap:.8rem;padding:.8rem}.pv-assignment-group-trigger{gap:.8rem;padding:.45rem .5rem;border-radius:1rem;background:transparent!important;box-shadow:none!important;color:inherit!important;align-items:flex-start}.pv-assignment-group-trigger:not(.collapsed){background:rgba(255,255,255,.46)!important}.pv-assignment-group-trigger:focus{box-shadow:none!important}.pv-assignment-group-trigger:after{margin-top:.35rem}.pv-assignment-group-summary{display:grid;gap:.55rem;width:100%;min-width:0}.pv-assignment-group-summary-rail{display:flex;flex-wrap:wrap;gap:.45rem}.pv-assignment-summary-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;border:1px solid rgba(42,50,84,.09);padding:.32rem .62rem;background:rgba(255,255,255,.7);color:rgba(64,74,102,.84);font-size:.78rem;line-height:1.2}.pv-assignment-group-actions{display:flex;align-items:flex-start;justify-content:flex-start}.pv-assignment-group-panel{display:grid;gap:.75rem;padding:0 .8rem .8rem}.pv-assignment-group-empty{border:1px dashed rgba(42,50,84,.14);border-radius:1.1rem;padding:.85rem .95rem;background:radial-gradient(circle at top right,rgba(210,164,92,.08),transparent 12rem),linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,245,239,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.pv-assignment-entry{border:1px solid rgba(42,50,84,.08);border-radius:1.15rem;padding:.82rem .88rem;background:rgba(255,255,255,.96);box-shadow:0 12px 28px rgba(21,30,49,.04)}.pv-assignment-entry-top{display:grid;gap:.75rem}.pv-assignment-entry-main{display:grid;gap:.55rem;min-width:0}.pv-assignment-entry-headline{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem}.pv-assignment-entry-title{display:grid;gap:.18rem;min-width:0;flex:1 1 16rem}.pv-assignment-entry-title>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-assignment-entry-actions{display:flex;align-items:flex-start;gap:.55rem;flex-shrink:0}.pv-assignment-metrics{display:grid;gap:.45rem .75rem;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr))}.pv-assignment-metric{display:grid;gap:.1rem;min-width:0}.pv-assignment-metric .pv-body-sm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-section-kicker{color:oklch(.46 .04 252);font-size:.78rem;font-weight:800;letter-spacing:normal;line-height:1.45}.pv-master-overview{display:grid;gap:1rem;border:1px solid rgba(42,50,84,.08);border-radius:1.7rem;padding:1.1rem 1.2rem;background:radial-gradient(circle at top right,rgba(210,164,92,.1),transparent 16rem),linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,245,239,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.74)}.pv-directory-index{display:grid;gap:.9rem;border:1px solid rgba(42,50,84,.08);border-radius:1.35rem;padding:.95rem;background:rgba(255,255,255,.86);box-shadow:0 14px 34px rgba(21,30,49,.04)}.pv-directory-index-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.45rem 1rem}.pv-directory-index-list{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:thin}.pv-directory-index-item{display:inline-flex;min-width:11rem;max-width:16rem;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid rgba(42,50,84,.08);border-radius:999px;padding:.55rem .55rem .55rem .85rem;color:oklch(.25 .035 252);text-decoration:none;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,244,.95));box-shadow:inset 0 1px 0 rgba(255,255,255,.86);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.pv-directory-index-item:hover{border-color:rgba(210,164,92,.35);color:oklch(.22 .04 252);transform:translateY(-1px);box-shadow:0 12px 26px rgba(21,30,49,.07)}.pv-directory-index-count{flex:0 0 auto;border-radius:999px;padding:.2rem .48rem;background:rgba(46,70,111,.08);color:oklch(.35 .06 252);font-size:.72rem;font-weight:800}.pv-master-accordion{display:grid;gap:1rem;scroll-margin-top:1.5rem}.pv-master-department-card{overflow:hidden;border:1px solid rgba(42,50,84,.08);border-radius:1.9rem;background:radial-gradient(circle at top left,rgba(210,164,92,.08),transparent 18rem),linear-gradient(180deg,rgba(255,255,255,.96),rgba(249,247,242,.98));box-shadow:0 18px 48px rgba(21,30,49,.06)}.pv-master-department-toggle{align-items:flex-start;gap:1rem;padding:1.2rem;background:transparent!important;box-shadow:none!important;color:inherit!important}.pv-master-department-toggle:not(.collapsed){border-bottom:1px solid rgba(42,50,84,.08)}.pv-master-department-toggle:after{margin-top:.35rem}.pv-master-department-head{display:grid;gap:.9rem;width:100%}.pv-department-metrics{display:grid;grid-template-columns:repeat(2,minmax(6rem,1fr));gap:.55rem}.pv-department-metrics span{display:grid;gap:.1rem;border:1px solid rgba(42,50,84,.08);border-radius:1rem;padding:.65rem .75rem;color:oklch(.48 .035 252);background:rgba(255,255,255,.74);font-size:.76rem;font-weight:700}.pv-department-metrics strong{color:oklch(.23 .035 252);font-size:1.18rem;line-height:1}.pv-master-branch-card{border-radius:1.55rem;padding:1rem;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(251,248,243,.98)),radial-gradient(circle at top left,rgba(86,125,191,.05),transparent 14rem);box-shadow:0 1px 4px rgba(21,30,49,.04),inset 0 1px 0 rgba(255,255,255,.9);border:1px solid rgba(42,50,84,.08);border-top:3px solid rgba(46,70,111,.15)}.pv-master-branch-head,.pv-master-shared-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.9rem}.pv-master-item{border:1px solid rgba(42,50,84,.08);border-radius:1.35rem;padding:1rem 1rem 1rem 1.25rem;background:rgba(255,255,255,.97);box-shadow:0 2px 8px rgba(21,30,49,.03),0 12px 28px rgba(21,30,49,.05);position:relative;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.pv-master-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px 0 0 4px;background:linear-gradient(180deg,#2e466f,#4a6fa5)}.pv-master-item--warn:before{background:linear-gradient(180deg,#d97706,#f59e0b)}.pv-master-item--danger:before{background:linear-gradient(180deg,#dc2626,#ef4444)}.pv-master-item:hover{box-shadow:0 4px 16px rgba(21,30,49,.07),0 20px 40px rgba(21,30,49,.08);transform:translateY(-1px)}.pv-master-item-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.pv-master-item-main{flex:1 1 22rem;min-width:0;display:grid;gap:.85rem}.pv-master-item-actions{display:flex;align-items:flex-start;gap:.5rem;flex-shrink:0}.pv-master-item-avatar{width:52px;height:52px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.15rem;color:#fff;background:linear-gradient(135deg,#2e466f,#4a6fa5);box-shadow:0 2px 8px rgba(46,70,111,.25);border:2px solid rgba(255,255,255,.9)}.pv-teacher-row{display:grid;grid-template-columns:auto minmax(18rem,1fr) minmax(11rem,.42fr) minmax(10rem,auto) auto;align-items:center;gap:.8rem;padding:.72rem .82rem .72rem 1rem;background:rgba(255,255,255,.97);border:1px solid rgba(42,50,84,.07);border-radius:1rem;position:relative;overflow:hidden;transition:background .15s ease,box-shadow .15s ease;min-height:4.75rem}.pv-teacher-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px 0 0 3px;background:linear-gradient(180deg,#2e466f,#4a6fa5)}.pv-teacher-row--warn:before{background:linear-gradient(180deg,#d97706,#f59e0b)}.pv-teacher-row--danger:before{background:linear-gradient(180deg,#dc2626,#ef4444)}.pv-teacher-row:hover{background:rgba(46,70,111,.025);box-shadow:0 2px 10px rgba(21,30,49,.07)}.pv-teacher-row-avatar{width:42px;height:42px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;color:#fff;background:linear-gradient(135deg,#2e466f,#4a6fa5);box-shadow:0 1px 4px rgba(46,70,111,.22);border:1.5px solid rgba(255,255,255,.9)}.pv-teacher-row-identity,.pv-teacher-row-workload{min-width:0}.pv-teacher-row-chips{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;justify-content:flex-end}.pv-teacher-row-actions{flex-shrink:0;display:flex;align-items:center;gap:.3rem}.pv-code-badge{display:inline-flex;align-items:center;border:1px solid rgba(42,50,84,.1);border-radius:.55rem;padding:.18rem .44rem;background:rgba(248,249,252,.94);color:oklch(.28 .035 252);font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.72rem;font-weight:800;line-height:1.15}.pv-teacher-skill-list{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.42rem;min-width:0}.pv-subject-skill-badge,.pv-subject-skill-more{display:inline-flex;max-width:13rem;align-items:center;gap:.28rem;border:1px solid rgba(46,70,111,.1);border-radius:.58rem;padding:.2rem .45rem;overflow:hidden;color:oklch(.35 .06 252);background:rgba(46,70,111,.045);font-size:.7rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.pv-subject-skill-badge strong{color:oklch(.28 .055 252)}.pv-subject-skill-more{max-width:none;color:oklch(.48 .07 55);background:rgba(255,249,239,.9);border-color:rgba(210,164,92,.16);font-weight:800}.pv-branch-section{border:1px solid rgba(42,50,84,.08);border-radius:1.35rem;overflow:hidden;background:radial-gradient(circle at top left,rgba(86,125,191,.055),transparent 15rem),linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,247,242,.97));box-shadow:0 14px 34px rgba(21,30,49,.045)}.pv-branch-section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;background:radial-gradient(circle at top right,rgba(210,164,92,.09),transparent 14rem),rgba(255,255,255,.88);border-bottom:1px solid rgba(42,50,84,.07)}.pv-branch-section-body{padding:.7rem;display:grid;gap:.45rem}.pv-branch-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(5.5rem,1fr));gap:.45rem;min-width:min(100%,34rem)}.pv-branch-summary-strip span{display:grid;gap:.08rem;border:1px solid rgba(42,50,84,.08);border-radius:.9rem;padding:.55rem .65rem;color:oklch(.49 .035 252);background:rgba(255,255,255,.72);font-size:.72rem;font-weight:700;line-height:1.25}.pv-branch-summary-strip strong{color:oklch(.24 .035 252);font-size:1rem;line-height:1}.pv-master-shared-card{border:1px solid rgba(42,50,84,.08);border-radius:1.7rem;padding:1.15rem 1.2rem;background:radial-gradient(circle at top right,rgba(86,125,191,.08),transparent 16rem),linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,247,244,.98));box-shadow:0 16px 36px rgba(21,30,49,.05)}.pv-curriculum-plan-card{border:1px solid rgba(42,50,84,.09);border-radius:1.45rem;padding:1rem;background:radial-gradient(circle at top right,rgba(86,125,191,.06),transparent 16rem),linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,245,240,.98));box-shadow:0 14px 32px rgba(21,30,49,.05)}.pv-curriculum-plan-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.pv-curriculum-plan-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:.6rem;flex-shrink:0}.pv-curriculum-plan-empty{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;border:1.5px dashed rgba(210,164,92,.4);border-radius:1rem;padding:1rem 1.15rem;color:oklch(.47 .07 55);background:rgba(255,249,239,.55)}.pv-filter-bar-active{background:radial-gradient(circle at top right,rgba(210,164,92,.07),transparent 14rem),linear-gradient(180deg,rgba(255,249,239,.72),rgba(253,250,244,.82))}@media (min-width:768px){.pv-assignment-department-head,.pv-assignment-group-head,.pv-assignments-overview{grid-template-columns:minmax(0,1fr) auto;align-items:start}.pv-assignment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-master-department-head,.pv-master-overview{grid-template-columns:minmax(0,1fr) auto;align-items:start}}@media (max-width:1199.98px){.pv-teacher-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.pv-teacher-row-actions,.pv-teacher-row-chips,.pv-teacher-row-workload{grid-column:1/-1}.pv-teacher-row-actions,.pv-teacher-row-chips{justify-content:flex-start}.pv-branch-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}}@media (max-width:767.98px){.pv-assignment-branch-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-assignment-group-head{padding:.72rem}.pv-assignment-group-panel{padding:0 .72rem .72rem}.pv-assignment-group-trigger{padding-inline:.35rem}.pv-assignment-entry-actions{justify-content:flex-start}.pv-curriculum-plan-card{padding:.95rem}.pv-curriculum-plan-head{flex-direction:column;align-items:stretch}.pv-curriculum-plan-actions{justify-content:flex-start}.pv-master-branch-card{padding:.85rem}.pv-master-item{padding:.75rem}.pv-master-branch-head,.pv-master-shared-head{flex-direction:column}.pv-directory-index{padding:.8rem}.pv-directory-index-item{min-width:10rem}.pv-branch-summary-strip,.pv-department-metrics{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.pv-branch-section-head{align-items:stretch;flex-direction:column}.pv-teacher-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.pv-teacher-row-actions,.pv-teacher-row-chips,.pv-teacher-row-workload{grid-column:1/-1}.pv-teacher-row-actions,.pv-teacher-row-chips{justify-content:flex-start}}@media (min-width:1200px){.pv-assignment-entry-top{grid-template-columns:minmax(0,1fr) auto;align-items:start}.pv-assignment-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}.pv-workload-summary-bar{display:flex;flex-wrap:wrap;gap:.75rem;padding:1.5rem 1.5rem 1.25rem;border-bottom:1px solid rgba(42,50,84,.08)}.pv-workload-mini-stat{display:flex;flex-direction:column;gap:.25rem;padding:.6rem 1rem;border-radius:.75rem;flex:1 1 7rem;min-width:7rem}.pv-workload-mini-stat-label{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(64,74,102,.72)}.pv-workload-mini-stat-value{font-size:1.25rem;font-weight:700;line-height:1}.pv-workload-mini-stat-unit{font-size:.85rem;font-weight:400}.pv-workload-branch-section{display:grid;gap:.75rem}.pv-workload-branch-divider{display:flex;align-items:center;gap:.75rem}.pv-workload-branch-name{font-size:.9rem;font-weight:600;color:var(--bs-dark);margin:0}.pv-workload-avatar{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.pv-workload-sub-label{font-size:.78rem;color:var(--bs-secondary-color)}.pv-workload-progress{height:6px}.pv-workload-table-th{font-size:.72rem;font-weight:600}.pv-workload-table-td{font-size:.82rem}.pv-workload-table-foot{font-size:.78rem}.pv-workload-chip-sm{font-size:.72rem}.pv-icon-sm{width:1rem;height:1rem;flex-shrink:0}.pv-sidebar-shell{width:min(var(--pv-sidebar-width),calc(100vw - .75rem))}.pv-sidebar-shell .offcanvas-body{min-height:0}.pv-sidebar-shell nav{scroll-padding-block:1rem;scrollbar-gutter:stable}.pv-sidebar-shell .pv-sidebar-account,.pv-sidebar-shell .pv-sidebar-context{border-radius:1.35rem;padding:.92rem}.pv-sidebar-shell .pv-sidebar-context-meta{padding:.65rem .75rem;border-radius:1rem}.pv-sidebar-shell .pv-sidebar-workspace-title{font-size:.98rem}.pv-sidebar-group{margin-bottom:.95rem}.pv-sidebar-section-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.85rem;border:1px solid rgba(255,255,255,.08);border-radius:1.15rem;background:rgba(255,255,255,.03);color:white;text-align:left;padding:.72rem .82rem;margin-bottom:.65rem;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.pv-sidebar-section-trigger:hover{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.11);transform:translateX(1px)}.pv-mobile-nav-toggle:focus-visible,.pv-sidebar-disclosure:focus-visible,.pv-sidebar-section-trigger:focus-visible{outline:none;box-shadow:0 0 0 .15rem rgba(255,255,255,.12),0 0 0 .3rem rgba(210,164,92,.3)}.pv-sidebar-section-count{display:inline-flex;min-width:1.55rem;height:1.55rem;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.1);color:rgba(255,248,236,.88);font-size:.68rem;font-weight:700;line-height:1;padding-inline:.35rem}.pv-sidebar-shell .pv-sidebar-group-title{font-size:.72rem}.pv-sidebar-shell .pv-sidebar-group-caption{font-size:.68rem;line-height:1.4;max-width:24ch}.pv-sidebar-link{padding-block:.72rem!important;min-height:4.2rem}.pv-sidebar-link-copy{-webkit-line-clamp:2;font-size:.72rem;line-height:1.45}.pv-sidebar-disclosure{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.05);color:rgba(255,247,234,.9);font-size:.69rem;font-weight:700;line-height:1;padding:.38rem .68rem;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.pv-sidebar-disclosure:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.14);color:white}.pv-sidebar-account-summary{color:rgba(241,235,225,.72);font-size:.72rem;line-height:1.45}.pv-sidebar-user-grid{gap:.42rem}.pv-sidebar-permission-pill{padding:.52rem .64rem;border-radius:.95rem;font-size:.68rem}.pv-sidebar-permission-pill strong{font-size:.76rem}@media (max-width:1199.98px){.pv-sidebar-shell{width:min(19rem,calc(100vw - .75rem))}.pv-sidebar-shell .pv-sidebar-account,.pv-sidebar-shell .pv-sidebar-context{border-radius:1.2rem;padding:.84rem}.pv-sidebar-shell nav{padding-inline:.75rem!important;padding-bottom:1rem!important}.pv-sidebar-group{margin-bottom:.82rem}.pv-sidebar-section-trigger{padding:.66rem .72rem;margin-bottom:.52rem}.pv-sidebar-link{min-height:3.9rem;padding-block:.68rem!important}}@media (max-width:991.98px){.pv-mobile-nav-copy{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.offcanvas.pv-sidebar-shell{width:min(21rem,calc(100vw - .75rem));max-width:calc(100vw - .75rem)}}@media (min-width:992px) and (max-width:1199.98px){:root{--pv-sidebar-width:17.5rem}}.pv-sidebar-section-trigger{display:none!important}.pv-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;border-bottom:1px solid rgba(255,255,255,.07);position:relative;z-index:2;flex-shrink:0}.pv-brand-mark{width:2.6rem;height:2.6rem;border-radius:.85rem;overflow:hidden}.pv-brand-icon{width:1.2rem;height:1.2rem}.pv-brand-icon-sm{width:.95rem;height:.95rem}.pv-sidebar-ctx-wrap{padding:.75rem .85rem .5rem;flex-shrink:0}.pv-sidebar-context{border:1px solid rgba(255,255,255,.08)!important;border-radius:1.15rem!important;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.025))!important;padding:.8rem!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}.pv-sidebar-ctx-label{color:rgba(255,245,227,.48);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1}.pv-sidebar-workspace-title{font-size:.92rem!important;font-weight:700!important;color:white!important;line-height:1.2!important;margin-top:.35rem;margin-bottom:0}.pv-sidebar-ctx-sub{color:rgba(240,234,224,.6);font-size:.72rem;margin-top:.15rem;margin-bottom:0;line-height:1.35}.pv-sidebar-nav{padding:.5rem .75rem 1rem;scroll-padding-block:.5rem;scrollbar-gutter:stable}.pv-sidebar-nav::-webkit-scrollbar{width:3px}.pv-sidebar-nav::-webkit-scrollbar-track{background:transparent}.pv-sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:999px}.pv-sidebar-favorites{margin-bottom:.75rem;padding:.65rem;border:1px solid rgba(218,177,116,.16);border-radius:1rem;background:linear-gradient(145deg,rgba(218,177,116,.12),rgba(255,255,255,.035))}.pv-sidebar-favorites-title{display:flex;align-items:center;gap:.4rem;margin-bottom:.55rem;color:rgba(255,218,145,.88);font-size:.72rem;font-weight:700;letter-spacing:.01em}.pv-sidebar-favorite-icon,.pv-sidebar-favorites-icon{width:.9rem;height:.9rem;flex-shrink:0}.pv-sidebar-favorites-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.pv-sidebar-favorite-link{display:flex;min-width:0;align-items:center;gap:.38rem;min-height:2.35rem;padding:.45rem .5rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);color:rgba(250,247,239,.78);text-decoration:none!important;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.pv-sidebar-favorite-link.is-active,.pv-sidebar-favorite-link:hover{background:rgba(218,177,116,.16);border-color:rgba(218,177,116,.28);color:#fff}.pv-sidebar-favorite-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;font-weight:700}.pv-sidebar-group{margin-bottom:0}.pv-sidebar-group+.pv-sidebar-group{margin-top:.6rem;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.055)}.pv-sidebar-section-label{margin:0 0 .35rem;padding:.25rem .55rem 0;color:rgba(255,245,227,.42)}.pv-sidebar-section-btn,.pv-sidebar-section-label{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;line-height:1}.pv-sidebar-section-btn{display:flex;align-items:center;gap:.42rem;width:100%;padding:.32rem .55rem;background:none;border:none;color:rgba(255,245,227,.45);cursor:pointer;border-radius:.5rem;transition:color .14s ease,background .14s ease;-webkit-tap-highlight-color:transparent;margin-bottom:.2rem}.pv-sidebar-section-btn:hover{color:rgba(255,245,227,.75);background:rgba(255,255,255,.04)}.pv-sidebar-section-btn.has-active{color:rgba(255,218,145,.75)}.pv-sidebar-section-icon{display:inline-flex;align-items:center;opacity:.7}.pv-sidebar-section-label-text{flex:1 1;text-align:left}.pv-sidebar-group--active>.pv-sidebar-section-btn{color:rgba(255,218,145,.75)}.pv-nav-link--section{font-size:.82rem;font-weight:700;letter-spacing:.01em}.pv-nav-link{display:flex;align-items:center;gap:.62rem;padding:.56rem .65rem;border-radius:.8rem;border:1px solid transparent;color:rgba(250,247,239,.68);text-decoration:none!important;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.pv-nav-link:hover{color:rgba(255,255,255,.95);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08);transform:translateX(2px)}.pv-nav-link.is-active{color:white;background:linear-gradient(100deg,rgba(218,177,116,.22),rgba(218,177,116,.07));border-color:rgba(218,177,116,.36);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transform:none}.pv-nav-icon{display:inline-flex;width:1.9rem;height:1.9rem;align-items:center;justify-content:center;border-radius:.65rem;background:rgba(255,255,255,.06);color:rgba(250,247,239,.72);flex-shrink:0;transition:background-color .14s ease,color .14s ease}.pv-nav-link.is-active .pv-nav-icon,.pv-nav-link:hover .pv-nav-icon{background:rgba(218,177,116,.2);color:rgba(255,218,145,1)}.pv-nav-icon-svg{width:.9rem;height:.9rem}.pv-nav-label{flex:1 1;font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.pv-nav-item-list{gap:.2rem}.pv-nav-pip{width:.4rem;height:.4rem;border-radius:50%;background:rgba(255,210,125,.9);flex-shrink:0;box-shadow:0 0 6px rgba(255,210,125,.45)}.pv-sidebar-footer{padding:.75rem .85rem;border-top:1px solid rgba(255,255,255,.07)!important;flex-shrink:0}.pv-sidebar-account{border:1px solid rgba(255,255,255,.08)!important;border-radius:1.1rem!important;background:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.02))!important;padding:.8rem!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}.pv-sidebar-role-label{font-size:.71rem;margin-top:.1rem}.pv-sidebar-username{font-size:.84rem;font-weight:700;color:white;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.18rem;margin-bottom:0;line-height:1.2}.pv-sidebar-account-summary{color:rgba(241,235,225,.6);font-size:.7rem;line-height:1.4;margin-top:.3rem}.pv-mobile-nav{position:fixed;inset-inline:0;top:0;z-index:1040;background:rgba(255,253,250,.94);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);border-bottom:1px solid rgba(42,50,84,.09);box-shadow:0 1px 16px rgba(26,33,52,.07)}.pv-mobile-nav-inner{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem}.pv-mobile-brand{font-family:"Thonburi","Sukhumvit Set",var(--font-display),var(--font-sans),sans-serif;font-size:.88rem;font-weight:700;color:oklch(.23 .03 252);letter-spacing:.03em}.pv-brand-mark-sm{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:.55rem;background:linear-gradient(145deg,rgba(211,160,94,.95),rgba(241,221,176,.78));box-shadow:0 3px 10px rgba(209,151,74,.22),inset 0 1px 0 rgba(255,255,255,.25);overflow:hidden}.pv-brand-logo,.pv-brand-logo-sm{width:100%;height:100%;object-fit:contain;border-radius:inherit}.pv-kbd{display:inline-block;font-size:.65rem;line-height:1;padding:.15rem .35rem;background:rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.18);border-radius:.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:inherit;font-weight:600;white-space:nowrap;vertical-align:middle}.pv-kbd-group{opacity:.75}.pv-bulk-bar{position:fixed;bottom:1.75rem;left:50%;transform:translateX(-50%);background:oklch(.18 .04 252);color:#fff;border-radius:3rem;padding:.6rem 1.25rem;display:flex;align-items:center;gap:1rem;z-index:1070;box-shadow:0 8px 32px rgba(0,0,0,.3),0 2px 8px rgba(0,0,0,.2);animation:pv-bulk-bar-in .18s ease-out;white-space:nowrap}@keyframes pv-bulk-bar-in{0%{opacity:0;transform:translateX(-50%) translateY(12px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.pv-bulk-bar-count{font-size:.82rem}@media (max-width:767.98px){.pv-filter-toolbar{flex-wrap:wrap;gap:.5rem!important}.pv-filter-toolbar .pv-filter-group{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.25rem);min-width:0}.pv-filter-toolbar .pv-filter-search{flex:1 1 100%}.pv-page-toolbar{flex-direction:column;align-items:stretch!important;gap:.75rem!important}.pv-page-toolbar>*{width:100%}}.pv-mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid rgba(42,50,84,.1);border-radius:.75rem;background:rgba(255,255,255,.9);color:oklch(.26 .04 252);box-shadow:0 2px 8px rgba(26,33,52,.08),inset 0 1px 0 rgba(255,255,255,.9);transition:background-color .14s ease,box-shadow .14s ease;cursor:pointer}.pv-mobile-nav-toggle:hover{background:white;box-shadow:0 4px 14px rgba(26,33,52,.12),inset 0 1px 0 white}.pv-mobile-menu-icon{width:1.1rem;height:1.1rem}@media (max-width:991.98px){.pv-app-main{padding-top:4.2rem;padding-bottom:calc(58px + env(safe-area-inset-bottom, 0px))}}.pv-bottom-nav{position:fixed;bottom:0;inset-inline:0;z-index:1035;display:flex;align-items:stretch;background:rgba(255,253,250,.96);backdrop-filter:blur(28px) saturate(1.6);-webkit-backdrop-filter:blur(28px) saturate(1.6);border-top:1px solid rgba(42,50,84,.09);box-shadow:0 -4px 24px rgba(26,33,52,.08);padding-bottom:env(safe-area-inset-bottom,0)}.pv-bottom-item{position:relative;flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.24rem;padding:.6rem .4rem .62rem;text-decoration:none!important;color:rgba(60,72,104,.52);font-size:.62rem;font-weight:600;letter-spacing:.01em;text-align:center;line-height:1.15;min-height:56px;transition:color .14s ease;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv-bottom-item-icon{width:1.25rem;height:1.25rem;transition:transform .14s ease;flex-shrink:0}.pv-bottom-item:active .pv-bottom-item-icon{transform:scale(.88)}.pv-bottom-item.is-active{color:oklch(.42 .095 50)}.pv-bottom-item.is-active .pv-bottom-item-icon{color:oklch(.5 .11 50)}.pv-bottom-item.is-active:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:2rem;height:2.5px;border-radius:0 0 999px 999px;background:oklch(.6 .13 52)}.pv-sidebar-close{flex-shrink:0;margin-left:auto}.offcanvas.pv-sidebar-shell{width:min(var(--pv-sidebar-width),calc(100vw - .5rem));max-width:100%;color:white;border-right:1px solid rgba(255,255,255,.07);box-shadow:18px 0 56px rgba(14,22,38,.26)}@media (min-width:992px){.offcanvas.pv-sidebar-shell{position:fixed;inset:0 auto 0 0;visibility:visible!important;transform:none!important;z-index:1030}.offcanvas-backdrop{display:none!important}.pv-app-main{padding-top:0;width:calc(100% - var(--pv-sidebar-width));margin-left:var(--pv-sidebar-width)}.pv-app-content{padding:1.1rem 1.1rem 3.5rem}}@media (min-width:1200px){.pv-app-content{padding-inline:1.4rem}}@media (min-width:1400px){:root{--pv-sidebar-width:17.5rem}.pv-app-content{padding-inline:1.75rem}}@media (min-width:992px) and (max-width:1199.98px){:root{--pv-sidebar-width:16rem}.pv-sidebar-ctx-wrap{padding:.65rem .75rem .4rem}.pv-sidebar-nav{padding-inline:.65rem}.pv-sidebar-footer{padding:.65rem .75rem}.pv-nav-label{font-size:.79rem}}@media (max-width:991.98px){.offcanvas.pv-sidebar-shell{width:min(22rem,calc(100vw - .5rem));max-width:calc(100vw - .5rem);z-index:1085}.offcanvas-backdrop{z-index:1080}}:root{--pv-select-accent-ring:rgba(210,164,92,0.15);--pv-select-border-hover:rgba(42,50,84,0.24);--pv-select-chevron-color:rgba(45,58,94,0.5);--pv-select-chevron-focus:rgba(196,152,64,0.92);--pv-select-chevron-disabled:rgba(45,58,94,0.24)}.pv-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233d4a6a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .82rem center;background-size:1rem 1rem;padding-right:2.6rem!important;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.form-select.pv-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233d4a6a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")!important;background-position:right .82rem center!important;background-size:1rem 1rem!important;padding-right:2.6rem!important}.pv-select:hover:not(:disabled):not(:focus){border-color:var(--pv-select-border-hover)!important;background-color:rgba(250,249,246,.9)!important}.pv-select:focus{border-color:rgba(210,164,92,.56)!important;box-shadow:0 0 0 .22rem var(--pv-select-accent-ring),0 1px 4px rgba(210,164,92,.08)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c49840' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")!important;background-color:rgba(255,254,250,1)!important;outline:none}.pv-select:disabled{opacity:.5;cursor:not-allowed;background-color:rgba(242,241,238,.7)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239fa6bc' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")!important}.pv-select optgroup{font-weight:700;font-size:.82rem;background:rgba(248,246,241,1)}.pv-select option{font-size:.9rem;color:oklch(.24 .03 252)}.pv-filter-select.form-select{font-size:.84rem!important;border-radius:.75rem!important}.pv-select-wrap{position:relative;display:block}.pv-select-wrap>select{position:relative;z-index:1;width:100%}.pv-select-wrap .form-select,.pv-select-wrap .form-select.pv-select,.pv-select-wrap .form-select.pv-select:focus,.pv-select-wrap .form-select:focus,.pv-select-wrap .pv-select,.pv-select-wrap .pv-select:disabled,.pv-select-wrap .pv-select:focus,.pv-select-wrap .pv-select:hover:not(:disabled):not(:focus){background-image:none!important;padding-right:2.6rem!important}.pv-select-chevron{position:absolute;right:.72rem;top:50%;transform:translateY(-50%);pointer-events:none;z-index:0;color:var(--pv-select-chevron-color);display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease}.pv-select-wrap:focus-within .pv-select-chevron{color:var(--pv-select-chevron-focus)}.pv-select-wrap:has(select:disabled) .pv-select-chevron{color:var(--pv-select-chevron-disabled)}.pv-select-chevron-svg{width:1rem;height:1rem;transition:transform .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.pv-select-wrap:focus-within .pv-select-chevron-svg:not(.pv-select-spinner){transform:rotate(-180deg)}.pv-select-spinner{animation:pv-select-spin .75s linear infinite}@keyframes pv-select-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.pv-select-wrap.is-loading .form-select,.pv-select-wrap.is-loading .pv-select{border-color:rgba(210,164,92,.28)!important;background-color:rgba(252,250,246,.9)!important}.pv-field-hint{font-size:.72rem;color:rgba(45,58,94,.5);margin:0;line-height:1.4}.pv-form-label{color:oklch(.38 .04 252)!important;font-size:.78rem!important;font-weight:700!important;letter-spacing:.01em;margin-bottom:0!important}@media (max-width:575.98px){.pv-form-grid.three-col,.pv-form-grid.two-col{grid-template-columns:1fr!important}.pv-filter-select.form-select,.pv-input,.pv-select,.pv-textarea{font-size:1rem!important;min-height:3rem}}@media (max-width:767.98px){.pv-form-grid.three-col{grid-template-columns:repeat(2,minmax(0,1fr))}}.pv-preflight-item{border-left:3px solid transparent!important;padding-left:1rem!important;border-radius:0!important;transition:background-color .15s ease}.pv-preflight-item:hover{background:rgba(0,0,0,.025)!important}.pv-preflight-item-critical{border-left-color:var(--bs-danger)!important}.pv-preflight-item-warning{border-left-color:var(--bs-warning)!important}.pv-preflight-item-healthy{border-left-color:var(--bs-success)!important}.pv-studio-summary{list-style:none;cursor:pointer;border-bottom:1px solid rgba(42,50,84,.08);position:relative}.pv-studio-summary::-webkit-details-marker,.pv-studio-summary::marker{display:none}.pv-studio-summary:after{content:"";display:block;position:absolute;right:1.25rem;top:50%;transform:translateY(-50%) rotate(0deg);width:1.25rem;height:1.25rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(64%2C74%2C102%2C0.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;transition:transform .2s ease;flex-shrink:0}details[open]>.pv-studio-summary:after{transform:translateY(-50%) rotate(180deg)}.pv-violation-container{border-radius:2rem;border:1px solid rgba(196,128,55,.18);background:rgba(255,249,239,.95);box-shadow:0 18px 50px rgba(21,30,49,.04)}.pv-violation-hard{border:1px solid rgba(190,64,64,.18);background:rgba(255,243,243,.92);border-radius:1rem;padding:1rem 1.25rem}.pv-violation-soft{border:1px solid rgba(196,128,55,.18);background:rgba(255,249,239,.92);border-radius:1rem;padding:1rem 1.25rem}.pv-create-candidate-shell{border-radius:1rem!important;border:1px solid rgba(42,50,84,.08)!important;background:rgba(249,248,245,.95);transition:background-color .15s ease,box-shadow .15s ease}.pv-create-candidate-shell:hover{background:#fff!important;box-shadow:0 14px 34px rgba(35,39,52,.08)!important}.pv-slot-interactive{cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.pv-slot-interactive:hover{background:#fff!important;box-shadow:0 8px 24px rgba(35,39,52,.08)!important}.pv-slot-selected{border-color:rgba(213,166,95,.32)!important;background:linear-gradient(180deg,rgba(255,249,240,.98),rgba(255,255,255,.98))!important;box-shadow:0 14px 34px rgba(35,39,52,.08)!important}.pv-unavailable-bg{border-radius:1rem;border:1px solid rgba(42,50,84,.08);background:rgba(249,248,245,.95)}.pv-grid-outer{overflow:auto;border-radius:1.5rem;border:1px solid rgba(42,50,84,.08)}.pv-grid-header{position:sticky;top:0;z-index:20;background:rgba(247,245,240,.98);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pv-grid-header-row{display:flex;border-bottom:1px solid rgba(42,50,84,.08)}.pv-grid-day-col{width:176px;min-width:176px;flex-shrink:0;border-right:1px solid rgba(42,50,84,.08)}.pv-grid-day-col-head{padding:1rem 1.25rem}.pv-grid-periods-row{display:flex;flex:1 1 auto}.pv-grid-period-head{flex-shrink:0;border-right:1px solid rgba(42,50,84,.08);padding:.75rem .5rem;text-align:center}.pv-grid-period-head-break{background:rgba(223,238,251,.82)}.pv-grid-period-head-teaching{background:rgba(255,255,255,.9)}.pv-grid-period-eyebrow{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:oklch(.48 .03 248);line-height:1.2}.pv-grid-period-label{font-family:var(--font-display,inherit);font-size:1rem;font-weight:600;color:oklch(.24 .03 252);line-height:1.1}.pv-grid-body{position:relative}.pv-grid-stripe-layer{pointer-events:none;position:absolute;inset-block:0;left:176px;display:flex}.pv-grid-stripe-col{flex-shrink:0;border-right:1px solid rgba(42,50,84,.06)}.pv-grid-stripe-col-break{background:rgba(223,238,251,.56)}.pv-grid-day-row{position:relative;display:flex;border-bottom:1px solid rgba(42,50,84,.08)}.pv-grid-day-row:last-child{border-bottom:none}.pv-grid-day-sidebar{width:176px;min-width:176px;flex-shrink:0;border-right:1px solid rgba(42,50,84,.08);background:rgba(252,251,248,.95);padding:1.5rem 1.25rem}.pv-grid-day-name{font-family:var(--font-display,inherit);font-size:1.125rem;font-weight:600;color:oklch(.24 .03 252);line-height:1.1}.pv-grid-day-short{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:oklch(.5 .03 250);margin-top:.1rem}.pv-grid-day-content{position:relative;flex:1 1 auto;min-height:164px;overflow:hidden}.pv-grid-cells-layer{position:absolute;inset:0;display:flex}.pv-grid-segment-overlay{pointer-events:none;position:absolute;inset-block:.5rem;overflow:hidden;border-radius:1rem}.pv-grid-segment-blocked{border:1px dashed rgba(111,152,206,.34);background:repeating-linear-gradient(135deg,rgba(219,236,252,.92),rgba(219,236,252,.92) 8px,rgba(237,246,255,.98) 0,rgba(237,246,255,.98) 16px)}.pv-grid-segment-system{border:1px dashed rgba(127,170,220,.28);background:repeating-linear-gradient(135deg,rgba(228,241,253,.94),rgba(228,241,253,.94) 8px,rgba(240,248,255,.98) 0,rgba(240,248,255,.98) 16px)}.pv-grid-segment-inner{display:flex;height:100%;flex-direction:column;justify-content:center;padding:.5rem .75rem}.pv-preflight-item{border-radius:.75rem!important;transition:background .12s}.pv-preflight-item-healthy{border-left:3px solid rgba(46,133,92,.5)!important}.pv-preflight-item-warning{border-left:3px solid rgba(210,130,52,.5)!important}.pv-preflight-item-critical{border-left:3px solid rgba(186,69,69,.5)!important}.pv-print-page{max-width:72rem;margin-inline:auto}.pv-print-cover{background:radial-gradient(circle at 12% 16%,rgba(210,164,92,.18),transparent 34%),linear-gradient(135deg,rgba(255,253,248,.98),rgba(246,249,253,.96))}.pv-print-day-section{page-break-inside:avoid;break-inside:avoid}@media print{[data-schedule-desktop-grid]{display:block!important;border-radius:0!important;border:none!important;background:white!important;box-shadow:none!important}[data-schedule-desktop-grid]>.pv-studio-summary{display:none!important}[data-schedule-desktop-grid] .px-4{padding-left:0!important;padding-bottom:0!important}.pv-mobile-nav,.pv-page-toolbar,.pv-print-actions,.pv-studio-banner,.pv-studio-banner-error,.pv-studio-banner-success,.pv-studio-command-card,[data-schedule-mobile-list]{display:none!important}.pv-print-page{max-width:none!important}.pv-print-page .card{border:none!important;border-radius:0!important;box-shadow:none!important}}.pv-studio-empty{border:1px dashed rgba(42,50,84,.14);border-radius:1rem;background:rgba(249,248,245,.95);text-align:center;padding:3rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.pv-studio-empty.is-compact{padding:2rem 1.25rem}.pv-studio-empty-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:999px;background:rgba(42,50,84,.04);color:rgba(42,50,84,.3);margin-bottom:.75rem;flex-shrink:0}.pv-studio-empty-icon{width:1.75rem;height:1.75rem}.pv-studio-empty-message{max-width:320px;margin-inline:auto}.pv-studio-slot-list-scroll{max-height:min(62svh,720px);overflow-y:auto}.pv-studio-banner-icon{display:inline-flex;align-items:center;flex-shrink:0}.pv-violation-code{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:.6rem;border:1px solid rgba(42,50,84,.1);background:rgba(249,248,245,.95);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:.03em;color:oklch(.33 .03 252)}.pv-violation-hard{border-left-width:3px;border-left-color:rgba(190,64,64,.55)}.pv-violation-soft{border-left-width:3px;border-left-color:rgba(196,128,55,.55)}.pv-studio-command-card .pv-command-destructive-zone{border-top:1px dashed rgba(186,69,69,.2);padding-top:.6rem;margin-top:.5rem}details>summary~*{animation:pv-details-open .22s cubic-bezier(.16,1,.3,1)}@keyframes pv-details-open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.pv-grid-day-col-head .pv-body-sm{font-size:.8rem;font-weight:800;letter-spacing:.02em;color:oklch(.28 .04 252)}.pv-grid-day-col-head .pv-metric-eyebrow{margin-top:.15rem}.pv-teacher-account-section{padding:1rem;border-radius:1rem;border:1px solid rgba(42,50,84,.08);background:rgba(249,248,245,.6)}.pv-teacher-account-status-bar{padding:.85rem 1rem;border-radius:.85rem;border:1px solid rgba(46,133,92,.14);background:rgba(241,251,246,.7)}.pv-teacher-account-status-bar--empty{border-color:rgba(42,50,84,.1);background:rgba(249,248,245,.8)}.pv-teacher-account-form{padding:.85rem;border-radius:.85rem;border:1px solid rgba(42,50,84,.08);background:rgba(255,255,255,.7)}.pv-input-with-action{position:relative;display:flex;align-items:stretch}.pv-input-with-action .pv-input{padding-right:2.6rem}.pv-input-action-btn{position:absolute;right:0;top:0;bottom:0;display:inline-flex;align-items:center;justify-content:center;width:2.4rem;background:none;border:none;cursor:pointer;color:oklch(.5 .03 252);border-radius:0 .6rem .6rem 0;transition:color .12s}.pv-input-action-btn:hover{color:oklch(.3 .04 252)}.pv-teacher-account-section .pv-command-destructive-zone{border-top:1px dashed rgba(186,69,69,.18);padding-top:.75rem;margin-top:.25rem}.pv-icon-xs{width:.85rem;height:.85rem;flex-shrink:0}.pv-divider{border:none;border-top:1px solid rgba(42,50,84,.08);margin:0}.pv-form-section-divider{display:flex;align-items:center;gap:.45rem;margin:1.5rem 0 1.1rem;color:oklch(.42 .04 252);font-size:.8rem;font-weight:700;letter-spacing:.01em}.pv-form-section-divider:after{content:"";flex:1 1;height:1px;background:rgba(42,50,84,.1)}.pv-form-section-divider .pv-field-hint{font-weight:400}.text-secondary{color:var(--bs-secondary-color)!important}@media print{@page{size:A4 landscape;margin:15mm 15mm 20mm 15mm}body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:transparent!important;font-family:TH Sarabun New,TH Sarabun PSK,serif!important}*{font-family:inherit}.pv-hide-on-print,.pv-navbar,.pv-print-actions,.pv-sidebar-shell,.pv-skip-link{display:none!important}.card,.card-body,.pv-print-page,section{border:none!important;box-shadow:none!important;background:transparent!important;margin:0!important;padding:0!important}div,h1,h2,h3,h4,h5,h6,p,span,td,th{color:#000!important}.table{border-color:#000!important;margin-bottom:2rem!important;width:100%!important}.table td,.table th{padding:.15rem .35rem!important;border:1px solid #000!important;font-size:14pt!important;vertical-align:middle!important}.table th.pv-print-th{font-weight:700!important;text-align:center!important;background-color:#f2f2f2!important;-webkit-print-color-adjust:exact!important}thead{display:table-header-group}tr{page-break-inside:avoid}.pv-official-header{text-align:center;margin-bottom:2rem}.pv-official-header h1{font-size:26pt!important}.pv-official-header h1,.pv-official-header h2{font-weight:700!important;margin-bottom:.25rem!important;line-height:1!important}.pv-official-header h2{font-size:20pt!important}.pv-official-header p{font-size:16pt!important;margin:0!important;line-height:1!important}.pv-signature-block{display:flex;justify-content:space-between;margin-top:4rem;page-break-inside:avoid}.pv-signature-item{text-align:center;width:30%}.pv-signature-line{border-bottom:1px dotted #000;height:3rem;margin:0 1rem .5rem}.pv-signature-title{font-size:16pt!important}}.form-text,.text-muted,p.text-secondary,small.text-secondary,span.text-secondary{color:oklch(.46 .03 248)!important}.invalid-feedback{color:#b91c1c}.pv-metric-eyebrow{color:oklch(.46 .03 248)}:focus-visible{outline:2.5px solid var(--eds-primary,rgba(var(--bs-primary-rgb,46,70,111),1));outline-offset:3px;border-radius:3px}.form-control:focus,.form-select:focus{border-color:var(--eds-primary,rgba(var(--bs-primary-rgb,46,70,111),.8));box-shadow:0 0 0 3px rgba(var(--bs-primary-rgb,46,70,111),.18);outline:none}.btn:focus-visible{outline:2.5px solid var(--eds-primary,rgba(var(--bs-primary-rgb,46,70,111),1));outline-offset:3px;box-shadow:none}.pv-skip-link:focus{clip:auto;clip-path:none;width:auto;height:auto;padding:.5rem 1rem;background:var(--bs-primary,#2e466f);color:white;z-index:9999;border-radius:0 0 .5rem 0}@media (max-width:767.98px){.pv-master-item-actions .btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.pv-page-hero-actions{flex-direction:column;align-items:stretch}.pv-bulk-checkbox{width:1.25rem!important;height:1.25rem!important}.pv-schedule-grid-shell{overflow-x:auto;-webkit-overflow-scrolling:touch}.pv-public-schedule-header{padding:1.25rem 1rem!important}.pv-stats-row{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:.5rem}}@keyframes pv-fade-in-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pv-page-enter{animation:pv-fade-in-up .22s cubic-bezier(.16,1,.3,1) both}.table>tbody>tr{transition:background-color .12s ease,box-shadow .12s ease}.table-hover>tbody>tr:hover>*{background-color:rgba(46,70,111,.04)}.pv-data-card{transition:box-shadow .16s ease}.pv-data-card:hover{box-shadow:var(--eds-shadow-md,0 4px 16px rgba(46,70,111,.12))}.pv-quick-action-card{transition:transform .14s ease,box-shadow .14s ease}.pv-quick-action-card:hover{transform:translateY(-2px);box-shadow:var(--eds-shadow-sm,0 2px 8px rgba(46,70,111,.1))}.pv-metric-card{transition:box-shadow .16s ease,transform .16s ease}.pv-metric-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(46,70,111,.1)}@media (prefers-reduced-motion:reduce){.pv-data-card,.pv-metric-card,.pv-page-enter,.pv-quick-action-card,.table>tbody>tr{animation:none!important;transition:none!important;transform:none!important}}@media (max-width:767.98px){.btn{min-height:2.5rem}.pv-btn-group-mobile{display:flex;flex-direction:column;gap:.5rem;width:100%}.pv-btn-group-mobile .btn{width:100%}.pv-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--eds-radius-md,.75rem)}.pv-table-scroll table{min-width:600px}.pv-quick-action-card{font-size:.8rem}nav[aria-label=breadcrumb] ol{font-size:.72rem}.pv-page-hero h1.display-6{font-size:1.4rem}.col-6.col-sm-3{flex:0 0 50%;max-width:50%}.pv-heatmap-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.pv-page-actions-mobile{flex-direction:column;align-items:stretch!important}.pv-page-actions-mobile .btn{width:100%;justify-content:center}}.pv-sidebar{transition:width .22s cubic-bezier(.4,0,.2,1)}.pv-sidebar-collapsed .pv-nav-label,.pv-sidebar-collapsed .pv-sidebar-badge,.pv-sidebar-collapsed .pv-sidebar-copy,.pv-sidebar-collapsed .pv-sidebar-favorite-link span,.pv-sidebar-collapsed .pv-sidebar-favorites-title,.pv-sidebar-collapsed .pv-sidebar-label,.pv-sidebar-collapsed .pv-sidebar-section-label-text,.pv-sidebar-collapsed .pv-sidebar-section-title{display:none!important}.pv-sidebar-collapsed .pv-sidebar-favorites{padding:.45rem}.pv-sidebar-collapsed .pv-sidebar-favorites-grid{grid-template-columns:1fr}.pv-sidebar-collapsed .pv-sidebar-favorite-link{justify-content:center}.pv-sidebar-collapsed .pv-nav-item{justify-content:center;padding-inline:0}.pv-sidebar-collapsed .pv-sidebar-body{align-items:center}.pv-sidebar-collapse-btn{background:transparent;border:1px solid rgba(42,50,84,.12);border-radius:.75rem;padding:.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:oklch(.22 .03 255);transition:all .2s ease;width:100%}.pv-sidebar-collapse-btn:hover{background:rgba(42,50,84,.08);border-color:rgba(42,50,84,.16)}.pv-sidebar-collapse-btn:active{background:rgba(42,50,84,.12)}.pv-sidebar-collapsed .pv-nav-link[data-tooltip]{position:relative}.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:oklch(.18 .025 255);color:#fff;font-size:.74rem;font-weight:500;padding:.3rem .65rem;border-radius:.5rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .14s ease,transform .14s ease;transform:translateY(-50%) translateX(-4px);z-index:9999;box-shadow:0 4px 16px rgba(0,0,0,.18)}.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:before{content:"";position:absolute;left:calc(100% + 6px);top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:oklch(.18 .025 255);pointer-events:none;opacity:0;transition:opacity .14s ease;z-index:9999}.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:focus-visible:after,.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:hover:after{opacity:1;transform:translateY(-50%) translateX(0)}.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:focus-visible:before,.pv-sidebar-collapsed .pv-nav-link[data-tooltip]:hover:before{opacity:1}.pv-app-footer{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem 1.25rem;font-size:.72rem;color:rgba(42,50,84,.45);border-top:1px solid rgba(42,50,84,.06);margin-top:2rem;flex-wrap:wrap}.pv-app-footer-institution{font-weight:600;color:rgba(42,50,84,.6)}.pv-app-footer-brand strong{font-weight:600}.pv-app-footer-sep{opacity:.4}@media print{.pv-app-footer{display:none}}.pv-box-shadow-premium{box-shadow:0 4px 24px rgba(42,50,84,.04),0 1px 3px rgba(42,50,84,.02)}.pv-assignment-branch-card,.pv-assignment-department-card,.pv-curriculum-plan-card,.pv-workload-branch-section{background:white;border-radius:var(--eds-radius-lg,1rem);border:1px solid rgba(42,50,84,.08);box-shadow:0 4px 24px rgba(42,50,84,.04);transition:all .2s ease}.pv-curriculum-plan-card:hover{box-shadow:0 8px 32px rgba(42,50,84,.08);border-color:rgba(42,50,84,.12)}.pv-badge-theory{background-color:oklch(.96 .04 220);color:oklch(.3 .1 240)}.pv-badge-practical,.pv-badge-theory{border:1px solid rgba(42,50,84,.04);padding:.25rem .6rem;font-size:.75rem}.pv-badge-practical{background-color:oklch(.96 .08 140);color:oklch(.3 .1 160)}.pv-badge-credits{background-color:oklch(.95 .04 80);color:oklch(.3 .1 60);border:1px solid rgba(42,50,84,.04);padding:.25rem .6rem;font-size:.75rem}.pv-master-item-actions{opacity:0;transition:opacity .15s ease}.pv-master-item-actions:focus-within,.pv-master-item:hover .pv-master-item-actions{opacity:1}.pv-workload-progress-shell{height:6px;background-color:rgba(42,50,84,.08);border-radius:99px;overflow:hidden;display:flex}.pv-workload-fill-safe{background-color:oklch(.7 .14 160)}.pv-workload-fill-warning{background-color:oklch(.75 .16 80)}.pv-workload-fill-danger{background-color:oklch(.6 .2 20)}.pv-active-term-hero{border:1px solid rgba(213,166,95,.4)!important;border-left:4px solid var(--eds-accent-gold,#cfa063)!important;background:linear-gradient(180deg,rgba(255,249,240,1),rgba(255,255,255,1))!important;box-shadow:0 0 0 4px rgba(213,166,95,.1);position:relative}.pv-active-term-countdown{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;color:oklch(.45 .12 55);background:rgba(207,160,99,.12);border:1px solid rgba(207,160,99,.25);border-radius:999px;padding:.2rem .65rem;margin-top:.4rem}.pv-period-timeline{display:flex;flex-direction:column;gap:.375rem}.pv-period-timeline-item{display:grid;grid-template-columns:2rem 1fr auto;gap:.75rem;align-items:center;padding:.55rem .875rem;background:rgba(249,248,245,.6);border-radius:.5rem;border-left:3px solid rgba(42,50,84,.1);transition:all .12s ease}.pv-period-timeline-item:hover{background:white;border-left-color:rgba(42,50,84,.35);box-shadow:0 2px 8px rgba(42,50,84,.04)}.pv-period-teaching{border-left-color:oklch(.4 .08 248)!important}.pv-period-break{border-left-color:oklch(.72 .04 80)!important;background:rgba(245,243,238,.5)!important}.pv-period-lunch{border-left-color:oklch(.65 .12 55)!important;background:rgba(255,249,238,.6)!important}.pv-period-assembly{border-left-color:oklch(.55 .14 290)!important;background:rgba(245,240,255,.5)!important}.pv-period-type-badge{display:inline-block;font-size:.65rem;font-weight:600;padding:.1rem .4rem;border-radius:999px;letter-spacing:.02em}.pv-period-type-badge--teaching{background:rgba(46,70,111,.1);color:oklch(.35 .07 248)}.pv-period-type-badge--break{background:rgba(150,130,80,.1);color:oklch(.45 .07 80)}.pv-period-type-badge--lunch{background:rgba(207,160,99,.15);color:oklch(.42 .1 55)}.pv-period-type-badge--assembly{background:rgba(124,58,237,.1);color:oklch(.45 .15 290)}.pv-top-summary-container{display:flex;gap:1rem;background-color:oklch(.99 .01 70);border-radius:var(--eds-radius-xl,1.25rem);padding:1.25rem;overflow-x:auto;border:1px solid rgba(42,50,84,.05);margin-bottom:2rem}.pv-top-summary-card{flex:1 1;min-width:140px;background-color:white;border-radius:var(--eds-radius-md,.75rem);padding:1rem;display:flex;flex-direction:column;border:1px solid rgba(42,50,84,.08);box-shadow:0 2px 8px rgba(42,50,84,.02)}.pv-top-summary-label{font-size:.75rem;color:rgba(42,50,84,.6);font-weight:500;margin-bottom:.25rem}.pv-top-summary-value{font-size:1.75rem;font-weight:600;color:oklch(.2 .04 250);line-height:1.2}.pv-nested-department-header{background-color:oklch(.98 .01 240);border:1px solid rgba(42,50,84,.08);border-radius:var(--eds-radius-lg,1rem);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;margin-bottom:.5rem;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:oklch(.98 .01 240/.95)}.pv-nested-department-title{font-size:1.1rem;font-weight:700;color:oklch(.25 .04 250);margin-bottom:0}.pv-nested-branch-container{background-color:transparent;border-left:2px solid oklch(.9 .02 240);padding-left:1.5rem;margin-left:1rem;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.pv-nested-branch-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(42,50,84,.08);margin-bottom:1rem}.pv-nested-branch-title{font-size:1rem;font-weight:700;color:oklch(.3 .04 250);margin-bottom:0}.pv-subject-row-card{display:flex;align-items:center;justify-content:space-between;background:white;border:1px solid rgba(42,50,84,.08);border-radius:.75rem;padding:.75rem 1rem;box-shadow:0 1px 3px rgba(42,50,84,.02);transition:all .15s ease}.pv-subject-row-card:hover{box-shadow:0 4px 12px rgba(42,50,84,.06);border-color:rgba(42,50,84,.12)}.pv-subject-row-left{display:flex;flex-direction:column;gap:.35rem}.pv-subject-row-right{display:flex;align-items:center;gap:.5rem}.pv-subject-row-title{font-weight:600;color:oklch(.2 .04 250);font-size:.95rem;margin-bottom:0}@keyframes pv-pending-pulse{0%,to{opacity:1}50%{opacity:.65}}.pv-badge-pending-pulse{animation:pv-pending-pulse 2.4s ease-in-out infinite}.pv-tp-bar{display:flex;height:5px;border-radius:3px;overflow:hidden;width:100%;max-width:120px;background:rgba(42,50,84,.07);gap:1px}.pv-tp-bar-theory{background:oklch(.45 .1 248);border-radius:3px 0 0 3px;transition:width .3s ease}.pv-tp-bar-practical{background:oklch(.55 .14 160);border-radius:0 3px 3px 0;transition:width .3s ease}.pv-tp-summary{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pv-tp-summary-label{font-size:.7rem;font-weight:600;letter-spacing:.03em;color:rgba(42,50,84,.55);text-transform:uppercase}.pv-tp-theory-dot:before{background:oklch(.45 .1 248)}.pv-tp-practical-dot:before,.pv-tp-theory-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:middle}.pv-tp-practical-dot:before{background:oklch(.55 .14 160)}.pv-day-chips{display:flex;gap:.25rem;flex-wrap:nowrap}.pv-day-chip{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:.375rem;font-size:.68rem;font-weight:700;border:1px solid transparent;transition:all .1s ease;flex-shrink:0}.pv-day-chip--neutral{background:rgba(42,50,84,.05);color:rgba(42,50,84,.35);border-color:rgba(42,50,84,.08)}.pv-day-chip--preferred{background:oklch(.93 .08 160);color:oklch(.35 .14 160);border-color:oklch(.78 .1 160)}.pv-day-chip--blocked{background:oklch(.94 .06 25);color:oklch(.45 .18 25);border-color:oklch(.8 .1 25)}.pv-day-chips-label{font-size:.7rem;font-weight:600;color:rgba(42,50,84,.5);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.pv-pending-approval-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.875rem 1.25rem;background:oklch(.98 .04 85);border-radius:.875rem;border:1px solid oklch(.88 .1 80);border-left:4px solid oklch(.72 .16 75)}.pv-pending-approval-banner-icon{color:oklch(.55 .18 75);flex-shrink:0}.pv-pending-approval-banner-text{flex:1 1;min-width:0}.pv-pending-approval-banner-title{font-size:.875rem;font-weight:700;color:oklch(.3 .06 80);margin:0}.pv-pending-approval-banner-sub{font-size:.775rem;color:oklch(.45 .06 80);margin:0}.pv-plan-status-complete{background:oklch(.94 .07 155)!important;color:oklch(.35 .12 155)!important;border-color:oklch(.82 .1 155)!important}.pv-plan-status-incomplete{background:oklch(.96 .07 80)!important;color:oklch(.45 .14 75)!important;border-color:oklch(.86 .1 78)!important}.pv-plan-status-empty{background:oklch(.96 .04 20)!important;color:oklch(.48 .14 25)!important;border-color:oklch(.88 .08 20)!important}.pv-curriculum-subject-table{width:100%;border-collapse:collapse;font-size:.83rem}.pv-curriculum-subject-table th{padding:.5rem .75rem;text-align:left;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:rgba(42,50,84,.5);background:rgba(42,50,84,.03);border-bottom:1px solid rgba(42,50,84,.08);white-space:nowrap}.pv-curriculum-subject-table th:not(:first-child){text-align:center}.pv-curriculum-subject-table td{padding:.5rem .75rem;vertical-align:middle;border-bottom:1px solid rgba(42,50,84,.05);color:oklch(.25 .03 248)}.pv-curriculum-subject-table td:not(:first-child):not(:nth-child(2)){text-align:center}.pv-curriculum-subject-table tbody tr:hover{background:rgba(42,50,84,.025)}.pv-curriculum-subject-table tbody tr:last-child td{border-bottom:none}.pv-curriculum-subject-table tfoot td{padding:.45rem .75rem;font-size:.72rem;font-weight:700;color:rgba(42,50,84,.55);background:rgba(42,50,84,.02);border-top:1px solid rgba(42,50,84,.08);text-transform:uppercase;letter-spacing:.04em;text-align:center}.pv-curriculum-subject-table tfoot td:first-child,.pv-curriculum-subject-table tfoot td:nth-child(2){text-align:left}.pv-plan-header-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.625rem .875rem;background:rgba(42,50,84,.03);border-radius:.625rem;border:1px solid rgba(42,50,84,.06);margin-bottom:.875rem}.pv-subject-expand-toggle{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:oklch(.4 .07 248);padding:.3rem .75rem;border-radius:999px;background:rgba(46,70,111,.07);border:none;cursor:pointer;transition:all .12s ease}.pv-subject-expand-toggle:hover{background:rgba(46,70,111,.13)}.pv-filter-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;padding:.25rem .6rem .25rem .75rem;border-radius:999px;background:oklch(.93 .04 248);color:oklch(.3 .07 248);border:1px solid oklch(.84 .06 248);text-decoration:none;transition:all .1s ease}.pv-filter-chip:hover{background:oklch(.88 .05 248);color:oklch(.25 .08 248)}.pv-filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border-radius:50%;background:oklch(.78 .06 248);color:white;font-size:.6rem;font-weight:900;flex-shrink:0}.pv-filter-chip:hover .pv-filter-chip-remove{background:oklch(.55 .1 25)}.pv-histogram{display:flex;gap:.5rem;align-items:flex-end;height:90px;padding:.5rem 0}.pv-histogram-bucket{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex:1 1}.pv-histogram-bar-wrap{display:flex;align-items:flex-end;justify-content:center;width:100%;flex:1 1}.pv-histogram-bar{width:100%;border-radius:4px 4px 0 0;min-height:4px;transition:height .4s ease}.pv-histogram-bar--ideal{background:oklch(.6 .14 155)}.pv-histogram-bar--warning{background:oklch(.75 .14 75)}.pv-histogram-bar--danger{background:oklch(.62 .18 22)}.pv-histogram-bar--empty{background:rgba(42,50,84,.12)}.pv-histogram-count{font-size:.65rem;font-weight:700;color:rgba(42,50,84,.55)}.pv-histogram-label{font-size:.6rem;font-weight:600;color:rgba(42,50,84,.4);text-align:center;line-height:1.2}.pv-histogram-ideal-zone{position:relative}.pv-histogram-ideal-zone:after{content:"อุดมคติ";position:absolute;top:-1.2rem;left:50%;transform:translateX(-50%);font-size:.55rem;color:oklch(.45 .12 155);white-space:nowrap}.pv-setup-score{background:rgba(42,50,84,.025);border:1px solid rgba(42,50,84,.07);border-radius:.75rem;padding:.875rem 1.125rem;margin-bottom:1.25rem}.pv-setup-score-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.625rem}.pv-setup-score-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:rgba(42,50,84,.5)}.pv-setup-score-pct{font-size:.875rem;font-weight:700}.pv-setup-score-bar{height:6px;border-radius:3px;background:rgba(42,50,84,.08);overflow:hidden;margin-bottom:.75rem}.pv-setup-score-fill{height:100%;border-radius:3px;transition:width .5s ease}.pv-setup-score-fill--full,.pv-setup-score-fill--high{background:oklch(.6 .14 155)}.pv-setup-score-fill--mid{background:oklch(.72 .16 75)}.pv-setup-score-fill--low{background:oklch(.62 .18 22)}.pv-setup-checklist{display:flex;flex-wrap:wrap;gap:.4rem 1rem}.pv-setup-checklist-item{font-size:.72rem;display:flex;align-items:center;gap:.3rem}.pv-setup-checklist-item--done{color:oklch(.4 .1 155)}.pv-setup-checklist-item--pending{color:oklch(.55 .1 75)}.pv-setup-checklist-item--missing{color:oklch(.5 .12 22)}.pv-year-timeline{overflow-x:auto;padding-bottom:.5rem}.pv-year-timeline-track{display:flex;gap:.75rem;min-width:max-content;padding:.5rem 0}.pv-year-block{min-width:180px;border:1px solid rgba(42,50,84,.1);border-radius:.75rem;padding:.75rem 1rem;background:white;transition:all .15s ease}.pv-year-block--active{border-color:rgba(207,160,99,.5);border-left:3px solid var(--eds-accent-gold,#cfa063);background:rgba(255,249,238,.7)}.pv-year-block--inactive{opacity:.7}.pv-year-block-label{font-size:.7rem;font-weight:700;color:rgba(42,50,84,.45);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem}.pv-year-block-name{font-size:.9rem;font-weight:700;color:oklch(.25 .04 248);margin-bottom:.5rem}.pv-year-term-bar{display:flex;gap:2px;height:8px;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.pv-year-term-seg{flex:1 1;border-radius:2px}.pv-year-term-seg--s1{background:oklch(.55 .1 248)}.pv-year-term-seg--s2{background:oklch(.55 .12 155)}.pv-year-term-seg--summer{background:oklch(.72 .15 75)}.pv-year-term-seg--active{position:relative;overflow:hidden}.pv-year-term-seg--active:after{content:"";position:absolute;top:0;left:0;bottom:0;background:rgba(255,255,255,.5);animation:pv-shimmer 1.8s ease-in-out infinite}@keyframes pv-shimmer{0%,to{opacity:.3}50%{opacity:.8}}.pv-year-block-meta{font-size:.68rem;color:rgba(42,50,84,.4)}.pv-assignment-entry-compact-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem}.pv-assignment-entry-compact-info{display:flex;align-items:center;gap:.5rem;min-width:0}.pv-assignment-entry-compact-name{font-size:.875rem;font-weight:600;color:oklch(.22 .03 255);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-assignment-entry-compact-meta{display:flex;align-items:center;gap:.4rem;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.pv-assignment-compact-teacher{font-size:.78rem;color:rgba(42,50,84,.6);white-space:nowrap}.pv-assignment-entry-compact-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.pv-assignment-expand-btn{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:1px solid rgba(42,50,84,.12);border-radius:.5rem;background:transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease;padding:0}.pv-assignment-expand-btn:hover{background:rgba(42,50,84,.05);border-color:rgba(42,50,84,.22)}.pv-assignment-expand-icon{color:rgba(42,50,84,.45);transition:transform .25s ease}.pv-assignment-expand-btn[aria-expanded=true] .pv-assignment-expand-icon{transform:rotate(180deg)}.pv-assignment-detail-panel{border-top:1px solid rgba(42,50,84,.07);padding:.875rem 0 .25rem;margin-top:.625rem}@media (max-width:768px){.pv-assignment-entry-compact-row{grid-template-columns:1fr}.pv-assignment-entry-compact-meta{justify-content:flex-start}}.pv-subject-category-header-row td{padding:.45rem .75rem .3rem}.pv-subject-category-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(42,50,84,.45);background:rgba(42,50,84,.025);border-top:1px solid rgba(42,50,84,.06)}.pv-bulk-approve-bar{position:relative}.pv-bulk-approve-toggle{display:flex;align-items:center;gap:.4rem;padding:.4rem .875rem;font-size:.8rem;font-weight:600;background:transparent;border:1px solid rgba(42,50,84,.18);border-radius:.6rem;cursor:pointer;color:oklch(.3 .04 250);width:100%;transition:background .15s ease,border-color .15s ease}.pv-bulk-approve-toggle:hover{background:rgba(42,50,84,.04);border-color:rgba(42,50,84,.28)}.pv-bulk-approve-panel{position:absolute;right:0;top:calc(100% + .5rem);width:420px;max-width:95vw;background:white;border:1px solid rgba(42,50,84,.1);border-radius:1rem;box-shadow:0 20px 60px rgba(21,30,49,.14);z-index:100;overflow:hidden}.pv-bulk-approve-list-header{padding:.75rem 1rem .5rem;border-bottom:1px solid rgba(42,50,84,.07);background:rgba(42,50,84,.025)}.pv-bulk-approve-select-all{font-size:.8rem;font-weight:600;cursor:pointer;color:oklch(.28 .04 250)}.pv-bulk-approve-list{list-style:none;padding:0;margin:0;max-height:280px;overflow-y:auto}.pv-bulk-approve-item{padding:.5rem 1rem;border-bottom:1px solid rgba(42,50,84,.05);cursor:pointer}.pv-bulk-approve-item:hover{background:rgba(42,50,84,.025)}.pv-bulk-approve-item label{cursor:pointer}.pv-bulk-approve-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgba(42,50,84,.07);background:rgba(42,50,84,.02)}.pv-spin{animation:pv-spinner .7s linear infinite}.pv-version-panel{border-top:1px solid rgba(42,50,84,.07);padding-top:.5rem}.pv-version-panel-toggle{display:flex;align-items:center;gap:.4rem;width:100%;padding:.35rem .6rem;font-size:.75rem;font-weight:500;color:oklch(.42 .04 250);background:transparent;border:1px solid rgba(42,50,84,.1);border-radius:.5rem;cursor:pointer;text-align:left;transition:background .15s,color .15s}.pv-version-panel-toggle:hover{background:oklch(.965 .01 250/.6);color:oklch(.28 .05 250)}.pv-version-chevron{transition:transform .2s;font-size:.65rem}.pv-version-panel-toggle[aria-expanded=true] .pv-version-chevron{transform:rotate(180deg)}.pv-version-timeline{list-style:none;margin:.5rem 0 0;padding:0 0 0 1rem;border-left:2px solid rgba(42,50,84,.1)}.pv-version-item{position:relative;padding:.35rem 0 .35rem .75rem}.pv-version-dot{position:absolute;left:-.45rem;top:.6rem;width:.5rem;height:.5rem;border-radius:50%;background:oklch(.72 .04 250);border:2px solid white}.pv-version-item--latest .pv-version-dot{background:oklch(.45 .12 145)}.pv-version-content{display:flex;flex-direction:column;gap:.1rem}.pv-version-badge{font-size:.65rem;font-weight:700;font-family:monospace;padding:.1rem .35rem;border-radius:.25rem;background:oklch(.92 .02 250);color:oklch(.32 .06 250);border:1px solid rgba(42,50,84,.1)}.pv-version-meta{font-size:.7rem;color:oklch(.52 .03 250)}.pv-day-picker-grid{display:flex;flex-direction:column;gap:.5rem}.pv-day-picker-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.pv-day-picker-label--preferred{font-size:.72rem;font-weight:600;min-width:3.5rem;color:oklch(.35 .1 145)}.pv-day-picker-label--blocked{font-size:.72rem;font-weight:600;min-width:3.5rem;color:oklch(.42 .15 25)}.pv-day-picker-chips{display:flex;gap:.25rem;flex-wrap:wrap}.pv-day-picker-chip{width:2.1rem;height:2.1rem;border-radius:.5rem;font-size:.7rem;font-weight:600;border:1.5px solid transparent;cursor:pointer;transition:background .12s,border-color .12s,transform .1s;display:flex;align-items:center;justify-content:center}.pv-day-picker-chip:hover{transform:scale(1.08)}.pv-day-picker-chip--neutral{background:oklch(.95 .005 250);border-color:oklch(.85 .01 250);color:oklch(.48 .03 250)}.pv-day-picker-chip--preferred{background:oklch(.92 .1 145);border-color:oklch(.55 .15 145);color:oklch(.26 .1 145)}.pv-day-picker-chip--blocked{background:oklch(.94 .06 25);border-color:oklch(.58 .16 25);color:oklch(.32 .12 25)}.pv-day-picker-hint{font-size:.68rem;color:oklch(.62 .02 250);margin:.1rem 0 0}.pv-coverage-matrix-wrap{overflow-x:auto;border-radius:1rem;border:1px solid rgba(42,50,84,.08);background:white}.pv-coverage-matrix-table{width:100%;border-collapse:collapse;font-size:.8rem;white-space:nowrap}.pv-coverage-matrix-table td,.pv-coverage-matrix-table th{padding:.45rem .6rem;border:1px solid rgba(42,50,84,.07);text-align:center;vertical-align:middle}.pv-matrix-subject-header{text-align:left!important;background:oklch(.97 .01 250);font-weight:600;color:oklch(.32 .04 250);position:sticky;left:0;z-index:2;min-width:200px}.pv-matrix-group-header{background:oklch(.97 .01 250);font-weight:600;font-size:.72rem;color:oklch(.38 .04 250);min-width:3.5rem}.pv-matrix-group-label{display:block;max-width:5rem;overflow:hidden;text-overflow:ellipsis}.pv-matrix-subject-cell{text-align:left!important;background:white;position:sticky;left:0;z-index:1;max-width:220px;overflow:hidden;text-overflow:ellipsis}.pv-matrix-subject-name{font-size:.75rem;color:oklch(.38 .04 252)}.pv-matrix-cell{font-size:.72rem;font-weight:600}.pv-matrix-cell--approved{background:oklch(.94 .08 145);color:oklch(.28 .1 145)}.pv-matrix-cell--pending{background:oklch(.96 .08 80);color:oklch(.35 .1 70)}.pv-matrix-cell--rejected{background:oklch(.96 .06 25);color:oklch(.38 .12 25)}.pv-matrix-cell--empty{background:oklch(.98 .002 250);color:oklch(.75 .01 250)}.pv-coverage-matrix-legend{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.72rem;color:oklch(.48 .03 250)}.pv-coverage-matrix-legend-dot{display:inline-block;width:.75rem;height:.75rem;border-radius:.2rem;vertical-align:middle;margin-right:.25rem}.pv-holiday-suggest-panel{border:1px solid rgba(42,50,84,.1);border-radius:.75rem;overflow:hidden;background:oklch(.98 .006 75)}.pv-holiday-suggest-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:oklch(.965 .012 75);border-bottom:1px solid rgba(42,50,84,.08);cursor:pointer;font-size:.78rem;font-weight:600;color:oklch(.3 .06 255)}.pv-holiday-suggest-header:hover{background:oklch(.955 .015 75)}.pv-holiday-list{display:flex;flex-direction:column;gap:0;max-height:280px;overflow-y:auto}.pv-holiday-item{display:flex;align-items:center;gap:.75rem;padding:.45rem .75rem;border-bottom:1px solid rgba(42,50,84,.05);font-size:.78rem}.pv-holiday-item:last-child{border-bottom:none}.pv-holiday-item-date{font-family:monospace;font-size:.7rem;color:oklch(.52 .04 250);min-width:4.5rem;flex-shrink:0}.pv-holiday-item-name{flex:1 1;color:oklch(.28 .04 255)}.pv-holiday-item-btn{font-size:.68rem;padding:.15rem .5rem;border-radius:.4rem;border:1px solid rgba(42,50,84,.15);background:white;color:oklch(.35 .06 250);cursor:pointer;flex-shrink:0;transition:background .12s,border-color .12s}.pv-holiday-item-btn:hover{background:oklch(.92 .04 250);border-color:oklch(.6 .08 250)}.pv-holiday-item-btn:disabled{opacity:.45;cursor:default}.pv-wizard-stepper{display:flex;align-items:center;gap:0;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.25rem}.pv-wizard-step{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.pv-wizard-step-dot{width:1.75rem;height:1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;border:2px solid oklch(.82 .03 250);background:white;color:oklch(.58 .04 250);transition:background .15s,border-color .15s,color .15s}.pv-wizard-step--active .pv-wizard-step-dot{background:oklch(.31 .05 250);border-color:oklch(.31 .05 250);color:white}.pv-wizard-step--done .pv-wizard-step-dot{background:oklch(.45 .12 145);border-color:oklch(.45 .12 145);color:white}.pv-wizard-step-label{font-size:.72rem;font-weight:500;color:oklch(.58 .03 250);white-space:nowrap}.pv-wizard-step--active .pv-wizard-step-label{color:oklch(.28 .06 250);font-weight:700}.pv-wizard-step--done .pv-wizard-step-label{color:oklch(.4 .1 145)}.pv-wizard-connector{flex:1 1;min-width:1.5rem;height:2px;background:oklch(.88 .02 250);margin:0 .25rem}.pv-wizard-connector--done{background:oklch(.55 .12 145)}.pv-wizard-body{min-height:280px}.pv-wizard-nav{display:flex;align-items:center;justify-content:space-between;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(42,50,84,.08)}.pv-wizard-review-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.pv-wizard-review-item{display:flex;align-items:flex-start;gap:.6rem;padding:.6rem .75rem;border-radius:.6rem;border:1px solid rgba(42,50,84,.07);background:oklch(.98 .005 75);font-size:.8rem}.pv-wizard-review-item-icon{font-size:1rem;flex-shrink:0}.pv-wizard-review-item-label{font-weight:600;color:oklch(.28 .04 255)}.pv-wizard-review-item-value{color:oklch(.48 .03 250);font-size:.75rem}.pv-branch-summary-card{border:1px solid rgba(42,50,84,.09);border-radius:1rem;background:white;overflow:hidden;transition:box-shadow .18s,transform .18s}.pv-branch-summary-card:hover{box-shadow:0 12px 36px rgba(21,30,49,.09);transform:translateY(-1px)}.pv-branch-summary-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem .75rem;border-bottom:1px solid rgba(42,50,84,.07);background:oklch(.985 .008 75)}.pv-branch-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.pv-branch-stat-item{padding:.6rem .75rem;border-right:1px solid rgba(42,50,84,.06);display:flex;flex-direction:column;gap:.1rem}.pv-branch-stat-item:last-child{border-right:none}.pv-branch-stat-value{font-size:1.1rem;font-weight:700;color:oklch(.28 .05 250);line-height:1.2}.pv-branch-stat-label{font-size:.66rem;color:oklch(.56 .03 250);letter-spacing:0}.pv-branch-quicklink-row{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-top:1px solid rgba(42,50,84,.06);flex-wrap:wrap}.pv-branch-quicklink{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;color:oklch(.38 .07 250);padding:.2rem .55rem;border-radius:.4rem;border:1px solid rgba(42,50,84,.12);background:oklch(.97 .01 250);text-decoration:none;transition:background .12s,border-color .12s,color .12s;white-space:nowrap}.pv-branch-quicklink:hover{background:oklch(.92 .04 250);border-color:oklch(.6 .08 250);color:oklch(.28 .06 250)}.pv-dept-stats-bar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:oklch(.48 .03 250)}.pv-dept-stats-sep{display:inline-block;width:3px;height:3px;border-radius:50%;background:oklch(.72 .02 250);vertical-align:middle}.pv-readiness-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding:.35rem .75rem .5rem;font-size:.68rem}.pv-readiness-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .4rem;border-radius:.3rem;font-weight:500}.pv-readiness-chip--ok{background:oklch(.92 .08 145);color:oklch(.3 .1 145)}.pv-readiness-chip--warn{background:oklch(.95 .08 80);color:oklch(.38 .1 70)}.pv-readiness-chip--missing{background:oklch(.96 .04 25);color:oklch(.38 .1 25)}.pv-subject-category-section{margin-top:.75rem}.pv-subject-category-header{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:oklch(.97 .01 250);border-radius:.5rem;margin-bottom:.5rem}.pv-subject-category-label{font-size:.72rem;font-weight:700;color:oklch(.42 .05 250)}.pv-subject-category-header-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(42,50,84,.09);background:oklch(.97 .01 250);color:oklch(.42 .05 250);font-size:.66rem;font-weight:600;padding:.15rem .45rem}.pv-subject-category-count{font-size:.68rem;background:oklch(.88 .04 250);color:oklch(.32 .06 250)}.pv-subject-category-count,.pv-subject-plan-badge{padding:.1rem .4rem;border-radius:99px;font-weight:600}.pv-subject-plan-badge{font-size:.65rem;border:1px solid transparent}.pv-subject-plan-badge--used{background:oklch(.92 .06 250);color:oklch(.32 .06 250);border-color:oklch(.82 .04 250)}.pv-subject-plan-badge--unused{background:oklch(.95 .07 70);color:oklch(.35 .1 60);border-color:oklch(.82 .08 70)}.pv-level-tabs{display:flex;align-items:stretch;gap:0;border-bottom:2px solid rgba(42,50,84,.08);overflow-x:auto}.pv-level-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.82rem;font-weight:600;color:oklch(.52 .04 250);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap;transition:color .15s,border-color .15s}.pv-level-tab:hover{color:oklch(.31 .05 250);border-bottom-color:rgba(42,50,84,.25)}.pv-level-tab--active{color:oklch(.31 .05 250);border-bottom-color:oklch(.31 .05 250)}.pv-level-tab-count{font-size:.68rem;padding:.1rem .35rem;border-radius:99px;background:rgba(42,50,84,.08);color:inherit;font-weight:700}.pv-level-tab--active .pv-level-tab-count{background:oklch(.31 .05 250);color:white}.pv-group-status-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding:.3rem 0 0}.pv-group-status-chip{display:inline-flex;align-items:center;gap:.2rem;font-size:.66rem;font-weight:600;padding:.15rem .45rem;border-radius:.35rem}.pv-group-status-chip--ok{background:oklch(.93 .07 145);color:oklch(.28 .1 145)}.pv-group-status-chip--partial{background:oklch(.95 .08 80);color:oklch(.35 .1 70)}.pv-group-status-chip--empty{background:oklch(.96 .04 25);color:oklch(.38 .1 25)}.pv-room-util-wrap{margin-top:.4rem}.pv-room-util-bar{height:6px;background:rgba(42,50,84,.08);border-radius:3px;overflow:hidden}.pv-room-util-fill{height:100%;border-radius:3px;transition:width .3s ease}.pv-room-util-fill--low{background:oklch(.55 .14 145)}.pv-room-util-fill--mid{background:oklch(.65 .14 75)}.pv-room-util-fill--high{background:oklch(.55 .18 25)}.pv-room-util-label{font-size:.66rem;color:oklch(.58 .03 250);margin-top:.15rem;display:flex;align-items:center;justify-content:space-between}.pv-building-summary-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-bottom:1.25rem}.pv-building-card{border:1px solid rgba(42,50,84,.09);border-radius:.85rem;padding:.85rem 1rem;background:white;display:flex;flex-direction:column;gap:.35rem;transition:box-shadow .15s}.pv-building-card:hover{box-shadow:0 8px 24px rgba(21,30,49,.08)}.pv-building-card-header{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;color:oklch(.28 .05 250)}.pv-building-card-stats{display:flex;align-items:center;gap:.75rem;font-size:.72rem;color:oklch(.52 .03 250);flex-wrap:wrap}.pv-building-occupancy-bar{height:4px;background:rgba(42,50,84,.07);border-radius:2px;overflow:hidden;margin-top:.2rem}.pv-building-occupancy-fill{height:100%;border-radius:2px;transition:width .3s}.pv-room-type-dist{display:flex;flex-direction:column;gap:.3rem;margin-top:.5rem}.pv-room-type-dist-row{display:flex;align-items:center;gap:.5rem;font-size:.72rem}.pv-room-type-dist-label{min-width:4rem;color:oklch(.48 .03 250);font-weight:500}.pv-room-type-dist-bar{flex:1 1;height:6px;background:rgba(42,50,84,.07);border-radius:3px;overflow:hidden}.pv-room-type-dist-fill{height:100%;border-radius:3px}.pv-room-type-dist-count{min-width:1.5rem;text-align:right;color:oklch(.48 .03 250);font-weight:600}.pv-master-summary-strip{position:sticky;top:.75rem;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.pv-master-summary-item{border:1px solid rgba(42,50,84,.08);border-radius:.85rem;background:oklch(.99 .006 80);padding:.75rem .9rem;display:grid;gap:.15rem}.pv-master-summary-label{color:oklch(.54 .03 250);font-size:.72rem;font-weight:600}.pv-master-summary-item strong{color:oklch(.25 .05 250);font-size:1.15rem;line-height:1.1}.pv-student-distribution{display:grid;gap:.18rem;max-width:18rem;margin-top:.35rem}.pv-student-distribution-row{display:grid;grid-template-columns:2.9rem 1fr 1.2rem;align-items:center;gap:.4rem;font-size:.66rem;color:oklch(.52 .03 250)}.pv-student-distribution-track{height:.3rem;border-radius:999px;background:rgba(42,50,84,.08);overflow:hidden}.pv-student-distribution-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,oklch(.56 .1 250),oklch(.68 .1 75))}.pv-student-distribution-count{text-align:right;font-weight:700}.pv-locked-context{display:grid;gap:.15rem;border:1px solid rgba(42,50,84,.1);border-radius:.8rem;background:oklch(.97 .012 75);padding:.75rem .9rem}.pv-locked-context-label{color:oklch(.55 .03 250);font-size:.75rem;font-weight:600}.pv-locked-context-value{color:oklch(.24 .05 250);font-weight:800}.pv-shared-policy-chip{display:inline-flex;align-items:center;border-radius:999px;background:oklch(.92 .07 145);color:oklch(.28 .1 145);font-size:.68rem;font-weight:700;padding:.15rem .5rem}.pv-map-layout{display:grid;grid-template-columns:220px 1fr;gap:1.25rem;align-items:start}@media (max-width:768px){.pv-map-layout{grid-template-columns:1fr}.pv-map-sidebar{display:none}}.pv-map-sidebar{position:sticky;top:80px;border:1px solid rgba(42,50,84,.09);border-radius:1rem;background:white;overflow:hidden}.pv-map-sidebar-header{padding:.65rem .85rem;border-bottom:1px solid rgba(42,50,84,.07);font-size:.72rem;font-weight:700;color:oklch(.48 .03 250);background:oklch(.975 .008 75)}.pv-map-sidebar-list{list-style:none;padding:.4rem 0;margin:0;max-height:70vh;overflow-y:auto}.pv-map-sidebar-item{display:flex;flex-direction:column;gap:.1rem;padding:.5rem .85rem;cursor:pointer;border-left:3px solid transparent;transition:background .12s,border-color .12s;text-decoration:none}.pv-map-sidebar-item:hover{background:oklch(.965 .01 250/.6);border-left-color:oklch(.6 .05 250)}.pv-map-sidebar-item--active{background:oklch(.955 .03 250);border-left-color:oklch(.31 .05 250)}.pv-map-sidebar-name{font-size:.78rem;font-weight:600;color:oklch(.28 .04 255)}.pv-map-sidebar-meta{font-size:.66rem;color:oklch(.58 .03 250)}.pv-room-tile{border-radius:.75rem;padding:.85rem;background:white;border:1.5px solid rgba(42,50,84,.1);position:relative;transition:box-shadow .15s,transform .15s,border-color .15s;cursor:default}.pv-room-tile:hover{box-shadow:0 8px 24px rgba(21,30,49,.1);transform:translateY(-1px)}.pv-room-tile--free{border-color:rgba(42,50,84,.08);background:white}.pv-room-tile--occupied{border-color:oklch(.62 .06 250);background:oklch(.975 .015 250)}.pv-room-tile--full{border-color:oklch(.62 .1 25);background:oklch(.975 .02 25)}.pv-room-tile--type-theory{border-left:3px solid oklch(.55 .16 250)}.pv-room-tile--type-practical{border-left:3px solid oklch(.65 .14 75)}.pv-room-tile--type-lab{border-left:3px solid oklch(.55 .14 145)}.pv-room-tile--type-workplace{border-left:3px solid oklch(.55 .12 300)}.pv-room-tile-code{font-size:1.05rem;font-weight:800;color:oklch(.22 .04 255);line-height:1.1;margin-bottom:.25rem}.pv-room-tile-name{font-size:.72rem;color:oklch(.48 .03 250);line-height:1.3;margin-bottom:.3rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pv-floor-tabs{display:flex;gap:.25rem;flex-wrap:wrap;margin-bottom:.75rem}.pv-floor-tab{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:.4rem;font-size:.75rem;font-weight:600;border:1.5px solid rgba(42,50,84,.12);background:white;color:oklch(.48 .04 250);cursor:pointer;text-decoration:none;transition:background .12s,border-color .12s,color .12s}.pv-floor-tab:hover{background:oklch(.95 .02 250);border-color:oklch(.65 .05 250)}.pv-floor-tab--active{background:oklch(.31 .05 250);border-color:oklch(.31 .05 250);color:white}.pv-map-legend{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.72rem;color:oklch(.52 .03 250);padding:.5rem 0}.pv-map-legend-dot{display:inline-block;width:.7rem;height:.7rem;border-radius:.2rem;margin-right:.2rem;vertical-align:middle}.pv-map-content{min-width:0}.pv-map-building-card{scroll-margin-top:6rem}.pv-map-building-header{position:sticky;top:0;z-index:2;background:oklch(.99 .006 80/.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pv-room-map-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem}@media (max-width:768px){.pv-master-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-branch-stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.pv-master-summary-strip,.pv-room-map-grid{grid-template-columns:1fr}}@keyframes pv-spinner{to{transform:rotate(1turn)}}.pv-view-toggle{border:1.5px solid oklch(.82 .03 250);border-radius:.5rem;overflow:hidden;background:white}.pv-view-toggle,.pv-view-toggle-btn{display:inline-flex;align-items:center}.pv-view-toggle-btn{gap:.35rem;padding:.35rem .85rem;font-size:.8rem;font-weight:600;color:oklch(.48 .05 250);background:transparent;border:none;text-decoration:none;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.pv-view-toggle-btn:hover{background:oklch(.95 .02 250);color:oklch(.28 .06 250)}.pv-view-toggle-btn--active{background:oklch(.31 .05 250);color:white}.pv-view-toggle-btn--active:hover{background:oklch(.28 .06 250);color:white}.pv-master-table{width:100%;border-collapse:collapse;font-size:.835rem}.pv-master-table thead th{padding:.55rem .75rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:oklch(.42 .04 250);background:oklch(.97 .01 250);border-bottom:2px solid oklch(.9 .02 250);white-space:nowrap;position:sticky;top:0;z-index:1}.pv-master-table thead th:first-child{padding-left:1.1rem}.pv-master-table thead th:last-child{padding-right:1.1rem;text-align:right}.pv-master-table tbody td{padding:.55rem .75rem;border-bottom:1px solid oklch(.93 .01 250);vertical-align:middle;color:oklch(.22 .04 255)}.pv-master-table tbody td:first-child{padding-left:1.1rem}.pv-master-table tbody td:last-child{padding-right:1.1rem}.pv-master-table tbody tr:last-child td{border-bottom:none}.pv-master-table tbody tr:hover td{background:oklch(.97 .015 250)}.pv-table-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.35rem}.pv-table-code-cell{font-family:ui-monospace,Cascadia Code,monospace;font-size:.78rem;font-weight:700;color:oklch(.31 .06 250);white-space:nowrap}.pv-table-util-bar{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.pv-table-util-track{width:3.5rem;height:5px;border-radius:9999px;background:oklch(.91 .02 250);overflow:hidden;flex-shrink:0}.pv-table-util-fill{height:100%;border-radius:9999px;transition:width .2s}.pv-table-util-fill--low{background:oklch(.55 .14 145)}.pv-table-util-fill--mid{background:oklch(.65 .14 75)}.pv-table-util-fill--high{background:oklch(.55 .18 25)}.pv-pagination{display:flex;gap:.3rem;flex-wrap:wrap;padding:.75rem 0}.pv-pagination,.pv-pagination-btn{align-items:center;justify-content:center}.pv-pagination-btn{display:inline-flex;min-width:2rem;height:2rem;padding:0 .55rem;border-radius:.4rem;font-size:.8rem;font-weight:600;color:oklch(.42 .05 250);background:white;border:1.5px solid oklch(.88 .02 250);text-decoration:none;cursor:pointer;transition:background .1s,border-color .1s,color .1s;white-space:nowrap}.pv-pagination-btn:hover{background:oklch(.95 .02 250);border-color:oklch(.72 .04 250);color:oklch(.28 .06 250)}.pv-pagination-btn--active{border-color:oklch(.31 .05 250);cursor:default}.pv-pagination-btn--active,.pv-pagination-btn--active:hover{background:oklch(.31 .05 250);color:white}.pv-pagination-btn--disabled{opacity:.4;pointer-events:none}.pv-pagination-info{font-size:.78rem;color:oklch(.52 .03 250);white-space:nowrap}.pv-dept-health-score{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:700;border:1.5px solid transparent}.pv-dept-health-score--high{background:oklch(.94 .05 145);border-color:oklch(.82 .1 145);color:oklch(.35 .1 145)}.pv-dept-health-score--mid{background:oklch(.96 .05 75);border-color:oklch(.85 .1 75);color:oklch(.45 .12 75)}.pv-dept-health-score--low{background:oklch(.95 .04 25);border-color:oklch(.85 .08 25);color:oklch(.45 .12 25)}.pv-dept-search-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;background:white;border:1.5px solid oklch(.88 .02 250);border-radius:.6rem;max-width:28rem;transition:border-color .15s,box-shadow .15s}.pv-dept-search-bar:focus-within{border-color:oklch(.55 .1 250);box-shadow:0 0 0 3px oklch(.55 .1 250/.12)}.pv-dept-search-bar input{flex:1 1;border:none;outline:none;font-size:.85rem;color:oklch(.22 .04 255);background:transparent}.pv-dept-search-bar input::placeholder{color:oklch(.65 .02 250)}.pv-map-search-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;background:white;border:1.5px solid oklch(.88 .02 250);border-radius:.6rem;max-width:20rem;transition:border-color .15s,box-shadow .15s}.pv-map-search-bar:focus-within{border-color:oklch(.55 .1 250);box-shadow:0 0 0 3px oklch(.55 .1 250/.12)}.pv-map-search-bar input{flex:1 1;border:none;outline:none;font-size:.82rem;color:oklch(.22 .04 255);background:transparent}.pv-map-search-bar input::placeholder{color:oklch(.65 .02 250)}.pv-room-tile--search-match{outline:2.5px solid oklch(.55 .18 250);outline-offset:1px;box-shadow:0 0 0 4px oklch(.55 .18 250/.18)}.pv-room-tile--search-dim{opacity:.35}.pv-level-row--pvc td:first-child{border-left:3px solid oklch(.55 .16 250)}.pv-level-row--pvs td:first-child{border-left:3px solid oklch(.55 .16 130)}.pv-level-row--special td:first-child{border-left:3px solid oklch(.55 .16 300)}@media (max-width:768px){.pv-view-toggle{width:100%}.pv-view-toggle-btn{flex:1 1;justify-content:center}.pv-master-table{font-size:.78rem}.pv-master-table tbody td,.pv-master-table thead th{padding:.45rem .5rem}}@media print{.pv-breadcrumb,.pv-map-legend,.pv-map-search-bar,.pv-map-sidebar,.pv-page-hero-actions,header,nav{display:none!important}.pv-map-content,.pv-map-layout{display:block!important}.pv-map-building-card{margin-bottom:1.5rem}.pv-map-building-card,.pv-room-tile{page-break-inside:avoid;break-inside:avoid}}