:root{color-scheme:light;--motion-fast: .12s;--motion-base: .2s;--motion-slow: .32s;--motion-ease: cubic-bezier(.2, .8, .2, 1);--gd-blue: #1a73e8;--gd-blue-text: #0d5fc7;--gd-blue-hover: #185abc;--gd-blue-light: #e8f0fe;--gd-bg: #ffffff;--gd-surface: #f8fafd;--gd-card: #ffffff;--gd-hover: #f1f3f4;--gd-hover-strong: #e8eaed;--gd-selected: #c2e7ff;--gd-selected-text: #001d35;--gd-border: #e5e7eb;--gd-border-strong: #dadce0;--gd-text: #1f1f1f;--gd-text-muted: #5f6368;--gd-text-faint: #6b7279;--gd-divider: #dadce0;--gd-overlay: rgba(32, 33, 36, .4);--gd-shadow-1: rgba(60, 64, 67, .18);--gd-shadow-2-a: rgba(60, 64, 67, .16);--gd-shadow-2-b: rgba(60, 64, 67, .08);--gd-shadow-3-a: rgba(60, 64, 67, .15);--gd-shadow-3-b: rgba(60, 64, 67, .12);--gd-new-bg: #c2e7ff;--gd-new-text: #001d35;--gd-new-bg-hover: #b3d9f5;--gd-file-thumb-bg: #f8fafd;--gd-page-fill: #ffffff;--gd-page-stroke: #dadce0;--gd-page-header-fill: #f1f3f4;--gd-page-line: #dadce0;--gd-search-focus-bg: #ffffff;--gd-toast-bg: #323232;--gd-toast-text: #ffffff;--gd-avatar-grad-1: #4285f4;--gd-avatar-grad-2: #1a73e8;--gd-danger: #c5221f;--gd-danger-bg: #fce8e6;--gd-input-bg: #ffffff;--gd-red: #ea4335;--gd-yellow: #fbbc04;--gd-green: #34a853;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--elev-1: 0 1px 2px var(--gd-shadow-1);--elev-2: 0 1px 3px var(--gd-shadow-2-a), 0 4px 8px var(--gd-shadow-2-b);--elev-3: 0 2px 6px var(--gd-shadow-3-a), 0 8px 24px var(--gd-shadow-3-b);--topbar-h: 64px;--sidebar-w: 256px}:root{--cl-primary: rgb(0, 138, 215);--cl-primary-dark: rgb(10, 77, 127);--cl-primary-hover: rgb(17, 138, 243);--cl-teal: rgb(5, 154, 177);--cl-bg: rgb(252, 252, 252);--cl-bg-muted: rgb(243, 243, 243);--cl-surface: rgb(255, 255, 255);--cl-surface-alt: rgb(248, 250, 252);--cl-border: rgb(238, 238, 238);--cl-border-strong: rgb(214, 218, 224);--cl-text: rgb(51, 51, 51);--cl-text-muted: rgb(107, 114, 128);--cl-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--cl-shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--cl-radius-sm: 4px;--cl-radius-md: 8px;--cl-radius-lg: 12px;--cl-radius-pill: 999px;--cl-font-family: "Open Sans", Arial, sans-serif;--font-family-primary: "Google Sans", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--cl-fs-xs: 11px;--cl-fs-sm: 13px;--cl-fs-md: 14px;--cl-fs-lg: 16px;--cl-fs-xl: 20px;--cl-fs-2xl: 24px;--cl-fw-regular: 400;--cl-fw-semibold: 600;--cl-fw-bold: 700;--cl-status-green: #388e3c;--cl-navy-hover: #0c5e9b;--cl-navy-disabled: #9bb8cf;--cl-success: #28a745;--cl-success-hover: #218838;--cl-success-disabled: #8cc89a;--cl-tonal-hover: #d2e3fc;--pp-blue-hover: #1d4ed8;--pp-eyebrow: #bfdbfe;--cl-avatar-bg: #7da9c0}[data-theme=dark]{--cl-bg: #1f1f1f;--cl-bg-muted: #28292c;--cl-surface: #28292c;--cl-surface-alt: #1f1f1f;--cl-border: #3c4043;--cl-border-strong: #5f6368;--cl-text: #e3e3e3;--cl-text-muted: #969ba1;--cl-shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--cl-shadow-md: 0 4px 12px rgba(0, 0, 0, .3)}[data-theme=dark]{--gd-blue: #8ab4f8;--gd-blue-hover: #aecbfa;--gd-blue-light: #1f3a5f;--gd-bg: #1f1f1f;--gd-surface: #28292c;--gd-card: #28292c;--gd-hover: #3c4043;--gd-hover-strong: #4a4d51;--gd-selected: #004a77;--gd-selected-text: #c2e7ff;--gd-border: #3c4043;--gd-border-strong: #5f6368;--gd-text: #e3e3e3;--gd-text-muted: #969ba1;--gd-text-faint: #7a7f85;--gd-divider: #3c4043;--gd-overlay: rgba(0, 0, 0, .6);--gd-shadow-1: rgba(0, 0, 0, .4);--gd-shadow-2-a: rgba(0, 0, 0, .35);--gd-shadow-2-b: rgba(0, 0, 0, .25);--gd-shadow-3-a: rgba(0, 0, 0, .4);--gd-shadow-3-b: rgba(0, 0, 0, .3);--gd-new-bg: #004a77;--gd-new-text: #c2e7ff;--gd-new-bg-hover: #00598c;--gd-file-thumb-bg: #202124;--gd-page-fill: #3c4043;--gd-page-stroke: #5f6368;--gd-page-header-fill: #2d2e30;--gd-page-line: #5f6368;--gd-search-focus-bg: #303134;--gd-toast-bg: #e3e3e3;--gd-toast-text: #1f1f1f;--gd-avatar-grad-1: #8ab4f8;--gd-avatar-grad-2: #1a73e8;--gd-danger: #f28b82;--gd-danger-bg: #4a2520;--gd-input-bg: #303134;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-family-primary);font-size:14px;color:var(--gd-text);background:var(--gd-bg);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}input,select{font:inherit;color:inherit}input[type=checkbox],input[type=radio],input[type=range],progress{accent-color:var(--gd-blue, #1a73e8)}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;display:inline-block;vertical-align:middle;background:var(--gd-bg, #ffffff);border:1.5px solid var(--gd-border-strong, #b0b3b8);cursor:pointer;position:relative;transition:background var(--motion-fast, .12s) var(--motion-ease, ease),border-color var(--motion-fast, .12s) var(--motion-ease, ease);flex-shrink:0}input[type=checkbox]{border-radius:3px}input[type=radio]{border-radius:50%}input[type=checkbox]:hover,input[type=radio]:hover{border-color:var(--gd-blue, #1a73e8)}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--gd-blue, #1a73e8);border-color:var(--gd-blue, #1a73e8)}input[type=checkbox]:checked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M4 8.5l2.8 2.8L12 6' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-size:100% 100%;background-repeat:no-repeat}input[type=radio]:checked:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:#fff}input[type=checkbox]:indeterminate{background:var(--gd-blue, #1a73e8);border-color:var(--gd-blue, #1a73e8)}input[type=checkbox]:indeterminate:after{content:"";position:absolute;left:3px;right:3px;top:50%;height:2px;margin-top:-1px;border-radius:1px;background:#fff}input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:var(--topbar-h) 1fr;grid-template-areas:"topbar  topbar" "sidebar main";min-height:100vh;background:var(--gd-bg);transition:grid-template-columns .2s ease}.app[data-sidebar-collapsed=true]{--sidebar-w: 72px}.app[data-view=admin]{grid-template-columns:1fr;grid-template-rows:1fr;grid-template-areas:"main"}.app[data-view=admin] .admin-shell{grid-area:main;overflow-y:auto}.app>.topbar{grid-area:topbar}.app>.sidebar{grid-area:sidebar}.app>.main{grid-area:main;background:var(--gd-surface);overflow:hidden}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1f2937f5;color:#fff;padding:5px 10px;border-radius:4px;font-size:12px;font-family:var(--font-family-primary);font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .1s ease var(--motion-fast),visibility 0s var(--motion-slow);z-index:9999;box-shadow:0 4px 12px #0000002e}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;visibility:visible;transition:opacity .1s ease var(--motion-fast),visibility 0s var(--motion-fast)}[data-tooltip][disabled]:after,[data-tooltip][aria-disabled=true]:after{display:none}[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 8px)}[data-tooltip-pos=right]:after{bottom:auto;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}[data-tooltip-pos=left]:after{bottom:auto;top:50%;left:auto;right:calc(100% + 8px);transform:translateY(-50%)}.app[data-view=admin] .topbar-search-wrap{display:none}.app[data-view=admin] .topbar-right>.icon-btn:not(.topbar-theme-toggle),.app[data-view=admin] .topbar-right>.avatar-btn{display:none}.toast{position:fixed;bottom:24px;left:calc(var(--sidebar-w) + 24px);background:var(--gd-toast-bg);color:var(--gd-toast-text);padding:12px 18px;border-radius:var(--radius-sm);font-size:14px;box-shadow:var(--elev-2);z-index:300;animation:toast-in .18s ease-out;display:inline-flex;align-items:center;gap:18px;max-width:calc(100vw - var(--sidebar-w) - 48px)}.toast-msg{flex:1;min-width:0}.toast-action{background:transparent;border:0;color:#8ab4f8;font:inherit;font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background var(--motion-fast)}.toast-action:hover{background:#8ab4f826}.toast-action:focus-visible{outline:2px solid #8ab4f8;outline-offset:2px}.toast-msg__hint{color:#ffffffa6;font-size:13px}.toast--with-undo .toast-action{display:inline-flex;align-items:center;gap:6px}.toast-action__ring{display:block;transform:rotate(-90deg);flex-shrink:0}.toast-action__ring-track{fill:none;stroke:#ffffff2e;stroke-width:2}.toast-action__ring-progress{fill:none;stroke:#8ab4f8;stroke-width:2;stroke-linecap:round;stroke-dasharray:44;stroke-dashoffset:0;animation:toast-ring-drain var(--toast-duration, 30s) linear forwards}@keyframes toast-ring-drain{0%{stroke-dashoffset:0}to{stroke-dashoffset:44}}@media (prefers-reduced-motion: reduce){.toast-action__ring-progress{animation:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:where(.icon-btn,.btn,.popover-item,.sidebar-item,.sidebar-drive,.sidebar-drive-row,.sidebar-drive-toggle,.topbar-search-action,.avatar-btn,.view-toggle-seg,.admin__nav-item,.admin__nav-chevron,.kebab-menu button,.pp-tab,.pp-filter-chip,.pp-app-card,.pp-app-row,.pp-detail-tab,.pp-detail-close,.pp-detail-launch,.pp-pagination-btn,.pp-pagination-num,.pp-hero-cta,.pp-hero-cta-secondary,.pp-hero-secondary,.pp-hero-tile,.pp-hero-edit-btn,.pp-cta-toolbar-btn,.aa-tab,.aa-add-btn,.aa-icon-btn,.aa-bulk-bar-btn,.aa-bulk-bar-popover-item,.aa-col-item,.aa-col-card,.aa-featured-card,.csv-step,.csv-dropzone,.csv-map-select,.pp-tour-btn,.pp-tour-action-btn,.pp-tour-dot,.pp-tour-close,.pp-edit-bar-help,.pp-url-setting-verify,.pp-url-setting-view,.pp-tab-add,.pp-tab-add-go,.pp-tab-add-cancel,.parent-tab,.parent-icon-btn,.parent-back,.parent-impers-btn,.parent-app-tile,.parent-student-card,.student-selector__btn,.student-selector__opt,.class-card,.app-tile,.imp-modal__btn,.imp-modal__scrim,.code-prefix__verify,.csv-import-reset,.aa-dialog-close,.pp-logo-edit-btn,.pp-hero-featured-tab,button[type=button],button[type=submit],a[href]):focus-visible{outline:2px solid #1a73e8;outline-offset:2px;border-radius:4px;box-shadow:0 0 0 4px #1a73e82e}:where(input,select,textarea):focus-visible{outline:2px solid #1a73e8;outline-offset:1px;box-shadow:0 0 0 3px #1a73e833}.icon-btn:focus-visible,.btn:focus-visible,.popover-item:focus-visible{outline:2px solid var(--gd-blue, #1a73e8);outline-offset:2px}:where(button,a,input,select,textarea):focus:not(:focus-visible){outline:none}.topbar{display:flex;align-items:center;height:var(--topbar-h);padding:0 16px;background:var(--gd-bg);border-bottom:1px solid var(--gd-border);gap:8px}.topbar-left{display:flex;align-items:center;gap:8px;width:calc(var(--sidebar-w) - 16px);flex-shrink:0}.icon-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--gd-text-muted);transition:background var(--motion-fast, var(--motion-fast)) var(--motion-ease, ease),transform var(--motion-fast, .12s) var(--motion-ease, ease)}.icon-btn:active{transform:scale(.94)}.icon-btn:hover{background:var(--gd-hover)}.icon-btn svg{width:20px;height:20px}.brand{display:flex;align-items:center;gap:8px;margin-left:4px}.brand-mark{width:36px;height:36px;display:flex;align-items:center;justify-content:center}.brand-tile{width:36px;height:36px;border-radius:8px;background:var(--cl-primary-dark, #1f4e79);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.brand-tile svg{display:block}.brand-name{font-family:var(--font-family-primary);font-size:22px;font-weight:700;color:var(--cl-primary-dark, #1f4e79);letter-spacing:-.2px;white-space:nowrap}[data-theme=dark] .brand-name{color:#fff}.topbar-search-wrap{flex:1;display:flex;justify-content:center;max-width:720px;margin:0 auto}.topbar-search{display:flex;align-items:center;background:var(--gd-surface);border-radius:var(--radius-pill);height:48px;padding:0 20px;width:100%;max-width:720px;transition:background .15s,box-shadow .15s;border:1px solid transparent}.topbar-search:focus-within{background:var(--gd-card);box-shadow:var(--elev-2);border-color:transparent}.topbar-search svg{width:22px;height:22px;color:var(--gd-text-muted);flex-shrink:0}.topbar-search input{flex:1;border:0;outline:0;background:transparent;font-size:16px;padding:0 12px;color:var(--gd-text)}.topbar-search input::placeholder{color:var(--gd-text-muted)}.topbar-search-action{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--gd-text-muted)}.topbar-search-action:hover{background:var(--gd-hover)}.topbar-right{display:flex;align-items:center;gap:4px;flex-shrink:0;padding-left:8px}.avatar-btn{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--gd-avatar-grad-1),var(--gd-avatar-grad-2));color:#fff;font-weight:600;display:inline-flex;align-items:center;justify-content:center;font-size:15px;margin-left:4px}.sidebar{display:flex;flex-direction:column;background:var(--gd-bg);padding:8px 8px 12px;border-right:1px solid var(--gd-border);overflow:visible}.sidebar-new{display:inline-flex;align-items:center;gap:12px;background:var(--gd-new-bg);color:var(--gd-new-text);border-radius:var(--radius-md);padding:0 24px 0 16px;height:56px;align-self:flex-start;margin:8px 8px 16px;font-family:var(--font-family-primary);font-size:14px;font-weight:500;box-shadow:var(--elev-1);transition:box-shadow .15s,background .15s;position:relative}.sidebar-new:hover{box-shadow:var(--elev-2);background:var(--gd-new-bg-hover)}.sidebar-new-plus{width:24px;height:24px;position:relative}.sidebar-new-plus svg{width:24px;height:24px}.sidebar-section{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.sidebar-top-section{margin-top:8px}.sidebar-item{display:flex;align-items:center;gap:16px;padding:0 16px 0 24px;height:36px;border-radius:0 var(--radius-pill) var(--radius-pill) 0;margin-right:8px;color:var(--gd-text);font-size:14px;cursor:pointer;font-family:var(--font-family-primary)}.sidebar-item:hover{background:var(--gd-hover)}.sidebar-item.active{background:var(--gd-selected);color:var(--gd-selected-text);font-weight:500}.sidebar-item svg{width:18px;height:18px;flex-shrink:0;color:var(--gd-text-muted)}.sidebar-item.active svg{color:var(--gd-selected-text)}.sidebar-item-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-drive{display:flex;align-items:center;padding:6px 12px;margin:2px 8px;border-radius:var(--radius-pill);transition:background .15s,color .15s;cursor:pointer}.sidebar-drive:hover{background:var(--gd-hover)}.sidebar-drive.active{background:var(--gd-selected);color:var(--gd-selected-text)}.sidebar-drive.active:hover{background:var(--gd-selected)}.sidebar-drive-toggle{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--gd-text-muted);margin-right:4px;margin-left:4px;flex-shrink:0;background:transparent}.sidebar-drive.active .sidebar-drive-toggle{color:var(--gd-selected-text)}.sidebar-drive-toggle:hover{background:#0000000f}.sidebar-drive.active .sidebar-drive-toggle:hover{background:#00000014}[data-theme=dark] .sidebar-drive-toggle:hover{background:#ffffff14}.sidebar-drive-toggle svg{width:18px;height:18px;transition:transform .15s}.sidebar-drive-toggle.expanded svg{transform:rotate(90deg)}.sidebar-drive-row{flex:1;min-width:0;display:flex;align-items:center;gap:12px;cursor:pointer;font-family:var(--font-family-primary);background:transparent}.sidebar-drive-meta{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.15}.sidebar-drive-name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-drive-provider{font-size:11px;color:var(--gd-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.sidebar-drive.active .sidebar-drive-provider{color:var(--gd-selected-text);opacity:.7}.sidebar-drive-collapse{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--gd-text-muted);background:transparent;flex-shrink:0;margin-left:4px;transition:background var(--motion-fast),color var(--motion-fast)}.sidebar-drive-collapse svg{transition:transform var(--motion-fast) ease;transform:rotate(-90deg)}.sidebar-drive-collapse.expanded svg{transform:rotate(0)}.sidebar-drive-collapse:hover{background:#00000014;color:var(--gd-text)}[data-theme=dark] .sidebar-drive-collapse:hover{background:#ffffff1a}.sidebar-drive.active .sidebar-drive-collapse{color:var(--gd-selected-text)}.sidebar-drive.active .sidebar-drive-collapse:hover{background:#0000001a}.sidebar-subitem{padding-left:56px!important;font-size:13px}.sidebar-divider{height:1px;background:var(--gd-border);margin:8px 0}.drive-storage{margin:6px 16px 12px 56px}.drive-storage-bar{height:4px;background:var(--gd-hover-strong);border-radius:2px;overflow:hidden}.drive-storage-bar-fill{height:100%;background:var(--gd-blue);transition:width .2s}.drive-storage-label{margin-top:4px;font-size:11px;color:var(--gd-text-muted);font-family:var(--font-family-primary)}.app[data-sidebar-collapsed=true] .sidebar{padding:8px 4px;overflow-x:hidden}.app[data-sidebar-collapsed=true] .sidebar-item,.app[data-sidebar-collapsed=true] .sidebar-drive-row{padding:0;width:56px;height:56px;margin:4px auto;border-radius:50%;justify-content:center;gap:0}.app[data-sidebar-collapsed=true] .sidebar-item-label,.app[data-sidebar-collapsed=true] .sidebar-drive-toggle,.app[data-sidebar-collapsed=true] .sidebar-drive-meta,.app[data-sidebar-collapsed=true] .sidebar-drive-collapse,.app[data-sidebar-collapsed=true] .sidebar-subitem,.app[data-sidebar-collapsed=true] .sidebar-divider{display:none}.app[data-sidebar-collapsed=true] .sidebar-drive{padding:0;justify-content:center}.app[data-sidebar-collapsed=true] .sidebar-top-section{margin-top:4px}.app[data-sidebar-collapsed=true] .sidebar-add-drive{width:56px;margin:0 auto 8px;padding:0;height:56px;justify-content:center;gap:0;border-radius:50%}.app[data-sidebar-collapsed=true] .sidebar-add-drive span,.app[data-sidebar-collapsed=true] .brand-name{display:none}.app[data-sidebar-collapsed=true] .admin-shell{grid-template-columns:72px 1fr}.app[data-sidebar-collapsed=true] .admin__sidebar{padding:16px 8px;gap:8px;align-items:center}.app[data-sidebar-collapsed=true] .admin__brand-name,.app[data-sidebar-collapsed=true] .admin__user-name,.app[data-sidebar-collapsed=true] .admin__user-role,.app[data-sidebar-collapsed=true] .admin__nav-item span{display:none}.app[data-sidebar-collapsed=true] .admin__brand{justify-content:center;padding:0}.app[data-sidebar-collapsed=true] .admin__user{width:44px;height:44px;padding:0;border-radius:50%;justify-content:center;align-self:center}.app[data-sidebar-collapsed=true] .admin__user-avatar{width:28px;height:28px;font-size:14px}.app[data-sidebar-collapsed=true] .admin__nav,.app[data-sidebar-collapsed=true] .admin__footer-nav{align-self:stretch}.app[data-sidebar-collapsed=true] .admin__nav-item{justify-content:center;padding:10px 0;gap:0}.sidebar-add-drive{margin:12px 8px 4px;display:inline-flex;align-items:center;gap:12px;height:40px;padding:0 16px;border-radius:var(--radius-pill);border:1px dashed var(--gd-border-strong);background:transparent;color:var(--gd-blue-text);font-family:var(--font-family-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.sidebar-add-drive:hover{background:var(--gd-blue-light);border-color:var(--gd-blue)}.sidebar-add-drive svg{width:18px;height:18px}.sidebar-bottom{margin-top:auto;padding:12px 16px 4px;font-size:13px;color:var(--gd-text-muted)}.sidebar-bottom .manage-link{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:6px 0}.sidebar-bottom .manage-link:hover{color:var(--gd-blue-text)}.sidebar-bottom .manage-link svg{width:16px;height:16px}.storage-meta{margin-top:12px;font-size:12px;color:var(--gd-text-muted)}.storage-bar{height:4px;background:var(--gd-hover-strong);border-radius:2px;margin:6px 0 4px;overflow:hidden}.storage-bar-fill{height:100%;width:60%;background:var(--gd-blue)}.main-inner{height:100%;display:flex;flex-direction:column;background:var(--gd-surface);border-top-left-radius:var(--radius-lg);overflow:hidden}.main-scroll{flex:1;overflow-y:auto;padding:8px 24px 32px}.page-header{display:flex;align-items:center;justify-content:space-between;padding:8px 24px 12px;background:var(--gd-surface)}.page-title{display:flex;align-items:center;gap:4px;font-family:var(--font-family-primary);font-size:22px;font-weight:500;color:var(--gd-text)}.page-title__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}.page-title__item{display:inline-flex;align-items:center;gap:4px}.page-title-segment{padding:4px 10px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;background:transparent;border:0;color:inherit;font:inherit;line-height:inherit}.page-title-segment:hover{background:var(--gd-hover)}.page-title-segment.current{cursor:default}.page-title-segment.current:hover{background:transparent}.page-title-chevron{width:22px;height:22px;color:var(--gd-text-muted)}.page-tools{display:flex;align-items:center;gap:4px}.sort-btn{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 12px;border-radius:var(--radius-pill);color:var(--gd-text);font-size:14px;font-family:var(--font-family-primary)}.page-new-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 18px 0 14px;border-radius:var(--radius-pill);background:var(--gd-blue-light);color:var(--gd-blue-text);font-size:14px;font-weight:500;font-family:var(--font-family-primary);margin-right:8px;transition:background .15s,box-shadow .15s}.page-new-btn:hover{background:var(--gd-blue);color:#fff;box-shadow:var(--elev-1)}.page-new-btn svg{width:18px;height:18px}.page-new-chevron{margin-left:2px;margin-right:-4px}.popover-section-label{font-size:11px;font-weight:600;color:var(--gd-text-muted);padding:6px 16px 4px;text-transform:uppercase;letter-spacing:.04em}.sort-btn:hover{background:var(--gd-hover)}.sort-btn svg{width:18px;height:18px;color:var(--gd-text-muted)}.view-toggle{display:inline-flex;align-items:center;gap:2px;margin-left:4px}.view-toggle .icon-btn.active{background:var(--gd-selected);color:var(--gd-selected-text)}.section-label{font-family:var(--font-family-primary);font-size:14px;font-weight:500;color:var(--gd-text);margin:16px 0 12px}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.folder-pill{display:flex;align-items:center;gap:12px;background:var(--gd-card);border:1px solid var(--gd-border);border-radius:var(--radius-sm);padding:10px 8px 10px 16px;cursor:pointer;transition:background var(--motion-fast, .12s) var(--motion-ease, ease),border-color var(--motion-fast, .12s) var(--motion-ease, ease),transform var(--motion-fast, .12s) var(--motion-ease, ease),box-shadow var(--motion-base, .2s) var(--motion-ease, ease);position:relative}.folder-pill:active{transform:scale(.98)}.folder-pill:hover{background:var(--gd-hover)}.folder-pill .folder-icon-sm{width:22px;height:22px;flex-shrink:0}.folder-pill .name{flex:1;font-size:14px;color:var(--gd-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-family-primary)}.folder-pill .star-mark{color:var(--gd-text-muted);display:inline-flex}.folder-pill .star-mark svg{width:16px;height:16px;fill:currentColor}.kebab-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--gd-text-muted);border-radius:50%;opacity:0;transition:opacity .15s,background .15s}.folder-pill:hover .kebab-btn,.file-tile:hover .kebab-btn,.list-row:hover .kebab-btn,.kebab-btn.open{opacity:1}.kebab-btn:hover{background:var(--gd-hover-strong)}.kebab-btn svg{width:18px;height:18px}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.file-tile{background:var(--gd-card);border:1px solid var(--gd-border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:border-color var(--motion-fast, .12s) var(--motion-ease, ease),box-shadow var(--motion-base, .2s) var(--motion-ease, ease),transform var(--motion-fast, .12s) var(--motion-ease, ease);height:200px;position:relative}.file-tile:active{transform:scale(.98)}.file-tile:hover{border-color:var(--gd-border-strong);box-shadow:var(--elev-1)}.file-tile-thumb{flex:1;background:var(--gd-surface);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--gd-border);position:relative}.file-tile-thumb .file-icon-lg{width:64px;height:80px}.file-tile-footer{display:flex;align-items:center;gap:8px;padding:8px 4px 8px 12px;height:48px}.file-tile-footer .file-icon-sm{width:18px;height:22px;flex-shrink:0}.file-tile-footer .name{flex:1;font-size:13px;color:var(--gd-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-family-primary)}.star-mark-tile{position:absolute;top:8px;left:8px;background:var(--gd-card);border:1px solid var(--gd-border);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--gd-text-muted)}.star-mark-tile svg{width:14px;height:14px;fill:currentColor}.gd-folder-icon svg,.gd-file-icon svg{width:100%;height:100%;display:block}.file-icon-lg .label-tile,.file-icon-sm .label-tile{position:absolute;color:#fff;font-size:8px;font-weight:700;padding:1px 4px;border-radius:2px}.file-icon-lg .label-tile{font-size:10px;padding:2px 6px;bottom:18%;left:12%}.file-icon-sm .label-tile{font-size:7px;padding:0 3px;bottom:18%;left:12%}.file-icon-lg,.file-icon-sm{position:relative;display:inline-flex}.list-card{background:var(--gd-card);border-radius:var(--radius-md);overflow:hidden}.list-header,.list-row{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(0,.9fr) minmax(0,1fr) minmax(0,.7fr) 40px;align-items:center;gap:12px;padding:0 24px;height:44px}.list-header{font-size:12px;font-weight:600;color:var(--gd-text-muted);text-transform:none;border-bottom:1px solid var(--gd-border);position:sticky;top:0;background:var(--gd-card);z-index:5}.list-row{font-size:14px;color:var(--gd-text);cursor:pointer;border-bottom:1px solid var(--gd-border);height:48px;transition:background .1s}.list-row:hover{background:var(--gd-hover)}.list-row:last-child{border-bottom:0}.list-row .col-name{display:flex;align-items:center;gap:16px;font-family:var(--font-family-primary);min-width:0}.list-row .col-name .icon{width:24px;height:24px;flex-shrink:0;display:inline-flex;align-items:center}.list-row .col-name .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row .col-name .star-mark{color:var(--gd-text-muted);display:inline-flex;margin-left:6px}.list-row .col-name .star-mark svg{width:14px;height:14px;fill:currentColor}.list-row .col-muted{color:var(--gd-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row .col-action{display:inline-flex;justify-content:flex-end}.popover{background:var(--gd-card);border-radius:var(--radius-sm);box-shadow:var(--elev-2);padding:8px 0;min-width:240px;z-index:200}.popover-item{display:flex;align-items:center;gap:16px;width:100%;height:36px;padding:0 20px 0 16px;font-size:14px;color:var(--gd-text);text-align:left;font-family:var(--font-family-primary)}.popover-item:hover{background:var(--gd-hover)}.popover-item svg{width:18px;height:18px;color:var(--gd-text-muted);flex-shrink:0}.popover-item.danger{color:var(--gd-danger)}.popover-item.danger svg{color:var(--gd-danger)}.popover-divider{height:1px;background:var(--gd-border);margin:4px 0}.popover-submenu{position:relative}.popover-submenu-arrow{margin-left:auto;color:var(--gd-text-faint)}.popover-submenu-panel{position:absolute;left:calc(100% - 4px);top:0;background:var(--gd-card);border-radius:var(--radius-sm);box-shadow:var(--elev-2);padding:8px 0;min-width:200px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--gd-overlay);display:flex;align-items:center;justify-content:center;z-index:150}.modal{background:var(--gd-card);border-radius:var(--radius-md);width:560px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--elev-3)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.modal-title{font-family:var(--font-family-primary);font-size:18px;font-weight:500;color:var(--gd-text)}.modal-body{padding:8px 24px 24px;overflow-y:auto}.provider-row{display:flex;align-items:center;gap:16px;padding:12px 4px;border-bottom:1px solid var(--gd-border)}.provider-row:last-child{border-bottom:0}.provider-group{border-bottom:1px solid var(--gd-border);padding:12px 0}.provider-group:last-child{border-bottom:0}.provider-group-header{display:flex;align-items:center;gap:12px}.provider-group-name{flex:1;font-weight:500;font-size:15px;color:var(--gd-text)}.provider-connections{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding-left:40px}.provider-connection{display:flex;align-items:center;gap:12px;background:var(--gd-surface);border-radius:var(--radius-sm);padding:8px 12px}.provider-connection-meta{flex:1;min-width:0}.provider-connection-name{font-weight:500;font-size:14px;color:var(--gd-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-connection-status{font-size:12px;color:var(--gd-text-muted);margin-top:2px}.provider-row-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center}.provider-row-meta{flex:1}.provider-row-name{font-weight:500;font-size:15px;color:var(--gd-text)}.provider-row-status{font-size:13px;color:var(--gd-text-muted);margin-top:2px}.btn{height:36px;padding:0 18px;border-radius:var(--radius-pill);font-family:var(--font-family-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background var(--motion-fast, .12s) var(--motion-ease, ease),box-shadow var(--motion-base, .2s) var(--motion-ease, ease),color var(--motion-fast, .12s) var(--motion-ease, ease),transform var(--motion-fast, .12s) var(--motion-ease, ease);display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:var(--gd-blue);color:#fff}.btn-primary:hover{background:var(--gd-blue-hover);box-shadow:var(--elev-1)}.btn-secondary{background:transparent;color:var(--gd-blue-text)}.btn-secondary:hover{background:var(--gd-blue-light)}.btn-tonal{background:var(--gd-blue-light);color:var(--gd-blue-text)}.btn-tonal:hover{background:var(--cl-tonal-hover)}.btn-text-danger{background:transparent;color:var(--gd-danger)}.btn-text-danger:hover{background:var(--gd-danger-bg)}.btn-navy{background:var(--cl-primary-dark);color:#fff;font-family:var(--cl-font-family);font-weight:var(--cl-fw-semibold);display:inline-flex;align-items:center;gap:6px}.btn-navy:hover{background:var(--cl-navy-hover)}.btn-navy:disabled{background:var(--cl-navy-disabled);cursor:not-allowed}.btn-green{background:var(--cl-success);color:#fff;font-family:var(--cl-font-family);font-weight:var(--cl-fw-semibold)}.btn-green:hover{background:var(--cl-success-hover)}.btn-green:disabled{background:var(--cl-success-disabled);cursor:not-allowed}.btn-secondary-bordered{background:transparent;color:var(--cl-text);border:1px solid var(--cl-border-strong);font-family:var(--cl-font-family);font-weight:var(--cl-fw-semibold)}.btn-secondary-bordered:hover{background:var(--cl-bg-muted)}.form-label{display:block;font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text);margin-bottom:6px}.form-hint{font-family:var(--cl-font-family);font-size:var(--cl-fs-xs);color:var(--cl-text-muted);line-height:1.45;margin-top:6px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:8px 24px 20px}.confirm-body{padding:0 24px 20px;font-size:14px;color:var(--gd-text);line-height:1.5}.empty-state{padding:80px 20px;text-align:center;color:var(--gd-text-muted);font-size:14px}.empty-state .empty-icon{margin:0 auto 12px;width:80px;height:80px;color:var(--gd-border-strong)}.empty-state-cta{margin-top:16px;display:inline-flex;align-items:center;gap:6px}.empty-state--branded{padding-top:56px;padding-bottom:56px}.empty-state--branded .empty-illustration{display:block;margin:0 auto 16px;width:144px;height:120px;animation:emptyFloat var(--motion-slow, .32s) var(--motion-ease, ease) both}.empty-state__headline{font-size:16px;font-weight:600;color:var(--gd-text, #1f1f1f);margin-bottom:4px}.empty-state__subtle{font-size:13px;color:var(--gd-text-muted, #5f6368);margin-bottom:4px}@keyframes emptyFloat{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.pp-page{--pp-primary: #1e40af;--pp-primary-foreground: #ffffff;--pp-background: #ffffff;--pp-foreground: #0f172a;--pp-card: #ffffff;--pp-border: #e2e8f0;--pp-muted: #f1f5f9;--pp-muted-foreground: #475569;--pp-accent: #f1f5f9;--pp-emerald-bg: rgba(16, 185, 129, .1);--pp-emerald-text: #047857;--pp-emerald-border: rgba(16, 185, 129, .2);--pp-blue-bg: rgba(59, 130, 246, .1);--pp-blue-text: #1e40af;--pp-shadow-card-hover: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--pp-container-max: 1280px;--pp-radius-lg: .75rem;--pp-radius-md: .5rem;--pp-radius-sm: .375rem;font-family:Inter,Inter Variable,ui-sans-serif,system-ui,sans-serif;background:var(--pp-background);color:var(--pp-foreground);min-height:100vh;padding-bottom:96px}[data-theme=dark] .pp-page{--pp-primary: #3b82f6;--pp-background: #0f172a;--pp-foreground: #e2e8f0;--pp-card: #1e293b;--pp-border: #334155;--pp-muted: #1e293b;--pp-muted-foreground: #cbd5e1;--pp-accent: #1e293b;--pp-emerald-text: #6ee7b7;--pp-blue-text: #93c5fd;--pp-shadow-card-hover: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4)}.app--portal,.app--parent,.app--impersonate{display:block;min-height:100vh;grid-template-columns:none;grid-template-rows:none}.pp-header{position:sticky;top:0;z-index:50;width:100%;border-bottom:1px solid var(--pp-border);background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=dark] .pp-header{background:#0f172af2}.pp-header-inner{max-width:var(--pp-container-max);margin:0 auto;display:flex;align-items:center;gap:1rem;height:64px;padding:0 1rem}@media (min-width: 640px){.pp-header-inner{padding:0 2rem}}@media (min-width: 1024px){.pp-header-inner{padding:0 4rem}}.pp-header-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;color:var(--pp-foreground);text-decoration:none}.pp-header-logo{position:relative;width:40px;height:40px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;overflow:visible;flex-shrink:0}.pp-header-logo .pp-logo-svg,.pp-header-logo-img{width:40px;height:40px;border-radius:6px;display:block;object-fit:cover}.pp-header-logo .pp-logo-classlink{width:40px;height:40px;border-radius:8px;background:#fff;padding:4px;object-fit:contain}.pp-header-logo.is-editable{outline:1px dashed var(--pp-primary);outline-offset:3px;border-radius:6px}.pp-logo-edit-btn{position:absolute;bottom:-10px;right:-10px;width:24px;height:24px;border-radius:999px;background:var(--pp-primary, #1e40af);color:#fff;border:2px solid var(--pp-background, #ffffff);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--elev-2);padding:0}.pp-logo-edit-btn:hover{background:var(--pp-blue-hover)}.pp-hidden-file{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pp-header-title{font-size:18px;font-weight:700;color:var(--pp-primary)}.pp-header-search-wrap{flex:1;max-width:36rem;margin:0 auto}.pp-header-search{position:relative;display:flex;align-items:center}.pp-header-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--pp-muted-foreground);pointer-events:none}.pp-header-search input{width:100%;height:40px;padding:0 16px 0 36px;border:2px solid var(--pp-border);border-radius:var(--pp-radius-md);background:var(--pp-background);color:var(--pp-foreground);font-size:14px;font-family:inherit;outline:none}.pp-header-search input:focus{border-color:var(--pp-primary)}.pp-header-search input::placeholder{color:var(--pp-muted-foreground)}.pp-header-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.pp-header-icon-btn{width:40px;height:40px;border:1px solid var(--pp-border);border-radius:var(--pp-radius-md);background:transparent;color:var(--pp-muted-foreground);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,background .15s}.pp-header-icon-btn:hover{color:var(--pp-foreground);background:var(--pp-muted)}.pp-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary) 50%,var(--pp-blue-hover) 100%);color:#fff}.pp-hero--has-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#0f172a9e,#0f172a73 45%,#0f172a2e 85%,#0f172a0d);pointer-events:none;z-index:0}.pp-hero--has-bg>*{position:relative;z-index:1}.pp-hero--has-bg .pp-hero-tile{box-shadow:0 10px 24px -8px #00000080}.pp-hero-circles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.pp-hero-circle{position:absolute;border-radius:50%;background:#ffffff0d}.pp-hero-circle--tr{top:-96px;right:-96px;width:384px;height:384px}.pp-hero-circle--bl{bottom:-128px;left:-128px;width:500px;height:500px}.pp-hero-circle--mid{top:50%;left:33%;transform:translateY(-50%);width:256px;height:256px}.pp-hero-inner{position:relative;max-width:var(--pp-container-max);margin:0 auto;padding:48px 16px;display:grid;grid-template-columns:1fr;gap:40px;align-items:center}@media (min-width: 640px){.pp-hero-inner{padding:64px 32px}}@media (min-width: 1024px){.pp-hero-inner{padding:80px 64px;grid-template-columns:1fr 1fr}}.pp-hero-eyebrow{font-size:14px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--pp-eyebrow);margin-bottom:12px}.pp-hero-title{font-size:30px;line-height:1.1;font-weight:700;letter-spacing:-.025em;margin:0}@media (min-width: 640px){.pp-hero-title{font-size:48px}}@media (min-width: 1024px){.pp-hero-title{font-size:60px}}.pp-hero-desc{margin:16px 0 0;max-width:32rem;font-size:18px;line-height:1.6;color:#dbeafe}.pp-hero-actions{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}.pp-hero-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--pp-radius-md);background:#fff;color:var(--pp-primary);font-size:14px;font-weight:600;font-family:inherit;border:0;cursor:pointer;transition:background .15s,box-shadow .15s,transform .1s}.pp-hero-cta:hover{background:#eff6ff;box-shadow:var(--elev-3)}.pp-hero-cta:active{transform:scale(.97)}.pp-hero-secondary{font-size:14px;color:#bfdbfe;text-decoration:underline;text-underline-offset:4px;background:transparent;border:0;cursor:pointer;font-family:inherit}.pp-hero-secondary:hover{color:#fff}.pp-hero-cta-secondary{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:var(--pp-radius-md);background:transparent;color:#fff;font-size:14px;font-weight:600;font-family:inherit;border:1.5px solid rgba(255,255,255,.7);cursor:pointer;transition:background .15s,border-color .15s,transform .1s;position:relative}.pp-hero-cta-secondary:hover{background:#ffffff1f;border-color:#fff}.pp-hero-cta-secondary:active{transform:scale(.97)}.pp-hero-cta-secondary-edit{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:#ffffff2e;cursor:pointer}.pp-hero-cta-secondary-edit:hover{background:#ffffff4d}.pp-hero-cta-wrap{position:relative;display:inline-flex;align-items:center;gap:6px}.pp-cta-toolbar{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity var(--motion-fast) ease;pointer-events:none}.pp-hero-cta-wrap:hover .pp-cta-toolbar,.pp-hero-cta-wrap:focus-within .pp-cta-toolbar,.pp-cta-toolbar:hover{opacity:1;pointer-events:auto}.pp-cta-toolbar-btn{width:24px;height:24px;border-radius:999px;background:transparent;color:#fff;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background var(--motion-fast) ease}.pp-cta-toolbar-btn:hover{background:#fff3}.pp-cta-toolbar-btn--remove:hover{background:#dc26268c}.pp-hero-cta-editor-head{font-size:12px;color:#ffffffd9;margin-bottom:4px}.pp-hero-cta-editor-head strong{color:#fff;font-weight:700}.pp-hero-add-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:var(--pp-radius-md);background:#ffffff1f;color:#fff;font-size:13px;font-weight:600;font-family:inherit;border:1px dashed rgba(255,255,255,.6);cursor:pointer}.pp-hero-add-btn:hover{background:#ffffff38;border-color:#fff}.pp-hero-edit-toolbar{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:8px;z-index:3}.pp-hero-edit-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#0f172a8c;color:#fff;font-size:12px;font-weight:600;font-family:inherit;border:1px solid rgba(255,255,255,.25);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pp-hero-edit-btn:hover{background:#0f172abf;border-color:#ffffff73}.pp-hero-edit-btn--ghost{background:#ffffff1f}.pp-hero-edit-btn--primary{background:var(--pp-primary, #1e40af);border-color:var(--pp-primary, #1e40af);color:#fff}.pp-hero-edit-btn--primary:hover{background:#1d4ed8;border-color:#1d4ed8}.pp-hero-edit-btn--primary:disabled{opacity:.55;cursor:not-allowed}.pp-hero-cta-editor{margin-top:18px;padding:16px 18px;background:#0f172a8c;border-radius:12px;border:1px solid rgba(255,255,255,.25);max-width:480px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;display:flex;flex-direction:column;gap:10px}.pp-hero-cta-field{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600}.pp-hero-cta-field input{padding:8px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.4);background:#fffffff2;color:#0f172a;font:inherit;font-weight:500;outline:none}.pp-hero-cta-field input:focus{border-color:#fff;box-shadow:0 0 0 3px #ffffff40}.pp-hero-cta-help{font-size:11px;color:#ffffffc7;margin:0;line-height:1.5}.pp-hero-cta-help code{background:#ffffff2e;border-radius:4px;padding:1px 4px;font-size:10px}.pp-hero-cta-actions{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end;margin-top:4px}.pp-hero--editable .pp-hero-text .inline-editable{border-radius:6px;padding:2px 4px;margin:-2px -4px}.pp-hero--editable .pp-hero-text .inline-editable:hover{outline:1px dashed rgba(255,255,255,.5);outline-offset:2px}.pp-hero-featured{display:none}@media (min-width: 1024px){.pp-hero-featured{display:block}}.pp-hero-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pp-hero-image-wrap{width:100%;border-radius:16px;overflow:hidden;box-shadow:var(--elev-3);background:#ffffff0d;aspect-ratio:4 / 3}.pp-hero-image{width:100%;height:100%;object-fit:cover;display:block}.pp-hero-featured-picker{margin-top:14px;padding:12px;background:#0f172a73;border:1px solid rgba(255,255,255,.25);border-radius:12px;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:10px}.pp-hero-featured-picker-tabs{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:999px;background:#0f172a73;align-self:flex-start}.pp-hero-featured-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:transparent;color:#ffffffbf;border:0;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast)}.pp-hero-featured-tab:hover{color:#fff}.pp-hero-featured-tab.is-active{background:#fff;color:var(--pp-primary, #1e40af)}.pp-hero-featured-image-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.pp-hero-featured-help{font-size:11px;color:#ffffffc7;margin:0;line-height:1.5}.pp-hero-featured-help strong{color:#fff;font-weight:700}.pp-hero-tile{background:transparent;border:0;cursor:pointer;padding:0;aspect-ratio:1 / 1;width:100%;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));transition:transform .15s}.pp-hero-tile:hover{transform:scale(1.05)}.pp-hero-tile .pp-app-logo{width:100%!important;height:100%!important;font-size:28px!important}.pp-app-logo{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;letter-spacing:-.5px;flex-shrink:0;overflow:hidden}.pp-app-logo-img{width:70%;height:70%;object-fit:contain;display:block}.pp-app-logo-initials{line-height:1}.pp-disclaimer{background:#eff6ff;border-bottom:1px solid #bfdbfe}[data-theme=dark] .pp-disclaimer{background:#1e3a8a66;border-bottom-color:color-mix(in srgb,var(--pp-primary) 50%,transparent)}.pp-disclaimer-inner{max-width:var(--pp-container-max);margin:0 auto;padding:12px 16px;display:flex;align-items:flex-start;gap:12px}@media (min-width: 640px){.pp-disclaimer-inner{padding:12px 32px}}@media (min-width: 1024px){.pp-disclaimer-inner{padding:12px 64px}}.pp-disclaimer-icon{flex-shrink:0;margin-top:2px;color:#3b82f6}.pp-disclaimer-text{font-size:14px;color:#1e3a8a;line-height:1.6}[data-theme=dark] .pp-disclaimer-text{color:#e2e8f0}.pp-disclaimer-text a{color:#2563eb;text-decoration:underline;text-underline-offset:2px;font-weight:500}.pp-disclaimer-text a:hover{color:var(--pp-primary)}[data-theme=dark] .pp-disclaimer-text a{color:#38bdf8}.pp-tabs{position:sticky;top:64px;z-index:40;background:var(--pp-background);border-bottom:1px solid var(--pp-border)}.pp-tabs-inner{max-width:var(--pp-container-max);margin:0 auto;padding:0 16px}@media (min-width: 640px){.pp-tabs-inner{padding:0 32px}}@media (min-width: 1024px){.pp-tabs-inner{padding:0 64px}}.pp-tabs-nav{display:flex;gap:4px;margin-bottom:-1px;overflow-x:auto;scrollbar-width:none}.pp-tabs-nav::-webkit-scrollbar{display:none}.pp-tab{padding:12px 20px;font-size:14px;font-weight:500;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--pp-muted-foreground);cursor:pointer;white-space:nowrap;font-family:inherit;transition:color .2s,border-color .2s}.pp-tab:hover{color:var(--pp-foreground);border-bottom-color:var(--pp-border)}.pp-tab.active{color:var(--pp-primary);border-bottom-color:var(--pp-primary)}.pp-tab-count{margin-left:6px;font-size:12px;color:var(--pp-muted-foreground)}.pp-tab.active .pp-tab-count{color:var(--pp-primary)}.pp-tab--draggable{cursor:grab;-webkit-user-select:none;user-select:none}.pp-tab--draggable:active,.pp-tab--draggable.is-dragging{cursor:grabbing}.pp-tab.is-dragging{opacity:.4}.pp-tab-grip{display:inline-flex;align-items:center;vertical-align:middle;margin-right:4px;color:var(--pp-muted-foreground);opacity:0;transition:opacity .15s}.pp-tab--draggable:hover .pp-tab-grip,.pp-tab--draggable.is-dragging .pp-tab-grip{opacity:.85}.pp-tab-drop-line{display:inline-block;width:3px;align-self:stretch;margin:6px 2px;border-radius:2px;background:var(--pp-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--pp-primary) 15%,transparent)}.pp-tab-del{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:4px;border-radius:50%;color:var(--pp-muted-foreground);opacity:0;transition:opacity .15s,background .15s,color .15s;cursor:pointer}.pp-tab--collection:hover .pp-tab-del,.pp-tab--collection:focus-within .pp-tab-del{opacity:.7}.pp-tab-del:hover{opacity:1;background:#dc26261f;color:#dc2626}.pp-tab-del.is-confirming{opacity:1;background:#dc2626;color:#fff}.pp-filterbar-wrap{position:sticky;top:104px;z-index:30;background:var(--pp-background);border-bottom:1px solid var(--pp-border)}.pp-filterbar{max-width:var(--pp-container-max);margin:0 auto;padding:8px 16px}@media (min-width: 640px){.pp-filterbar{padding:8px 32px}}@media (min-width: 1024px){.pp-filterbar{padding:8px 64px}}.pp-filterbar-inner{display:flex;align-items:center;gap:12px}.pp-filterbar-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--pp-border);border-radius:var(--pp-radius-md);background:var(--pp-card);color:var(--pp-foreground);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer}.pp-filterbar-toggle:hover{background:var(--pp-muted)}.pp-filterbar-toggle.open .pp-filterbar-caret{transform:rotate(180deg)}.pp-filterbar-caret{margin-left:4px;transition:transform .15s}.pp-filterbar-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--pp-primary);color:#fff;font-size:11px;font-weight:600}.pp-filterbar-clear{background:transparent;border:0;color:var(--pp-primary);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit}.pp-filterbar-grid{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (min-width: 640px){.pp-filterbar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.pp-filterbar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.pp-filterbar-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.pp-filter-dd{position:relative}.pp-filter-dd-btn{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:6px;padding:6px 10px;border:1px solid var(--pp-border);border-radius:var(--pp-radius-sm);background:var(--pp-card);color:var(--pp-foreground);font-size:13px;font-family:inherit;cursor:pointer}.pp-filter-dd-btn.active{border-color:var(--pp-primary);background:color-mix(in srgb,var(--pp-primary) 5%,transparent);color:var(--pp-primary)}.pp-filter-dd-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--pp-primary);color:#fff;font-size:11px}.pp-filter-dd-caret{transition:transform .15s;margin-left:auto}.pp-filter-dd-btn.open .pp-filter-dd-caret{transform:rotate(180deg)}.pp-filter-dd-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:50;width:240px;background:var(--pp-card);border:1px solid var(--pp-border);border-radius:var(--pp-radius-md);box-shadow:var(--elev-3);padding:8px}.pp-filter-dd-search{width:100%;padding:6px 10px;border:1px solid var(--pp-border);border-radius:var(--pp-radius-sm);background:var(--pp-background);color:var(--pp-foreground);font-size:13px;font-family:inherit;outline:none;margin-bottom:6px}.pp-filter-dd-options{max-height:240px;overflow-y:auto}.pp-filter-dd-option{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border-radius:var(--pp-radius-sm);background:transparent;color:var(--pp-foreground);font-size:13px;border:0;cursor:pointer;font-family:inherit}.pp-filter-dd-option:hover{background:var(--pp-muted)}.pp-filter-dd-option.on{color:var(--pp-primary)}.pp-filter-dd-check{width:16px;height:16px;border:1px solid var(--pp-border);border-radius:3px;display:inline-flex;align-items:center;justify-content:center}.pp-filter-dd-option.on .pp-filter-dd-check{background:var(--pp-primary);border-color:var(--pp-primary);color:#fff}.pp-filter-dd-empty{padding:10px;text-align:center;color:var(--pp-muted-foreground);font-size:13px}.pp-filterbar-chips{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.pp-filter-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--pp-radius-sm);background:color-mix(in srgb,var(--pp-primary) 10%,transparent);color:var(--pp-primary);font-size:12px}.pp-filter-chip button{background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;margin:-4px -4px -4px 0;border-radius:50%}.pp-content{max-width:var(--pp-container-max);margin:0 auto}.pp-collection-section{padding:32px 16px 40px;border-bottom:1px solid rgba(226,232,240,.5)}@media (min-width: 640px){.pp-collection-section{padding:32px 32px 40px}}@media (min-width: 1024px){.pp-collection-section{padding:32px 64px 40px}}[data-theme=dark] .pp-collection-section{border-bottom-color:#33415580}.pp-collection-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}.pp-collection-icon{width:36px;height:36px;border-radius:var(--pp-radius-md);background:color-mix(in srgb,var(--pp-primary) 10%,transparent);color:var(--pp-primary);display:inline-flex;align-items:center;justify-content:center}.pp-collection-title{font-size:20px;font-weight:700;letter-spacing:-.025em;margin:0}.pp-collection-count{font-size:14px;color:var(--pp-muted-foreground);margin:0}.pp-section{padding:32px 16px 48px}@media (min-width: 640px){.pp-section{padding:32px 32px 48px}}@media (min-width: 1024px){.pp-section{padding:32px 64px 48px}}.pp-section-head{margin-bottom:16px}.pp-section-title{font-size:24px;font-weight:700;letter-spacing:-.025em;margin:0}.pp-section-count{margin:4px 0 0;font-size:14px;color:var(--pp-muted-foreground)}.pp-app-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:20px}@media (min-width: 640px){.pp-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 768px){.pp-app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.pp-app-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.pp-app-grid-cell{height:100%;min-width:0}.pp-app-list{display:flex;flex-direction:column;gap:8px;margin-top:20px}.pp-app-card{position:relative;display:flex;flex-direction:column;width:100%;height:100%;padding:16px;background:var(--pp-card);border:1px solid var(--pp-border);border-radius:var(--pp-radius-lg);text-align:left;cursor:pointer;font-family:inherit;transition:box-shadow .15s,border-color .15s,transform .1s}.pp-app-card:hover{border-color:color-mix(in srgb,var(--pp-primary) 20%,transparent);box-shadow:var(--pp-shadow-card-hover)}.pp-app-card:active{transform:scale(.98)}.pp-approved-tick{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#10b98126;color:var(--pp-emerald-text);border:1px solid rgba(16,185,129,.3)}.pp-app-card-top{display:flex;align-items:flex-start;gap:12px}.pp-app-card-meta{flex:1;min-width:0;padding-right:28px}.pp-app-card-name{font-size:15px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--pp-foreground);margin:0}.pp-app-card-desc{margin:6px 0 0;font-size:12px;color:var(--pp-muted-foreground);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pp-app-card-grades{margin-top:auto;padding-top:16px;font-size:12px;color:var(--pp-muted-foreground);line-height:1}.pp-grade-label{color:var(--pp-muted-foreground)}.pp-grade-range{font-weight:600;color:#0f172acc}[data-theme=dark] .pp-grade-range{color:#e2e8f0cc}.pp-app-row{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;background:var(--pp-card);border:1px solid var(--pp-border);border-radius:var(--pp-radius-lg);text-align:left;cursor:pointer;font-family:inherit;transition:box-shadow .15s,border-color .15s}.pp-app-row:hover{border-color:color-mix(in srgb,var(--pp-primary) 20%,transparent);box-shadow:var(--pp-shadow-card-hover)}.pp-app-row-meta{flex:1;min-width:0}.pp-app-row-name-line{display:inline-flex;align-items:center;gap:6px}.pp-app-row-name{font-size:15px;font-weight:600;color:var(--pp-foreground)}.pp-app-row-desc{margin:4px 0 0;font-size:13px;color:var(--pp-muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-app-row-tail{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.pp-app-row-grades{font-size:12px;color:var(--pp-muted-foreground)}.pp-approved-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:linear-gradient(90deg,#10b98126,#14b8a626);border:1px solid rgba(16,185,129,.2);color:var(--pp-emerald-text);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;line-height:1;white-space:nowrap}.pp-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--pp-radius-sm);font-size:11px;font-weight:600}.pp-chip.compact{padding:2px 6px;font-size:10px}.pp-chip-sso{background:var(--pp-emerald-bg);color:var(--pp-emerald-text)}.pp-chip-roster{background:var(--pp-blue-bg);color:var(--pp-blue-text)}.pp-chip-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px}.pp-empty{text-align:center;padding:64px 16px;color:var(--pp-muted-foreground)}.pp-empty-icon{margin:0 auto 16px;opacity:.4;color:var(--pp-muted-foreground)}.pp-empty-title{font-size:18px;font-weight:500;margin:0}.pp-empty-desc{font-size:14px;margin:4px 0 0}.pp-pagination{margin-top:32px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px}@media (min-width: 640px){.pp-pagination{flex-direction:row}}.pp-pagination-count{font-size:14px;color:var(--pp-muted-foreground);margin:0}.pp-pagination-controls{display:inline-flex;align-items:center;gap:8px}.pp-pagination-btn{padding:6px 12px;font-size:14px;border:1px solid var(--pp-border);border-radius:var(--pp-radius-md);background:transparent;color:var(--pp-muted-foreground);cursor:pointer;font-family:inherit;transition:color .15s,background .15s}.pp-pagination-btn:hover:not(:disabled){color:var(--pp-foreground);background:var(--pp-accent)}.pp-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pp-pagination-num{width:32px;height:32px;border:0;border-radius:var(--pp-radius-md);background:transparent;color:var(--pp-muted-foreground);font-size:14px;font-family:inherit;cursor:pointer;transition:color .15s,background .15s}.pp-pagination-num:hover{color:var(--pp-foreground);background:var(--pp-accent)}.pp-pagination-num.active{background:var(--pp-primary);color:#fff;font-weight:500}.pp-pagination-ellipsis{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;color:var(--pp-muted-foreground)}.pp-page.is-drawer-open{padding-right:var(--pp-drawer-width, 480px);transition:padding-right .2s ease-out}.pp-detail-panel{--pp-primary: #1e40af;--pp-primary-foreground: #ffffff;--pp-background: #ffffff;--pp-foreground: #0f172a;--pp-card: #ffffff;--pp-border: #e2e8f0;--pp-muted: #f1f5f9;--pp-muted-foreground: #475569;--pp-emerald-bg: rgba(16, 185, 129, .1);--pp-emerald-text: #047857;--pp-emerald-border: rgba(16, 185, 129, .2);font-family:Inter,Inter Variable,ui-sans-serif,system-ui,sans-serif;position:fixed;top:0;right:0;bottom:0;background:var(--pp-card);color:var(--pp-foreground);box-shadow:-4px 0 16px -4px #0000002e;border-left:1px solid var(--pp-border);display:flex;z-index:60;animation:pp-detail-slide .25s ease-out}[data-theme=dark] .pp-detail-panel{--pp-primary: #3b82f6;--pp-background: #0f172a;--pp-foreground: #e2e8f0;--pp-card: #1e293b;--pp-border: #334155;--pp-muted: #1e293b;--pp-muted-foreground: #94a3b8}.pp-detail-panel.is-dragging{animation:none;transition:none}.pp-detail-panel-inner{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;padding:0 28px 96px}.pp-detail-resizer{flex:0 0 6px;cursor:col-resize;display:flex;align-items:center;justify-content:center;background:transparent;border-right:1px solid transparent;transition:background .15s,border-color .15s}.pp-detail-resizer:hover,.pp-detail-panel.is-dragging .pp-detail-resizer{background:#3b82f61f;border-right-color:var(--pp-primary, #1e40af)}.pp-detail-resizer-grip{width:3px;height:36px;border-radius:3px;background:var(--pp-border, #e2e8f0);transition:background .15s}.pp-detail-resizer:hover .pp-detail-resizer-grip,.pp-detail-panel.is-dragging .pp-detail-resizer-grip{background:var(--pp-primary, #1e40af)}@keyframes pp-detail-slide{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width: 900px){.pp-page.is-drawer-open{padding-right:0}.pp-detail-panel{width:min(100vw,420px)!important}}.pp-detail-topbar{position:sticky;top:0;z-index:5;margin:0 -28px;padding:12px 16px;background:var(--pp-card);border-bottom:1px solid var(--pp-border);display:flex;justify-content:flex-end}.pp-detail-close{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--pp-radius-md);background:transparent;color:var(--pp-muted-foreground);cursor:pointer;transition:background .15s,color .15s}.pp-detail-close:hover{background:var(--pp-muted);color:var(--pp-foreground)}.pp-detail-header{display:flex;align-items:center;gap:18px;margin:20px 0 18px}.pp-detail-header-link{display:flex;align-items:center;gap:18px;flex:1;min-width:0;padding:6px 8px;margin:-6px -8px;border-radius:10px;color:inherit;text-decoration:none;transition:background .15s,transform .15s}.pp-detail-header-link:hover{background:var(--pp-muted, #f1f5f9)}.pp-detail-header-link:hover .pp-detail-name{color:var(--pp-primary, #1e40af);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}.pp-detail-header-link:focus-visible{outline:2px solid var(--pp-primary, #1e40af);outline-offset:2px}.pp-detail-head-text{flex:1;min-width:0}.pp-detail-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pp-detail-name{font-size:22px;font-weight:700;letter-spacing:-.025em;margin:0;line-height:1.2;color:var(--pp-foreground)}.pp-detail-description{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--pp-foreground)}.pp-detail-link-row{display:flex;flex-wrap:wrap;gap:22px;font-size:14px;font-weight:500;padding-bottom:14px}.pp-detail-link-row a{color:var(--pp-primary);text-decoration:none}.pp-detail-link-row a:hover{text-decoration:underline}.pp-detail-link-empty{color:var(--pp-muted-foreground);opacity:.6;cursor:default;display:inline-flex;align-items:center;gap:6px}.pp-detail-tab-intro{color:var(--pp-muted-foreground);margin-top:0}.pp-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--pp-border)}.pp-detail-tab{padding:12px 4px;margin-right:24px;background:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit;font-size:14px;font-weight:600;color:var(--pp-muted-foreground);cursor:pointer;transition:color .15s,border-color .15s}.pp-detail-tab:hover{color:var(--pp-foreground)}.pp-detail-tab.active{color:var(--pp-primary);border-bottom-color:var(--pp-primary)}.pp-detail-tabpanel{padding-top:18px}.pp-detail-tab-text{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--pp-foreground)}.pp-detail-divider{border:0;border-top:1px solid var(--pp-border);margin:18px 0}.pp-detail-tab-section{padding:6px 0 14px}.pp-detail-tab-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--pp-muted-foreground);margin:0 0 6px}.pp-detail-tab-empty{margin:0;font-size:14px;font-style:italic;color:var(--pp-muted-foreground)}.pp-detail-block-title{font-size:16px;font-weight:700;color:var(--pp-foreground);margin:18px 0 12px}.pp-detail-meta{margin:0;display:flex;flex-direction:column;gap:14px}.pp-detail-meta-row{display:grid;grid-template-columns:96px 1fr;align-items:flex-start;gap:16px}.pp-detail-meta-row dt,.pp-detail-meta-row dd{margin:0;font-size:14px;color:var(--pp-foreground)}.pp-detail-status{display:inline-flex;align-items:center;gap:6px;color:var(--pp-emerald-text);font-weight:500}.pp-detail-grade strong{font-weight:700}.pp-detail-platforms{display:inline-flex;flex-wrap:wrap;gap:8px}.pp-detail-platform{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--pp-radius-md);background:var(--pp-muted);color:var(--pp-foreground)}.pp-detail-subject-chips{display:flex;flex-wrap:wrap;gap:6px}.pp-detail-subject-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--pp-radius-md);background:#6366f114;color:#4f46e5;font-size:12px;font-weight:500;border:1px solid rgba(99,102,241,.15)}[data-theme=dark] .pp-detail-subject-chip{background:#6366f12e;color:#a5b4fc;border-color:#6366f14d}.pp-detail-policy-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.pp-detail-policy-list a{display:inline-flex;align-items:center;gap:10px;color:var(--pp-primary);font-size:14px;text-decoration:none}.pp-detail-policy-list a:hover{text-decoration:underline}.pp-detail-policy-list svg{color:var(--pp-primary)}.pp-detail-foot{position:sticky;bottom:0;margin:28px -28px -96px;padding:16px 28px;background:var(--pp-card);border-top:1px solid var(--pp-border)}.pp-detail-launch{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;padding:14px 18px;border-radius:var(--pp-radius-md);background:#3730a3;color:#fff;border:0;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,transform .1s}.pp-detail-launch:hover{background:#312e81}.pp-detail-launch:active{transform:scale(.99)}.inline-editable{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:2px 6px;border-radius:var(--pp-radius-sm);transition:background .12s,outline .12s}.inline-edit-pencil{opacity:0;color:var(--pp-primary);transition:opacity .12s}.inline-edit-input{font:inherit;color:inherit;background:#ffffffeb;border:1px solid var(--pp-primary);border-radius:var(--pp-radius-sm);padding:4px 8px;outline:0;width:100%;max-width:100%;box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-primary) 15%,transparent)}.pp-hero .inline-editable:hover{background:#ffffff1a;outline-color:#ffffff80}.pp-hero .inline-edit-pencil{color:#ffffffe6}.admin__main--portal .admin__breadcrumb{max-width:var(--pp-container-max);margin:0 auto;padding:16px 24px 0}.pp-admin{display:flex;flex-direction:column}.pp-edit-bar{position:sticky;top:var(--topbar-h);z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--cl-surface);border-top:1px solid var(--cl-border);border-bottom:1px solid var(--cl-border);font-family:var(--cl-font-family)}.pp-edit-bar-left{display:inline-flex;align-items:center;gap:10px;color:var(--cl-text);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold)}.pp-edit-bar-status{color:var(--cl-text-muted);font-weight:500;display:inline-flex;align-items:center;gap:4px}.pp-edit-bar-status--saved{color:#28a745}.pp-edit-bar-published{color:var(--cl-text-muted);font-size:13px;font-weight:500}.pp-edit-bar-actions{display:inline-flex;gap:8px}.pp-admin-canvas .pp-filterbar-wrap,.pp-admin-canvas .pp-content{display:none}.ocps-page{--ocps-primary: #1e40af;--ocps-primary-dark: #1d4ed8;--ocps-border: #e2e8f0;--ocps-text: #0f172a;--ocps-text-muted: #64748b;--ocps-card: #ffffff;--ocps-bg: #ffffff;--ocps-bg-soft: #f8fafc;--ocps-radius: 12px;font-family:Inter,Open Sans,system-ui,sans-serif;background:var(--ocps-bg);color:var(--ocps-text);min-height:100vh}[data-theme=dark] .ocps-page{--ocps-border: #1f2a3a;--ocps-text: #e2e8f0;--ocps-text-muted: #94a3b8;--ocps-card: #1e293b;--ocps-bg: #0f172a;--ocps-bg-soft: #1e293b}.app--portal{display:block;min-height:100vh;grid-template-columns:none;grid-template-rows:none}.portal-placeholder{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--gd-bg);color:var(--gd-text);font-family:var(--font-family-primary)}.portal-placeholder-card{text-align:center;max-width:420px;padding:48px 32px;background:var(--gd-surface);border:1px solid var(--gd-border);border-radius:12px}.portal-placeholder-title{font-size:22px;font-weight:600;color:var(--gd-text);margin-bottom:8px}.portal-placeholder-desc{font-size:14px;color:var(--gd-text-muted);line-height:1.5}.ocps-header{background:var(--ocps-card);border-bottom:1px solid var(--ocps-border);padding:14px 0;position:sticky;top:0;z-index:30}.ocps-header-inner{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:16px}.ocps-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.ocps-logo{width:56px;height:56px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.ocps-logo-svg{width:100%;height:100%}.ocps-brand-name{font-weight:700;font-size:17px;color:var(--ocps-primary)}.ocps-header-search{flex:1;display:flex;align-items:center;gap:8px;max-width:640px;margin:0 auto;height:40px;padding:0 16px;background:var(--ocps-bg-soft);border:1px solid var(--ocps-border);border-radius:var(--ocps-radius)}.ocps-header-search svg{color:var(--ocps-text-muted);flex-shrink:0}.ocps-header-search input{flex:1;border:0;outline:0;background:transparent;font-size:14px;color:var(--ocps-text);font-family:inherit}.ocps-header-actions{display:inline-flex;align-items:center;gap:6px}.ocps-header-icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--ocps-text-muted);background:transparent;border:1px solid var(--ocps-border)}.ocps-header-icon-btn:hover{background:var(--ocps-bg-soft);color:var(--ocps-text)}.ocps-header-icon-btn.active{background:color-mix(in srgb,var(--pp-primary) 10%,transparent);color:var(--ocps-primary);border-color:color-mix(in srgb,var(--pp-primary) 30%,transparent)}.ocps-hero{position:relative;padding:64px 0;color:#fff;overflow:hidden}.ocps-hero-bg-circle{position:absolute;border-radius:50%;background:#ffffff0d;pointer-events:none}.ocps-hero-bg-circle--lg{width:380px;height:380px;top:-100px;right:-120px}.ocps-hero-bg-circle--sm{width:220px;height:220px;bottom:-80px;left:-60px}.ocps-hero-inner{position:relative;max-width:1280px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 440px;gap:64px;align-items:center}.ocps-hero-text{display:flex;flex-direction:column;gap:12px}.ocps-hero-eyebrow{font-size:13px;letter-spacing:2px;font-weight:600;color:#ffffffd9;text-transform:uppercase;margin-bottom:4px}.ocps-hero-title{font-size:64px;line-height:1.05;font-weight:800;color:#fff;margin:0}.ocps-hero-subtitle{font-size:18px;color:#ffffffd9;margin:4px 0 12px}.ocps-hero-actions{display:inline-flex;align-items:center;gap:20px;margin-top:12px}.ocps-hero-cta{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ocps-primary);padding:12px 22px;border-radius:10px;font-weight:600;font-size:15px;font-family:inherit;border:0;cursor:pointer;box-shadow:var(--elev-1);transition:transform .15s}.ocps-hero-cta:hover{transform:translateY(-1px)}.ocps-hero-secondary{color:#fff;font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:4px}.ocps-featured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ocps-featured-tile{aspect-ratio:1;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center}.ocps-featured-tile .ocps-app-icon{width:100%;height:100%;border-radius:16px;font-size:28px}.ocps-app-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;color:#fff;font-weight:700;font-size:15px;flex-shrink:0;letter-spacing:-.5px}.ocps-disclaimer{background:#f1f5f9;border-bottom:1px solid var(--ocps-border);padding:14px 0}[data-theme=dark] .ocps-disclaimer{background:#1e293b}.ocps-disclaimer-inner{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;align-items:flex-start;gap:10px;color:var(--ocps-text-muted);font-size:13px;line-height:1.5}.ocps-disclaimer-icon{flex-shrink:0;margin-top:1px;color:var(--ocps-primary)}.ocps-disclaimer-link{color:var(--ocps-primary);text-decoration:underline;font-weight:500}.ocps-main{max-width:1280px;margin:0 auto;padding:24px}.ocps-tabs{display:inline-flex;align-items:center;gap:4px;border-bottom:1px solid var(--ocps-border);margin-bottom:16px}.ocps-tab{padding:12px 18px;background:transparent;color:var(--ocps-text-muted);font-family:inherit;font-weight:600;font-size:14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.ocps-tab:hover{color:var(--ocps-text)}.ocps-tab.active{color:var(--ocps-primary);border-bottom-color:var(--ocps-primary)}.ocps-tab-count{font-weight:500;color:var(--ocps-text-muted)}.ocps-tab.active .ocps-tab-count{color:var(--ocps-primary)}.ocps-filters-row{margin:4px 0 24px}.ocps-filters{position:relative;display:inline-block}.ocps-filters-btn{display:inline-flex;align-items:center;gap:8px;background:var(--ocps-card);border:1px solid var(--ocps-border);color:var(--ocps-text);padding:10px 16px;border-radius:var(--ocps-radius);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;width:100%;min-width:220px;justify-content:space-between}.ocps-filters-btn:hover{background:var(--ocps-bg-soft)}.ocps-filters-btn.open .ocps-filters-chev{transform:rotate(180deg)}.ocps-filters-chev{margin-left:auto;transition:transform .15s}.ocps-filters-panel{position:absolute;top:calc(100% + 6px);left:0;width:360px;background:var(--ocps-card);border:1px solid var(--ocps-border);border-radius:var(--ocps-radius);box-shadow:var(--elev-2);padding:16px;z-index:20}.ocps-filters-section{margin-bottom:14px}.ocps-filters-section:last-child{margin-bottom:0}.ocps-filters-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ocps-text-muted);margin-bottom:8px}.ocps-filters-chips{display:flex;flex-wrap:wrap;gap:6px}.ocps-filter-chip{padding:6px 12px;border-radius:999px;background:var(--ocps-bg-soft);border:1px solid var(--ocps-border);font-size:13px;cursor:pointer;color:var(--ocps-text);font-family:inherit}.ocps-filter-chip:hover{background:color-mix(in srgb,var(--pp-primary) 8%,transparent);color:var(--ocps-primary);border-color:color-mix(in srgb,var(--pp-primary) 30%,transparent)}.ocps-app-grid-section{display:flex;flex-direction:column;gap:8px}.ocps-grid-title{font-size:24px;font-weight:800;margin:8px 0 0}.ocps-grid-count{color:var(--ocps-text-muted);font-size:14px;margin-bottom:12px}.ocps-app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.ocps-app-card{background:var(--ocps-card);border:1px solid var(--ocps-border);border-radius:var(--ocps-radius);padding:16px;display:flex;flex-direction:column;gap:12px;transition:border-color .15s,box-shadow .15s,transform .15s;cursor:pointer}.ocps-app-card:hover{border-color:color-mix(in srgb,var(--pp-primary) 40%,transparent);box-shadow:var(--elev-2);transform:translateY(-1px)}.ocps-app-card-top{display:flex;align-items:flex-start;gap:12px}.ocps-app-card .ocps-app-icon{width:42px;height:42px;border-radius:10px;font-size:16px}.ocps-app-card-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.ocps-app-card-name{font-weight:700;font-size:15px;color:var(--ocps-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ocps-badge-approved{display:inline-flex;align-items:center;gap:4px;background:#dcfce7;color:#047857;border:1px solid rgba(4,120,87,.2);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;letter-spacing:.5px;width:fit-content}[data-theme=dark] .ocps-badge-approved{background:#0478572e;color:#6ee7b7}.ocps-app-card-chips{display:flex;flex-wrap:wrap;gap:6px}.ocps-chip{display:inline-flex;align-items:center;gap:4px;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600}.ocps-chip-sso{background:#10b9811f;color:#047857}[data-theme=dark] .ocps-chip-sso{background:#10b9812e;color:#6ee7b7}.ocps-chip-roster{background:#3b82f61f;color:var(--pp-primary)}[data-theme=dark] .ocps-chip-roster{background:#3b82f62e;color:#93c5fd}.ocps-chip-pii{background:#f59e0b1f;color:#b45309}[data-theme=dark] .ocps-chip-pii{background:#f59e0b2e;color:#fcd34d}.inline-editable{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background .12s;position:relative}.inline-editable:hover{background:color-mix(in srgb,var(--pp-primary) 6%,transparent);outline:1px dashed color-mix(in srgb,var(--pp-primary) 50%,transparent)}.inline-edit-pencil{opacity:0;color:var(--ocps-primary);transition:opacity .12s;flex-shrink:0}.inline-editable:hover .inline-edit-pencil{opacity:1}.inline-edit-input{font:inherit;color:inherit;background:#ffffffeb;border:1px solid var(--ocps-primary);border-radius:6px;padding:4px 8px;outline:0;width:100%;max-width:100%;box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-primary) 15%,transparent)}.inline-editable-placeholder{color:#00000059;font-style:italic}.ocps-hero-title .inline-editable:hover{background:#ffffff1a;outline-color:#ffffff80}.ocps-hero-title .inline-edit-pencil,.ocps-hero-subtitle .inline-edit-pencil,.ocps-hero-eyebrow .inline-edit-pencil{color:#ffffffe6}.admin__main--portal{max-width:none;padding:0}.admin__main.admin__main--portal{display:flex;flex-direction:column;overflow:hidden}.admin__main--portal .pp-admin{flex:1 1 auto;min-height:0}.admin__main--portal .pp-admin-canvas{flex:1 1 auto;min-height:0;overflow-y:auto}.admin__main--portal .pp-admin-canvas .pp-header{position:static}.admin__main--portal .admin__breadcrumb{padding:16px 24px 0;max-width:1280px;margin:0 auto}.portal-admin{display:flex;flex-direction:column}.portal-edit-bar{position:sticky;top:var(--topbar-h);z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--cl-surface);border-top:1px solid var(--cl-border);border-bottom:1px solid var(--cl-border);font-family:var(--cl-font-family)}.portal-edit-bar-left{display:inline-flex;align-items:center;gap:10px;color:var(--cl-text);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold)}.portal-edit-bar-status{color:var(--cl-text-muted);font-weight:500}.portal-edit-bar-status--saved{color:#28a745}.portal-edit-bar-actions{display:inline-flex;align-items:center;gap:8px}.switch{position:relative;display:inline-block;flex-shrink:0;width:44px;height:24px;background:#d1d5db;border-radius:12px;cursor:pointer;transition:background var(--motion-fast) ease;border:0;padding:0}.switch.on{background:var(--cl-primary-dark)}.switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:var(--elev-1);transition:transform var(--motion-fast) ease}.switch.on .switch-thumb{transform:translate(20px)}.switch-lg{width:48px;height:26px}.switch-lg .switch-thumb{width:22px;height:22px}.switch-lg.on .switch-thumb{transform:translate(22px)}.admin-shell{display:flex;height:100vh;width:100%;overflow:hidden;background:#f6f7f9;font-family:var(--cl-font-family);color:var(--cl-text)}.admin__nav-backdrop{display:none}[data-theme=dark] .admin-shell{background:var(--cl-bg)}.admin__sidebar{background:var(--cl-surface);border-right:1px solid var(--cl-border);display:flex;flex-direction:column;padding:20px 14px;gap:16px;position:sticky;top:0;max-height:calc(100vh - var(--topbar-h));overflow:visible}.admin__brand{display:flex;align-items:center;gap:10px;padding:0 6px;margin-bottom:4px}.admin__logo{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--cl-primary),var(--cl-teal));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.5px}.admin__brand-name{font-size:var(--cl-fs-lg);font-weight:var(--cl-fw-bold);color:var(--cl-text)}.admin__user{display:flex;align-items:center;gap:12px;padding:10px;border-radius:8px;background:var(--cl-bg-muted)}.admin__user-avatar{width:36px;height:36px;border-radius:50%;background:var(--cl-avatar-bg);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.admin__user-name{font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-bold);color:var(--cl-text)}.admin__user-role{font-size:var(--cl-fs-xs);color:var(--cl-text-muted)}.admin__search{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--cl-border);border-radius:8px;background:var(--cl-surface)}.admin__search svg{color:var(--cl-text-muted);flex-shrink:0}.admin__search input{border:0;background:transparent;outline:none;flex:1;font-size:var(--cl-fs-sm);color:var(--cl-text);min-width:0;font-family:inherit}.admin__search input::placeholder{color:var(--cl-text-muted)}.admin__nav{display:flex;flex-direction:column;gap:2px}.admin__footer-nav{display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:14px;border-top:1px solid var(--cl-border)}.admin__nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:6px;font-size:var(--cl-fs-sm);color:var(--cl-text);text-align:left;background:transparent;transition:background var(--motion-fast) ease;width:100%;font-family:inherit}.admin__nav-item:hover{background:var(--cl-bg-muted)}.admin__nav-item svg{color:var(--cl-text-muted);flex-shrink:0}.admin__nav-item--active{background:#008ad714;color:var(--cl-primary);font-weight:var(--cl-fw-semibold)}.admin__nav-item--active svg{color:var(--cl-primary)}[data-theme=dark] .admin__nav-item--active{background:#008ad72e}.admin__nav-subitem{padding-left:30px;font-size:13px;color:var(--cl-text-muted);position:relative}.admin__nav-subitem:before{content:"";position:absolute;left:16px;top:0;bottom:0;width:1px;background:var(--cl-border)}.admin__nav-subitem.admin__nav-item--active:before{background:var(--cl-primary)}.admin__nav-chevron{margin-left:auto;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--cl-text-muted);background:transparent;transition:background var(--motion-fast),transform var(--motion-fast) ease}.admin__nav-chevron:hover{background:#0000000f;color:var(--cl-text)}[data-theme=dark] .admin__nav-chevron:hover{background:#ffffff14}.admin__nav-chevron svg{transition:transform var(--motion-fast) ease;transform:rotate(-90deg)}.admin__nav-chevron.open svg{transform:rotate(0)}.admin__nav-item--active .admin__nav-chevron{color:var(--cl-primary)}.app[data-sidebar-collapsed=true] .admin__nav-chevron{display:none}.admin__nav-subitem svg{width:14px;height:14px}.app[data-sidebar-collapsed=true] .admin__nav-subitem{padding-left:0}.app[data-sidebar-collapsed=true] .admin__nav-subitem:before{display:none}.side-nav{position:relative;height:100%;width:var(--sidebar-w, 256px);flex-shrink:0;display:flex;flex-direction:column;background:var(--gd-card);border-right:1px solid var(--cl-border);font-family:var(--font-family-primary);transition:width .3s cubic-bezier(.4,0,.2,1)}.side-nav--collapsed{width:68px}.side-nav__header{display:flex;align-items:center;padding:16px 14px 16px 18px;flex-shrink:0}.side-nav__logo{display:flex;align-items:center;gap:10px;transition:gap .3s cubic-bezier(.4,0,.2,1);min-width:0}.side-nav__logo-icon{width:36px;height:36px;background:var(--cl-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.side-nav__logo-text{font-size:18px;font-weight:700;color:var(--cl-primary);letter-spacing:-.3px;white-space:nowrap;overflow:hidden;transition:opacity .3s,max-width .3s;max-width:160px;opacity:1}.side-nav__collapse-btn{position:absolute;top:22px;right:-13px;z-index:10;width:26px;height:26px;border-radius:50%;background:var(--cl-primary);color:#fff;border:2px solid var(--gd-card);box-shadow:0 1px 4px #00000026;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s}.side-nav__collapse-btn:hover{background:var(--cl-primary-dark)}.side-nav__collapse-chevron{transition:transform .3s cubic-bezier(.4,0,.2,1)}.side-nav__profile{display:flex;align-items:center;gap:10px;margin:0 10px 12px;padding:8px 10px;background:var(--gd-card);border:1px solid var(--cl-border);border-radius:var(--radius-lg);cursor:pointer;width:calc(100% - 20px);text-align:left;font-family:inherit;transition:background .2s,padding .3s,gap .3s}.side-nav__profile:hover{background:var(--gd-hover)}.side-nav__avatar{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--cl-primary),var(--cl-primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;transition:width .3s,height .3s}.side-nav__profile-info{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;transition:opacity .3s,max-width .3s;max-width:160px;opacity:1}.side-nav__profile-name{font-weight:700;font-size:14px;color:var(--cl-text);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav__profile-role{font-size:13px;color:var(--cl-text-muted);white-space:nowrap}.side-nav__profile-chevron{color:var(--gd-text-faint);flex-shrink:0;transition:opacity .3s}.side-nav__search{position:relative;margin:0 10px 4px;max-height:50px;opacity:1;overflow:hidden;transition:max-height .3s,opacity .3s,margin .3s}.side-nav__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--cl-text-muted);pointer-events:none}.side-nav__search input{width:100%;height:40px;padding:0 12px 0 34px;border:1.5px solid var(--cl-border);border-radius:var(--radius-lg);background:var(--gd-card);font-family:inherit;font-size:14px;color:var(--cl-text);box-sizing:border-box}.side-nav__search input::placeholder{color:var(--gd-text-faint)}.side-nav__search input:focus{outline:none;border-color:var(--cl-primary)}.side-nav__list{display:flex;flex-direction:column;padding-top:6px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.side-nav__list::-webkit-scrollbar{width:0;height:0}.side-nav__list--bottom{flex:0 0 auto;overflow:hidden;padding-bottom:8px}.side-nav__spacer{flex:0}.side-nav__item{display:flex;align-items:center;gap:10px;padding:13px 18px;margin:1px 8px;border-radius:var(--radius-lg);cursor:pointer;font-family:inherit;font-size:14px;color:var(--cl-text-muted);text-decoration:none;background:transparent;border:0;width:calc(100% - 16px);text-align:left;transition:background .2s,padding .3s}.side-nav__item:hover:not(.side-nav__item--active):not(:disabled){background:var(--gd-hover);color:var(--cl-text)}.side-nav__item--active{background:color-mix(in srgb,var(--cl-primary) 14%,var(--gd-card));color:var(--cl-primary);font-weight:600}.side-nav__item:disabled{opacity:.5;cursor:default}.side-nav__icon{width:18px;text-align:center;flex-shrink:0}.side-nav__label{flex:1;white-space:nowrap;overflow:hidden;transition:opacity .3s,max-width .3s;max-width:160px;opacity:1}.side-nav__expand-icon{color:var(--gd-text-faint);flex-shrink:0;transition:opacity .3s}.side-nav__sub{background:var(--cl-bg-muted);margin:2px 8px 4px;border-radius:var(--radius-lg);overflow:hidden;flex-shrink:0;transition:opacity .3s,margin .3s}.side-nav__sub-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px 12px 40px;font-family:inherit;font-size:13px;color:var(--cl-text-muted);text-decoration:none;background:transparent;border:0;text-align:left;cursor:pointer;transition:background .2s}.side-nav__sub-icon{flex-shrink:0}.side-nav__sub-item:hover:not(.side-nav__sub-item--active){background:#0000000a;color:var(--cl-text)}[data-theme=dark] .side-nav__sub-item:hover:not(.side-nav__sub-item--active){background:#ffffff0f}.side-nav__sub-item--active{color:var(--cl-primary);font-weight:700}.side-nav__sub-empty{display:block;padding:12px 18px 12px 40px;font-size:13px;color:var(--gd-text-faint)}.side-nav--collapsed .side-nav__logo{gap:0}.side-nav--collapsed .side-nav__logo-text,.side-nav--collapsed .side-nav__profile-info,.side-nav--collapsed .side-nav__profile-chevron,.side-nav--collapsed .side-nav__label,.side-nav--collapsed .side-nav__expand-icon{opacity:0;max-width:0;pointer-events:none}.side-nav--collapsed .side-nav__collapse-chevron{transform:rotate(180deg)}.side-nav--collapsed .side-nav__profile{justify-content:center;padding:8px 6px;gap:0}.side-nav--collapsed .side-nav__avatar{width:36px;height:36px}.side-nav--collapsed .side-nav__search{max-height:0;opacity:0;margin-top:0;margin-bottom:0}.side-nav--collapsed .side-nav__item{justify-content:center;gap:0;padding:13px 0}.side-nav--collapsed .side-nav__sub{max-height:0;opacity:0;margin-top:0;margin-bottom:0;padding:0}.admin__topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.admin__theme-toggle{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--cl-text-muted);cursor:pointer;flex-shrink:0;transition:background .2s}.admin__theme-toggle:hover{background:var(--gd-hover);color:var(--cl-text)}.breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.breadcrumb-item{font-family:var(--font-family-primary);font-size:15px;font-weight:600;color:var(--cl-text-muted);background:transparent;border:0;padding:0}.breadcrumb-item--link{cursor:pointer;text-decoration:none}.breadcrumb-item--link:hover{color:var(--cl-text)}.breadcrumb-item--last{font-size:20px;font-weight:700;color:var(--cl-text)}.breadcrumb-sep{color:var(--gd-text-faint);flex-shrink:0}.admin__main{flex:1;min-width:0;height:100%;overflow-y:auto;padding:24px 32px 48px}.admin__hamburger{display:none}@media (max-width: 768px){.side-nav{position:fixed;top:0;left:0;z-index:200;height:100%;width:var(--sidebar-w, 256px)!important;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.side-nav--mobile-open{transform:translate(0);box-shadow:4px 0 24px #00000026}.side-nav__collapse-btn{display:none}.side-nav--collapsed .side-nav__logo-text,.side-nav--collapsed .side-nav__profile-info,.side-nav--collapsed .side-nav__label,.side-nav--collapsed .side-nav__expand-icon{opacity:1;max-width:160px;pointer-events:auto}.admin__main{width:100%}.admin__nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:#0000004d}.admin__hamburger{display:inline-flex;align-items:center;justify-content:center;position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:100;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--gd-card);border:1px solid var(--cl-border);box-shadow:0 2px 8px #00000014;color:var(--cl-primary);cursor:pointer}.admin__topbar{padding-left:52px}}.admin__breadcrumb{margin-bottom:16px;font-size:var(--cl-fs-md);color:var(--cl-text-muted)}.admin__breadcrumb-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap}.admin__breadcrumb-item{display:inline-flex;align-items:center}.admin__breadcrumb-link{background:transparent;border:0;padding:2px 6px;margin:-2px 0;border-radius:4px;color:inherit;font:inherit;cursor:pointer;transition:background var(--motion-fast, var(--motion-fast)) var(--motion-ease, ease),color var(--motion-fast, .12s) var(--motion-ease, ease)}.admin__breadcrumb-link:hover{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937)}.admin__breadcrumb-parent{padding:2px 6px}.admin__breadcrumb strong{color:var(--cl-text);font-weight:var(--cl-fw-bold);padding:2px 6px}.admin__breadcrumb-sep{margin:0 6px;color:var(--cl-text-muted)}.admin__card{background:var(--cl-surface);border-radius:var(--cl-radius-lg);box-shadow:var(--cl-shadow-sm);padding:28px 32px;border:1px solid var(--cl-border)}.admin__card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--cl-border);gap:16px;flex-wrap:wrap}.admin__card-head-actions{display:inline-flex;align-items:center;gap:16px;flex-wrap:wrap}.admin__head-toggle{display:inline-flex;align-items:center;gap:10px}.admin__head-toggle-label{font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text)}.admin__page-disabled{opacity:.55;pointer-events:none}.admin__card-title{font-size:var(--cl-fs-2xl);font-weight:var(--cl-fw-bold);color:var(--cl-text);margin:0}.admin__section{margin-bottom:28px}.admin__section:last-of-type{margin-bottom:12px}.admin__section-title{font-size:var(--cl-fs-lg);font-weight:var(--cl-fw-bold);color:var(--cl-text);margin-bottom:4px}.admin__section-sub{font-size:var(--cl-fs-sm);color:var(--cl-text-muted);margin-bottom:16px;line-height:1.4}.admin__toggle-list{display:flex;flex-direction:column;gap:12px;background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:16px 18px}[data-theme=dark] .admin__toggle-list{background:#ffffff08}.admin__divider{border:0;border-top:1px solid var(--cl-border);margin:8px 0 20px}.admin__card-foot{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--cl-border);margin-top:8px}.admin__reset{font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text-muted);padding:8px 14px;border-radius:var(--cl-radius-pill);border:1px solid var(--cl-border);background:transparent;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease;font-family:inherit}.admin__reset:hover{background:var(--cl-bg-muted);color:var(--cl-text)}.admin__autosave{display:inline-flex;align-items:center;gap:6px;font-size:var(--cl-fs-sm);color:var(--cl-status-green)}.toggle-row{display:flex;align-items:flex-start;gap:14px;cursor:pointer;padding:4px 0}.toggle-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.toggle-label{font-size:var(--cl-fs-md);font-weight:var(--cl-fw-semibold);color:var(--cl-text)}.toggle-description{font-size:var(--cl-fs-sm);color:var(--cl-text-muted);line-height:1.4}@media (max-width: 768px){.admin-shell{grid-template-columns:1fr}.admin__sidebar{position:relative;max-height:none}}.proxy-config-modal{width:420px}.proxy-config-name-pill{display:block;width:fit-content;background:var(--cl-bg-muted);color:var(--cl-text);padding:6px 16px;border-radius:var(--cl-radius-pill);font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);margin-bottom:18px}.proxy-config-label{display:flex!important;align-items:center;gap:6px;margin-bottom:8px}.proxy-config-script-wrap{position:relative;background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:14px 14px 12px}[data-theme=dark] .proxy-config-script-wrap{background:#ffffff08}.proxy-config-reset{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--cl-radius-pill);background:var(--cl-surface);border:1px solid var(--cl-border);color:var(--cl-text-muted);font-family:var(--cl-font-family);font-size:var(--cl-fs-xs);font-weight:var(--cl-fw-semibold);cursor:pointer}.proxy-config-reset:hover{background:var(--cl-bg-muted);color:var(--cl-text)}.proxy-config-script{margin:28px 0 0;padding:0;background:transparent;border:0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;color:var(--cl-text);white-space:pre-wrap;word-break:break-word}.cert-modal{width:760px}.cert-modal-body{display:flex;flex-direction:column;gap:16px}.cert-card{background:var(--cl-surface);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:18px 20px;box-shadow:var(--cl-shadow-sm)}.cert-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.cert-card-name{font-family:var(--cl-font-family);font-size:var(--cl-fs-lg);font-weight:var(--cl-fw-bold);color:var(--cl-text)}.cert-card-dates{display:flex;gap:16px;margin-top:4px;font-size:var(--cl-fs-sm);color:var(--cl-text-muted);flex-wrap:wrap}.cert-card-dates span{display:inline-flex;align-items:center;gap:6px}.cert-card-actions{display:inline-flex;gap:8px}.cert-edit svg{color:var(--cl-primary)}.cert-edit:hover{background:#008ad71a}.cert-delete svg{color:#d32f2f}.cert-delete:hover{background:#d32f2f1a}.cert-paths{display:flex;flex-direction:column}.cert-path-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--cl-border)}.cert-path-row:first-child{border-top:0}.cert-path-label{display:inline-flex;align-items:center;gap:10px;font-family:var(--cl-font-family);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-semibold);color:var(--cl-text);flex-shrink:0}.cert-path-label svg{color:var(--cl-primary)}.cert-path-value{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--cl-fs-sm);color:var(--cl-text-muted);word-break:break-all;text-align:right}.cert-info-section{background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:16px 20px}[data-theme=dark] .cert-info-section{background:#ffffff08}.cert-info-title{font-family:var(--cl-font-family);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);color:var(--cl-text);margin-bottom:12px}.cert-info-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:var(--cl-fs-sm);color:var(--cl-text)}.cert-info-label{color:var(--cl-text-muted)}.cert-status-badge{display:inline-block;background:#e3f4e2;color:#1f7240;padding:4px 12px;border-radius:var(--cl-radius-sm);font-weight:var(--cl-fw-semibold);font-size:var(--cl-fs-sm)}[data-theme=dark] .cert-status-badge{background:#1f3a26;color:#81c995}.proxy-edit-modal{width:420px}.hosts-modal{width:1140px;max-width:calc(100vw - 32px)}.hosts-modal-body{display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 200px);overflow-y:auto}.hosts-add-btn{align-self:flex-start}.hosts-table-wrap{overflow-x:auto;border-radius:var(--cl-radius-md);border:1px solid var(--cl-border)}.hosts-table{width:100%;border-collapse:separate;border-spacing:0;font-family:var(--cl-font-family)}.hosts-table thead th{text-align:left;font-size:var(--cl-fs-xs);font-weight:var(--cl-fw-bold);color:var(--cl-text-muted);letter-spacing:.4px;text-transform:uppercase;padding:12px 16px;border-bottom:1px solid var(--cl-border);background:var(--cl-surface-alt);white-space:nowrap}[data-theme=dark] .hosts-table thead th{background:#ffffff08}.hosts-table tbody td{padding:14px 16px;border-bottom:1px solid var(--cl-border);font-size:var(--cl-fs-sm);color:var(--cl-text);vertical-align:middle;white-space:nowrap}.hosts-table tbody tr:last-child td{border-bottom:0}.hosts-location-pill{display:inline-block;min-width:36px;padding:2px 12px;border-radius:var(--cl-radius-pill);border:1px solid var(--cl-border-strong);background:var(--cl-surface);text-align:center;font-size:var(--cl-fs-sm);color:var(--cl-text)}.hosts-th-actions{width:100px;text-align:right}.hosts-actions-cell{text-align:right;white-space:nowrap}.host-edit-btn svg{color:var(--cl-primary)}.host-edit-btn:hover{background:#008ad71a}.host-delete-btn svg{color:#d32f2f}.host-delete-btn:hover{background:#d32f2f1a}.host-editor{display:flex;flex-direction:column;gap:16px}.host-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.host-editor-wide{grid-column:span 2}.host-editor-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--cl-border);padding-top:16px}.form-field{display:flex;flex-direction:column}.form-field .form-label{margin-bottom:6px}@media (max-width: 800px){.host-editor-grid{grid-template-columns:1fr}.host-editor-wide{grid-column:auto}}.stepper-modal{width:820px;max-width:calc(100vw - 32px)}.stepper-modal-body{display:flex;flex-direction:column;gap:24px;max-height:calc(100vh - 240px);overflow-y:auto}.stepper-progress{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding-bottom:4px}.stepper-progress .pp-tour-dot:disabled{cursor:default}.stepper-progress .pp-tour-dot:disabled:hover{transform:none;background:#0f172a26}.stepper-modal--themed{--pp-primary: #1e40af;padding:0;overflow:hidden;border-radius:14px}.stepper-modal--themed .pp-tour-hero{padding:22px 64px 22px 24px;border-top-left-radius:14px;border-top-right-radius:14px}.stepper-modal--themed .stepper-modal-body{padding:24px 28px 8px}.stepper-modal--themed .modal-footer{padding:16px 24px}.stepper-body{display:flex;flex-direction:column}.stepper-intro{font-size:var(--cl-fs-sm);color:var(--cl-text-muted);line-height:1.5;margin-bottom:16px;padding:12px 14px;background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-sm)}[data-theme=dark] .stepper-intro{background:#ffffff08}.stepper-host-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media (max-width: 800px){.stepper-host-form{grid-template-columns:1fr}}.stepper-host-add-row{display:flex;align-items:center;gap:16px;margin-top:16px}.stepper-host-count{font-size:var(--cl-fs-sm);color:var(--cl-text-muted)}.stepper-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.stepper-footer .btn{display:inline-flex;align-items:center;gap:4px}.stepper-hide-again{margin-right:auto;font-size:13px;color:var(--cl-text-muted)}.stepper-footer-nav{display:inline-flex;gap:8px}.review-grid{display:flex;flex-direction:column;gap:16px}.review-section{background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:14px 18px}[data-theme=dark] .review-section{background:#ffffff08}.review-section-title{font-family:var(--cl-font-family);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);color:var(--cl-text);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--cl-border)}.review-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:6px 0;font-size:var(--cl-fs-sm);color:var(--cl-text)}.review-row>span{color:var(--cl-text-muted);flex-shrink:0}.review-row>strong{text-align:right;word-break:break-all}.review-mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--cl-fs-xs);font-weight:400!important;color:var(--cl-text-muted)!important}.review-empty{font-size:var(--cl-fs-sm);color:var(--cl-text-muted);font-style:italic}.review-config{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;background:var(--cl-surface);border:1px solid var(--cl-border);border-radius:var(--cl-radius-sm);padding:12px 14px;margin:0;white-space:pre-wrap;word-break:break-word;color:var(--cl-text)}.proxy-page{font-family:var(--cl-font-family)}.proxy-list{display:flex;flex-direction:column;gap:16px}.proxy-card{background:var(--cl-surface);border:1px solid var(--cl-border);border-radius:var(--cl-radius-lg);box-shadow:var(--cl-shadow-sm);overflow:hidden}.proxy-card-body{padding:22px 24px 0}.proxy-card-title{font-family:var(--cl-font-family);font-size:var(--cl-fs-xl);font-weight:var(--cl-fw-bold);color:var(--cl-text)}.proxy-card-url{display:inline-block;margin-top:4px;font-size:var(--cl-fs-sm);color:var(--cl-text-muted);text-decoration:none;word-break:break-all}.proxy-card-url:hover{color:var(--cl-primary);text-decoration:underline}.proxy-card-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0 22px;padding:16px 20px;background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md)}[data-theme=dark] .proxy-card-meta{background:#ffffff08}.proxy-card-meta-col{display:flex;flex-direction:column;gap:4px;min-width:0}.proxy-card-meta-label{font-size:var(--cl-fs-xs);color:var(--cl-text-muted);font-weight:var(--cl-fw-semibold)}.proxy-card-meta-value{font-size:var(--cl-fs-md);color:var(--cl-text);font-weight:var(--cl-fw-semibold)}.proxy-card-actions{display:flex;align-items:stretch;border-top:1px solid var(--cl-border)}.proxy-action{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 8px;background:transparent;color:var(--cl-text);font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);cursor:pointer;border-right:1px solid var(--cl-border);transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.proxy-action:last-child{border-right:0}.proxy-action svg{color:var(--cl-primary);flex-shrink:0}.proxy-action:hover{background:var(--cl-bg-muted)}.proxy-action-chevron{color:var(--cl-text-muted)!important;margin-left:-2px}.proxy-action-delete{color:#d32f2f}.proxy-action-delete svg{color:#d32f2f}.proxy-action-delete:hover{background:#d32f2f0f;color:#d32f2f}@media (max-width: 900px){.proxy-card-meta{grid-template-columns:1fr}.proxy-card-actions{flex-wrap:wrap}.proxy-action{flex:1 1 33%;border-bottom:1px solid var(--cl-border)}}.zero-state{margin:24px auto;max-width:480px;text-align:center;background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-lg);padding:40px 32px;display:flex;flex-direction:column;align-items:center;font-family:var(--cl-font-family)}[data-theme=dark] .zero-state{background:#ffffff08}.zero-state-icon-wrap{position:relative;width:80px;height:80px;border-radius:50%;background:var(--cl-blue-light, #e7f0fa);display:flex;align-items:center;justify-content:center;margin-bottom:18px}[data-theme=dark] .zero-state-icon-wrap{background:#008ad72e}.zero-state-icon{color:var(--cl-primary-dark)}.zero-state-badge{position:absolute;bottom:-2px;right:-2px;width:24px;height:24px;border-radius:50%;background:var(--cl-surface);border:1.5px solid var(--cl-border);color:var(--cl-text-muted);display:inline-flex;align-items:center;justify-content:center}.zero-state-title{font-family:var(--cl-font-family);font-size:var(--cl-fs-xl);font-weight:var(--cl-fw-bold);color:var(--cl-text);margin:0 0 8px}.zero-state-desc{font-family:var(--cl-font-family);font-size:var(--cl-fs-md);color:var(--cl-text-muted);line-height:1.5;margin:0 0 22px;max-width:320px}.zero-state-cta{display:inline-flex;align-items:center;gap:8px}.roster-page{font-family:var(--cl-font-family);transition:opacity .15s}.roster-page.disabled{opacity:.55;pointer-events:none}.roster-th-stack{display:flex;flex-direction:column;gap:6px;text-transform:uppercase}.roster-th-search{width:220px;padding:4px 12px;text-transform:none;font-weight:400;letter-spacing:0;margin-top:2px}.roster-th-search input{text-transform:none;letter-spacing:0;font-weight:400}.roster-form{display:flex;flex-direction:column;gap:18px;max-width:720px}.roster-field{display:flex;flex-direction:column}.roster-field .form-label{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px}.roster-field-row{display:flex;align-items:center;gap:14px}.roster-field-row .text-input{flex:1;height:38px;border-radius:6px;font-family:var(--cl-font-family)}.roster-field-status{display:inline-flex;align-items:center;gap:8px;min-width:80px}.roster-verify-dot{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.roster-verify-dot.ok{background:#28a745}.roster-verify-dot.pending{background:var(--cl-border-strong)}.roster-verify-link{background:transparent;color:#28a745;font-family:var(--cl-font-family);font-weight:var(--cl-fw-semibold);font-size:var(--cl-fs-md);padding:0;cursor:pointer}.roster-verify-link:hover{text-decoration:underline}.roster-save-btn{align-self:flex-start;margin-top:8px}.roster-data-section{margin-top:8px}.roster-data-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px;gap:16px;flex-wrap:wrap}.roster-sync-btn{margin-bottom:4px;display:inline-flex;align-items:center;gap:6px}.roster-table thead th{vertical-align:top}.roster-source-id{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--cl-fs-sm);color:var(--cl-text)}.roster-type{text-transform:capitalize;color:var(--cl-text-muted)}.roster-status{color:#28a745;font-weight:var(--cl-fw-semibold);text-transform:capitalize}[data-theme=dark] .roster-status{color:#81c995}.col-muted{color:var(--cl-text-muted)}.ad-page{font-family:var(--cl-font-family);transition:opacity .15s}.ad-page.disabled{opacity:.55;pointer-events:none}.ad-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:8px 0 18px;flex-wrap:wrap}.ad-toolbar-left{display:flex;align-items:center;gap:10px}.ad-toolbar-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text)}.ad-toolbar-toggle-label{font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text)}.ad-toolbar-right{display:inline-flex;align-items:center;gap:10px}.ad-domain-select{height:32px;padding:0 28px 0 12px;background:var(--cl-surface);color:var(--cl-text);border:1px solid var(--cl-border-strong);border-radius:6px;font-size:var(--cl-fs-sm);font-family:var(--cl-font-family);cursor:pointer;min-width:140px}.ad-search-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:6px 0 12px;flex-wrap:wrap}.ad-search{display:inline-flex;align-items:center;gap:8px;background:var(--cl-surface);border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-pill);padding:6px 14px;width:320px;max-width:100%}.ad-search svg{color:var(--cl-text-muted);flex-shrink:0}.ad-search input{border:0;outline:0;background:transparent;flex:1;font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);color:var(--cl-text);min-width:0}.ad-search input::placeholder{color:var(--cl-text-muted)}.ad-filter{height:32px;padding:0 28px 0 14px;border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-pill);background:var(--cl-surface);color:var(--cl-text);font-size:var(--cl-fs-sm);font-family:var(--cl-font-family);cursor:pointer;min-width:80px}.ad-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:4px}.ad-table thead th{text-align:left;font-family:var(--cl-font-family);font-size:var(--cl-fs-xs);font-weight:var(--cl-fw-bold);color:var(--cl-text-muted);letter-spacing:.4px;text-transform:uppercase;padding:12px 14px;border-bottom:1px solid var(--cl-border);background:transparent}.ad-table tbody td{padding:14px;border-bottom:1px solid var(--cl-border);font-size:var(--cl-fs-md);color:var(--cl-text);vertical-align:middle}.ad-table tbody tr:last-child td{border-bottom:0}.ad-unc{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--cl-fs-sm);color:var(--cl-text);word-break:break-all}.ad-col-action{width:130px;text-align:right;white-space:nowrap}.ad-action-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;margin-left:4px;transition:background var(--motion-fast) ease,color var(--motion-fast) ease;background:transparent}.ad-action-permissions{color:var(--cl-primary-dark)}.ad-action-permissions:hover{background:#008ad71f}.ad-action-delete{color:#d32f2f}.ad-action-delete:hover{background:#d32f2f1f}.ad-empty{text-align:center;padding:36px 16px!important;color:var(--cl-text-muted);font-size:var(--cl-fs-sm)}.ad-empty--large{padding:60px 16px!important}.ad-pagination{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-top:16px;font-size:var(--cl-fs-sm);color:var(--cl-text)}.ad-pagination-size{display:inline-flex;align-items:center;gap:8px}.ad-pagination-size select{padding:4px 22px 4px 8px;border:1px solid var(--cl-border-strong);border-radius:4px;background:var(--cl-surface);color:var(--cl-text);font-family:var(--cl-font-family)}.ad-pagination-count{color:var(--cl-text)}.ad-pagination-controls{display:inline-flex;align-items:center;gap:4px}.ad-page-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;color:var(--cl-text-muted);background:transparent}.ad-page-btn:hover:not(:disabled){background:var(--cl-bg-muted);color:var(--cl-text)}.ad-page-btn:disabled{color:var(--cl-border-strong);cursor:default}.role-tabs{display:flex;gap:4px;border-bottom:1px solid var(--cl-border);margin:4px 0 0;flex-wrap:wrap}.role-tab{height:38px;padding:0 16px;font-family:var(--cl-font-family);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text-muted);background:transparent;border-radius:8px 8px 0 0;margin-bottom:-1px;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--motion-fast),background var(--motion-fast),border-color var(--motion-fast)}.role-tab:hover{color:var(--cl-text);background:var(--cl-bg-muted)}.role-tab.active{color:var(--cl-primary-dark);border-bottom-color:var(--cl-primary);background:transparent}[data-theme=dark] .role-tab.active{color:var(--cl-primary)}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:4px}.service-card{background:var(--cl-surface-alt);border:1px solid var(--cl-border);border-radius:var(--cl-radius-md);padding:16px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s,box-shadow .15s;font-family:var(--cl-font-family)}[data-theme=dark] .service-card{background:#ffffff08}.service-card.disabled{background:var(--cl-bg-muted)}.service-card-top{display:flex;align-items:center;gap:12px}.service-logo{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--cl-surface);border:1px solid var(--cl-border);border-radius:var(--cl-radius-sm)}.service-meta{flex:1;min-width:0}.service-name{font-family:var(--cl-font-family);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);color:var(--cl-text)}.service-url{font-size:var(--cl-fs-xs);color:var(--cl-text-muted);margin-top:2px}.service-body{display:flex;flex-direction:column;gap:12px;transition:opacity .15s}.service-body.fade{opacity:.45;pointer-events:none}.service-max-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.service-max-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--cl-fs-sm);color:var(--cl-text-muted)}.help-inline{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--cl-text-muted)}.help-inline svg{width:14px;height:14px}.service-max-select{height:30px;padding:0 24px 0 10px;background:var(--cl-surface);color:var(--cl-text);border:1px solid var(--cl-border-strong);border-radius:6px;font-size:var(--cl-fs-sm);font-family:var(--cl-font-family);cursor:pointer;min-width:68px}.domain-pill{width:100%;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:6px;border:1px solid transparent;font-family:var(--font-family-primary);font-size:13px;cursor:pointer;text-align:left}.domain-pill svg{width:16px;height:16px;flex-shrink:0}.domain-pill-open{background:var(--gd-surface);color:var(--gd-text-muted);border-color:var(--gd-border)}.domain-pill-open:hover{background:var(--gd-hover)}.domain-pill-locked{background:#fff4d6;color:#714b07;border-color:#f6d97a}[data-theme=dark] .domain-pill-locked{background:#3a2e10;color:#f6d97a;border-color:#5c4515}.domain-pill-locked:hover{filter:brightness(.97)}.domain-locked-block{display:flex;flex-direction:column;gap:10px}.domain-chips{display:flex;flex-wrap:wrap;gap:6px}.domain-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;background:var(--gd-hover);border:1px solid var(--gd-border);border-radius:var(--radius-pill);font-size:12px;color:var(--gd-text)}.domain-chip-remove{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--gd-text-muted);border-radius:50%}.domain-chip-remove:hover{background:var(--gd-hover-strong);color:var(--gd-text)}.domain-chip-remove svg{width:12px;height:12px}.domain-chip-add{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--gd-blue);border:1px dashed var(--gd-border-strong)}.domain-chip-add:hover{background:var(--gd-blue-light);border-color:var(--gd-blue)}.domain-chip-add svg{width:14px;height:14px}.domain-chip-input{height:24px;padding:0 8px;border-radius:var(--radius-pill);border:1px solid var(--gd-blue);background:var(--gd-bg);color:var(--gd-text);font-size:12px;outline:none;width:140px}.view-toggle-fab{position:fixed;bottom:24px;right:24px;display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--radius-pill);background:var(--gd-blue);color:#fff;font-family:var(--font-family-primary);font-size:14px;font-weight:500;box-shadow:var(--elev-2);cursor:pointer;z-index:80;transition:background .15s,box-shadow .15s,transform .15s}.view-toggle-fab svg{width:18px;height:18px}.view-toggle-fab--segmented{background:#fff;color:var(--gd-text);padding:4px;gap:2px;height:48px;border:1px solid var(--gd-border)}[data-theme=dark] .view-toggle-fab--segmented{background:#28292c;border-color:#3c4043;color:#e3e3e3}.view-toggle-fab--segmented:hover{background:#fff;transform:none}[data-theme=dark] .view-toggle-fab--segmented:hover{background:#28292c}.view-toggle-seg{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:var(--radius-pill);color:var(--gd-text-muted);background:transparent;font-family:var(--font-family-primary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.view-toggle-seg:hover{background:var(--gd-hover);color:var(--gd-text)}.view-toggle-seg.active{background:var(--gd-blue);color:#fff}.view-toggle-seg.active:hover{background:var(--gd-blue-hover);color:#fff}.view-toggle-seg svg{flex-shrink:0}.preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:#000000e0;z-index:200;display:flex;flex-direction:column;animation:preview-in .18s ease-out}@keyframes preview-in{0%{opacity:0}to{opacity:1}}.preview-header{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 20px;background:#00000080;color:#fff;flex-shrink:0}.preview-header-meta{display:flex;align-items:center;gap:12px;min-width:0;flex:1;margin-right:16px}.preview-header-icon{flex-shrink:0;display:inline-flex;width:22px;height:26px}.preview-header-name{font-size:16px;font-family:var(--font-family-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.preview-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.preview-icon-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#ffffffeb;transition:background .15s}.preview-icon-btn:hover{background:#ffffff1f}.preview-icon-btn svg{width:20px;height:20px}.preview-body{flex:1;display:flex;min-height:0}.preview-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;min-width:0}.preview-stage-card{background:var(--gd-card);color:var(--gd-text);border-radius:var(--radius-md);padding:40px 48px;box-shadow:var(--elev-3);display:flex;flex-direction:column;align-items:center;gap:16px;max-width:480px;text-align:center}.preview-icon-wrap{width:140px;height:180px;display:inline-flex;align-items:center;justify-content:center}.preview-stage-name{font-family:var(--font-family-primary);font-size:18px;font-weight:500;word-break:break-word}.preview-stage-type{font-size:13px;color:var(--gd-text-muted)}.preview-sidebar{width:360px;flex-shrink:0;background:var(--gd-card);color:var(--gd-text);border-left:1px solid var(--gd-border);padding:24px 24px 32px;overflow-y:auto}.preview-sidebar-title{font-family:var(--font-family-primary);font-size:16px;font-weight:500;padding-bottom:12px;border-bottom:1px solid var(--gd-border);margin-bottom:12px}.preview-meta-row{display:flex;align-items:flex-start;gap:16px;padding:10px 0;font-size:13px}.preview-meta-label{width:80px;flex-shrink:0;color:var(--gd-text-muted);font-weight:500}.preview-meta-value{flex:1;color:var(--gd-text);word-break:break-word}.preview-icon-wrap .gd-file-icon.file-icon-lg{width:100%;height:100%}.preview-icon-wrap .gd-file-icon.file-icon-lg .label-tile{font-size:16px;padding:4px 10px}@media (max-width: 720px){.preview-body{flex-direction:column}.preview-sidebar{width:100%;border-left:0;border-top:1px solid var(--gd-border)}}.text-input{width:100%;height:40px;padding:0 14px;background:var(--gd-input-bg);color:var(--gd-text);border:1px solid var(--gd-border-strong);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.text-input::placeholder{color:var(--gd-text-muted)}.text-input:focus{border-color:var(--gd-blue);box-shadow:0 0 0 1px var(--gd-blue)}.parent-shell{--cl-primary: rgb(0, 138, 215);--cl-primary-dark: rgb(10, 77, 127);--cl-primary-hover: rgb(17, 138, 243);--cl-teal: rgb(5, 154, 177);--cl-teal-light: rgb(98, 201, 217);--cl-cyan-soft: rgba(224, 255, 255, .75);--cl-bg: rgb(252, 252, 252);--cl-bg-muted: rgb(243, 243, 243);--cl-surface: rgb(255, 255, 255);--cl-surface-alt: rgb(248, 250, 252);--cl-border: rgb(238, 238, 238);--cl-border-strong: rgb(214, 218, 224);--cl-text: rgb(51, 51, 51);--cl-text-muted: rgb(107, 114, 128);--cl-text-inverse: rgb(255, 255, 255);--cl-tile-hover: rgba(17, 138, 243, .1);--cl-overlay: rgba(0, 0, 0, .4);--cl-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--cl-shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--cl-shadow-lg: 0 12px 32px rgba(0, 0, 0, .12);--cl-header-h: 50px;--cl-content-pad: 24px;--cl-radius-sm: 4px;--cl-radius-md: 8px;--cl-radius-lg: 12px;--cl-radius-pill: 999px;--cl-font-family: "Open Sans", Arial, sans-serif;--cl-fs-xs: 11px;--cl-fs-sm: 13px;--cl-fs-md: 14px;--cl-fs-lg: 16px;--cl-fs-xl: 20px;--cl-fs-2xl: 24px;--cl-fs-3xl: 32px;--cl-fw-regular: 400;--cl-fw-semibold: 600;--cl-fw-bold: 700;font-family:var(--cl-font-family);color:var(--cl-text);background:var(--cl-bg)}[data-theme=dark] .parent-shell{--cl-bg: #0f172a;--cl-bg-muted: #1e293b;--cl-surface: #1e293b;--cl-surface-alt: #1f2937;--cl-border: #334155;--cl-border-strong: #475569;--cl-text: #e2e8f0;--cl-text-muted: #94a3b8}.parent-shell.app-shell{display:grid;grid-template-rows:var(--cl-header-h) 1fr;min-height:100vh}.parent-shell .app-shell__content{overflow-y:auto;width:100%}.parent-shell .content-pad{padding:28px var(--cl-content-pad);max-width:1600px;margin:0 auto;width:100%}.parent-shell button{border:0;background:transparent;font:inherit;color:inherit;cursor:pointer;padding:0}.adv-header{position:sticky;top:0;z-index:50;height:var(--cl-header-h);background:var(--cl-primary-dark);display:grid;grid-template-columns:minmax(220px,280px) 1fr minmax(220px,280px);align-items:center;padding:0 20px;color:var(--cl-text-inverse);box-shadow:0 1px #0003}.adv-header__logo{display:inline-flex;align-items:center;gap:10px;color:var(--cl-text-inverse);font-weight:var(--cl-fw-bold)}.adv-header__logo-mark{width:40px;height:40px;border-radius:8px;background:linear-gradient(135deg,var(--cl-primary),var(--cl-teal));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:var(--cl-fw-bold);font-size:20px;flex-shrink:0}.adv-header__logo-text{font-size:var(--cl-fs-lg);letter-spacing:.2px}@media (max-width: 768px){.adv-header__logo-text{display:none}.adv-header{grid-template-columns:56px 1fr auto;padding:0 10px}}.header-search{display:flex;justify-content:center;align-items:center;padding:0 12px}.header-search__pill{width:100%;max-width:1252px;height:36px;background:#fff;border-radius:var(--cl-radius-pill);display:flex;align-items:center;gap:8px;padding:0 4px 0 14px;box-shadow:inset 0 0 0 1px #00000014}.header-search__icon{color:var(--cl-text-muted);flex-shrink:0}.header-search__input{flex:1;height:100%;border:0;outline:0;background:transparent;font-size:var(--cl-fs-md);color:var(--cl-text)}.header-search__input::placeholder{color:var(--cl-text-muted)}.header-search__tag{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:var(--cl-radius-pill);color:var(--cl-primary);font-size:var(--cl-fs-sm);flex-shrink:0;transition:background var(--motion-fast) ease}.header-search__tag:hover{background:var(--cl-tile-hover)}.header-icons{display:flex;align-items:center;justify-content:flex-end;gap:2px;position:relative}.parent-shell .cl-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:var(--cl-text-inverse);transition:background var(--motion-fast) ease;position:relative}.parent-shell .cl-icon-btn:hover{background:#ffffff1f}.parent-shell .cl-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#e53935;color:#fff;font-size:10px;font-weight:var(--cl-fw-bold);display:inline-flex;align-items:center;justify-content:center}.header-icons__avatar{background:linear-gradient(135deg,var(--cl-teal),var(--cl-primary));margin-left:6px}.header-icons__avatar-initials{font-size:12px;font-weight:var(--cl-fw-bold);letter-spacing:.4px}.side-panel__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90;animation:pp-fadein .12s ease}.side-panel{position:fixed;top:50px;right:0;bottom:0;width:380px;max-width:95vw;background:#fff;z-index:91;display:flex;flex-direction:column;box-shadow:var(--elev-3);animation:pp-slidein .2s ease;font-family:Open Sans,sans-serif;color:#333}[data-theme=dark] .side-panel{background:#1e293b;color:#e2e8f0}.side-panel__head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #eee}[data-theme=dark] .side-panel__head{border-bottom-color:#334155}.side-panel__title{font-size:16px;font-weight:600;margin:0}.side-panel__close{width:32px;height:32px;border-radius:50%;color:#6b7280;background:transparent;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.side-panel__close:hover{background:#f3f4f6}.side-panel__body{flex:1;overflow-y:auto;padding:8px}@keyframes pp-fadein{0%{opacity:0}to{opacity:1}}@keyframes pp-slidein{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.notif-list{display:flex;flex-direction:column;gap:4px;list-style:none;padding:0;margin:0}.notif-list__item{display:flex;gap:12px;padding:12px 16px;border-radius:8px;transition:background var(--motion-fast) ease}.notif-list__item:hover{background:#118af31a}.notif-list__dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.notif-list__dot--info{background:#008ad7}.notif-list__dot--success{background:#388e3c}.notif-list__dot--warn{background:#ffa000}.notif-list__dot--alert{background:#d32f2f}.notif-list__body{flex:1}.notif-list__title{font-size:14px;color:inherit;margin-bottom:4px}.notif-list__time{font-size:11px;color:#6b7280}.profile-card{display:flex;flex-direction:column;align-items:center;padding:20px;gap:8px}.profile-card__avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#059ab1,#008ad7);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.profile-card__name{font-size:16px;font-weight:600}.profile-card__role{font-size:13px;color:#6b7280;margin-bottom:12px}.profile-card__links{width:100%;list-style:none;padding:0;margin:0}.profile-card__links li{padding:10px 12px;border-top:1px solid #eee;font-size:13px}.profile-card__links li:hover{background:#118af31a}.profile-card__links a{color:inherit;text-decoration:none;display:block}.parent-shell .home{padding-bottom:90px}.pp-section{margin-bottom:36px}.pp-section__head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.pp-section__title-wrap{display:flex;align-items:center;gap:14px}.pp-section__icon{width:56px;height:56px;border-radius:12px;background:var(--cl-cyan-soft);color:var(--cl-primary-dark);display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #0a4d7f26}.pp-section__title{font-size:var(--cl-fs-2xl);font-weight:var(--cl-fw-bold);color:var(--cl-primary-dark);line-height:1.1;margin:0}.pp-section__sub{font-size:var(--cl-fs-md);color:var(--cl-text-muted);margin:2px 0 0}.pp-section__tools{display:flex;gap:8px;margin-top:8px}.pp-section__tool{width:32px;height:32px;border-radius:8px;color:var(--cl-primary-dark);display:inline-flex;align-items:center;justify-content:center;transition:background var(--motion-fast) ease}.pp-section__tool:hover{background:var(--cl-tile-hover)}.pp-section__students{display:flex;flex-wrap:wrap;gap:clamp(40px,6vw,96px);justify-content:flex-start;padding:8px 0 20px}.pp-section__empty{font-size:14px;color:var(--cl-text-muted);padding:24px 0}.pp-card{display:flex;flex-direction:column;align-items:center;text-align:center;width:180px;padding:4px;gap:10px;cursor:pointer;text-decoration:none;color:inherit;border-radius:var(--cl-radius-lg);transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.pp-card:hover{transform:translateY(-2px)}.pp-card:hover .pp-card__avatar{box-shadow:var(--elev-2)}.pp-card:focus-visible{outline:2px solid var(--cl-primary);outline-offset:4px}.pp-card__avatar{width:110px;height:110px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--elev-1)}.pp-card__avatar-emoji{font-size:74px;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}.pp-card__name{font-size:var(--cl-fs-lg);font-weight:var(--cl-fw-bold);color:var(--cl-primary-dark);margin:8px 0 0}.pp-card__meta{font-size:var(--cl-fs-sm);color:var(--cl-primary);line-height:1.3;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:200px}.pp-card__sep{color:var(--cl-border-strong)}.other-apps{background:var(--cl-surface);border:2px solid var(--cl-primary-dark);border-radius:var(--cl-radius-lg);padding:14px 16px 18px;margin-top:8px}.other-apps__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.other-apps__title-wrap{display:inline-flex;align-items:center;gap:8px}.other-apps__title{font-size:var(--cl-fs-lg);font-weight:var(--cl-fw-bold);color:var(--cl-primary-dark);margin:0}.other-apps__add,.other-apps__toggle{color:var(--cl-primary-dark);width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background var(--motion-fast) ease}.other-apps__add:hover,.other-apps__toggle:hover{background:var(--cl-tile-hover)}.other-apps__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:4px}.other-apps--closed{padding-bottom:14px}.parent-shell .dock-hover-zone{position:fixed;left:0;right:0;bottom:0;height:28px;z-index:29}.parent-shell .home+.bottom-dock,.parent-shell .home .bottom-dock{transform:translateY(90px);transition:transform var(--motion-base) ease-out}.parent-shell .home .dock-hover-zone:hover~.bottom-dock,.parent-shell .home .bottom-dock:hover{transform:translateY(0)}.app-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;border-radius:var(--cl-radius-md);transition:background var(--motion-fast) ease,transform var(--motion-fast) ease;cursor:pointer}.app-tile:hover{background:var(--cl-tile-hover)}.app-tile:active{transform:scale(.97)}.app-tile--sm{width:92px}.app-tile--md{width:96px}.app-tile__icon-wrap{position:relative;display:inline-block}.app-tile__icon{width:56px;height:56px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:700;box-shadow:var(--elev-1);overflow:hidden}.app-tile__icon--img{background:#fff}.app-tile__img{width:100%;height:100%;object-fit:cover;display:block}.app-tile--sm .app-tile__icon{width:60px;height:60px}.app-tile__star{position:absolute;top:-4px;left:-4px;width:18px;height:18px;border-radius:50%;background:#fff;color:#f5b400;display:inline-flex;align-items:center;justify-content:center;z-index:1;box-shadow:var(--elev-1)}.app-tile__label{font-size:var(--cl-fs-xs);color:var(--cl-text);text-align:center;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;word-break:break-word}.app-tile--md .app-tile__label{font-size:var(--cl-fs-sm)}.app-tile--no-label{padding-bottom:4px;gap:0}.app-tile--no-label .app-tile__label{display:none}.parent-shell .bottom-dock{position:fixed;left:0;right:0;bottom:0;height:38px;background:#c4cad3f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 -2px 8px #00000014;z-index:30;display:flex;justify-content:center;overflow:visible}.parent-shell .bottom-dock__inner{display:flex;align-items:flex-end;gap:10px;max-width:1600px;padding:0 16px 6px}.si-shell .bottom-dock .app-tile--md .app-tile__icon{width:50px;height:50px;font-size:18px}.student-overview{padding-bottom:90px}.so__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.so__title{font-size:var(--cl-fs-2xl);font-weight:var(--cl-fw-bold);color:var(--cl-primary-dark);margin:0}.so__back{display:inline-flex;align-items:center;gap:8px;color:var(--cl-primary);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-semibold);padding:6px 10px;border-radius:var(--cl-radius-pill);transition:background var(--motion-fast) ease}.so__back:hover{background:var(--cl-tile-hover)}.so__profile{display:flex;align-items:flex-start;gap:18px;padding:12px 0 20px;border-bottom:1px solid var(--cl-border);margin-bottom:18px}.so__avatar{width:96px;height:96px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--elev-1)}.so__avatar-emoji{font-size:68px;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}.so__profile-body{display:flex;flex-direction:column;gap:12px;flex:1;min-width:0;padding-top:4px}.so__selector-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.parent-shell .so__impersonate{display:inline-flex;align-items:center;gap:10px;padding:10px 22px;border-radius:var(--cl-radius-pill);background:var(--cl-primary-dark);color:var(--cl-text-inverse);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);letter-spacing:.2px;flex-shrink:0;border:0;box-shadow:0 1px 2px #0a4d7f33;transition:background var(--motion-fast) ease}.parent-shell .so__impersonate:hover{background:var(--cl-primary)}.parent-shell .so__impersonate svg{width:16px;height:16px}.so__meta{display:flex;flex-wrap:wrap;gap:4px 28px;margin:0;font-size:var(--cl-fs-sm)}.so__meta-pair{display:inline-flex;align-items:baseline;gap:6px}.so__meta-pair dt{color:var(--cl-text);font-weight:var(--cl-fw-bold)}.so__meta-pair dd{margin:0;color:var(--cl-text)}.so__tab-area{margin-top:6px}.so__no-tabs{border:2px solid var(--cl-primary-dark);border-radius:var(--cl-radius-lg);padding:32px;text-align:center;color:var(--cl-text-muted);font-size:var(--cl-fs-md)}.so__classes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;padding:8px 12px 18px;border:1px solid var(--cl-primary-dark);border-radius:var(--cl-radius-lg);background:transparent}.so__applications{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;padding:18px 16px;border:2px solid var(--cl-primary-dark);border-radius:var(--cl-radius-lg);background:var(--cl-surface);justify-items:center}@media (max-width: 768px){.so__profile{flex-direction:column}.so__meta{gap:4px 16px}}.parent-shell .tabs{display:flex;gap:4px;border-bottom:1px solid var(--cl-border);margin-bottom:16px}.parent-shell .tabs__tab{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:1px solid transparent;border-bottom:0;border-top-left-radius:var(--cl-radius-md);border-top-right-radius:var(--cl-radius-md);background:transparent;color:var(--cl-text-muted);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-semibold);position:relative;top:1px;transition:color var(--motion-fast) ease,background var(--motion-fast) ease}.parent-shell .tabs__tab:hover{color:var(--cl-primary-dark);background:var(--cl-tile-hover)}.parent-shell .tabs__tab--active{color:var(--cl-primary-dark);background:var(--cl-surface);border-color:var(--cl-border);border-bottom-color:var(--cl-surface)}.parent-shell .tabs__icon{color:var(--cl-primary)}.parent-shell .tabs__tab--active .tabs__icon{color:var(--cl-primary-dark)}.student-selector{position:relative;display:inline-block}.student-selector__btn{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;min-width:280px;background:var(--cl-surface);border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-md);color:var(--cl-primary-dark);font-size:var(--cl-fs-md);font-weight:var(--cl-fw-semibold);transition:border-color var(--motion-fast) ease}.student-selector__btn:hover{border-color:var(--cl-primary)}.student-selector__cap{color:var(--cl-primary-dark)}.student-selector__greeting{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--cl-text-muted, #64748b);margin-right:2px}.student-selector__name{flex:1;text-align:left}.student-selector__chev{color:var(--cl-text-muted)}.student-selector__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--cl-surface);border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-md);box-shadow:var(--cl-shadow-md);padding:4px;z-index:20;display:flex;flex-direction:column;list-style:none;margin:0}.student-selector__menu li{width:100%}.student-selector__opt{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--cl-radius-sm);width:100%;text-align:left;font-size:var(--cl-fs-md);color:var(--cl-text);transition:background var(--motion-fast) ease}.student-selector__opt:hover{background:var(--cl-tile-hover)}.student-selector__opt--active{color:var(--cl-primary-dark);font-weight:var(--cl-fw-semibold)}.student-selector__opt svg{color:var(--cl-primary)}.class-card{background:var(--cl-surface);border:1px solid var(--cl-border);border-radius:var(--cl-radius-lg);box-shadow:var(--cl-shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease;cursor:pointer;color:inherit;text-align:inherit;padding:0;width:100%}.class-card:hover{transform:translateY(-2px);box-shadow:var(--cl-shadow-md)}.class-card:focus-visible{outline:2px solid var(--cl-primary);outline-offset:2px}.class-card__banner{min-height:64px;width:100%;display:flex;align-items:center;justify-content:center;padding:12px 14px;text-align:center}.class-card__name{font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);letter-spacing:.4px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.18);margin:0;line-height:1.2;word-break:break-word}.class-card__body{display:flex;flex-direction:column;align-items:center;padding:18px;text-align:center;gap:6px}.class-card__illustration{width:84px;height:84px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000014,inset 0 0 0 1px var(--cl-border);margin-bottom:2px}.class-card__emoji{font-size:48px;line-height:1}.class-card__period{font-size:var(--cl-fs-sm);color:var(--cl-text-muted);margin:0}.class-card__teacher{font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);color:var(--cl-text);margin:0}.class-card__apps{display:flex;align-items:center;gap:4px;margin-top:10px;flex-wrap:wrap;justify-content:center}.class-card__mini{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;color:#fff;font-size:10px;font-weight:700;box-shadow:var(--elev-1)}.class-card__mini img{width:100%;height:100%;object-fit:cover;display:block}.class-card__more{min-width:28px;height:22px;padding:0 8px;border-radius:12px;background:var(--cl-primary-dark);color:#fff;font-size:var(--cl-fs-xs);font-weight:var(--cl-fw-bold);display:inline-flex;align-items:center;justify-content:center}.analytics{border:2px solid var(--cl-primary-dark);border-radius:var(--cl-radius-lg);background:transparent;padding:18px;display:flex;flex-direction:column;gap:18px}.analytics__daterange{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:8px 14px;background:var(--cl-surface);border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-md);color:var(--cl-text);font-size:var(--cl-fs-sm);font-weight:var(--cl-fw-semibold);box-shadow:var(--cl-shadow-sm);transition:border-color var(--motion-fast) ease;cursor:pointer}.analytics__daterange:hover{border-color:var(--cl-primary)}.analytics__daterange svg{color:var(--cl-primary-dark)}.analytics__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:4px 8px}.analytics__stat{background:var(--cl-surface);border-radius:var(--cl-radius-md);box-shadow:var(--cl-shadow-sm);padding:22px 14px 20px;display:flex;flex-direction:column;align-items:center;gap:10px}.analytics__stat-label{font-size:var(--cl-fs-md);color:var(--cl-text-muted)}.analytics__stat-value{font-size:var(--cl-fs-3xl);font-weight:var(--cl-fw-bold);color:var(--cl-text);line-height:1}.analytics__table{background:var(--cl-surface);border-radius:var(--cl-radius-md);box-shadow:var(--cl-shadow-sm);overflow:hidden}.analytics__thead{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:18px 22px 16px;font-size:var(--cl-fs-md);font-weight:var(--cl-fw-bold);color:var(--cl-text);border-bottom:1px solid var(--cl-border)}.analytics__thead>span:nth-child(2){text-align:center}.analytics__thead>span:nth-child(3){text-align:center}.analytics__th-sort{display:inline-flex;align-items:center;gap:6px;justify-content:center}.analytics__th-sort svg{color:var(--cl-primary)}.analytics__tbody{min-height:80px;display:flex;align-items:center;justify-content:center}.analytics__empty{color:var(--cl-text-muted);font-size:var(--cl-fs-md);padding:20px 0}.analytics__pagination{display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:12px 22px 14px;border-top:1px solid var(--cl-border);font-size:var(--cl-fs-sm);color:var(--cl-text-muted)}.analytics__page-size{display:inline-flex;align-items:center;gap:8px}.analytics__page-size select{padding:4px 22px 4px 8px;border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-sm);background:var(--cl-surface);color:var(--cl-text);font-size:var(--cl-fs-sm)}.analytics__page-info{font-variant-numeric:tabular-nums}.analytics__page-nav{display:inline-flex;gap:8px}.analytics__page-nav button{width:28px;height:28px;border:1px solid var(--cl-border-strong);border-radius:var(--cl-radius-sm);background:var(--cl-surface);color:var(--cl-text);display:inline-flex;align-items:center;justify-content:center;transition:background var(--motion-fast) ease;cursor:pointer}.analytics__page-nav button:hover:not(:disabled){background:var(--cl-tile-hover)}.analytics__page-nav button:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 1024px){.analytics__stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.analytics__stats{grid-template-columns:1fr}.analytics__pagination{flex-wrap:wrap;justify-content:flex-start}}.app-modal__scrim,.class-modal__scrim,.imp-modal__scrim,.side-panel__scrim{--cl-primary: rgb(0, 138, 215);--cl-primary-dark: rgb(10, 77, 127);--cl-bg: rgb(252, 252, 252);--cl-bg-muted: rgb(243, 243, 243);--cl-surface: rgb(255, 255, 255);--cl-border: rgb(238, 238, 238);--cl-border-strong: rgb(214, 218, 224);--cl-text: rgb(51, 51, 51);--cl-text-muted: rgb(107, 114, 128)}[data-theme=dark] .app-modal__scrim,[data-theme=dark] .class-modal__scrim,[data-theme=dark] .imp-modal__scrim,[data-theme=dark] .side-panel__scrim{--cl-bg: #0f172a;--cl-bg-muted: #1e293b;--cl-surface: #1e293b;--cl-border: #334155;--cl-border-strong: #475569;--cl-text: #e2e8f0;--cl-text-muted: #94a3b8}.app-modal__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90;animation:pp-modal-fade .12s ease}.app-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:720px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);background:#fff;border-radius:12px;box-shadow:var(--elev-3);padding:24px 24px 22px;z-index:91;display:flex;flex-direction:column;overflow:hidden;animation:pp-modal-pop .16s ease;font-family:Open Sans,sans-serif;color:#333}[data-theme=dark] .app-modal{background:#1e293b;color:#e2e8f0}.app-modal__close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:4px;border:1px solid #d6dae0;background:#fff;color:#333;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--motion-fast) ease}.app-modal__close:hover{background:#f3f3f3}[data-theme=dark] .app-modal__close{background:transparent;color:#e2e8f0;border-color:#475569}.app-modal__head{display:flex;align-items:flex-start;gap:18px;padding-right:48px;margin-bottom:16px}.app-modal__icon{width:76px;height:76px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:32px;font-weight:700;flex-shrink:0;box-shadow:var(--elev-1);overflow:hidden}.app-modal__icon--img{background:#fff}.app-modal__icon img{width:100%;height:100%;object-fit:cover;display:block}.app-modal__head-text{padding-top:4px;min-width:0;flex:1}.app-modal__title{font-size:16px;font-weight:700;color:inherit;margin:0 0 6px;word-break:break-word}.app-modal__url{color:#008ad7;font-size:13px;word-break:break-all;text-decoration:none}.app-modal__url:hover{text-decoration:underline}.app-modal__body{overflow-y:auto;flex:1;margin:0 -8px;padding:0 8px 4px}.app-modal__field{margin-bottom:14px}.app-modal__field:last-child{margin-bottom:0}.app-modal__label{font-size:14px;font-weight:700;color:inherit;margin-bottom:4px}.app-modal__value{font-size:14px;color:inherit;line-height:1.5}.app-modal__desc{white-space:pre-wrap;word-break:break-word}@keyframes pp-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes pp-modal-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.class-modal__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90;animation:pp-modal-fade .12s ease}.class-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:920px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);background:#fff;border-radius:12px;box-shadow:var(--elev-3);z-index:91;display:flex;overflow:hidden;animation:pp-modal-pop .16s ease;font-family:Open Sans,sans-serif;color:#333}[data-theme=dark] .class-modal{background:#1e293b;color:#e2e8f0}.class-modal__close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:4px;border:1px solid #d6dae0;background:#fff;color:#333;display:inline-flex;align-items:center;justify-content:center;z-index:2;cursor:pointer;transition:background var(--motion-fast) ease}.class-modal__close:hover{background:#f3f3f3}[data-theme=dark] .class-modal__close{background:transparent;color:#e2e8f0;border-color:#475569}.class-modal__body{display:flex;flex:1;min-height:0}.class-modal__sidebar{width:220px;padding:24px 20px;border-right:1px solid #eee;flex-shrink:0;display:flex;flex-direction:column;gap:18px}[data-theme=dark] .class-modal__sidebar{border-right-color:#334155}.class-modal__title{font-size:16px;font-weight:700;margin:0}.class-modal__class-name{font-size:14px;font-weight:600;color:#008ad7;letter-spacing:.4px}.class-modal__instructor{font-size:14px}.class-modal__apps{flex:1;padding:24px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px;overflow-y:auto;align-content:start;justify-items:center}@media (max-width: 720px){.class-modal__body{flex-direction:column}.class-modal__sidebar{width:auto;border-right:0;border-bottom:1px solid #eee}}.parent-admin-row{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;padding:16px 18px;margin-top:12px}.parent-admin-row-text{flex:1}.parent-admin-row-title{font-weight:700;font-size:14px;color:var(--cl-text, #1f2937)}.parent-admin-row-sub{font-size:13px;color:var(--cl-muted, #64748b);margin-top:4px;line-height:1.5}.parent-admin-tabs-row{display:flex;flex-wrap:wrap;gap:18px 32px;margin-top:14px;padding:16px 18px;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px}.parent-admin-tab-toggle{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--cl-text, #1f2937)}.switch--disabled{opacity:.45;cursor:not-allowed}.admin__scope{margin-top:12px;padding:14px 16px;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;display:flex;flex-direction:column;gap:12px}.admin__scope-label{font-size:13px;font-weight:700;color:var(--cl-text, #1f2937)}.admin__scope-radio{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:8px 0}.admin__scope-radio input[type=radio]{margin-top:3px}.admin__scope-radio span{display:flex;flex-direction:column;gap:2px}.admin__scope-radio strong{font-size:14px;font-weight:600}.admin__scope-radio small{font-size:12px;color:var(--cl-muted, #64748b)}.admin__group-card{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;background:var(--cl-surface-alt, #f8fafc)}.admin__group-card-icon{width:44px;height:44px;border-radius:999px;background:#ef44441a;color:#ef4444;display:inline-flex;align-items:center;justify-content:center}.admin__group-card-body{flex:1}.admin__group-card-name{font-size:14px;font-weight:700;color:var(--cl-text, #1f2937)}.admin__group-card-desc{font-size:13px;color:var(--cl-muted, #64748b);margin:4px 0 10px;line-height:1.5}.admin__group-card-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.admin__group-card-count{font-size:13px;color:var(--cl-text, #1f2937)}.admin__group-card-count strong{font-size:15px}.admin__group-card-link{font-size:13px;color:#008ad7;display:inline-flex;align-items:center;gap:6px;text-decoration:none}.admin__group-card-link:hover{text-decoration:underline}.admin__divider{border:0;border-top:1px solid var(--cl-border, #e2e8f0);margin:14px 0 4px}.parent-toast{position:fixed;bottom:96px;left:50%;transform:translate(-50%);background:#0f172a;color:#fff;font-size:13px;padding:10px 16px;border-radius:999px;box-shadow:0 10px 24px #0f172a4d;z-index:50}.imp-modal__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;z-index:200;animation:imp-modal-fade .12s ease}.imp-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:460px;max-width:calc(100vw - 32px);background:#fff;color:#0f172a;border-radius:12px;box-shadow:0 20px 50px #0f172a4d;padding:26px 28px 22px;z-index:201;animation:imp-modal-pop .16s ease;font-family:Open Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}[data-theme=dark] .imp-modal{background:#1e293b;color:#e2e8f0}.imp-modal__title{font-size:20px;font-weight:700;color:inherit;margin:0 0 12px}.imp-modal__body{font-size:14px;color:inherit;line-height:1.55;margin:0 0 22px}.imp-modal__actions{display:flex;gap:10px;justify-content:flex-end}.imp-modal__btn{padding:9px 22px;border-radius:999px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease}.imp-modal__btn--secondary{background:#fff;color:#1f2937;border-color:#cbd5e1}.imp-modal__btn--secondary:hover{background:#f1f5f9;border-color:#94a3b8}[data-theme=dark] .imp-modal__btn--secondary{background:transparent;color:#e2e8f0;border-color:#475569}.imp-modal__btn--primary{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.imp-modal__btn--primary:hover{background:var(--pp-primary);border-color:var(--pp-primary)}@keyframes imp-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes imp-modal-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.si-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 100% 100%,rgba(255,255,255,.08),transparent 60%),linear-gradient(135deg,#6e4a2c,#4a3018 60%,#2c2018);background-attachment:fixed;padding-bottom:90px;position:relative;font-family:Open Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.si-shell--empty{background:#0f172a;color:#fff}.si-empty{padding:40px;margin:0}.si-frame{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10;box-shadow:inset 16px 0 #dc2626,inset -16px 0 #dc2626,inset 0 -16px #dc2626}.si-shell .bottom-dock{left:16px;right:16px;bottom:16px}.si-banner{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 24px;background:#dc2626;color:#fff;font-size:14px;font-weight:600;position:relative;z-index:5}.si-banner__msg{display:inline-flex;align-items:center;gap:10px}.si-banner__msg strong{color:#fff;font-weight:700}.si-banner__icon{color:#fff}.si-banner__end{background:#fff;color:#1a1a1a;border:1px solid #fff;padding:7px 18px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--motion-fast) ease}.si-banner__end:hover{background:#fde7e7}.si-header{display:flex;align-items:center;gap:10px;height:56px;padding:0 12px;background:#5ec2e0;color:#fff;position:sticky;top:0;z-index:4}.si-header__menu,.si-header__icon{width:36px;height:36px;border:none;background:transparent;border-radius:6px;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--motion-fast) ease}.si-header__menu:hover,.si-header__icon:hover{background:#ffffff26}.si-header__icon{width:32px;height:32px}.si-header__brand{display:inline-flex;align-items:center;gap:10px;padding:4px 10px 4px 6px;flex-shrink:0}.si-header__logo-mark{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#f9c84d,#f59e0b);box-shadow:var(--elev-1)}.si-header__brand-name{font-size:13px;font-weight:700;color:#fff;line-height:1.2;max-width:110px}.si-header__actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.si-header__env{font-size:11px;font-weight:700;color:#fff;padding:2px 6px;border-radius:4px;letter-spacing:1px;margin-left:4px}.si-header__search{flex:1;min-width:0}.si-header__search-pill{display:inline-flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 12px;background:#ffffff2e;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:999px}.si-header__search-pill input{flex:1;background:transparent;border:none;color:#fff;font:inherit;font-size:13px;outline:none}.si-header__search-pill input::placeholder{color:#ffffffbf}.si-header__avatar{width:40px;height:40px;border:2px solid rgba(255,255,255,.4);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--elev-1);cursor:pointer}.si-header__avatar-emoji{font-size:22px;line-height:1}.si-body{flex:1;padding:32px 32px 80px;max-width:1600px;margin:0 auto;width:100%;position:relative;z-index:1}.si-apps{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.si-apps .parent-app-tile-name{color:#ffffffeb}.si-life-ring{position:fixed;bottom:64px;right:28px;width:56px;height:56px;border-radius:999px;background:#ffffff26;color:#fff;display:inline-flex;align-items:center;justify-content:center;pointer-events:none;z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bottom-dock{position:fixed;left:0;right:0;bottom:0;height:38px;background:#c4cad3f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 -2px 8px #00000014;z-index:30;display:flex;justify-content:center;overflow:visible}.bottom-dock__inner{display:inline-flex;align-items:center;gap:10px;max-width:1600px;padding:0 16px}.bottom-dock__tile{width:28px;height:28px;border-radius:22%;background:#475569;color:#fff;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 1px 2px #0f172a33}@media (max-width: 900px){.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]){--sidebar-w: 72px}.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-item-label,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-drive-toggle,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-drive-meta,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-drive-collapse,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-subitem,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .sidebar-divider,.app:not([data-view=admin]):not([data-view=portal]):not([data-view=parent]):not([data-view=impersonate]) .brand-name{display:none}.admin-shell{grid-template-columns:72px 1fr}.admin__sidebar{padding:16px 8px;gap:8px;align-items:center}.admin__brand-name,.admin__user-name,.admin__user-role,.admin__nav-item span,.admin__nav-chevron,.admin__nav-subitem{display:none}.admin__brand{justify-content:center;padding:0}.admin__user{width:44px;height:44px;padding:0;border-radius:50%;justify-content:center}.admin__nav-item{justify-content:center;padding:8px}.topbar{padding:0 12px}.topbar-search{display:none}.toast{left:16px;right:16px;bottom:16px}}@media (max-width: 640px){.main-inner{padding:12px}.topbar-brand{gap:8px}.topbar-icon-btn{width:36px;height:36px}.avatar-btn{width:28px;height:28px;font-size:12px}.toast{font-size:13px;padding:10px 14px}.view-toggle-fab--segmented{bottom:12px;right:12px;left:12px;justify-content:center}.view-toggle-fab--segmented .view-toggle-seg span{display:none}.view-toggle-fab--segmented .view-toggle-seg{padding:8px 12px}.admin__main{padding:16px 12px 48px}.admin__card{padding:18px 16px}.pp-hero{padding:36px 16px}.pp-hero-grid{grid-template-columns:1fr}.pp-featured-grid{grid-template-columns:repeat(4,60px);justify-content:center}.parent-shell .content-pad{padding:16px 12px}.pp-section__head{flex-wrap:wrap;gap:8px}.pp-section__students{gap:16px;justify-content:center}.pp-card{width:140px}.pp-card__avatar{width:92px;height:92px}.pp-card__avatar-emoji{font-size:56px}.so__profile{flex-direction:column;align-items:center;text-align:center}.so__meta,.so__selector-row{justify-content:center}.student-selector__btn{min-width:220px}.so__title{font-size:20px}.so__classes{grid-template-columns:1fr;padding:8px 8px 12px}.so__applications{grid-template-columns:repeat(auto-fill,minmax(86px,1fr));padding:12px 8px}.analytics{padding:12px}.analytics__stats{grid-template-columns:repeat(2,1fr);padding:4px 0}.analytics__stat{padding:16px 10px 14px}.analytics__stat-value{font-size:26px}.analytics__thead,.analytics__pagination{padding-left:14px;padding-right:14px}.adv-header{grid-template-columns:56px 1fr auto;padding:0 10px}.parent-shell .header-search{display:none}.header-icons__avatar{margin-left:2px}.si-banner{font-size:12px;padding:10px 12px;gap:8px;flex-wrap:wrap}.si-banner__msg{gap:6px}.si-banner__end{padding:5px 12px;font-size:12px}.si-body{padding:16px 12px 60px}.si-header__search{display:none}.si-header__brand-name{max-width:90px;font-size:11px}.app-modal,.class-modal,.imp-modal{max-width:calc(100vw - 16px)}.pp-detail-panel{max-width:100vw;padding:0 16px 80px}.class-modal__body{flex-direction:column}.class-modal__sidebar{width:auto;border-right:0;border-bottom:1px solid var(--cl-border, #eee)}.pp-detail-meta-row{grid-template-columns:1fr}.side-panel{width:90vw}}@media (max-width: 380px){.pp-featured-grid{grid-template-columns:repeat(3,60px)}.view-toggle-fab--segmented .view-toggle-seg{padding:8px 10px}}.csv-import-stepper{display:flex;align-items:center;gap:8px;margin-bottom:20px}.csv-step{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:999px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);font-size:13px;font-weight:600}.csv-step.is-active{background:#008ad71a;color:var(--cl-primary, #008ad7)}.csv-step.is-done{background:#10b9811f;color:#047857}.csv-step-num{width:22px;height:22px;border-radius:999px;background:#0f172a0f;color:inherit;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.csv-step.is-active .csv-step-num{background:var(--cl-primary, #008ad7);color:#fff}.csv-step.is-done .csv-step-num{background:#047857;color:#fff}.csv-step-divider{flex:1;height:1px;background:var(--cl-border, #e2e8f0);max-width:36px}.csv-import-reset{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:transparent;color:var(--cl-text-muted, #64748b);border:1px solid var(--cl-border-strong, #d6dae0);font-size:13px;font-weight:600;cursor:pointer}.csv-import-reset:hover{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937)}.csv-source-tabs{display:flex;gap:4px;border-bottom:1px solid var(--cl-border, #e2e8f0);margin-bottom:20px}.csv-source-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;margin-bottom:-1px;background:transparent;border:0;border-bottom:2px solid transparent;font:inherit;font-size:14px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:color var(--motion-fast, .15s),border-color var(--motion-fast, .15s)}.csv-source-tab svg{color:currentColor}.csv-source-tab:hover{color:var(--cl-text, #1f2937)}.csv-source-tab.is-active{color:var(--cl-primary, #008ad7);border-bottom-color:var(--cl-primary, #008ad7)}.csv-source-card{display:flex;flex-direction:column}@keyframes csv-spin{to{transform:rotate(360deg)}}.csv-spin{animation:csv-spin .9s linear infinite}.csv-or-divider{display:flex;align-items:center;gap:14px;margin:18px 0}.csv-or-divider-line{flex:1;height:1px;background:var(--cl-border, #e2e8f0)}.csv-or-divider-text{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--cl-text-muted, #94a3b8)}.csv-url-row{display:flex;flex-direction:column;gap:8px}.csv-url-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cl-text, #1f2937)}.csv-url-label svg{color:var(--cl-text-muted, #64748b)}.csv-url-row-inputs{display:flex;gap:8px;align-items:stretch}.csv-url-input{flex:1;min-width:0;height:38px}.csv-url-row-inputs .btn{flex-shrink:0}.csv-scrape{display:flex;flex-direction:column;gap:8px}.csv-scrape-opt{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--cl-text-muted, #64748b);cursor:pointer}.csv-scrape-opt input{width:14px;height:14px;flex-shrink:0;accent-color:var(--cl-primary, #008ad7);cursor:pointer}.csv-scrape-progress{display:inline-flex;align-items:center;gap:8px;margin:2px 0 0;font-size:13px;font-weight:500;color:var(--cl-primary, #008ad7)}.csv-scrape-error{margin:2px 0 0}.csv-dropzone{border:2px dashed var(--cl-border-strong, #d6dae0);border-radius:14px;padding:40px 32px;text-align:center;background:var(--cl-bg, #fcfcfc);cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;align-items:center;gap:10px}.csv-dropzone:hover,.csv-dropzone:focus-visible{border-color:var(--cl-primary, #008ad7);background:#008ad70a;outline:none}.csv-dropzone-icon{color:var(--cl-primary, #008ad7)}.csv-dropzone-title{font-size:18px;font-weight:700;color:var(--cl-text, #1f2937);margin:0}.csv-dropzone-sub{font-size:14px;color:var(--cl-text-muted, #64748b);max-width:480px;margin:0;line-height:1.55}.csv-hidden-file{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.csv-error{margin-top:14px;padding:10px 14px;border-radius:8px;background:#dc262614;color:#b91c1c;font-size:13px}.csv-tip{margin-top:18px;padding:12px 16px;border-radius:10px;background:#008ad70f;color:var(--cl-text, #1f2937);font-size:13px;line-height:1.55}.csv-tip code{background:#0f172a14;border-radius:4px;padding:1px 6px;font-size:12px}.csv-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.csv-section-title{font-size:18px;font-weight:700;color:var(--cl-text, #1f2937);margin:0 0 4px}.csv-section-sub{font-size:13px;color:var(--cl-text-muted, #64748b);margin:0;display:inline-flex;align-items:center;gap:6px}.csv-map-table{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;overflow:hidden;background:var(--cl-surface, #fff)}.csv-map-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(200px,1.5fr) minmax(220px,1fr);gap:16px;align-items:center;padding:12px 16px;border-top:1px solid var(--cl-border, #e2e8f0);font-size:13px}.csv-map-row:first-child{border-top:0}.csv-map-row--head{background:var(--cl-bg-muted, #f3f3f3);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--cl-text-muted, #64748b)}.csv-map-col{font-weight:700;color:var(--cl-text, #1f2937);word-break:break-word}.csv-map-sample{color:var(--cl-text-muted, #64748b);font-family:"ui-monospace",SF Mono,Menlo,monospace;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-map-target{display:inline-flex;align-items:center;gap:6px;min-width:0}.csv-map-arrow{color:var(--cl-text-muted, #64748b);flex-shrink:0}.csv-map-search{display:inline-flex;flex-direction:column;gap:4px;font-size:11px;color:var(--cl-text-muted, #64748b);min-width:220px}.csv-map-search-label{text-transform:uppercase;letter-spacing:.04em;font-weight:600}.csv-map-search-input{padding:6px 10px;font-size:13px}.csv-map-type-hint{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:var(--cl-surface-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);font-size:10px;font-weight:600;text-transform:lowercase;letter-spacing:.02em;flex-shrink:0}.csv-map-select{flex:1;padding:7px 10px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);color:var(--cl-text, #1f2937);font:inherit;font-size:13px;cursor:pointer;min-width:0}.csv-map-select.is-mapped{border-color:#008ad766;background:#008ad70a;color:var(--cl-primary, #008ad7);font-weight:600}.csv-map-select.is-skip{color:var(--cl-text-muted, #64748b);font-style:italic;background:var(--cl-bg-muted, #f3f3f3)}.csv-warn{margin-top:14px;padding:10px 14px;border-radius:8px;background:#f59e0b1a;color:#92400e;font-size:13px}.csv-actions{display:inline-flex;align-items:center;gap:10px;justify-content:flex-end;margin-top:20px;width:100%;flex-wrap:wrap}.csv-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:8px}.csv-preview-portal{margin-top:12px;border-radius:12px;border:1px solid var(--cl-border, #e2e8f0);background:var(--pp-background, #ffffff);padding:20px;min-height:0}.csv-imported-list{margin-top:28px;scroll-margin-top:16px}.csv-imported-count{color:var(--cl-text-muted, #94a3b8);font-weight:600;margin-left:4px}.csv-imported-grid{list-style:none;margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:480px;overflow-y:auto;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;padding:10px;background:var(--cl-surface, #ffffff)}.csv-imported-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:transparent;transition:background .15s}.csv-imported-item:hover{background:var(--cl-bg-muted, #f1f5f9)}.csv-imported-icon{width:34px;height:34px;flex-shrink:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;color:#fff;font-weight:800;font-size:13px;box-shadow:0 1px 2px #0f172a14}.csv-imported-icon img{width:70%;height:70%;object-fit:contain}.csv-imported-text{display:flex;flex-direction:column;min-width:0;flex:1}.csv-imported-name{font-size:13px;font-weight:600;color:var(--cl-text, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-imported-company{font-size:11px;color:var(--cl-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-approve-all-btn{flex-shrink:0}.csv-imported-approve-btn{font-size:11px;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.csv-imported-status{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;flex-shrink:0}.csv-imported-status--approved{background:#10b9811f;color:#047857}.csv-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.csv-preview-portal .pp-app-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;padding:0}.csv-preview-card{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #fff);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.csv-preview-head{display:flex;align-items:center;gap:12px}.csv-preview-logo{width:44px;height:44px;border-radius:10px;background:#475569;color:#fff;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.csv-preview-name{font-size:14px;font-weight:700;color:var(--cl-text, #1f2937);line-height:1.2}.csv-preview-company{font-size:12px;color:var(--cl-text-muted, #64748b);margin-top:2px}.csv-preview-meta{display:flex;flex-direction:column;gap:6px;margin:0;font-size:12px}.csv-preview-meta>div{display:grid;grid-template-columns:80px 1fr;gap:8px;align-items:baseline}.csv-preview-meta dt{font-weight:700;color:var(--cl-text-muted, #64748b);text-transform:uppercase;letter-spacing:.02em;font-size:10px}.csv-preview-meta dd{margin:0;color:var(--cl-text, #1f2937);line-height:1.45}.csv-preview-mono{font-family:"ui-monospace",SF Mono,Menlo,monospace;font-size:11px;word-break:break-all}.csv-merge-mode{display:flex;flex-direction:column;gap:8px;margin-top:22px;padding:16px 18px;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-bg-muted, #f8fafc)}.csv-merge-mode-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cl-text-muted, #64748b)}.csv-merge-radio{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:6px 0}.csv-merge-radio input{margin-top:3px}.csv-merge-radio span{display:flex;flex-direction:column;gap:2px}.csv-merge-radio strong{font-size:13px;color:var(--cl-text, #1f2937)}.csv-merge-radio small{font-size:12px;color:var(--cl-text-muted, #64748b)}.csv-done{position:relative;text-align:center;padding:48px 24px}.csv-done-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:999px;background:#10b9811f;color:#047857;margin-bottom:16px;animation:csv-done-pop var(--motion-slow, .32s) var(--motion-ease, ease) both}@keyframes csv-done-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.csv-confetti{position:absolute;top:80px;left:50%;width:0;height:0;pointer-events:none}.csv-confetti__piece{position:absolute;top:0;left:0;width:8px;height:14px;margin:-7px 0 0 -4px;border-radius:2px;opacity:0;--angle: calc(var(--i, 0) * 25.7deg);--distance: 120px;animation:csv-confetti-burst 1.1s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i, 0) * 40ms)}.csv-confetti__piece--0{background:#f97316}.csv-confetti__piece--1{background:#06b6d4}.csv-confetti__piece--2{background:#facc15}.csv-confetti__piece--3{background:#10b981}.csv-confetti__piece--4{background:#8b5cf6}.csv-confetti__piece--5{background:#ec4899}.csv-confetti__piece--6{background:#3b82f6}@keyframes csv-confetti-burst{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) rotate(0)}60%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(calc(var(--distance) * -1)) rotate(540deg)}}@media (prefers-reduced-motion: reduce){.csv-confetti__piece{display:none}.csv-done-icon{animation:none}}.csv-done-title{font-size:20px;font-weight:700;color:var(--cl-text, #1f2937);margin:0 0 6px}.csv-done-sub{max-width:540px;margin:0 auto;font-size:14px;color:var(--cl-text-muted, #64748b);line-height:1.55}.csv-done .csv-actions{justify-content:center;margin-top:18px}@media (max-width: 720px){.csv-map-row{grid-template-columns:1fr;gap:8px}.csv-map-row--head{display:none}.csv-map-sample{white-space:normal}}.code-prefix{margin-top:10px;max-width:480px}.code-prefix__label{display:block;font-size:13px;font-weight:700;color:var(--cl-text, #1f2937);margin-bottom:6px}.code-prefix__row{display:flex;align-items:stretch;gap:10px}.code-prefix__input{flex:1;max-width:220px;padding:9px 12px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);color:var(--cl-text, #1f2937);font:inherit;font-size:14px;font-weight:600;letter-spacing:.04em;outline:none;text-transform:uppercase}.code-prefix__input:focus{border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.code-prefix__verify{padding:9px 22px;border-radius:8px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);border:1px solid var(--cl-border-strong, #d6dae0);font:inherit;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background var(--motion-fast),color var(--motion-fast)}.code-prefix__verify:hover:not(:disabled){background:var(--cl-primary, #008ad7);color:#fff;border-color:var(--cl-primary, #008ad7)}.code-prefix__verify.is-verified{background:#10b9811f;color:#047857;border-color:#10b98173;cursor:default}.code-prefix__verify:disabled{cursor:not-allowed}.code-prefix__hint{margin:8px 0 0;font-size:12px;color:var(--cl-text-muted, #64748b)}.code-prefix__hint code{background:#008ad714;border-radius:4px;padding:2px 6px;font-size:11px;color:var(--cl-primary, #008ad7);font-weight:700}.pp-url-setting{background:var(--cl-surface, #ffffff);border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;padding:14px 18px;margin-bottom:12px;font-family:Open Sans,system-ui,sans-serif}.pp-url-setting-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--cl-text, #1f2937);margin-bottom:8px}.pp-url-setting-help{display:inline-flex;align-items:center;justify-content:center;color:var(--cl-text-muted, #64748b);cursor:help}.pp-url-setting-row{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}.pp-url-setting-prefix{display:inline-flex;align-items:center;font-size:14px;color:var(--cl-text, #1f2937);white-space:nowrap}.pp-url-setting-input{flex:1;min-width:180px;padding:9px 14px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);color:var(--cl-text, #1f2937);font:inherit;font-size:14px;outline:none}.pp-url-setting-input::placeholder{color:var(--cl-text-muted, #94a3b8)}.pp-url-setting-input:focus{border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.pp-url-setting-verify{padding:9px 22px;border-radius:8px;background:var(--cl-surface, #ffffff);color:var(--cl-text, #1f2937);border:1px solid var(--cl-border-strong, #d6dae0);font:inherit;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}.pp-url-setting-verify:hover:not(:disabled){background:var(--cl-bg-muted, #f1f5f9);border-color:var(--cl-text-muted, #64748b)}.pp-url-setting-verify.is-verified{background:#10b9811f;color:#047857;border-color:#10b98173;cursor:default}.pp-url-setting-verify:disabled:not(.is-verified){opacity:.6;cursor:not-allowed}.pp-url-setting-view{padding:9px 22px;border-radius:8px;background:var(--cl-primary-dark, #0a4d7f);color:#fff;border:0;font:inherit;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.pp-url-setting-view:hover:not(:disabled){background:var(--cl-primary, #008ad7)}.pp-url-setting-view:disabled{opacity:.45;cursor:not-allowed}[data-theme=dark] .pp-url-setting{background:var(--cl-surface, #1e293b);border-color:var(--cl-border, #334155)}.pp-edit-bar-help{display:inline-flex;align-items:center;gap:6px;margin-left:12px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--pp-primary) 8%,transparent);color:var(--pp-primary, #1e40af);border:1px solid color-mix(in srgb,var(--pp-primary) 20%,transparent);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast)}.pp-edit-bar-help:hover{background:color-mix(in srgb,var(--pp-primary) 15%,transparent);border-color:var(--pp-primary, #1e40af)}.pp-tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;animation:pp-tour-fade .2s ease}.pp-tour-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pp-tour-card{position:relative;width:520px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);background:#fff;border-radius:18px;box-shadow:0 30px 70px #0f172a66;overflow:hidden;display:flex;flex-direction:column;animation:pp-tour-pop .24s cubic-bezier(.2,.9,.3,1.1);font-family:Open Sans,system-ui,sans-serif;color:#0f172a}[data-theme=dark] .pp-tour-card{background:#1e293b;color:#e2e8f0}.pp-tour-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:999px;background:#ffffff29;color:#fff;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background var(--motion-fast)}.pp-tour-close:hover{background:#ffffff4d}.pp-tour-hero{position:relative;padding:24px 26px 22px;background:radial-gradient(circle at 100% 0%,rgba(255,255,255,.18),transparent 50%),linear-gradient(135deg,var(--pp-primary) 0%,#1d4ed8 60%,#2563eb 100%);color:#fff;display:flex;align-items:flex-start;gap:14px;overflow:hidden}.pp-tour-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 0% 100%,rgba(255,255,255,.18),transparent 40%),radial-gradient(circle at 60% 40%,rgba(255,255,255,.08),transparent 35%);pointer-events:none}.pp-tour-hero-sparkle{color:#fde68a;filter:drop-shadow(0 0 12px rgba(253,230,138,.6));flex-shrink:0;position:relative;z-index:1}.pp-tour-hero-text{position:relative;z-index:1}.pp-tour-hero-eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffffc7;margin-bottom:4px}.pp-tour-hero-title{font-size:17px;font-weight:700;margin:0;line-height:1.35}.pp-tour-body{padding:24px 28px 8px;text-align:center;flex:1;overflow-y:auto}.pp-tour-step{display:inline-flex;align-items:baseline;gap:2px;font-weight:700;font-size:12px;color:var(--pp-primary, #1e40af);letter-spacing:.06em;text-transform:uppercase;margin-right:14px}.pp-tour-step-num{font-size:14px}.pp-tour-step-total{color:var(--cl-text-muted, #64748b);font-weight:600}.pp-tour-step-title-icon{flex-shrink:0;color:var(--pp-primary, #1e40af);opacity:.85}[data-theme=dark] .pp-tour-step-title-icon{color:#93c5fd}.pp-tour-step-title{margin:0 0 8px;font-size:19px;font-weight:700;color:inherit;display:inline-flex;align-items:center;gap:12px;justify-content:center}.pp-tour-step-body{margin:0 auto 14px;max-width:420px;font-size:14px;line-height:1.55;color:var(--cl-text-muted, #64748b)}[data-theme=dark] .pp-tour-step-body{color:#cbd5e1}.pp-tour-action-wrap{margin:0 auto 16px;max-width:420px;text-align:left}.pp-tour-action{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}.pp-tour-action--column{flex-direction:column}.pp-tour-action--info{flex-direction:column;gap:12px}.pp-tour-field{flex:1;display:inline-flex;align-items:stretch;background:var(--cl-surface, #ffffff);border:1px solid var(--cl-border-strong, #d6dae0);border-radius:8px;overflow:hidden;min-width:0;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.pp-tour-field:focus-within{border-color:var(--pp-primary, #1e40af);box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-primary) 15%,transparent)}.pp-tour-field-label{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);font-size:12px;display:inline-flex;align-items:center;padding:0 10px;border-right:1px solid var(--cl-border, #e2e8f0);white-space:nowrap}.pp-tour-field input{flex:1;min-width:0;padding:9px 12px;background:transparent;color:var(--cl-text, #0f172a);border:0;outline:0;font:inherit;font-size:13px}.pp-tour-input{width:100%;padding:9px 12px;background:var(--cl-surface, #ffffff);color:var(--cl-text, #0f172a);border:1px solid var(--cl-border-strong, #d6dae0);border-radius:8px;outline:0;font:inherit;font-size:13px;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.pp-tour-input:focus{border-color:var(--pp-primary, #1e40af);box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-primary) 15%,transparent)}.pp-tour-input--area{resize:vertical;min-height:60px;line-height:1.5}.pp-tour-input-stack{display:flex;flex-direction:column;gap:4px;text-align:left}.pp-tour-input-label{font-size:11px;font-weight:700;color:var(--cl-text-muted, #64748b);text-transform:uppercase;letter-spacing:.04em}.pp-tour-input-stack-actions{display:inline-flex;gap:8px;margin-top:4px;align-self:flex-end}.pp-tour-action-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px;border:0;background:var(--pp-primary, #1e40af);color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background var(--motion-fast);white-space:nowrap}.pp-tour-action-btn:hover:not(:disabled){background:#1d4ed8}.pp-tour-action-btn:disabled{opacity:.5;cursor:not-allowed}.pp-tour-action-btn.is-done{background:#10b9812e;color:#047857;border:1px solid rgba(16,185,129,.45)}.pp-tour-action-btn--ghost{background:transparent;color:var(--cl-text-muted, #64748b);border:1px solid var(--cl-border-strong, #d6dae0)}.pp-tour-action-btn--ghost:hover:not(:disabled){background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937)}.pp-tour-action-btn--publish{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b)}.pp-tour-action-btn--publish.is-ready{background:#10b981}.pp-tour-action-btn--publish.is-ready:hover{background:#059669}.pp-tour-saved{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:4px 10px;border-radius:999px;background:#10b98126;color:#047857;font-size:12px;font-weight:700}.pp-tour-preview-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pp-tour-preview-tile{width:80px;height:80px;border-radius:12px;background:var(--cl-bg-muted, #f1f5f9);border:1px dashed var(--cl-border-strong, #d6dae0);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.pp-tour-preview-tile img{width:100%;height:100%;object-fit:contain;display:block}.pp-tour-preview-tile--bg{width:160px;height:80px;background:linear-gradient(135deg,var(--pp-primary),#1d4ed8);color:#ffffffd9;font-size:11px;font-weight:600}.pp-tour-preview-placeholder{font-size:11px;color:var(--cl-text-muted, #94a3b8);font-weight:600}.pp-tour-preview-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pp-tour-mini-row{display:inline-flex;align-items:center;gap:8px;align-self:center}.pp-tour-mini-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;background:#fff;color:var(--pp-primary, #1e40af);font-size:13px;font-weight:600;box-shadow:var(--elev-2)}.pp-tour-mini-toolbar{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:#0f172ab3;color:#fff}.pp-tour-mini-toolbar span{width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.pp-tour-info-note{margin:0;font-size:13px;color:var(--cl-text-muted, #64748b);line-height:1.55;text-align:center;max-width:380px;align-self:center}.pp-tour-dots{display:inline-flex;gap:6px;margin-bottom:16px}.pp-tour-dot{position:relative;width:7px;height:7px;border-radius:999px;background:#0f172a26;border:0;padding:0;cursor:pointer;transition:background var(--motion-fast),transform var(--motion-fast)}.pp-tour-dot:before{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;transform:translate(-50%,-50%)}[data-theme=dark] .pp-tour-dot{background:#ffffff2e}.pp-tour-dot:hover{background:#0f172a4d;transform:scale(1.2)}.pp-tour-dot.is-active{background:var(--pp-primary, #1e40af);width:22px}.pp-tour-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--cl-border, #e2e8f0);background:var(--cl-bg-muted, #f8fafc);flex-wrap:wrap}[data-theme=dark] .pp-tour-foot{background:#0f172a;border-top-color:#334155}.pp-tour-hide-again{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer}.pp-tour-hide-again input{accent-color:var(--pp-primary, #1e40af)}.pp-tour-nav{display:inline-flex;align-items:center;gap:8px}.pp-tour-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;border:0;transition:background var(--motion-fast),color var(--motion-fast)}.pp-tour-btn--ghost{background:transparent;color:var(--cl-text-muted, #64748b);border:1px solid var(--cl-border-strong, #d6dae0)}.pp-tour-btn--ghost:hover:not(:disabled){background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937)}.pp-tour-btn--ghost:disabled{opacity:.4;cursor:not-allowed}.pp-tour-btn--primary{background:var(--pp-primary, #1e40af);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--pp-primary) 25%,transparent)}.pp-tour-btn--primary:hover{background:#1d4ed8}@keyframes pp-tour-fade{0%{opacity:0}to{opacity:1}}@keyframes pp-tour-pop{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 540px){.pp-tour-foot{flex-direction:column;align-items:stretch}.pp-tour-nav{justify-content:space-between}.pp-tour-hero-title{font-size:15px}}.pp-tab.pp-tab-add{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px dashed var(--pp-border, #e2e8f0);color:var(--pp-muted-foreground, #64748b);margin-left:8px;border-radius:999px;padding:6px 14px;font-weight:600}.pp-tab.pp-tab-add:hover{border-color:var(--pp-primary, #1e40af);color:var(--pp-primary, #1e40af);background:color-mix(in srgb,var(--pp-primary) 4%,transparent)}.pp-tab.pp-tab-add:after{content:none}.pp-tab-add-form{display:inline-flex;align-items:center;gap:6px;margin-left:8px;padding:4px 6px;border-radius:999px;background:color-mix(in srgb,var(--pp-primary) 6%,transparent);border:1px solid var(--pp-primary, #1e40af)}.pp-tab-add-input{width:180px;padding:4px 10px;border:0;background:transparent;font:inherit;font-size:13px;color:var(--pp-foreground, #0f172a);outline:none}.pp-tab-add-input::placeholder{color:var(--pp-muted-foreground, #64748b)}.pp-tab-add-go,.pp-tab-add-cancel{padding:4px 12px;border-radius:999px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;border:0}.pp-tab-add-go{background:var(--pp-primary, #1e40af);color:#fff}.pp-tab-add-go:hover:not(:disabled){background:#1d4ed8}.pp-tab-add-go:disabled{opacity:.5;cursor:not-allowed}.pp-tab-add-cancel{background:transparent;color:var(--pp-muted-foreground, #64748b)}.pp-tab-add-cancel:hover{color:var(--pp-foreground, #0f172a)}.aa-add-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:var(--cl-primary-dark, #0a4d7f);color:#fff;border:0;font:inherit;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #0a4d7f40;transition:background var(--motion-fast)}.aa-add-btn:hover{background:var(--cl-primary, #008ad7)}.aa-add-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);box-shadow:none}.aa-tabs{display:flex;gap:24px;border-bottom:1px solid var(--cl-border, #e2e8f0);margin:4px 0 22px}.aa-tab{padding:10px 2px;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--cl-text-muted, #64748b);font:inherit;font-size:14px;font-weight:700;cursor:pointer;margin-bottom:-1px;transition:color var(--motion-fast),border-color var(--motion-fast)}.aa-tab:hover{color:var(--cl-text, #1f2937)}.aa-tab.is-active{color:var(--cl-text, #1f2937);border-bottom-color:var(--cl-text, #1f2937)}.aa-section{padding-top:0}.aa-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.aa-search{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);color:var(--cl-text-muted, #64748b);font-size:13px;min-width:260px;flex:1;max-width:380px}.aa-search input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:13px;color:var(--cl-text, #1f2937)}.aa-search--inline{margin-top:12px;margin-bottom:12px;max-width:320px}.aa-bulk-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:#dc26261a;color:#b91c1c;border:1px solid rgba(220,38,38,.25);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.aa-bulk-btn:hover{background:#dc26262e}.aa-bulk-bar{display:flex;align-items:center;gap:8px;padding:8px 10px 8px 16px;margin-bottom:12px;border-radius:999px;background:var(--cl-primary-dark, #0a4d7f);color:#fff;box-shadow:0 6px 18px #0a4d7f40;flex-wrap:wrap;animation:aa-bulk-bar-in .16s ease}@keyframes aa-bulk-bar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.aa-bulk-bar-count{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#ffffffd9;padding-right:8px;border-right:1px solid rgba(255,255,255,.25)}.aa-bulk-bar-num{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:#fff;color:var(--cl-primary-dark, #0a4d7f);font-size:13px;font-weight:800}.aa-bulk-bar-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.2);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast)}.aa-bulk-bar-btn:hover{background:#ffffff3d;border-color:#ffffff73}.aa-bulk-bar-btn--danger{background:#dc262638;border-color:#dc26268c}.aa-bulk-bar-btn--danger:hover{background:#dc262673;border-color:#ef4444}.aa-bulk-bar-divider{width:1px;height:22px;background:#ffffff40;margin:0 2px}.aa-bulk-bar-clear{width:30px;height:30px;border-radius:999px;background:transparent;color:#fff;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin-left:auto;transition:background var(--motion-fast)}.aa-bulk-bar-clear:hover{background:#ffffff2e}.aa-bulk-bar-menu{position:relative;display:inline-flex}.aa-bulk-bar-popover{position:absolute;top:calc(100% + 6px);left:0;background:var(--cl-surface, #ffffff);color:var(--cl-text, #1f2937);border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;box-shadow:0 10px 30px #0f172a2e;padding:4px;min-width:220px;max-height:320px;overflow-y:auto;z-index:60}.aa-bulk-bar-popover-empty{margin:0;padding:12px;font-size:12px;color:var(--cl-text-muted, #64748b);text-align:center}.aa-bulk-bar-popover-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 10px;background:transparent;border:0;border-radius:6px;text-align:left;font:inherit;font-size:13px;font-weight:500;color:var(--cl-text, #1f2937);cursor:pointer;transition:background var(--motion-fast)}.aa-bulk-bar-popover-item:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa-bulk-bar-popover-count{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);font-weight:700}@media (max-width: 720px){.aa-bulk-bar{padding:8px 12px}.aa-bulk-bar-btn span{display:none}.aa-bulk-bar-btn{padding:7px 10px}}.aa-table{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #fff);overflow:hidden}.aa-row{display:grid;grid-template-columns:40px minmax(180px,1.5fr) minmax(220px,1.5fr) minmax(140px,1fr) 140px;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--cl-border, #e2e8f0);font-size:13px;transition:background var(--motion-fast)}.aa-row:first-child{border-top:0}.aa-row:hover:not(.aa-row--head){background:var(--cl-bg-muted, #f8fafc)}.aa-row.is-selected{background:#008ad70f}.aa-row.is-pii-open{background:var(--cl-bg-muted, #f1f5f9);border-bottom:0}.aa-pii-editor{padding:16px 18px 20px;background:var(--cl-bg-muted, #f1f5f9);border-top:0;border-bottom:1px solid var(--cl-border, #e2e8f0)}.aa-pii-editor-head{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.aa-pii-editor-head strong{font-size:13px;color:var(--cl-text, #1f2937)}.aa-pii-editor-sub{font-size:11px;color:var(--cl-text-muted, #64748b)}.aa-pii-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.aa-pii-field{display:flex;flex-direction:column;gap:4px}.aa-pii-field-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cl-text-muted, #64748b)}.aa-pii-field textarea{width:100%;resize:vertical;min-height:56px;padding:8px 10px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);font:inherit;font-size:12px;color:var(--cl-text, #1f2937);transition:border-color .15s,box-shadow .15s}.aa-pii-field textarea:focus{outline:none;border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.aa-pii-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.aa-icon-btn.is-active{background:#008ad71f;color:var(--cl-primary, #008ad7)}.aa2-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.aa2-search{display:flex;align-items:center;gap:8px;flex:1;min-width:240px;padding:9px 12px;border-radius:10px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);color:var(--cl-text-muted, #64748b)}.aa2-search input{border:0;outline:none;background:transparent;font:inherit;font-size:13px;width:100%;color:var(--cl-text, #1f2937)}.aa2-status-filter{display:inline-flex;gap:2px;padding:3px;border-radius:9px;background:var(--cl-bg-muted, #f1f5f9);border:1px solid var(--cl-border, #e2e8f0)}.aa2-status-seg{border:0;background:transparent;padding:6px 12px;border-radius:7px;font:inherit;font-size:12px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:background .15s,color .15s}.aa2-status-seg:hover{color:var(--cl-text, #1f2937)}.aa2-status-seg.is-active{background:#fff;color:var(--cl-text, #1f2937);box-shadow:0 1px 2px #0f172a14}.aa2-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 4px 8px;border-bottom:1px solid var(--cl-border, #e2e8f0)}.aa2-addapp-btn{flex-shrink:0;padding:7px 14px;font-size:13px}.aa2-selectall{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer}.aa2-list{list-style:none;margin:0;padding:0}.aa2-empty{padding:32px;text-align:center;color:var(--cl-text-muted, #94a3b8);font-size:13px}.aa2-row{border-bottom:1px solid var(--cl-border, #e2e8f0);transition:background .15s}.aa2-row:hover{background:var(--cl-bg-muted, #f8fafc)}.aa2-row.is-selected{background:#008ad70d}.aa2-row.is-pii-open{background:var(--cl-bg-muted, #f1f5f9)}.aa2-row-main{display:flex;align-items:center;gap:12px;padding:12px 8px}.aa2-row-check{flex-shrink:0;width:16px;height:16px;cursor:pointer}.aa2-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.aa2-row-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.aa2-row-name{font-size:14px;font-weight:600;color:var(--cl-text, #1f2937)}.aa2-row-company{font-size:12px;color:var(--cl-text-muted, #94a3b8)}.aa2-status-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:filter .15s}.aa2-status-pill:hover{filter:brightness(.96)}.aa2-status-pill.is-approved{background:#10b9811f;color:#047857}.aa2-status-pill.is-review{background:#f59e0b24;color:#b45309}.aa2-row-cols{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.aa2-col-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 4px 3px 9px;border-radius:999px;background:#008ad71a;color:var(--cl-primary, #0369a1)}.aa2-col-chip-x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;opacity:.7}.aa2-col-chip-x:hover{opacity:1;background:#00000014}.aa2-col-add{position:relative}.aa2-col-add-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px dashed var(--cl-border-strong, #cbd5e1);background:transparent;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:border-color .15s,color .15s}.aa2-col-add-btn:hover{border-color:var(--cl-primary, #008ad7);color:var(--cl-primary, #008ad7)}.aa2-col-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:230px;background:var(--cl-surface, #ffffff);border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;box-shadow:0 12px 28px -8px #0f172a40;padding:6px}.aa2-col-pop--bulk{left:auto}.aa2-col-pop-head{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #94a3b8);padding:6px 8px 4px}.aa2-col-pop-empty{font-size:12px;color:var(--cl-text-muted, #94a3b8);padding:8px;margin:0}.aa2-col-pop-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border:0;border-radius:7px;background:transparent;font:inherit;font-size:13px;color:var(--cl-text, #1f2937);cursor:pointer;text-align:left}.aa2-col-pop-item:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa2-col-pop-check{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;border:1.5px solid var(--cl-border-strong, #cbd5e1);color:#fff}.aa2-col-pop-item.is-on .aa2-col-pop-check{background:var(--cl-primary, #008ad7);border-color:var(--cl-primary, #008ad7)}.aa2-col-pop-name{flex:1;min-width:0}.aa2-col-pop-count{font-size:11px;font-weight:700;color:var(--cl-text-muted, #94a3b8)}.aa2-col-pop-create{display:flex;gap:6px;padding:6px;margin-top:4px;border-top:1px solid var(--cl-border, #e2e8f0)}.aa2-col-pop-create input{flex:1;min-width:0;padding:6px 9px;border-radius:7px;border:1px solid var(--cl-border-strong, #d6dae0);font:inherit;font-size:12px}.aa2-col-pop-create button{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;border:0;border-radius:7px;background:var(--cl-primary, #008ad7);color:#fff;cursor:pointer}.aa2-col-pop-create button:disabled{opacity:.4;cursor:default}.aa2-row-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.aa2-act-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:background .15s,color .15s}.aa2-act-btn:hover{background:var(--cl-bg-muted, #e2e8f0);color:var(--cl-text, #1f2937)}.aa2-act-btn.is-active{background:#008ad71f;color:var(--cl-primary, #008ad7)}.aa2-more{position:relative}.aa2-more-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:220px;background:var(--cl-surface, #ffffff);border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;box-shadow:0 12px 28px -8px #0f172a40;padding:6px}.aa2-more-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:7px;background:transparent;font:inherit;font-size:13px;color:var(--cl-text, #1f2937);cursor:pointer;text-align:left}.aa2-more-item:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa2-more-item--danger{color:#dc2626}.aa2-more-item--danger:hover{background:#dc262614}.aa2-more-item-val{margin-left:auto;display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;color:var(--cl-text-muted, #94a3b8)}.aa2-more-typelist{margin:2px 0 4px;padding:4px;border-radius:8px;background:var(--cl-bg-muted, #f8fafc)}.aa2-more-typeitem{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:0;border-radius:6px;background:transparent;font:inherit;font-size:12px;color:var(--cl-text, #1f2937);cursor:pointer;text-align:left}.aa2-more-typeitem:hover{background:#fff}.aa2-more-typeitem.is-on{font-weight:700;color:var(--cl-primary, #008ad7)}.aa2-bulk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px;border-radius:10px;background:var(--cl-text, #1f2937);color:#fff}.aa2-bulk-count{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;margin-right:4px}.aa2-bulk-num{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ffffff2e;font-weight:800}.aa2-bulk-menu{position:relative}.aa2-bulk-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:0;border-radius:8px;background:#ffffff1f;color:#fff;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.aa2-bulk-btn:hover{background:#ffffff38}.aa2-bulk-btn--danger:hover{background:#dc2626d9}.aa2-bulk-btn--danger.is-confirming{background:#dc2626;box-shadow:0 0 0 2px #ffffff80}.aa2-bulk-divider{width:1px;height:20px;background:#fff3;margin:0 2px}.aa2-bulk-clear{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:7px;background:transparent;color:#ffffffb3;cursor:pointer;margin-left:auto}.aa2-bulk-clear:hover{background:#ffffff26;color:#fff}.aa2-bulk .aa2-col-pop{color:var(--cl-text, #1f2937)}.aa2-row-sub{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--cl-text-muted, #94a3b8)}.aa2-row-type{font-weight:600;color:var(--cl-text-muted, #64748b)}.aa2-row-dot{opacity:.5}.aa2-row-subject{padding:1px 7px;border-radius:999px;background:var(--cl-bg-muted, #f1f5f9);font-size:11px;font-weight:600;color:var(--cl-text-muted, #64748b)}.aa2-row-edit{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--cl-text-muted, #94a3b8);cursor:pointer;transition:background .15s,color .15s}.aa2-row-edit:hover{background:#008ad71a;color:var(--cl-primary, #008ad7)}.aa2-act-star{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--cl-text-muted, #94a3b8);cursor:pointer;transition:background .15s,color .15s}.aa2-act-star:hover{background:#f59e0b1f;color:#f59e0b}.aa2-act-star.is-on{color:#f59e0b}.aa2-row-del{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--cl-text-muted, #94a3b8);cursor:pointer;transition:background .15s,color .15s}.aa2-row-del:hover{background:#dc26261a;color:#dc2626}.aa2-confirm{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.aa2-confirm-text{font-size:12px;font-weight:600;color:#b91c1c}.aa2-confirm-cancel{border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);border-radius:7px;padding:5px 11px;font:inherit;font-size:12px;font-weight:600;color:var(--cl-text, #1f2937);cursor:pointer}.aa2-confirm-go{border:0;background:#dc2626;color:#fff;border-radius:7px;padding:6px 12px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.aa2-confirm-go:hover{background:#b91c1c}.aae-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;z-index:200;animation:aae-fade .18s ease-out}@keyframes aae-fade{0%{opacity:0}to{opacity:1}}.aae-drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,94vw);z-index:201;background:var(--cl-surface, #ffffff);border-left:1px solid var(--cl-border, #e2e8f0);box-shadow:-8px 0 30px -10px #0f172a4d;display:flex;flex-direction:column;animation:aae-slide .22s ease-out}@keyframes aae-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.aae-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--cl-border, #e2e8f0);flex-shrink:0}.aae-head-id{display:flex;align-items:center;gap:12px}.aae-head-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #94a3b8)}.aae-head-sub{font-size:15px;font-weight:700;color:var(--cl-text, #1f2937)}.aae-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:var(--cl-text-muted, #64748b);cursor:pointer}.aae-close:hover{background:var(--cl-bg-muted, #f1f5f9)}.aae-body{flex:1;overflow-y:auto;padding:4px 20px 24px}.aae-section{padding:18px 0;border-bottom:1px solid var(--cl-border, #e2e8f0)}.aae-section:last-child{border-bottom:0}.aae-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cl-text-muted, #64748b);margin:0 0 12px}.aae-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.aae-field:last-child{margin-bottom:0}.aae-field>span{font-size:12px;font-weight:600;color:var(--cl-text, #1f2937)}.aae-field input,.aae-field select,.aae-field textarea{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);font:inherit;font-size:13px;color:var(--cl-text, #1f2937);resize:vertical;transition:border-color .15s,box-shadow .15s}.aae-field input:focus,.aae-field select:focus,.aae-field textarea:focus{outline:none;border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.aae-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.aae-chips{display:flex;flex-wrap:wrap;gap:6px}.aae-chip{padding:5px 11px;border-radius:999px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);font:inherit;font-size:12px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:all .12s}.aae-chip:hover{border-color:var(--cl-primary, #008ad7);color:var(--cl-primary, #008ad7)}.aae-chip.is-on{background:var(--cl-primary, #008ad7);border-color:var(--cl-primary, #008ad7);color:#fff}.aae-platforms{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.aae-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--cl-text, #1f2937);cursor:pointer}.aae-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.aae-toggle-label{font-size:13px;font-weight:600;color:var(--cl-text, #1f2937)}.aae-toggle{position:relative;display:inline-flex;align-items:center;width:64px;height:28px;border:0;border-radius:999px;background:var(--cl-bg-muted, #e2e8f0);cursor:pointer;transition:background .15s;flex-shrink:0}.aae-toggle.is-on{background:var(--cl-primary, #008ad7)}.aae-toggle-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a33;transition:transform .15s}.aae-toggle.is-on .aae-toggle-knob{transform:translate(36px)}.aae-toggle-text{font-size:10px;font-weight:800;letter-spacing:.04em;color:#fff;width:100%;text-align:center;padding:0 8px}.aae-toggle:not(.is-on) .aae-toggle-text{color:var(--cl-text-muted, #64748b);text-align:right}.aae-foot{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid var(--cl-border, #e2e8f0);flex-shrink:0}.aae-foot-spacer{flex:1}.aae-delete-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(220,38,38,.3);background:transparent;color:#dc2626;border-radius:8px;padding:8px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.aae-delete-btn:hover{background:#dc262614}.aae-foot-confirm{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#b91c1c}.aae-delete-confirm{border:0;background:#dc2626;color:#fff;border-radius:8px;padding:8px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.aae-delete-confirm:hover{background:#b91c1c}.lib-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;width:min(920px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--cl-surface, #ffffff);border-radius:14px;box-shadow:0 24px 60px -12px #0f172a66;overflow:hidden;animation:lib-pop .18s ease-out}@keyframes lib-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.lib-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px 14px;border-bottom:1px solid var(--cl-border, #e2e8f0)}.lib-title{font-size:18px;font-weight:700;margin:0;color:var(--cl-text, #1f2937)}.lib-sub{font-size:13px;color:var(--cl-text-muted, #64748b);margin:2px 0 0}.lib-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;flex-wrap:wrap}.lib-filter{padding:9px 12px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-bg-muted, #f1f5f9);font:inherit;font-size:13px;min-width:180px;color:var(--cl-text, #1f2937);cursor:pointer}.lib-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);color:var(--cl-text-muted, #64748b);min-width:220px}.lib-search input{border:0;outline:none;background:transparent;font:inherit;font-size:13px;width:100%;color:var(--cl-text, #1f2937)}.lib-table-wrap{flex:1;overflow-y:auto;border-top:1px solid var(--cl-border, #e2e8f0)}.lib-row{display:grid;grid-template-columns:90px 1fr minmax(180px,240px) 90px;align-items:center;gap:12px;padding:12px 22px;border-bottom:1px solid var(--cl-border, #e2e8f0)}.lib-row--head{position:sticky;top:0;z-index:1;background:var(--cl-surface, #ffffff);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #94a3b8);padding-top:10px;padding-bottom:10px}.lib-row:not(.lib-row--head):hover{background:var(--cl-bg-muted, #f8fafc)}.lib-cell-icon{display:flex;align-items:center}.lib-cell-name{font-size:14px;font-weight:600;color:var(--cl-text, #1f2937)}.lib-cell-type{font-size:13px;color:var(--cl-text-muted, #64748b)}.lib-cell-action{display:flex;justify-content:flex-end}.lib-add-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border:0;border-radius:7px;background:#16a34a;color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.lib-add-btn:hover{background:#15803d}.lib-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:7px;background:#ef4444;color:#fff;cursor:pointer;transition:background .15s}.lib-remove-btn:hover{background:#dc2626}.lib-empty{padding:40px;text-align:center;color:var(--cl-text-muted, #94a3b8);font-size:14px}.lib-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--cl-border, #e2e8f0)}.lib-custom-link{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--cl-primary, #008ad7);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.lib-custom-link:hover{text-decoration:underline}.aa-tab-hint{font-size:13px;color:var(--cl-text-muted, #64748b);margin:0 0 16px}.aa-col-head-name{font-size:15px;font-weight:700;color:var(--cl-text, #1f2937)}.aa-col-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0}.aa-col-viewtoggle{display:inline-flex;gap:2px;padding:3px;border-radius:9px;background:var(--cl-bg-muted, #f1f5f9);border:1px solid var(--cl-border, #e2e8f0)}.aa-col-viewseg{border:0;background:transparent;padding:6px 12px;border-radius:7px;font:inherit;font-size:12px;font-weight:600;color:var(--cl-text-muted, #64748b);cursor:pointer;transition:background .15s,color .15s}.aa-col-viewseg:hover{color:var(--cl-text, #1f2937)}.aa-col-viewseg.is-active{background:#fff;color:var(--cl-text, #1f2937);box-shadow:0 1px 2px #0f172a14}.aa-col-searchbox{flex:1;min-width:200px;max-width:320px}.aa-col-checklist{list-style:none;margin:0;padding:4px;max-height:520px;overflow-y:auto;border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #ffffff);scrollbar-width:none;-ms-overflow-style:none}.aa-col-checklist::-webkit-scrollbar{width:0;height:0;display:none}.aa-col-checklist-empty{padding:28px 16px;text-align:center;font-size:13px;color:var(--cl-text-muted, #94a3b8)}.aa-col-check-row{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;border:0;border-radius:9px;background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background .12s}.aa-col-check-row:hover{background:var(--cl-bg-muted, #f8fafc)}.aa-col-check-row.is-on{background:#008ad70f}.aa-col-check-name{font-size:14px;font-weight:600;color:var(--cl-text, #1f2937)}.aa-col-check-company{font-size:12px;color:var(--cl-text-muted, #94a3b8)}.aa-col-check-state{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);color:var(--cl-text-muted, #64748b);transition:all .12s}.aa-col-check-state.is-add{border-color:var(--cl-border-strong, #d6dae0);color:var(--cl-text-muted, #64748b)}.aa-col-check-row:hover .aa-col-check-state.is-add{border-color:var(--cl-primary, #008ad7);color:var(--cl-primary, #008ad7)}.aa-col-check-state.is-remove{background:var(--cl-surface, #ffffff);border-color:#dc26264d;color:#dc2626}.aa-col-check-row.is-on:hover .aa-col-check-state.is-remove{background:#dc2626;border-color:#dc2626;color:#fff}.aa-row--head{background:transparent;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #64748b);padding-top:14px;padding-bottom:14px}.aa-cell{min-width:0}.aa-cell--check{display:flex;align-items:center;justify-content:center}.aa-cell--name{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--cl-text, #1f2937)}.aa-cell--resource{color:var(--cl-text, #1f2937)}.aa-cell--type{display:flex;align-items:center}.aa-cell--action{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end}.aa-app-name{font-size:14px;font-weight:700;color:var(--cl-text, #1f2937);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aa-icon{border-radius:22%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-weight:800;overflow:hidden}.aa-icon img{width:100%;height:100%;object-fit:cover;display:block}.aa-type-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937);border:1px solid var(--cl-border, #e2e8f0);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.aa-type-pill:hover{border-color:var(--cl-primary, #008ad7);color:var(--cl-primary, #008ad7)}.aa-type-select{padding:5px 8px;border-radius:6px;border:1px solid var(--cl-primary, #008ad7);background:var(--cl-surface, #fff);font:inherit;font-size:12px}.aa-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;border:0;cursor:pointer;transition:background var(--motion-fast)}.aa-icon-btn:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa-icon-btn--bell,.aa-icon-btn--edit{color:var(--cl-primary, #008ad7)}.aa-icon-btn--remove{color:#dc2626}.aa-icon-btn--remove:hover{background:#dc26261a}.aa-icon-btn-text{padding:8px 16px;background:transparent;border:1px solid var(--cl-border-strong, #d6dae0);color:var(--cl-text, #1f2937);border-radius:8px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.aa-icon-btn-text:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa-empty{padding:32px;text-align:center;color:var(--cl-text-muted, #64748b);font-size:13px}.aa-pagination{display:inline-flex;align-items:center;gap:18px;justify-content:flex-end;margin-top:18px;font-size:13px;color:var(--cl-text-muted, #64748b);flex-wrap:wrap;width:100%}.aa-page-size{display:inline-flex;align-items:center;gap:8px}.aa-page-size select{padding:4px 8px;border:1px solid var(--cl-border-strong, #d6dae0);border-radius:6px;background:var(--cl-surface, #fff);font:inherit;font-size:12px}.aa-page-info{font-variant-numeric:tabular-nums}.aa-page-nav{display:inline-flex;gap:8px}.aa-page-nav button{width:30px;height:30px;border:1px solid var(--cl-border-strong, #d6dae0);border-radius:6px;background:var(--cl-surface, #fff);color:var(--cl-text, #1f2937);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.aa-page-nav button:disabled{opacity:.4;cursor:not-allowed}.aa-page-nav button:hover:not(:disabled){background:var(--cl-bg-muted, #f1f5f9)}.aa-collections{padding-top:4px}.aa-col-layout{display:grid;grid-template-columns:240px 1fr;gap:18px}.aa-col-list{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #fff);padding:8px;display:flex;flex-direction:column;gap:4px}.aa-col-list-head{padding:6px 10px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #64748b)}.aa-col-empty{padding:8px 10px;font-size:13px;color:var(--cl-text-muted, #64748b)}.aa-col-item{display:flex;align-items:center;gap:4px;padding:9px 8px 9px 6px;border-radius:8px;background:transparent;border:0;color:var(--cl-text, #1f2937);font:inherit;font-size:13px;font-weight:600;cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none}.aa-col-item-grip{display:inline-flex;align-items:center;justify-content:center;color:var(--cl-text-muted, #94a3b8);cursor:grab;padding:4px 2px;border-radius:4px;opacity:.45;transition:opacity .15s,background .15s;flex-shrink:0}.aa-col-item:hover .aa-col-item-grip{opacity:1}.aa-col-item-grip:hover,.aa-col-item.is-dragging .aa-col-item-grip{background:#0f172a14;color:var(--cl-text, #1f2937)}.aa-col-item-grip:active,.aa-col-item.is-dragging .aa-col-item-grip{cursor:grabbing}.aa-col-item-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-col-item.is-dragging{opacity:.4}.aa-col-drop-line{height:2px;margin:-1px 6px;border-radius:2px;background:var(--cl-primary, #008ad7);box-shadow:0 0 0 2px #008ad72e}.aa-col-drop-tail{height:24px}.aa-col-item:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa-col-item.is-active{background:#008ad71a;color:var(--cl-primary, #008ad7)}.aa-col-item-count{font-size:11px;background:#0f172a14;padding:2px 8px;border-radius:999px;font-weight:700}.aa-col-item.is-active .aa-col-item-count{background:var(--cl-primary, #008ad7);color:#fff}.aa-col-add{display:flex;gap:6px;margin-top:6px;padding:6px}.aa-col-add input{flex:1;min-width:0;padding:7px 10px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #ffffff);color:var(--cl-text, #1f2937);font:inherit;font-size:12px;outline:none;transition:border-color .15s,box-shadow .15s}.aa-col-add input::placeholder{color:var(--cl-text-muted, #94a3b8)}.aa-col-add input:focus{border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.aa-col-add button{width:30px;height:30px;flex-shrink:0;border-radius:8px;background:var(--cl-primary, #008ad7);color:#fff;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.aa-col-add button:hover:not(:disabled){background:var(--cl-primary-hover, #0072b3)}.aa-col-add button:disabled{background:#008ad759;color:#fff;cursor:not-allowed}.aa-col-body{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #fff);padding:18px 20px;display:flex;flex-direction:column;gap:14px;min-height:320px}.aa-col-empty-state{margin:auto;text-align:center;font-size:14px;color:var(--cl-text-muted, #64748b);max-width:400px;line-height:1.55}.aa-col-head{display:flex;align-items:center;gap:12px}.aa-col-name-input{flex:1;padding:8px 10px;border-radius:8px;border:1px solid transparent;font:inherit;font-size:18px;font-weight:700;color:var(--cl-text, #1f2937);outline:none;background:transparent}.aa-col-name-input:hover,.aa-col-name-input:focus{border-color:var(--cl-border-strong, #d6dae0);background:var(--cl-bg-muted, #f8fafc)}.aa-col-count-pill{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#008ad71a;color:var(--cl-primary, #008ad7)}.aa-col-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:480px;overflow-y:auto}.aa-col-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;background:var(--cl-surface, #fff);cursor:pointer;text-align:left;transition:background var(--motion-fast),border-color var(--motion-fast)}.aa-col-card:hover{border-color:var(--cl-primary, #008ad7)}.aa-col-card.is-on{background:#008ad70f;border-color:var(--cl-primary, #008ad7)}.aa-col-card-name{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--cl-text, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-col-card-on,.aa-col-card-off{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px}.aa-col-card-on{background:#10b98126;color:#047857}.aa-col-card-off{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b)}.aa-featured-summary{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;flex-wrap:wrap}.aa-featured-title{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--cl-text-muted, #64748b);text-transform:uppercase;letter-spacing:.05em}.aa-featured-meter{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:14px;color:var(--cl-text, #1f2937)}.aa-featured-meter strong{font-size:24px;color:var(--cl-primary-dark, #0a4d7f)}.aa-featured-meter span:last-child{color:var(--cl-text-muted, #64748b);margin-left:8px}.aa-featured-hint{font-size:12px;color:var(--cl-text-muted, #64748b);max-width:420px;margin:0;line-height:1.55}.aa-featured-tray{border:2px dashed var(--cl-border-strong, #d6dae0);border-radius:12px;padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;background:var(--cl-bg-muted, #f8fafc);min-height:92px}.aa-featured-empty{grid-column:1 / -1;text-align:center;padding:22px 8px;font-size:13px;color:var(--cl-text-muted, #64748b)}.aa-featured-tile{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--cl-surface, #fff);border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;position:relative;cursor:grab;-webkit-user-select:none;user-select:none;transition:box-shadow var(--motion-fast)}.aa-featured-tile:hover{box-shadow:var(--elev-2)}.aa-featured-tile:active{cursor:grabbing}.aa-featured-grip{color:var(--cl-text-muted, #94a3b8)}.aa-featured-tile-name{flex:1;min-width:0;font-size:13px;font-weight:700;color:var(--cl-text, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-featured-tile-remove{width:20px;height:20px;border-radius:999px;background:#dc26261a;color:#dc2626;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.aa-featured-tile-remove:hover{background:#dc262633}.aa-featured-divider{height:1px;background:var(--cl-border, #e2e8f0);margin:18px 0 0}.aa-featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.aa-featured-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--cl-surface, #fff);border:1px solid var(--cl-border, #e2e8f0);border-radius:10px;cursor:pointer;text-align:left;position:relative;transition:border-color var(--motion-fast),background var(--motion-fast)}.aa-featured-card:hover{border-color:var(--cl-primary, #008ad7)}.aa-featured-card.is-on{background:#f59e0b14;border-color:#f59e0b99}.aa-featured-card-star{position:absolute;top:6px;right:6px}.aa-featured-card-name{flex:1;font-size:12px;font-weight:600;color:var(--cl-text, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:20px}.aa-dialog-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:200}.aa-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:460px;max-width:calc(100vw - 32px);background:var(--cl-surface, #fff);border-radius:14px;box-shadow:0 20px 60px #0f172a4d;z-index:201;display:flex;flex-direction:column;overflow:hidden}.aa-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--cl-border, #e2e8f0)}.aa-dialog-head h2{margin:0;font-size:16px;font-weight:700;color:var(--cl-text, #1f2937)}.aa-dialog-close{width:32px;height:32px;border-radius:8px;background:transparent;border:0;color:var(--cl-text-muted, #64748b);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.aa-dialog-close:hover{background:var(--cl-bg-muted, #f1f5f9)}.aa-dialog-body{padding:18px 22px;display:flex;flex-direction:column;gap:14px}.aa-field{display:flex;flex-direction:column;gap:6px}.aa-field>span{font-size:12px;font-weight:700;color:var(--cl-text-muted, #64748b);text-transform:uppercase;letter-spacing:.04em}.aa-field input,.aa-field select{padding:9px 12px;border-radius:8px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);font:inherit;font-size:14px;color:var(--cl-text, #1f2937);outline:none}.aa-field input:focus,.aa-field select:focus{border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 3px #008ad726}.aa-swatch-row{display:inline-flex;gap:8px;flex-wrap:wrap}.aa-swatch{width:28px;height:28px;border-radius:6px;border:2px solid transparent;cursor:pointer;padding:0}.aa-swatch.is-on{border-color:var(--cl-primary-dark, #0a4d7f);box-shadow:0 0 0 2px var(--cl-surface, #fff)}.aa-dialog-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--cl-border, #e2e8f0);background:var(--cl-bg-muted, #f8fafc)}@media (max-width: 900px){.aa-col-layout{grid-template-columns:1fr}.aa-row{grid-template-columns:1fr;gap:6px}.aa-row--head{display:none}.aa-cell--action{justify-content:flex-start}}.ad-assign{padding:4px 0 12px}.ad-assign-back{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;color:var(--cl-primary, #008ad7);font:inherit;font-size:13px;font-weight:700;letter-spacing:.08em;cursor:pointer;padding:0;margin-bottom:14px}.ad-assign-back:hover{color:var(--cl-primary-dark, #0a4d7f)}.ad-assign-title{font-size:32px;font-weight:800;color:var(--cl-text, #1f2937);margin:0 0 6px;letter-spacing:-.01em}.ad-assign-sub{margin:0 0 22px;color:var(--cl-text-muted, #64748b);font-size:14px}.ad-assign-sub strong{color:var(--cl-text, #1f2937);font-weight:700}.ad-assign-search-row{display:flex;gap:12px;margin-bottom:22px;flex-wrap:wrap}.ad-assign-search{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);color:var(--cl-text-muted, #64748b);width:240px;max-width:100%}.ad-assign-search input{flex:1;background:transparent;border:0;outline:0;font:inherit;font-size:13px;color:var(--cl-text, #1f2937)}.ad-assign-search input::placeholder{color:var(--cl-text-muted, #94a3b8)}.ad-assign-view-btn{margin-left:auto;width:38px;height:38px;border-radius:999px;border:1px solid var(--cl-border-strong, #d6dae0);background:var(--cl-surface, #fff);color:var(--cl-text-muted, #64748b);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}.ad-assign-view-btn:hover{background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text, #1f2937);border-color:var(--cl-text-muted, #64748b)}.ad-assign-bulk-bar{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 18px;margin-bottom:18px;border-radius:14px;background:var(--cl-surface, #fff);border:1px solid var(--cl-border, #e2e8f0);box-shadow:var(--elev-2);flex-wrap:wrap;animation:ad-assign-bulk-in .16s ease}@keyframes ad-assign-bulk-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ad-assign-bulk-count{font-size:14px;color:var(--cl-text, #1f2937);margin-right:4px}.ad-assign-bulk-count strong{font-weight:800}.ad-assign-bulk-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;border:0;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}.ad-assign-bulk-btn--ghost{background:transparent;color:var(--cl-text, #1f2937);border:1px solid var(--cl-border-strong, #d6dae0)}.ad-assign-bulk-btn--ghost:hover{background:var(--cl-bg-muted, #f1f5f9);border-color:var(--cl-text-muted, #64748b)}.ad-assign-bulk-btn--assign{background:var(--cl-primary-dark, #0a4d7f);color:#fff;box-shadow:0 2px 6px #0a4d7f33}.ad-assign-bulk-btn--assign:hover{background:var(--cl-primary, #008ad7)}.ad-assign-bulk-btn--remove{background:#dc2626;color:#fff;box-shadow:0 2px 6px #dc262640}.ad-assign-bulk-btn--remove:hover{background:#b91c1c}.ad-assign-card-badge{display:inline-flex;align-items:center;margin-left:8px;padding:2px 8px;border-radius:999px;background:#10b9811f;color:#047857;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.ad-assign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:22px}.ad-assign-card{border:1px solid var(--cl-border, #e2e8f0);background:var(--cl-surface, #fff);border-radius:14px;padding:16px 18px;transition:box-shadow var(--motion-fast),border-color var(--motion-fast)}.ad-assign-card:hover{box-shadow:var(--elev-2)}.ad-assign-card.is-assigned{border-color:#10b98173;background:#10b9810a}.ad-assign-card.is-picked{border-color:var(--cl-primary, #008ad7);box-shadow:0 0 0 2px #008ad72e}.ad-assign-card-head{display:grid;grid-template-columns:18px 36px 1fr 18px;gap:10px;align-items:center;margin-bottom:14px}.ad-assign-card-check{width:18px;height:18px;margin:0;accent-color:var(--cl-primary, #008ad7)}.ad-assign-card-icon{width:36px;height:36px;border-radius:8px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ad-assign-card-meta{min-width:0}.ad-assign-card-name{font-size:15px;font-weight:700;color:var(--cl-text, #1f2937);line-height:1.2}.ad-assign-card-profile{font-size:13px;color:var(--cl-text-muted, #64748b);margin-top:2px}.ad-assign-card-globe{color:var(--cl-text-muted, #94a3b8);display:inline-flex;align-items:center;justify-content:center}.ad-assign-card-perms-label{font-size:11px;font-weight:700;color:var(--cl-text-muted, #64748b);letter-spacing:.06em;margin-bottom:8px}.ad-assign-card-perms{display:flex;flex-wrap:wrap;gap:14px}.ad-assign-perm{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cl-text, #1f2937);cursor:pointer}.ad-assign-perm input{width:16px;height:16px;accent-color:var(--cl-primary, #008ad7);margin:0}.ad-assign-empty{padding:32px;text-align:center;color:var(--cl-text-muted, #64748b);border:1px dashed var(--cl-border, #e2e8f0);border-radius:12px}.ad-assign-pagination{display:flex;align-items:center;justify-content:flex-end;gap:18px;font-size:13px;color:var(--cl-text-muted, #64748b)}.ad-assign-page-info{font-variant-numeric:tabular-nums}.ad-assign-page-nav{display:inline-flex;gap:4px}.ad-assign-page-nav button{width:30px;height:30px;border:1px solid var(--cl-border-strong, #d6dae0);border-radius:8px;background:var(--cl-surface, #fff);color:var(--cl-text, #1f2937);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--motion-fast)}.ad-assign-page-nav button:hover:not(:disabled){background:var(--cl-bg-muted, #f1f5f9)}.ad-assign-page-nav button:disabled{opacity:.4;cursor:not-allowed}.ad-assign-list{border:1px solid var(--cl-border, #e2e8f0);border-radius:12px;background:var(--cl-surface, #fff);overflow:hidden;margin-bottom:22px}.ad-assign-list-row{display:grid;grid-template-columns:40px minmax(160px,1.5fr) minmax(160px,1.5fr) 80px 80px 80px;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--cl-border, #e2e8f0);font-size:13px;transition:background var(--motion-fast)}.ad-assign-list-row:first-child{border-top:0}.ad-assign-list-row:not(.ad-assign-list-row--head):hover{background:var(--cl-bg-muted, #f8fafc)}.ad-assign-list-row.is-assigned{background:#10b9810d}.ad-assign-list-row.is-picked{background:#008ad714;box-shadow:inset 3px 0 0 var(--cl-primary, #008ad7)}.ad-assign-list-row--head{background:transparent;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--cl-text-muted, #64748b)}.ad-assign-list-cell{min-width:0}.ad-assign-list-cell--check{display:inline-flex;align-items:center;justify-content:center}.ad-assign-list-cell--check input{width:18px;height:18px;margin:0;accent-color:var(--cl-primary, #008ad7)}.ad-assign-list-cell--name{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--cl-text, #1f2937);overflow:hidden}.ad-assign-list-icon{width:28px;height:28px;border-radius:8px;background:var(--cl-bg-muted, #f1f5f9);color:var(--cl-text-muted, #64748b);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ad-assign-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-assign-list-cell--profile{color:var(--cl-text, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-assign-list-cell--perm{display:inline-flex;align-items:center;justify-content:center}.ad-assign-list-perm input{width:16px;height:16px;margin:0;accent-color:var(--cl-primary, #008ad7);cursor:pointer}@media (max-width: 720px){.ad-assign-list-row{grid-template-columns:40px 1fr;gap:8px 12px}.ad-assign-list-row--head{display:none}.ad-assign-list-cell--profile{grid-column:2 / -1;font-size:12px;color:var(--cl-text-muted, #64748b)}.ad-assign-list-cell--perm{grid-column:span 1;justify-content:flex-start;font-size:12px}.ad-assign-list-cell--perm:before{content:attr(data-label)}}@media (max-width: 640px){.text-input,.pp-url-setting-input,.pp-tour-input,input[type=text],input[type=search],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=url],textarea,select{font-size:16px}}.topbar{padding-left:max(var(--gd-space-4, 16px),env(safe-area-inset-left));padding-right:max(var(--gd-space-4, 16px),env(safe-area-inset-right))}.pp-header,.pp-tabs{padding-left:max(var(--gd-space-6, 24px),env(safe-area-inset-left));padding-right:max(var(--gd-space-6, 24px),env(safe-area-inset-right))}.bottom-dock,.parent-shell .bottom-dock,.si-shell .bottom-dock{padding-bottom:max(0px,env(safe-area-inset-bottom))}@media (max-width: 768px){.modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}}@media (max-width: 375px){.pp-hero{padding:24px 16px}.pp-hero-title{font-size:28px;line-height:1.15}.pp-hero-eyebrow{font-size:11px}.pp-hero-desc{font-size:14px}.pp-featured-grid{grid-template-columns:repeat(3,56px);gap:8px}.pp-hero-cta,.pp-hero-cta-secondary{font-size:13px;padding:8px 14px}.pp-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.pp-tabs::-webkit-scrollbar{display:none}.pp-tab{flex-shrink:0}.modal{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important}.modal-header,.modal-body,.modal-footer{padding-left:16px;padding-right:16px}.view-toggle-fab--segmented{flex-wrap:wrap;max-width:calc(100vw - 24px)}.view-toggle-fab--segmented .view-toggle-seg{padding:6px 10px;font-size:12px}.sidebar{width:200px}}@media (max-width: 320px){.pp-hero-title{font-size:24px}.pp-featured-grid{grid-template-columns:repeat(3,48px)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.icon-btn:active,.btn:active:not(:disabled),.folder-pill:active,.file-tile:active{transform:none}}@media (pointer: coarse){.btn{min-height:44px}.icon-btn,.aa-icon-btn,.pp-detail-close,.pp-pagination-num{min-width:44px;min-height:44px}.pp-pagination-btn,.pp-tab{min-height:44px}.pp-header-icon-btn{min-width:44px;min-height:44px}}@media (forced-colors: active){.pp-tab.active,.pp-tab[aria-selected=true],.admin__nav-item--active,.aa-tab.is-active{border:1px solid Highlight;color:Highlight}.aae-toggle,.aa-toggle{border:1px solid ButtonText}.aae-toggle.is-on,.aa-toggle.is-on{border-color:Highlight;background:Highlight}.aa2-status-pill,.pp-badge{border:1px solid CanvasText}:focus-visible{outline:2px solid Highlight;outline-offset:2px}}
