@keyframes wpi-fade-in{0%{opacity:0}to{opacity:1}}@keyframes wpi-dialog-fade{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes wpi-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ui-skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}@keyframes ui-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes wpi-fill-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ui-pop-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@keyframes breadcrumb-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes bc-item-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}:root{--color-surface-base: #ffffff;--color-surface-elevated: #ffffff;--color-surface-dim: #f7f7f7;--color-surface-alt: #e3e4e4;--color-border-default: #e3e4e4;--color-border-subtle: #eef0f0;--color-border-strong: #8c8e90;--color-text-primary: #1f2327;--color-text-secondary: #4b4e51;--color-text-muted: #4f5255;--color-text-disabled: #b7b9ba;--color-text-on-primary: #ffffff;--color-primary: #9e2531;--color-primary-hover: #8f2934;--color-primary-active: #7a1a24;--color-primary-disabled: #cecfd0;--color-focus-ring: #9e2531;--color-primary-halo: rgba(172, 43, 55, .16);--wpi-red-tint: #fff5f6;--color-danger-base: #9e2531;--color-danger-surface: #f7dfe1;--color-danger-text: #85222d;--color-success-base: #86a641;--color-success-surface: #e7edd4;--color-success-text: #3f4f1d;--color-warning-base: #f5d493;--color-warning-surface: #fbeecb;--color-warning-text: #5f440f;--color-info-base: #165e7a;--color-info-surface: #d4e4ea;--color-info-text: #0f4256;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 6px;--radius-full: 999px;--radius: var(--radius-md);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--font-heading: "Source Sans 3", "Source Sans Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Raleway", system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans: var(--font-body);--border-hairline: 1px solid var(--color-border-default);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-focus-ring: 0 0 0 2px var(--color-surface-base), 0 0 0 4px var(--color-focus-ring);--z-dropdown: 100;--z-sticky: 200;--z-drawer: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-toast: 700;--z-tooltip: 800;--duration-fast: .12s;--duration-base: .16s;--duration-slow: .2s;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .6, 1);--ease-standard: cubic-bezier(.4, 0, .2, 1);--wpi-red: var(--color-primary);--wpi-red-hover: var(--color-primary-hover);--wpi-gray-50: var(--color-surface-dim);--wpi-gray-100: var(--color-surface-alt);--wpi-gray-200: var(--color-border-default);--wpi-gray-300: var(--color-border-strong);--wpi-gray-500: var(--color-text-muted);--wpi-gray-700: var(--color-text-secondary);--wpi-gray-900: var(--color-text-primary);--wpi-amber: var(--color-warning-base);--wpi-green: var(--color-success-base);--wpi-blue: var(--color-info-base);--shadow: var(--shadow-xs)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;font-family:var(--font-body);color:var(--color-text-primary);background:var(--color-surface-dim)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary)}a{color:var(--wpi-red);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:2px solid var(--color-border-strong);background:#fff;color:var(--color-text-secondary);padding:7px 16px;line-height:1.2;border-radius:var(--radius-sm);transition:background .15s ease,color .15s ease,border-color .15s ease}button:hover{border-color:var(--color-text-muted);color:var(--color-text-primary);background:#fff}button.primary{background:var(--wpi-red);color:#fff;border-color:var(--wpi-red)}button.primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}button.email-on-acid{background:#d2361d;color:#fff;border-color:#d2361d;font-weight:600}button.email-on-acid:hover{background:#b32d18;border-color:#b32d18}button[disabled]{opacity:.5;cursor:not-allowed}button.th-sort{border:none;background:none;padding:0;margin:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:2px}button.th-sort:hover{background:none;color:var(--color-text-primary)}button.link-button{border:none;background:none;padding:0;color:var(--wpi-red);font:inherit;cursor:pointer;display:inline;text-align:left}button.link-button:hover{background:none;color:var(--color-primary-hover);text-decoration:underline}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring);border-radius:var(--radius)}input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--wpi-gray-300);border-radius:var(--radius);background:#fff;width:100%}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px;cursor:pointer}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-ring)}.app-shell{display:flex;flex-direction:column;height:100vh;container-type:inline-size}.app-header{background:#fff;border-bottom:1px solid var(--wpi-gray-200);padding:12px 24px;display:flex;align-items:center;flex-wrap:wrap;gap:24px;box-shadow:var(--shadow)}.app-header .brand{font-weight:700;font-size:18px;display:flex;align-items:center;gap:8px;flex-shrink:0}.app-header .brand .swatch{width:24px;height:24px;background:var(--wpi-red);color:#fff;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.app-header__toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin-left:auto;flex-shrink:0;border:1px solid var(--wpi-gray-300);border-radius:var(--radius);background:#fff;color:var(--color-text-secondary);cursor:pointer}.app-header nav{display:flex;gap:18px;flex:1}.app-header nav a{color:var(--color-text-secondary);padding:4px 0;text-decoration:none;font-size:14px;font-weight:500}.app-header nav a:hover{text-decoration:none;color:var(--color-text-primary)}.app-header nav a.active{color:var(--color-text-primary);font-weight:600}.app-header .right{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--wpi-gray-500)}@container (width < 860px){.app-header{gap:12px}.app-header__toggle{display:inline-flex}.app-header nav,.app-header .right{display:none;flex-basis:100%}.app-header--open nav,.app-header--open .right{display:flex}.app-header nav{flex-direction:column;gap:0;padding-top:4px}.app-header nav a{padding:10px 4px;border-top:1px solid var(--wpi-gray-200)}.app-header .right{flex-direction:column;align-items:flex-start;gap:10px;padding-top:10px;border-top:1px solid var(--wpi-gray-200)}}.app-breadcrumbs{padding:9px 24px;border-bottom:1px solid var(--wpi-gray-200);background:var(--wpi-gray-50, #fafafa)}.app-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;font-size:13px}.app-breadcrumbs li{display:flex;align-items:center;gap:6px;min-width:0}.app-breadcrumbs a,.app-breadcrumbs span{overflow-wrap:anywhere}.app-breadcrumbs a{color:var(--wpi-gray-500);text-decoration:none}.app-breadcrumbs a:hover{color:var(--wpi-red);text-decoration:underline}.app-breadcrumbs a:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring);border-radius:var(--radius)}.app-breadcrumbs span[aria-current=page]{color:var(--wpi-gray-900);font-weight:600}.app-breadcrumbs .sep{color:var(--wpi-gray-300)}.app-breadcrumbs .bc-pub{position:relative;display:inline-flex;align-items:center}.app-breadcrumbs .bc-pub>a{display:inline-flex;align-items:center;gap:5px;cursor:pointer;padding:2px 9px;border-radius:12px;background:var(--wpi-gray-100, #f3f4f6);border:1px solid var(--wpi-gray-200, #e5e7eb);transition:background .15s ease,border-color .15s ease,color .15s ease}.app-breadcrumbs .bc-pub>a:hover{background:#fff;border-color:var(--wpi-red);color:var(--wpi-red);text-decoration:none}.app-breadcrumbs .bc-current{color:var(--wpi-gray-900);font-weight:600}.app-breadcrumbs .bc-caret{display:inline-block;vertical-align:middle;color:inherit;transition:transform var(--duration-fast) var(--ease-standard)}.app-breadcrumbs .bc-pub:hover .bc-caret{transform:rotate(180deg)}.app-breadcrumbs .bc-menu{position:absolute;top:100%;left:0;margin-top:2px;min-width:170px;background:#fff;border:1px solid var(--wpi-gray-200);border-radius:6px;box-shadow:0 8px 24px #0f172a1f;padding:4px;z-index:200;display:grid;gap:2px}.app-breadcrumbs .bc-menu a{display:block;padding:8px 12px;border-radius:4px;font-size:13px;color:var(--wpi-gray-700)}.app-breadcrumbs .bc-menu a:hover{background:var(--wpi-gray-100);color:var(--wpi-gray-900);text-decoration:none}.app-main{flex:1;padding:24px;min-height:0;overflow-y:auto}.card{background:#fff;border:1px solid var(--wpi-gray-200);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.gate{max-width:380px;margin:10vh auto;background:#fff;padding:32px;border-radius:10px;box-shadow:var(--shadow);border:1px solid var(--wpi-gray-200)}.gate h1{margin:0 0 6px;font-size:22px}.gate p.muted{margin:0 0 18px;color:var(--wpi-gray-500);font-size:14px}.gate form{display:grid;gap:12px}.gate .gate-error{color:var(--wpi-red);font-size:13px}.status-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-family:var(--font-heading);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.status-badge.drafting{background:var(--color-border-default);color:#34383b}.status-badge.in_review{background:#f5d493;color:var(--color-text-primary)}.status-badge.ready{background:#9cbb57;color:var(--color-text-primary)}.status-badge.sent{background:#165e7a;color:#fff}.status-badge.skipped_no_review,.status-badge.failed{background:var(--wpi-red);color:#fff}.correction-strip{margin-top:2px;padding:8px 12px;border:1px solid var(--wpi-gray-200);border-left:3px solid var(--wpi-red);border-radius:6px;background:var(--wpi-gray-50);display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.correction-strip:hover,.correction-strip:focus-visible{background:#fff5f6;border-color:var(--wpi-red);box-shadow:0 2px 10px #ac2b372e;outline:none}.correction-strip__cta{font-size:12px;color:var(--wpi-red);font-weight:600;white-space:nowrap}.correction-strip:hover .correction-strip__cta,.correction-strip:focus-visible .correction-strip__cta{text-decoration:underline}table.wpi-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}table.wpi-table th,table.wpi-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--wpi-gray-200);font-size:14px}table.wpi-table th{background:var(--color-border-default);font-family:var(--font-heading);font-weight:700;color:#34383b;font-size:11px;text-transform:uppercase;letter-spacing:.05em}table.wpi-table tr:last-child td{border-bottom:none}table.wpi-table tr:hover td{background:var(--wpi-gray-50)}.link-perf{container-type:inline-size}@container (max-width: 560px){.link-perf-table thead{display:none}.link-perf-table,.link-perf-table tbody,.link-perf-table tr{display:block}.link-perf-table tr{padding:10px 12px;border-bottom:1px solid var(--wpi-gray-200)}.link-perf-table tr:last-child{border-bottom:none}.link-perf-table td{display:inline-block;border-bottom:none;padding:2px 16px 2px 0;font-size:13px}.link-perf-table td.lp-url{display:block;padding:0 0 4px}.link-perf-table td.lp-stat:before{content:attr(data-label) ": ";font-size:11px;color:var(--wpi-gray-500);text-transform:uppercase;letter-spacing:.04em}.link-perf-table td.lp-times{display:block;padding:2px 0 0}.link-perf-table tr:hover td{background:none}}.wpi-table-scroll{overflow-x:auto}.wpi-table-scroll>table.wpi-table{min-width:100%}.wpi-variable-row{display:grid;gap:6px;grid-template-columns:1fr 1fr 110px 1fr 2fr auto}@container (width < 860px){.wpi-variable-row{grid-template-columns:1fr}}.featured-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}@container (width < 860px){.featured-grid{grid-template-columns:1fr}}.wpi-editor-shell{background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);height:calc(100vh - 178px);min-height:480px;display:flex;flex-direction:column}.wpi-editor-toolbar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--color-surface-dim);border-bottom:var(--border-hairline)}.wpi-editor-status{font-size:13px;color:var(--color-text-muted);transition:color var(--duration-fast)}.wpi-editor-status--saving{color:var(--color-text-secondary)}.wpi-editor-status--saved{color:var(--color-success-text)}.wpi-editor-status--unsaved{color:var(--color-warning-text)}.wpi-editor-status--error{color:var(--color-danger-base)}.wpi-editor-subject{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--color-surface-base, #fff);border-bottom:var(--border-hairline)}.wpi-editor-subject__label{flex:none;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.wpi-editor-subject__input{flex:1;min-width:0;font-size:18px;font-weight:700;color:var(--color-text, #111827);border:1px solid var(--color-border, #e5e7eb);border-radius:6px;padding:7px 10px;background:var(--color-surface-dim, #f9fafb);transition:border-color var(--duration-fast),background var(--duration-fast),box-shadow var(--duration-fast)}.wpi-editor-subject__input::placeholder{color:var(--color-text-muted);font-weight:400}.wpi-editor-subject__input:hover:not(:disabled){border-color:var(--wpi-gray-400, #9ca3af)}.wpi-editor-subject__input:focus{outline:none;background:#fff;border-color:var(--wpi-red, #ac2b37);box-shadow:0 0 0 3px #ac2b371f}.wpi-editor-subject__input:disabled{background:transparent;border-color:transparent;color:var(--color-text-muted)}.wpi-editor-layout{display:grid;flex:1 1 auto;min-height:0}.wpi-preview-drawer{position:relative;align-self:stretch;margin-left:8px;background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.wpi-preview-drawer__resizer{position:absolute;top:0;bottom:0;left:0;width:12px;cursor:col-resize;z-index:5;background:transparent;touch-action:none}.wpi-preview-drawer__resizer:before{content:"";position:absolute;left:3px;top:50%;transform:translateY(-50%);width:4px;height:40px;border-radius:2px;background:var(--color-border-default);transition:background var(--duration-fast)}.wpi-preview-drawer__resizer:hover:before,.wpi-preview-drawer__resizer:active:before{background:var(--color-primary)}.wpi-preview-drawer__inner{padding:16px;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.wpi-preview-drawer__header{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;font-size:13px;color:var(--color-text-secondary)}.wpi-preview-drawer__close{background:transparent;border:0;font-size:20px;line-height:1;cursor:pointer;color:var(--color-text-muted);padding:0 4px}.wpi-preview-drawer__close:hover{color:var(--color-text-primary)}.wpi-email-preview{display:flex;flex-direction:column;flex:1 1 auto;min-height:320px;background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-sm);overflow:hidden}.wpi-email-preview__frame{flex:1 1 auto;width:100%;border:0;background:#fff}.wpi-email-preview__error{padding:8px 10px;background:var(--color-danger-surface);color:var(--color-danger-text);font-size:12px;border-bottom:1px solid var(--color-danger-base)}.wpi-editor-side{border-right:var(--border-hairline);background:var(--color-surface-dim);padding:0;height:100%;display:flex;flex-direction:column;min-height:0}.wpi-editor-side .wpi-blocks-panel,.wpi-editor-side .wpi-layers-panel,.wpi-editor-side .wpi-styles-tab,.wpi-editor-side .wpi-traits-panel,.wpi-editor-side .wpi-variables-tab{flex:1 1 auto;overflow-y:auto;min-height:0;padding:10px}.wpi-variables-tab{padding:8px 2px 0}.wpi-side-title{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--wpi-gray-500);font-weight:700;padding:8px 4px 6px;margin-top:6px;border-top:1px solid var(--wpi-gray-200)}.wpi-side-title:first-child{margin-top:0;border-top:none}.wpi-side-tabs{display:flex;flex:0 0 auto;background:var(--color-surface-dim);border-bottom:var(--border-hairline)}.wpi-side-tab{flex:1;position:relative;padding:8px 4px;background:transparent;border:none;border-radius:0;margin-bottom:-1px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--color-text-muted);cursor:pointer;transition:color var(--duration-fast)}.wpi-side-tab:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0;transition:width var(--duration-base) var(--ease-standard)}.wpi-side-tab:hover{color:var(--color-text-secondary);background:transparent}.wpi-side-tab:hover:after{width:100%}.wpi-side-tab-active{color:var(--color-primary)}.wpi-side-tab-active:after{width:100%}.wpi-editor-resizer{background:transparent;cursor:col-resize;position:relative}.wpi-editor-resizer:before{content:"";position:absolute;top:0;bottom:0;left:2px;width:2px;background:var(--color-border-default);transition:background var(--duration-fast)}.wpi-editor-resizer:hover:before,.wpi-editor-resizer:active:before{background:var(--color-primary)}.wpi-editor-canvas{min-width:0;min-height:0;height:100%;background:var(--color-surface-alt);overflow:hidden}.wpi-editor-canvas .gjs-cv-canvas{background:var(--color-surface-alt);width:100%;height:100%;overflow:hidden}.wpi-editor-canvas .gjs-pn-devices-c,.wpi-editor-canvas .gjs-pn-devices-c.gjs-one-bg,.wpi-editor-canvas .gjs-pn-devices-c.gjs-two-bg{display:flex!important;align-items:center;justify-content:space-between;left:0;right:0;width:auto;box-sizing:border-box;padding:4px 10px;background:var(--color-surface-dim)!important;background-color:var(--color-surface-dim)!important;border-bottom:var(--border-hairline)!important;container-type:inline-size;container-name:wpi-topbar;z-index:6}.wpi-editor-canvas .gjs-pn-devices-c .gjs-pn-buttons{display:none!important}.wpi-editor-actions{display:flex;align-items:center;gap:8px;margin-left:auto;padding-right:6px}.wpi-editor-actions button{padding:5px 12px;font-size:12px;line-height:1.35}.wpi-editor-history{display:flex;align-items:center;gap:2px}.wpi-history-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:28px;height:28px;padding:0 8px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.wpi-history-btn:hover:not(:disabled){background:var(--color-surface-elevated);color:var(--color-text-primary)}.wpi-history-btn:disabled{color:var(--color-text-disabled);cursor:default}.wpi-history-btn__label{font-size:12px;line-height:1.35;font-weight:500}@container wpi-topbar (max-width: 720px){.wpi-history-btn{padding:0;width:28px}.wpi-history-btn__label{display:none}}.wpi-blocks-panel,.wpi-blocks-panel .gjs-blocks-cs,.wpi-blocks-panel .gjs-pn-panel,.wpi-blocks-panel .gjs-one-bg,.wpi-blocks-panel .gjs-two-bg,.wpi-blocks-panel .gjs-two-color,.wpi-blocks-panel .gjs-four-color{background:transparent!important;background-color:transparent!important;color:var(--color-text-primary)!important}.wpi-blocks-panel .gjs-block{width:100%!important;min-height:52px;padding:8px 10px;border-radius:var(--radius-sm);background:transparent!important;border:0!important;box-shadow:none!important;font-size:13px;text-align:left;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;color:var(--color-text-primary)!important;cursor:grab;margin:0;box-sizing:border-box;transition:background var(--duration-fast)}.wpi-blocks-panel .gjs-block:hover{background:var(--color-surface-alt)!important}.wpi-blocks-panel .gjs-block__media{flex:0 0 auto;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-dim);border:var(--border-hairline);border-radius:var(--radius-sm)}.wpi-blocks-panel .gjs-block__media>svg{width:28px;height:28px;color:var(--color-text-secondary)}.wpi-blocks-panel .gjs-block-label{font-weight:500;font-size:13px;text-transform:none;letter-spacing:0;line-height:1.3;flex:1 1 auto;text-align:left;color:var(--color-text-primary)!important}.wpi-blocks-panel .gjs-block-category{background:var(--color-surface-base)!important;background-color:var(--color-surface-base)!important;border:var(--border-hairline)!important;border-radius:var(--radius-md);padding:4px 8px 8px!important;margin:0!important}.wpi-blocks-panel .gjs-block-category+.gjs-block-category{margin-top:10px!important}.wpi-blocks-panel .gjs-block-category .gjs-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)!important;font-weight:700;padding:10px 4px 4px!important;cursor:pointer;display:flex;align-items:center;gap:6px;background:transparent!important;border:0!important;transition:color var(--duration-fast)}.wpi-blocks-panel .gjs-block-category .gjs-title:hover{color:var(--color-text-primary)!important}.wpi-blocks-panel .gjs-block-category .gjs-title .gjs-caret-icon{font-size:10px;color:var(--color-text-muted)!important}.wpi-blocks-panel .gjs-blocks-c{display:block;width:100%;background:transparent!important;border:0!important;padding:0!important}.wpi-blocks-panel hr,.wpi-blocks-panel .gjs-block:after,.wpi-blocks-panel .gjs-block:before{display:none!important;border:0!important}.wpi-styles-panel,.wpi-layers-panel,.wpi-traits-panel,.wpi-styles-panel .gjs-one-bg,.wpi-styles-panel .gjs-two-bg,.wpi-styles-panel .gjs-two-color,.wpi-styles-panel .gjs-four-color,.wpi-styles-panel .gjs-pn-panel,.wpi-layers-panel .gjs-one-bg,.wpi-layers-panel .gjs-two-bg,.wpi-layers-panel .gjs-pn-panel,.wpi-traits-panel .gjs-one-bg,.wpi-traits-panel .gjs-two-bg,.wpi-traits-panel .gjs-pn-panel{background:transparent!important;background-color:transparent!important;color:var(--color-text-primary)!important}.wpi-styles-panel .gjs-sm-sector,.wpi-layers-panel .gjs-layer{background:var(--color-surface-base)!important;background-color:var(--color-surface-base)!important;border:var(--border-hairline)!important;border-radius:var(--radius-md);padding:4px 8px 8px!important;margin:0 0 10px!important;color:var(--color-text-primary)!important}.wpi-styles-panel .gjs-sm-sector__title,.wpi-styles-panel .gjs-sm-sector-title{background:transparent!important;border:0!important;padding:8px 4px!important;font-size:12px!important;font-weight:700!important;color:var(--color-text-secondary)!important;text-transform:none!important;letter-spacing:0!important}.wpi-styles-panel .gjs-sm-sector .gjs-sm-properties{background:transparent!important;padding:0!important}.wpi-styles-panel .gjs-sm-property,.wpi-styles-panel .gjs-sm-composite{background:transparent!important;border:0!important;padding:6px 4px!important;color:var(--color-text-primary)!important}.wpi-styles-panel .gjs-sm-label,.wpi-styles-panel .gjs-sm-property .gjs-sm-label{color:var(--color-text-muted)!important;font-weight:600!important;font-size:11px!important;text-transform:none!important;letter-spacing:0!important}.wpi-styles-panel input:not([type=color]),.wpi-styles-panel select,.wpi-styles-panel .gjs-field:not(.gjs-field-color),.wpi-layers-panel input:not([type=color]),.wpi-layers-panel select,.wpi-traits-panel input:not([type=color]),.wpi-traits-panel select,.wpi-traits-panel .gjs-field:not(.gjs-field-color){background:var(--color-surface-base)!important;background-color:var(--color-surface-base)!important;border:var(--border-hairline)!important;border-radius:var(--radius-sm)!important;color:var(--color-text-primary)!important;font-size:13px!important;box-shadow:none!important;padding:4px 8px!important}.wpi-styles-panel select,.wpi-layers-panel select,.wpi-traits-panel select{appearance:auto;-webkit-appearance:menulist;-moz-appearance:menulist}.wpi-styles-panel .gjs-field-color,.wpi-traits-panel .gjs-field-color{position:relative!important;background:var(--color-surface-base)!important;background-color:var(--color-surface-base)!important;border:var(--border-hairline)!important;border-radius:var(--radius-sm)!important;color:var(--color-text-primary)!important;padding:0!important;overflow:visible!important}.wpi-styles-panel .gjs-field-color input,.wpi-traits-panel .gjs-field-color input{background:transparent!important;border:0!important;padding:4px 34px 4px 8px!important;color:var(--color-text-primary)!important}.wpi-styles-panel .gjs-field-colorp,.wpi-traits-panel .gjs-field-colorp{position:absolute!important;top:0!important;right:0!important;bottom:0!important;width:24px!important;cursor:pointer!important;pointer-events:auto!important;z-index:2!important}.wpi-styles-panel .gjs-field-colorp-c,.wpi-styles-panel .gjs-field-color-picker,.wpi-traits-panel .gjs-field-colorp-c,.wpi-traits-panel .gjs-field-color-picker{height:100%!important;cursor:pointer!important;pointer-events:auto!important}.wpi-btn-style-picker{padding:12px 12px 4px;border-bottom:var(--border-hairline);margin-bottom:8px}.wpi-btn-style-picker__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:8px}.wpi-btn-style-picker__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wpi-btn-style-card{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--wpi-gray-300, #d1d5db);border-radius:8px;background:#fff;cursor:pointer}.wpi-btn-style-card:hover{border-color:var(--wpi-red, #ac2b37)}.wpi-btn-style-card.is-active{border-color:var(--wpi-red, #ac2b37);box-shadow:0 0 0 2px #ac2b3726}.wpi-btn-style-preview{display:block;padding:8px 6px;font-size:12px;font-weight:700;font-family:"Source Sans 3",Helvetica Neue,Helvetica,Arial,sans-serif;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wpi-btn-style-name{font-size:11px;color:var(--wpi-gray-600, #4b5563);text-align:center}.wpi-btn-style-picker__grid+.wpi-btn-style-picker__label{margin-top:14px}.wpi-btn-width-preview{display:flex;justify-content:center;padding:8px 6px}.wpi-btn-width-preview[data-full="1"]{display:block}.wpi-btn-width-bar{display:inline-block;padding:8px 10px;font-size:12px;font-weight:700;font-family:"Source Sans 3",Helvetica Neue,Helvetica,Arial,sans-serif;text-align:center;white-space:nowrap;background-color:var(--wpi-red, #ac2b37);color:#fff;border:2px solid var(--wpi-red, #ac2b37)}.wpi-btn-width-preview[data-full="1"] .wpi-btn-width-bar{display:block;width:100%}.wpi-btn-align-preview{display:flex;padding:8px 6px}.wpi-btn-align-preview[data-align=left]{justify-content:flex-start}.wpi-btn-align-preview[data-align=center]{justify-content:center}.wpi-btn-align-preview[data-align=right]{justify-content:flex-end}.wpi-btn-align-bar{display:block;width:38%;height:18px;background-color:var(--wpi-red, #ac2b37);border:2px solid var(--wpi-red, #ac2b37)}.wpi-link-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:10000}.wpi-link-modal{width:560px;max-width:calc(100vw - 32px);background:#fff;border-radius:12px;box-shadow:0 20px 50px #00000040;padding:18px 18px 16px}.wpi-link-modal__title{font-size:15px;font-weight:700;color:var(--wpi-ink, #1f2327);margin-bottom:4px}.wpi-link-modal__hint{font-size:12px;color:var(--wpi-gray-500, #6b7280);margin-top:10px}.wpi-link-modal__label{display:block;font-size:12px;font-weight:600;color:var(--wpi-gray-700, #374151);margin-bottom:4px}.wpi-link-modal__label+.wpi-link-modal__input{margin-bottom:12px}.wpi-link-modal__url-row{display:flex;gap:8px;align-items:center;margin-bottom:12px}.wpi-link-modal__url-row .wpi-link-modal__input{flex:1 1 auto;width:auto;margin-bottom:0;min-width:0}.wpi-link-modal__select{flex:0 0 auto;width:auto;padding:9px 6px 9px 8px;font-size:14px;border:1px solid var(--wpi-gray-300, #d1d5db);border-radius:8px;background:#fff;color:var(--wpi-ink, #1f2327)}.wpi-link-modal__select:focus{outline:none;border-color:var(--wpi-red, #ac2b37);box-shadow:0 0 0 2px #ac2b3726}.wpi-link-modal__input{margin-bottom:12px}.wpi-link-modal__kind{display:flex;gap:16px;margin-bottom:12px}.wpi-link-modal__kind-opt{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--wpi-ink, #1f2327);cursor:pointer}.wpi-link-modal__kind-opt input{accent-color:var(--wpi-red, #ac2b37);margin:0}.wpi-link-modal__input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:14px;border:1px solid var(--wpi-gray-300, #d1d5db);border-radius:8px;outline:none}.wpi-link-modal__input:focus{border-color:var(--wpi-red, #ac2b37);box-shadow:0 0 0 2px #ac2b3726}.wpi-separator-modal__options{display:flex;gap:10px;margin-top:10px}.wpi-separator-modal__option{flex:1;display:flex;align-items:center;gap:8px;padding:10px 8px;white-space:nowrap;font-size:13px;font-weight:600;color:var(--wpi-ink, #1f2327);background:#fff;border:1px solid var(--wpi-gray-300, #d1d5db);border-radius:8px;cursor:pointer}.wpi-separator-modal__option:hover{border-color:var(--wpi-gray-500, #6b7280)}.wpi-separator-modal__option.is-active{border-color:var(--wpi-red, #ac2b37);box-shadow:0 0 0 2px #ac2b3726}.wpi-separator-modal__swatch{width:22px;height:22px;border-radius:4px;border:1px solid var(--wpi-gray-300, #d1d5db);flex:none}.wpi-separator-modal__label{margin-top:16px}.wpi-link-modal__actions{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:16px}.wpi-link-modal__actions-right{display:flex;gap:8px}.wpi-link-modal__btn{padding:8px 16px;font-size:13px;font-weight:600;border-radius:8px;border:1px solid var(--wpi-gray-300, #d1d5db);background:#fff;color:var(--wpi-gray-700, #374151);cursor:pointer}.wpi-link-modal__btn--primary{background:var(--wpi-red, #ac2b37);border-color:var(--wpi-red, #ac2b37);color:#fff}.wpi-link-modal__btn--danger{border-color:var(--color-danger-base, #b91c1c);color:var(--color-danger-base, #b91c1c)}.wpi-link-modal__btn--danger:hover{background:var(--color-danger-surface, #fef2f2)}.wpi-inline-pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000}.wpi-inline-pop{position:fixed;background:#fff;border:1px solid var(--wpi-gray-200, #e5e7eb);border-radius:10px;box-shadow:0 12px 32px #0f172a2e;padding:10px;max-width:260px}.wpi-style-swatches{display:flex;gap:8px;flex-wrap:wrap}.wpi-style-swatch{width:28px;height:28px;border-radius:50%;border:1px solid var(--wpi-gray-300, #d1d5db);cursor:pointer;padding:0}.wpi-style-swatch.is-active{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wpi-red, #ac2b37)}.wpi-style-swatch--none{background:linear-gradient(135deg,#fff 45%,#ef4444 45%,#ef4444 55%,#fff 55%)}.wpi-style-chips{display:flex;gap:6px;flex-wrap:wrap}.wpi-style-chip{padding:6px 12px;font-size:13px;font-weight:600;border-radius:8px;border:1px solid var(--wpi-gray-300, #d1d5db);background:#fff;color:var(--wpi-gray-700, #374151);cursor:pointer}.wpi-style-chip.is-active{background:var(--wpi-red, #ac2b37);border-color:var(--wpi-red, #ac2b37);color:#fff}.wpi-styles-panel input:focus,.wpi-styles-panel select:focus,.wpi-layers-panel input:focus,.wpi-traits-panel input:focus,.wpi-traits-panel select:focus{outline:0!important;border-color:var(--wpi-red)!important;box-shadow:0 0 0 3px #ac2b371f!important}.wpi-styles-panel .gjs-field input,.wpi-styles-panel .gjs-field select,.wpi-traits-panel .gjs-field input,.wpi-traits-panel .gjs-field select{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}.wpi-styles-panel .gjs-input-unit{color:var(--wpi-gray-500)!important;font-size:11px!important;background:transparent!important;border:0!important;padding-right:4px!important}.wpi-styles-panel .gjs-sm-int .gjs-sm-int-arrows,.wpi-styles-panel .gjs-field-arrows{color:var(--wpi-gray-500)!important}.wpi-styles-panel .gjs-clm-tags,.wpi-styles-panel .gjs-clm-tag,.wpi-styles-panel .gjs-clm-sels{background:transparent!important;color:var(--wpi-ink, #1f2327)!important}.wpi-styles-panel .gjs-clm-tag-status,.wpi-styles-panel .gjs-clm-tag-close,.wpi-styles-panel .gjs-clm-btn,.wpi-styles-panel .gjs-clm-sels-info{color:var(--wpi-gray-700)!important}.wpi-block-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;z-index:1000;display:flex;align-items:stretch;justify-content:center;padding:32px;animation:wpiBlockPreviewFade .12s ease-out}@keyframes wpiBlockPreviewFade{0%{opacity:0}to{opacity:1}}.wpi-block-preview-modal{background:#fff;border-radius:8px;box-shadow:0 20px 60px #0f172a59;width:100%;max-width:820px;display:flex;flex-direction:column;overflow:hidden}.wpi-block-preview-header{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--wpi-gray-200)}.wpi-block-preview-titles h2{margin:0;font-size:22px;font-weight:700;color:var(--wpi-gray-900);line-height:1.25}.wpi-block-preview-category{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--wpi-red);font-weight:700;margin-bottom:4px}.wpi-block-preview-close{background:transparent;border:none;font-size:28px;line-height:1;cursor:pointer;color:var(--wpi-gray-500);padding:0 6px}.wpi-block-preview-close:hover{color:var(--wpi-gray-900)}.wpi-block-preview-body{flex:1 1 auto;background:var(--wpi-gray-100);min-height:380px;display:flex;align-items:stretch;justify-content:center;overflow:hidden}.wpi-block-preview-iframe{width:100%;height:100%;min-height:60vh;border:none;background:#fff}.wpi-block-preview-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 24px;text-align:center;color:var(--wpi-gray-700)}.wpi-block-preview-icon>svg{width:96px;height:96px}.wpi-block-preview-error{font-size:14px;color:var(--wpi-gray-500);max-width:480px}.wpi-block-preview-footer{padding:12px 22px;border-top:1px solid var(--wpi-gray-200);background:var(--wpi-gray-50);display:flex;align-items:center;justify-content:space-between;gap:16px}.wpi-block-preview-hint{font-size:13px;color:var(--wpi-gray-500)}.wpi-block-preview-insert{flex:none;padding:8px 16px;border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-primary);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.wpi-block-preview-insert:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.notification-bell{position:relative;background:transparent;border:none;padding:6px;cursor:pointer}.notification-bell .badge{position:absolute;top:-2px;right:-2px;background:var(--wpi-red);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;min-width:16px;text-align:center}.tpl-tile{position:relative;text-align:left;justify-content:flex-start;background:#fff;border:1px solid var(--wpi-gray-200);border-radius:8px;padding:10px 12px 10px 14px;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease;width:100%}.tpl-tile:hover{background:var(--wpi-gray-50);border-color:var(--wpi-gray-300)}.tpl-tile__icon svg{width:22px;height:22px;display:block}.tpl-tile[data-selected=true]{background:#fff5f6;border-color:var(--wpi-red);box-shadow:0 1px 3px #ac2b371f}.tpl-tile[data-selected=true]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--wpi-red);border-radius:2px}.tpl-section-heading{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--wpi-gray-500)}.tpl-detail{display:grid;gap:20px}.tpl-detail-header h3{margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--wpi-gray-900)}.tpl-detail-header .kind-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--wpi-gray-100);color:var(--wpi-gray-700);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tpl-field{display:grid;gap:6px}.tpl-field>.tpl-label{font-size:12px;font-weight:600;color:var(--wpi-gray-700);letter-spacing:.01em}.tpl-field>.tpl-label .hint{display:inline;margin-left:8px;color:var(--wpi-gray-500);font-weight:400;font-size:11px}.tpl-field input[readonly],.tpl-field textarea[readonly]{background:var(--wpi-gray-50);border-color:var(--wpi-gray-200);color:var(--wpi-gray-700);cursor:default}.tpl-field input[readonly]:focus,.tpl-field textarea[readonly]:focus{outline:none;border-color:var(--wpi-gray-200)}.tpl-info{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;font-size:13px;line-height:1.5}.tpl-info code{background:#fff9;padding:1px 6px;border-radius:4px;font-size:12px}.tpl-versions{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tpl-versions li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--wpi-gray-700);padding:8px 12px;background:var(--wpi-gray-50);border:1px solid var(--wpi-gray-200);border-radius:6px}.tpl-versions li.current{background:#fff;border-color:var(--wpi-red)}.tpl-versions .ts{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--wpi-gray-700)}.tpl-versions .current-pill{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wpi-red);padding:2px 8px;border-radius:999px;background:#fff5f6}.form-section{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:32px;padding:28px 0;border-bottom:var(--border-hairline)}.form-section:last-child{border-bottom:none}.form-section--no-border{border-bottom:none}@container (width < 860px){.form-section{grid-template-columns:1fr;gap:10px}.form-field-grid{grid-template-columns:1fr!important}}.form-section__title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.form-section__description{margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.form-section__body{display:grid;gap:14px}.form-field{display:grid;gap:5px}.form-field__label{font-size:12px;font-weight:600;color:var(--color-text-secondary)}.form-field__hint{font-size:12px;color:var(--color-text-muted);line-height:1.4}.form-field-grid{display:grid;gap:14px}.form-card{background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-lg);padding:0 28px}.form-save-bar{position:sticky;bottom:0;background:var(--color-surface-dim);padding:12px 0;margin-top:12px;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;z-index:var(--z-sticky)}.form-save-bar__error{color:var(--color-danger-base);font-size:13px}.form-toggle{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.form-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0;margin-top:2px}.reviewer-row{display:grid;grid-template-columns:1fr 160px 36px;gap:10px}.reviewer-row--item{align-items:center}@container (width < 860px){.reviewer-row--header{display:none}.reviewer-row--item{grid-template-columns:1fr;gap:6px}.reviewer-row--item button{justify-self:end}}.form-toggle__text{display:grid;gap:2px}.form-toggle__label{font-size:13px;color:var(--color-text-primary)}.form-toggle__hint{font-size:12px;color:var(--color-text-muted)}.page-header-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.page-header-row__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}@container (width < 860px){.page-header-row{flex-direction:column;align-items:flex-start}.page-header-row__actions{flex-wrap:wrap}}.templates-layout{display:grid;gap:18px;grid-template-columns:340px 1fr;height:100%;min-height:0;overflow:hidden;container-type:inline-size}@container (width < 820px){.templates-layout{grid-template-columns:1fr;height:auto;overflow:visible}}.wpi-variant-row{display:grid;gap:6px;grid-template-columns:60px 1fr 100px}@container (width < 640px){.wpi-variant-row{grid-template-columns:1fr}}.wpi-chart-row{display:grid;gap:12px;grid-template-columns:minmax(280px,1fr) minmax(280px,1.4fr)}@container (width < 620px){.wpi-chart-row{grid-template-columns:1fr}}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);white-space:nowrap;text-decoration:none;position:relative;overflow:hidden}.ui-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.ui-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ui-btn--primary{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}.ui-btn--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-text-on-primary)}.ui-btn--secondary{background:var(--color-surface-base);color:var(--color-text-secondary);border-color:var(--color-border-default)}.ui-btn--secondary:hover:not(:disabled){background:var(--color-surface-alt);border-color:var(--color-border-strong)}.ui-btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.ui-btn--ghost:hover:not(:disabled){background:var(--color-surface-alt)}.ui-btn--subtle{background:var(--color-surface-alt);color:var(--color-text-secondary);border-color:transparent}.ui-btn--subtle:hover:not(:disabled){background:var(--color-border-default)}.ui-btn--danger{background:var(--color-danger-surface);color:var(--color-danger-text);border-color:var(--color-danger-base)}.ui-btn--danger:hover:not(:disabled){background:var(--color-danger-base);color:#fff}.ui-btn--sm{padding:4px 10px;font-size:12px}.ui-btn--md{padding:7px 14px;font-size:13px}.ui-btn--lg{padding:10px 18px;font-size:15px}.ui-btn__spinner{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:ui-spin .6s linear infinite;flex-shrink:0}.ui-btn__icon{display:inline-flex;align-items:center}.ui-btn__label{line-height:1.35}.ui-icon-btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);flex-shrink:0}.ui-icon-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.ui-icon-btn:disabled{opacity:.5;cursor:not-allowed}.ui-icon-btn--sm{padding:4px;width:28px;height:28px}.ui-icon-btn--md{padding:6px;width:32px;height:32px}.ui-icon-btn--lg{padding:8px;width:38px;height:38px}.ui-icon-btn--ghost{background:transparent;color:var(--color-text-muted)}.ui-icon-btn--ghost:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text-primary)}.ui-icon-btn--subtle{background:var(--color-surface-alt);color:var(--color-text-secondary)}.ui-icon-btn--subtle:hover:not(:disabled){background:var(--color-border-default)}.ui-icon-btn--danger{background:transparent;color:var(--color-danger-text)}.ui-icon-btn--danger:hover:not(:disabled){background:var(--color-danger-surface)}.ui-input{font:inherit;font-size:13px;width:100%;background:var(--color-surface-base);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-input--md{padding:7px 10px}.ui-input--sm{padding:4px 8px;font-size:12px}.ui-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-ring)}.ui-input--invalid{border-color:var(--color-danger-base)}.ui-input--invalid:focus{box-shadow:0 0 0 3px #dc26261f}.ui-input-wrap{display:flex;align-items:center;background:var(--color-surface-base);border:1px solid var(--color-border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);overflow:hidden}.ui-input-wrap:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus-ring)}.ui-input-wrap--invalid{border-color:var(--color-danger-base)}.ui-input-wrap__prefix,.ui-input-wrap__suffix{display:flex;align-items:center;padding:0 8px;color:var(--color-text-muted);flex-shrink:0}.ui-input-wrap--md .ui-input-wrap__prefix{padding-left:10px}.ui-input.ui-input--bare{border:0;border-radius:0;box-shadow:none;flex:1;padding:7px 8px}.ui-input.ui-input--bare:focus{box-shadow:none}.ui-select-wrap{position:relative;display:flex;align-items:center}.ui-select{font:inherit;font-size:13px;width:100%;background:var(--color-surface-base);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:7px 30px 7px 10px;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);cursor:pointer}.ui-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-ring)}.ui-select-wrap__caret{position:absolute;right:9px;pointer-events:none;color:var(--color-text-muted)}.ui-select-wrap--invalid .ui-select{border-color:var(--color-danger-base)}.ui-textarea{font:inherit;font-size:13px;width:100%;padding:8px 10px;background:var(--color-surface-base);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);resize:vertical;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.ui-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-ring)}.ui-textarea--invalid{border-color:var(--color-danger-base)}.ui-card{background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-md)}.ui-card--pad-none{padding:0}.ui-card--pad-sm{padding:12px 14px}.ui-card--pad-md{padding:18px 20px}.ui-card--pad-lg{padding:24px 28px}.ui-card--interactive{cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-card--interactive:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.ui-card--interactive:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.ui-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.ui-badge--default{background:var(--color-surface-alt);color:var(--color-text-secondary)}.ui-badge--success{background:var(--color-success-surface);color:var(--color-success-text)}.ui-badge--warning{background:var(--color-warning-surface);color:var(--color-warning-text)}.ui-badge--danger{background:var(--color-danger-surface);color:var(--color-danger-text)}.ui-badge--info{background:var(--color-info-surface);color:var(--color-info-text)}.ui-badge--primary{background:var(--wpi-red-tint);color:var(--color-primary)}.ui-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:wpi-fade-in var(--duration-fast) var(--ease-out)}.ui-modal{background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - 48px);overflow:hidden;animation:ui-pop-in var(--duration-base) var(--ease-standard);z-index:var(--z-modal)}.ui-modal--sm{width:min(380px,92vw)}.ui-modal--md{width:min(480px,92vw)}.ui-modal--lg{width:min(720px,92vw)}.ui-modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:var(--border-hairline)}.ui-modal__title{font-size:16px;font-weight:700;color:var(--color-text-primary);margin:0}.ui-modal__body{padding:20px;overflow-y:auto;flex:1}.ui-pick-row{display:flex;gap:12px;align-items:flex-start;width:100%;padding:12px;text-align:left;background:var(--color-surface-base);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.ui-pick-row:hover:not(:disabled){background:var(--wpi-red-tint);border-color:var(--color-primary)}.ui-pick-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ui-pick-row:disabled{cursor:default;opacity:.6}.ui-pick-row.is-picked{background:var(--wpi-red-tint);border-color:var(--color-primary)}.ui-pick-check{flex-shrink:0;width:18px;height:18px;margin-top:2px;border:1px solid var(--color-border-default);border-radius:4px;background:var(--color-surface-base);display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1;color:#fff}.ui-pick-check.is-on{background:var(--color-primary);border-color:var(--color-primary)}.ui-modal__footer{padding:12px 20px 16px;border-top:var(--border-hairline);display:flex;justify-content:flex-end;gap:8px}.ui-toggle{display:inline-flex;align-items:center;gap:8px;background:var(--color-border-strong);border:none;border-radius:var(--radius-full);cursor:pointer;padding:2px;width:36px;height:20px;transition:background var(--duration-fast) var(--ease-out);flex-shrink:0}.ui-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.ui-toggle--on{background:var(--color-primary)}.ui-toggle:disabled{opacity:.5;cursor:not-allowed}.ui-toggle__thumb{width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-xs);transition:transform var(--duration-fast) var(--ease-out);flex-shrink:0}.ui-toggle--on .ui-toggle__thumb{transform:translate(7px)}.ui-skeleton{display:block;background:linear-gradient(90deg,var(--color-surface-alt) 25%,var(--color-border-subtle) 50%,var(--color-surface-alt) 75%);background-size:400% 100%;border-radius:var(--radius-sm);animation:ui-skeleton-shimmer 2.4s ease infinite}.ui-skeleton--rounded{border-radius:var(--radius-full)}.ui-route-skeleton,.ui-detail-skeleton,.ui-form-skeleton,.ui-table-skeleton{padding:24px}.ui-spinner{display:inline-block;border:2px solid var(--color-border-default);border-top-color:var(--color-primary);border-radius:50%;animation:ui-spin .65s linear infinite}.ui-tabs{display:flex;gap:0;border-bottom:var(--border-hairline)}.ui-tab{padding:10px 16px;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;position:relative;transition:color var(--duration-fast) var(--ease-out)}.ui-tab:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform var(--duration-base) var(--ease-standard)}.ui-tab:hover{color:var(--color-text-secondary)}.ui-tab--active{color:var(--color-text-primary);font-weight:600}.ui-tab--active:after{transform:scaleX(1)}.ui-tab:disabled{opacity:.5;cursor:not-allowed}.ui-toast-viewport{position:fixed;bottom:20px;right:20px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px;pointer-events:none;width:min(360px,calc(100vw - 32px))}.ui-toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--color-surface-base);border:var(--border-hairline);border-left-width:3px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);pointer-events:all;animation:toast-in var(--duration-base) var(--ease-standard)}.ui-toast--leaving{animation:toast-out var(--duration-base) var(--ease-standard) forwards}.ui-toast--success{border-left-color:var(--color-success-base)}.ui-toast--error{border-left-color:var(--color-danger-base)}.ui-toast--info{border-left-color:var(--color-info-base)}.ui-toast--warning{border-left-color:var(--color-warning-base)}.ui-toast__icon{flex-shrink:0;margin-top:1px}.ui-toast--success .ui-toast__icon{color:var(--color-success-text)}.ui-toast--error .ui-toast__icon{color:var(--color-danger-base)}.ui-toast--info .ui-toast__icon{color:var(--color-info-base)}.ui-toast--warning .ui-toast__icon{color:var(--color-warning-text)}.ui-toast__content{flex:1;min-width:0}.ui-toast__title{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:2px}.ui-toast__message{font-size:13px;color:var(--color-text-secondary);line-height:1.4}.ui-toast__close{margin-left:auto;flex-shrink:0;align-self:flex-start}.ui-tooltip-wrap{position:relative;display:inline-flex;align-items:center}.ui-tooltip{position:absolute;white-space:nowrap;background:var(--color-text-primary);color:#fff;font-size:12px;padding:4px 8px;border-radius:var(--radius-sm);pointer-events:none;z-index:var(--z-tooltip);animation:wpi-fade-in var(--duration-fast) var(--ease-out)}.ui-tooltip--top{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.ui-tooltip--bottom{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.ui-tooltip--left{right:calc(100% + 6px);top:50%;transform:translateY(-50%)}.ui-tooltip--right{left:calc(100% + 6px);top:50%;transform:translateY(-50%)}.ui-menu{background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:4px;min-width:160px;z-index:var(--z-dropdown);animation:ui-pop-in var(--duration-fast) var(--ease-standard)}.ui-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer;text-align:left;transition:background var(--duration-fast)}.ui-menu-item:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text-primary)}.ui-menu-item:disabled{opacity:.5;cursor:not-allowed}.ui-menu-item--danger{color:var(--color-danger-text)}.ui-menu-item--danger:hover:not(:disabled){background:var(--color-danger-surface)}.ui-menu-item__icon{flex-shrink:0;color:inherit}.ui-menu-item__label{flex:1}.ui-top-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:var(--z-toast);overflow:hidden;pointer-events:none}.ui-top-progress__bar{height:100%;width:30%;background:var(--color-primary);animation:progress-indeterminate 1.4s linear infinite;border-radius:0 2px 2px 0}.ui-top-progress--leaving{opacity:0;transition:opacity .3s ease}.ui-stepper{display:flex;align-items:center;gap:0;padding:10px 0 8px}.ui-stepper__step{display:flex;flex-direction:column;align-items:center;gap:5px;position:relative}.ui-stepper__dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--color-border-strong);background:var(--color-surface-base);display:flex;align-items:center;justify-content:center;transition:background var(--duration-base),border-color var(--duration-base);color:#fff;flex-shrink:0}.ui-stepper__step--done .ui-stepper__dot{background:var(--color-primary);border-color:var(--color-primary)}.ui-stepper__step--current .ui-stepper__dot{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-halo)}.ui-stepper__step--failed .ui-stepper__dot{background:var(--color-danger-base);border-color:var(--color-danger-base)}.ui-stepper__step--skipped .ui-stepper__dot{border-style:dashed;opacity:.5}.ui-stepper__label{font-size:11px;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.ui-stepper__step--done .ui-stepper__label,.ui-stepper__step--current .ui-stepper__label{color:var(--color-text-primary);font-weight:600}.ui-stepper__connector{flex:1;height:2px;background:var(--color-border-default);margin:0 4px 14px;min-width:20px;transition:background var(--duration-base)}.ui-stepper__connector--filled{background:var(--color-primary)}.app-header nav a{position:relative}.app-header nav a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0;transition:width var(--duration-base) var(--ease-standard)}.app-header nav a:hover:after{width:100%}.app-header nav a.active:after{width:100%}.email-tabs-wrapper{display:flex;flex-direction:column}.email-tabs{display:flex;align-items:center;gap:4px;border-bottom:var(--border-hairline);overflow-x:auto;scrollbar-width:thin}.email-tab{position:relative;padding:8px 14px;font-size:14px;font-family:inherit;text-decoration:none;color:var(--color-text-secondary);border:none;background:none;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:color var(--duration-fast);margin-bottom:-1px}.email-tab:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0;transition:width var(--duration-base) var(--ease-standard)}.email-tab:hover{color:var(--color-text-primary)}.email-tab:hover:after{width:100%}.email-tab.active,.email-tab--active,.email-tab[aria-current=page]{color:var(--color-primary);font-weight:600}.email-tab.active:after,.email-tab--active:after,.email-tab[aria-current=page]:after{width:100%}.email-tab:hover,.email-tab:focus-visible{text-decoration:none}.email-tab-actions{margin-left:auto;display:flex;align-items:center;flex-shrink:0;gap:8px;padding-bottom:6px}.email-tab-action{display:inline-flex;align-items:center;justify-content:center;min-width:120px;gap:6px;padding:5px 12px;font-size:13px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background:var(--color-surface-base);border:var(--border-hairline);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-fast),background var(--duration-fast),border-color var(--duration-fast)}.email-tab-action:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.email-tab-action.primary:hover{color:#fff;border-color:var(--wpi-red)}.email-tab-action[aria-pressed=true]{color:var(--color-text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.email-stepper{padding:12px 16px 8px;border-bottom:var(--border-hairline)}.wpi-img-width{display:flex;align-items:center;gap:8px}.wpi-img-width input[type=range]{flex:1;min-width:0;accent-color:var(--wpi-red, #ac2b37)}.wpi-img-width__value{font-size:12px;font-variant-numeric:tabular-nums;color:var(--color-text-muted);min-width:62px;text-align:right}.wpi-img-width__reset{margin-top:8px;padding:4px 8px;font-size:12px;border:1px solid var(--wpi-gray-300, #d1d5db);border-radius:6px;background:#fff;cursor:pointer}.wpi-img-width__hint{margin-top:8px;font-size:12px;line-height:1.4;color:var(--color-text-muted)}.gjs-toolbar-item.wpi-tlb-edit{width:auto;padding:5px 8px 5px 24px;font-size:12px;font-weight:600;line-height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:6px center;background-size:13px 13px}.gjs-toolbar-item.wpi-tlb-edit:after{content:"Edit"}.gjs-toolbar.wpi-tlb-editing .gjs-toolbar-item.wpi-tlb-edit{display:none}.overview-card{display:grid;gap:24px;padding:28px 32px}.overview-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.overview-card__actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between}.overview-card__actions button{font-size:16px;padding:12px 28px}.overview-card__facts{display:grid}.overview-card__fact{display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;align-items:baseline;padding:13px 0;border-top:1px solid var(--wpi-gray-200, #e5e7eb)}.overview-card__fact-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--wpi-gray-500, #6b7280)}.overview-card__fact-value{font-size:15px;overflow-wrap:anywhere}.overview-card__send{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;border-top:1px solid var(--wpi-gray-200, #e5e7eb);padding-top:20px}
