@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-blue:#00519e;--brand-blue-hover:#00437f;--brand-blue-deep:#0a2a4f;--brand-red:#da0032;--primary:var(--brand-blue);--primary-hover:var(--brand-blue-hover);--primary-contrast:#fff;--primary-soft:#eaf1f9;--primary-soft-strong:#d4e3f3;--primary-ring:#00519e3d;--bg:#f4f6f9;--surface:#fff;--surface-muted:#f7f9fb;--surface-hover:#eff4fa;--surface-zebra:#fafbfd;--overlay:#0a1a2e7a;--text:#1a2433;--text-muted:#5b6778;--text-subtle:#8792a2;--border:#e3e8ef;--border-strong:#cfd7e2;--border-hover:#b6c2d1;--danger:#c4122f;--danger-hover:#a10e27;--danger-soft:#fdeef0;--danger-border:#f4c2ca;--danger-text:#8f0c22;--success:#1e7a46;--success-soft:#e8f5ed;--success-border:#bfe2cc;--success-text:#165c35;--warning:#b26a00;--warning-soft:#fff5e3;--warning-border:#f2d49c;--warning-text:#7a4800;--info-soft:var(--primary-soft);--info-text:var(--brand-blue-hover);--font-sans:"Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.875rem;--fs-md:1rem;--fs-lg:1.125rem;--fs-xl:1.5rem;--fs-2xl:1.875rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.25;--lh-base:1.5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--card-padding:var(--space-5);--control-h-sm:32px;--control-h:40px;--icon-sm:16px;--icon-md:20px;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-pill:999px;--shadow-xs:0 1px 2px #1020380d;--shadow-sm:0 1px 2px #1020380f, 0 1px 3px #1020380a;--shadow-md:0 4px 12px #10203814, 0 1px 3px #1020380d;--shadow-lg:0 16px 40px #0a1a2e2e;--ease:cubic-bezier(.4, 0, .2, 1);--scrollbar:#c9d2dd;--scrollbar-hover:#aab6c4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-family:var(--font-sans);font-size:16px;line-height:var(--lh-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--primary:#4d9be6;--primary-hover:#74b2ee;--primary-contrast:#06182c;--primary-soft:#4d9be624;--primary-soft-strong:#4d9be63d;--primary-ring:#4d9be659;--bg:#0d1520;--surface:#141e2b;--surface-muted:#192433;--surface-hover:#1e2b3c;--surface-zebra:#172230;--overlay:#020810a8;--text:#e5ebf2;--text-muted:#9aa8b9;--text-subtle:#6f7e90;--border:#253244;--border-strong:#324257;--border-hover:#43566e;--danger:#f0566e;--danger-hover:#f57a8d;--danger-soft:#f0566e1f;--danger-border:#f0566e59;--danger-text:#f7a3b0;--success:#4cc584;--success-soft:#4cc5841f;--success-border:#4cc58452;--success-text:#8ddcb0;--warning:#f0b048;--warning-soft:#f0b0481f;--warning-border:#f0b04852;--warning-text:#f5cb85;--info-text:#9cc8f2;--scrollbar:#33445a;--scrollbar-hover:#46596f;--shadow-xs:none;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 6px 16px #00000059;--shadow-lg:0 20px 48px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--primary:#4d9be6;--primary-hover:#74b2ee;--primary-contrast:#06182c;--primary-soft:#4d9be624;--primary-soft-strong:#4d9be63d;--primary-ring:#4d9be659;--bg:#0d1520;--surface:#141e2b;--surface-muted:#192433;--surface-hover:#1e2b3c;--surface-zebra:#172230;--overlay:#020810a8;--text:#e5ebf2;--text-muted:#9aa8b9;--text-subtle:#6f7e90;--border:#253244;--border-strong:#324257;--border-hover:#43566e;--danger:#f0566e;--danger-hover:#f57a8d;--danger-soft:#f0566e1f;--danger-border:#f0566e59;--danger-text:#f7a3b0;--success:#4cc584;--success-soft:#4cc5841f;--success-border:#4cc58452;--success-text:#8ddcb0;--warning:#f0b048;--warning-soft:#f0b0481f;--warning-border:#f0b04852;--warning-text:#f5cb85;--info-text:#9cc8f2;--scrollbar:#33445a;--scrollbar-hover:#46596f;--shadow-xs:none;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 6px 16px #00000059;--shadow-lg:0 20px 48px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-size:var(--fs-base);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.015em;line-height:var(--lh-tight)}h2{font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:-.01em;line-height:var(--lh-tight)}h3{font-size:var(--fs-md);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}h4{font-size:var(--fs-base);font-weight:var(--fw-semibold)}a{color:var(--primary)}::selection{background:var(--primary-soft-strong)}*{scrollbar-color:var(--scrollbar) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--radius-pill);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover);background-clip:content-box}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}.print-frame{border:0;width:0;height:0;position:fixed;bottom:0;right:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.danger-text,.error-text{color:var(--danger-text)}.success-text{color:var(--success-text)}.required-mark{color:var(--danger)}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.app-shell>.sidebar{grid-area:1/1}.app-shell>main{flex-direction:column;grid-area:1/2;min-width:0;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);height:100vh;padding:var(--space-5) var(--space-3);flex-direction:column;display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2);flex-direction:column;display:flex}.brand-logo{width:auto;height:44px;display:block}.brand-product{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo{border-radius:var(--radius);box-sizing:content-box;background:#fff;padding:6px 10px}}:root[data-theme=dark] .brand-logo{border-radius:var(--radius);box-sizing:content-box;background:#fff;padding:6px 10px}.sidebar nav{margin-top:var(--space-6);gap:2px;display:grid}.nav-section-label{color:var(--text-subtle);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.06em;margin:var(--space-4) var(--space-3) var(--space-1);text-transform:uppercase}.nav-section-label:first-child{margin-top:0}.sidebar nav button{border-radius:var(--radius);color:var(--text-muted);cursor:pointer;font-size:var(--fs-base);font-weight:var(--fw-medium);align-items:center;gap:var(--space-3);min-height:var(--control-h);padding:0 var(--space-3);text-align:left;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;display:flex;position:relative}.sidebar nav button:hover{background:var(--surface-hover);color:var(--text)}.sidebar nav button.active{background:var(--primary-soft);color:var(--primary);font-weight:var(--fw-semibold)}.sidebar nav button.active:before{background:var(--primary);content:"";bottom:8px;left:calc(-1 * var(--space-3));border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px}.sidebar-footer{border-top:1px solid var(--border);color:var(--text-subtle);font-size:var(--fs-xs);padding:var(--space-3) var(--space-3) 0;margin-top:auto}.nav-toggle,.sidebar-backdrop{display:none}@media (width<=1023px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-shell>.sidebar,.app-shell>main{grid-column:1}.nav-toggle{appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--text);cursor:pointer;height:var(--control-h);left:max(12px, env(safe-area-inset-left));top:max(12px, env(safe-area-inset-top));width:var(--control-h);z-index:60;justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed}.sidebar-backdrop{background:var(--overlay);opacity:0;pointer-events:none;transition:opacity .2s var(--ease);z-index:40;border:0;display:block;position:fixed;inset:0}.app-shell.nav-open .sidebar-backdrop{opacity:1;pointer-events:auto}.sidebar{box-shadow:var(--shadow-lg);height:100dvh;padding:max(18px, env(safe-area-inset-top)) var(--space-3) max(18px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));transition:transform .22s var(--ease);z-index:50;width:min(280px,86vw);position:fixed;top:0;left:0;transform:translate(-105%)}.app-shell.nav-open .sidebar{transform:translate(0)}.sidebar nav{overflow:auto}.sidebar nav button{min-height:44px}}.topbar{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:var(--space-4);min-height:60px;padding:0 var(--space-7);z-index:30;justify-content:space-between;display:flex;position:sticky;top:0}.topbar-start{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.topbar-end{align-items:center;gap:var(--space-3);flex-shrink:0;margin-left:auto;display:flex}.topbar-divider{background:var(--border);margin:var(--space-3) 0;align-self:stretch;width:1px}.topbar-quick-search{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.topbar-quick-search-hash{color:var(--text-muted);font-size:var(--fs-base);font-weight:var(--fw-semibold);-webkit-user-select:none;user-select:none;line-height:1}.topbar-quick-search input:not([type=checkbox]):not([type=radio]){font-variant-numeric:tabular-nums;min-height:var(--control-h-sm);height:var(--control-h-sm);text-align:center;flex:none;width:5rem;padding:0 6px}.topbar-user{line-height:var(--lh-tight);text-align:right;gap:0;display:grid}.topbar-user strong{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.topbar-user span{color:var(--text-muted);font-size:var(--fs-xs)}.host-select{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.host-select>span{color:var(--text-muted);font-size:var(--fs-sm)}.host-select select{height:var(--control-h-sm);min-height:var(--control-h-sm);min-width:160px}.topbar .icon-button{height:var(--control-h-sm);min-height:var(--control-h-sm);width:var(--control-h-sm)}@media (width<=1023px){.topbar{align-items:flex-start;gap:10px var(--space-3);min-height:0;padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) var(--space-3) max(64px, calc(env(safe-area-inset-left) + 56px));flex-wrap:wrap}.topbar-start,.topbar-end{gap:var(--space-2) 10px;flex-wrap:wrap;width:100%}.topbar-end{justify-content:flex-end;margin-left:0}.topbar-divider{display:none}.host-select{flex:160px;min-width:0}.host-select select,.topbar-quick-search input:not([type=checkbox]):not([type=radio]){height:var(--control-h);min-height:var(--control-h)}.host-select select{width:100%}.topbar .icon-button{height:var(--control-h);min-height:var(--control-h);width:var(--control-h)}}@media (width<=640px){.topbar-user{display:none}}.content{max-width:1360px;padding:var(--space-7) var(--space-7) var(--space-8);width:100%}.section-header{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);justify-content:space-between;display:flex}.section-header p{color:var(--text-muted);font-size:var(--fs-base);margin-top:var(--space-1)}.page-header{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.page-header-main{flex:1;gap:6px;min-width:0;display:grid}.page-header-main h1{overflow-wrap:anywhere}.page-header-meta{color:var(--text-muted);font-size:var(--fs-sm);align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-header-meta-sep{color:var(--text-subtle)}.page-header-meta .mono{color:var(--text);font-variant-numeric:tabular-nums;font-weight:var(--fw-medium)}.page-header-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.tab-hint{color:var(--text-muted);font-size:var(--fs-sm);margin:0 0 var(--space-3)}.action-row{margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.action-row.no-margin{margin-bottom:0}.bookings-toolbar{gap:var(--space-3) var(--space-5)}@media (width<=1023px){.content{min-width:0;padding:var(--space-5) max(16px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));overflow-x:hidden}.section-header{flex-direction:column;align-items:flex-start}.page-header{flex-wrap:wrap}.page-header-actions{width:100%}}.button,.icon-button{border-radius:var(--radius);cursor:pointer;font-size:var(--fs-base);font-weight:var(--fw-semibold);align-items:center;gap:var(--space-2);height:var(--control-h);min-height:var(--control-h);padding:0 var(--space-4);transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);white-space:nowrap;border:1px solid #0000;flex-shrink:0;justify-content:center;line-height:1;text-decoration:none;display:inline-flex}.button svg,.icon-button svg{flex-shrink:0}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.5}.button.primary{background:var(--primary);color:var(--primary-contrast)}.button.primary:hover:not(:disabled){background:var(--primary-hover)}.button.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.button.secondary:hover:not(:disabled){background:var(--surface-muted);border-color:var(--border-hover)}.button.ghost{color:var(--text-muted);background:0 0}.button.ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.button.link{color:var(--primary);background:0 0;height:auto;min-height:0;padding:0}.button.link:hover:not(:disabled){text-decoration:underline}.button.danger{background:var(--danger);color:#fff}.button.danger:hover:not(:disabled){background:var(--danger-hover)}.button.sm{font-size:var(--fs-sm);height:var(--control-h-sm);min-height:var(--control-h-sm);padding:0 var(--space-3);gap:6px}.button.block{width:100%}.icon-button{background:var(--surface);border-color:var(--border-strong);color:var(--text-muted);width:var(--control-h);padding:0}.icon-button:hover:not(:disabled){background:var(--surface-muted);border-color:var(--border-hover);color:var(--text)}.icon-button.ghost{background:0 0;border-color:#0000}.icon-button.ghost:hover:not(:disabled){background:var(--surface-hover)}.icon-button.sm{height:var(--control-h-sm);min-height:var(--control-h-sm);width:var(--control-h-sm)}.icon-button-danger{color:var(--danger)}.icon-button-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger-text)}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);font-size:var(--fs-base);height:var(--control-h);min-height:var(--control-h);padding:0 var(--space-3);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);width:100%}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238792a2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:34px}select[multiple],select.multi-select{background-image:none;height:auto;min-height:120px;padding:6px}textarea{height:auto;line-height:var(--lh-base);min-height:88px;padding:10px var(--space-3);resize:vertical}input[type=file]{color:var(--text-muted);font-size:var(--fs-sm)}input[type=file]::file-selector-button{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);cursor:pointer;font:inherit;font-weight:var(--fw-semibold);height:var(--control-h-sm);margin-right:var(--space-3);padding:0 var(--space-3)}input::placeholder,textarea::placeholder{color:var(--text-subtle)}input:not([type=checkbox]):not([type=radio]):hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:var(--border-hover)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}input:disabled,select:disabled,textarea:disabled{background:var(--surface-muted);color:var(--text-muted);cursor:not-allowed}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}label:not(.permission-option):not(.checkbox-row):not(.checkbox-inline):not(.checkbox-option):not(.table-select-checkbox):not(.file-dropzone):not(.tabs-select):not(.custom-fields-search):not(.report-tree-report){color:var(--text);font-size:var(--fs-sm);font-weight:var(--fw-medium);gap:6px;display:grid}.checkbox-inline,.checkbox-row{font-size:var(--fs-base);font-weight:var(--fw-medium);align-items:center;gap:var(--space-2);display:flex}.checkbox-row{width:100%}.checkbox-inline{width:auto}.checkbox-inline input[type=checkbox],.checkbox-row input[type=checkbox],.checkbox-option input[type=checkbox],.permission-option input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin:0}.checkbox-row.disabled{color:var(--text-subtle)}.checkbox-group{gap:var(--space-1);display:grid}.checkbox-option{font-size:var(--fs-base);font-weight:var(--fw-regular);align-items:flex-start;gap:var(--space-2);line-height:1.4;display:flex}.checkbox-option input[type=checkbox]{margin-top:2px}.inline-error{background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:var(--radius);color:var(--danger-text);font-size:var(--fs-sm);margin:0 0 var(--space-3);padding:10px var(--space-3)}.inline-notice{background:var(--info-soft);border:1px solid var(--primary-soft-strong);border-radius:var(--radius);color:var(--info-text);font-size:var(--fs-sm);margin:0 0 var(--space-3);padding:10px var(--space-3)}.inline-warning{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--radius);color:var(--warning-text);font-size:var(--fs-sm);margin:0 0 var(--space-3);padding:10px var(--space-3)}.modal .inline-error,.modal .inline-notice,.modal .inline-warning,.login-panel .inline-error,.login-panel .inline-notice{margin:0}.field-tooltip-hint{color:var(--text-subtle);font-size:var(--fs-xs);font-weight:var(--fw-regular)}@media (width<=1023px){input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font-size:16px}}.card,.panel,.master-section,.permission-panel,.participants-search-box,.badge-merge-job-card,.metrics>div,.state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.card,.panel,.master-section{padding:var(--card-padding)}.panel h2,.card h2{margin-bottom:var(--space-4)}.panel h3,.master-section h3{margin:0 0 var(--space-4)}.master-sections{gap:var(--space-5);display:grid}@media (width<=640px){:root{--card-padding:var(--space-4)}}.pill{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;gap:6px;padding:5px 10px;line-height:1;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-success{background:var(--success-soft);border-color:var(--success-border);color:var(--success-text)}.pill-warning{background:var(--warning-soft);border-color:var(--warning-border);color:var(--warning-text)}.pill-danger{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger-text)}.pill-info{background:var(--info-soft);border-color:var(--primary-soft-strong);color:var(--info-text)}.state{color:var(--text-muted);align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-7) var(--space-6);text-align:center;flex-direction:column;justify-content:center;display:flex}.state-icon{background:var(--surface-muted);color:var(--text-subtle);height:40px;margin-bottom:var(--space-1);border-radius:50%;justify-content:center;align-items:center;width:40px;display:inline-flex}.state-title{color:var(--text);font-size:var(--fs-base);font-weight:var(--fw-semibold)}.state-text{font-size:var(--fs-sm);max-width:52ch}.state-actions{margin-top:var(--space-2)}.state-loading{gap:var(--space-3);padding:var(--space-6);flex-direction:row}.state-error{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger-text)}.state-error .state-icon{color:var(--danger);background:0 0}.state-error .state-title{color:var(--danger-text)}.spinner{border:2px solid var(--primary-soft-strong);border-top-color:var(--primary);border-radius:50%;flex:none;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.table-skeleton td{padding:14px var(--space-4)}.skeleton-bar{background:var(--surface-hover);border-radius:var(--radius-sm);max-width:100%;height:10px;animation:1.4s ease-in-out infinite skeleton-pulse;display:block}.skeleton-w0{width:72%}.skeleton-w1{width:48%}.skeleton-w2{width:86%}.skeleton-w3{width:60%}.table-skeleton-wrap{margin-bottom:var(--space-4)}.table-skeleton tbody tr:nth-child(2n){background:0 0}@keyframes skeleton-pulse{50%{opacity:.45}}.running-task-bubble{animation:task-bubble-in .22s var(--ease);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--text);font-size:var(--fs-base);max-width:min(340px,100vw - 40px);padding:var(--space-3) var(--space-4);pointer-events:none;right:var(--space-7);z-index:1100;align-items:center;gap:10px;line-height:1.35;display:flex;position:fixed;top:76px}.running-task-bubble-spinner{border:2px solid var(--primary-soft-strong);border-top-color:var(--primary);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite spin}.running-task-bubble-copy{gap:2px;min-width:0;display:grid}.running-task-bubble-label{font-weight:var(--fw-semibold);min-width:0}.running-task-bubble-detail{color:var(--text-muted);font-size:var(--fs-sm)}@keyframes task-bubble-in{0%{opacity:0;transform:translateY(-6px)}}@media (width<=1023px){.running-task-bubble{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));top:max(72px, calc(env(safe-area-inset-top) + 56px))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);min-height:0;max-height:calc(100dvh - 240px);overflow:auto}.table-wrap.no-max-height{max-height:none}table{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}th,td{border-bottom:1px solid var(--border);font-size:var(--fs-base);max-width:280px;padding:10px var(--space-4);text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;overflow:hidden}th{background:var(--surface-muted);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;padding-bottom:var(--space-2);padding-top:var(--space-2);text-transform:uppercase;z-index:1;position:sticky;top:0}.table-compact th,.table-compact td{padding-left:var(--space-3);padding-right:var(--space-3)}.table-compact td{padding-top:6px;padding-bottom:6px}tbody tr:nth-child(2n){background:var(--surface-zebra)}tbody tr:last-child td{border-bottom:0}td.cell-num,th.cell-num{font-variant-numeric:tabular-nums;text-align:right}th.cell-num .table-sort-button{flex-direction:row-reverse}.table-sort-button{color:inherit;cursor:pointer;font:inherit;align-items:center;gap:var(--space-1);letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;padding:0;display:inline-flex}.table-sort-button:hover,.table-sort-button.active{color:var(--text)}.table-sort-indicator{opacity:.4;display:inline-flex}.table-sort-button.active .table-sort-indicator{color:var(--primary);opacity:1}tr.clickable{cursor:pointer;transition:background .12s var(--ease)}tr.clickable:hover{background:var(--surface-hover)}tr.clickable:focus-visible{background:var(--surface-hover);outline:2px solid var(--primary);outline-offset:-2px}tr.selected,tr.selected:hover{background:var(--primary-soft)}.table-select-col{padding:4px var(--space-2);text-align:center;width:3rem}.table-actions-col{text-align:right;white-space:nowrap;width:1%}.table-row-actions{gap:var(--space-1);justify-content:flex-end;display:inline-flex}.table-row-actions .icon-button{height:var(--control-h-sm);min-height:var(--control-h-sm);width:var(--control-h-sm)}.table-select-checkbox{border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;min-width:2.25rem;min-height:2.25rem;margin:0 auto;display:inline-flex}.table-select-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px;margin:0}.table-select-checkbox:focus-within{outline:2px solid var(--primary-ring);outline-offset:0}.table-pagination{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.table-pagination-info,.table-pagination-page{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.table-pagination-actions{align-items:center;gap:var(--space-2);display:flex}@media (width<=1023px){.table-wrap{max-height:none}}@media (width<=640px){table{min-width:600px}th,td{padding-left:var(--space-3);padding-right:var(--space-3)}}.tabs-container{margin-bottom:var(--space-5);position:relative}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs-container.has-overflow-end .tabs{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000)}.tabs-container.has-overflow-start .tabs{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px);mask-image:linear-gradient(90deg,#0000,#000 48px)}.tabs-container.has-overflow-start.has-overflow-end .tabs{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000)}.tabs button{color:var(--text-muted);cursor:pointer;font-size:var(--fs-base);font-weight:var(--fw-semibold);min-height:44px;padding:0 var(--space-3);transition:color .12s var(--ease), border-color .12s var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px}.tabs button:hover{color:var(--text)}.tabs button.active{border-bottom-color:var(--primary);color:var(--primary)}.tabs button:focus-visible{border-radius:var(--radius-sm) var(--radius-sm) 0 0;outline-offset:-2px}.tabs-group-divider{background:var(--border-strong);height:18px;margin:0 var(--space-2);flex:0 0 1px;align-self:center}.tabs-select{display:none}.tabs-select select{width:100%}@media (width<=640px){.tabs{display:none}.tabs-select{display:grid}}.metrics{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.metrics>div{gap:var(--space-1);padding:var(--card-padding);display:grid}.metrics span{color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.metrics strong{font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);letter-spacing:-.02em;line-height:var(--lh-tight)}.login-page{background:var(--bg);align-items:center;gap:var(--space-5);min-height:100vh;padding:var(--space-6);flex-direction:column;justify-content:center;display:flex}.login-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);gap:var(--space-4);padding:var(--space-7);width:min(400px,100%);display:grid}.login-panel-header{gap:var(--space-5);margin-bottom:var(--space-2);display:grid}.login-panel-top{justify-content:space-between;align-items:flex-start;display:flex}.login-panel-header .brand-logo{height:52px}.login-panel-header h1{font-size:var(--fs-lg)}.login-panel-header p{color:var(--text-muted);font-size:var(--fs-sm);margin-top:var(--space-1)}.login-panel .button{margin-top:var(--space-2)}.login-footer{color:var(--text-subtle);font-size:var(--fs-xs)}@media (width<=640px){.login-page{padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.login-panel{padding:var(--space-6) var(--space-5)}}.language-switcher{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);flex-shrink:0;align-items:stretch;display:inline-flex;overflow:hidden}.language-switcher button{color:var(--text-muted);cursor:pointer;font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;min-width:2.25rem;min-height:30px;padding:0 var(--space-2);background:0 0;border:0;line-height:1}.language-switcher button:hover{color:var(--text)}.language-switcher button.active{background:var(--surface);color:var(--primary)}.event-combobox,.searchable-multi-select{position:relative}.event-combobox input{padding-right:34px}.combobox-clear{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--fs-lg);height:28px;transition:background .12s var(--ease), color .12s var(--ease);background:0 0;border:0;justify-content:center;align-items:center;width:28px;display:flex;position:absolute;top:6px;right:6px}.combobox-clear:hover{background:var(--surface-hover);color:var(--text)}.combobox-options{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:280px;padding:var(--space-1);z-index:20;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combobox-options button,.combobox-empty{border-radius:var(--radius-sm);color:var(--text);font-size:var(--fs-base);overflow-wrap:anywhere;min-height:36px;padding:var(--space-2) 10px;text-align:left;background:0 0;border:0}.combobox-options button{cursor:pointer}.combobox-options button:hover{background:var(--surface-hover)}.combobox-options button.selected,.combobox-options button[aria-selected=true]{background:var(--primary-soft);color:var(--primary);font-weight:var(--fw-semibold)}.combobox-empty{color:var(--text-muted);cursor:default}.combobox-option{align-items:flex-start;gap:10px;width:100%;display:flex}.combobox-option-check{pointer-events:none;flex-shrink:0;margin-top:2px;display:inline-flex}.combobox-option-check input{width:15px;height:15px;margin:0}.combobox-option-label{flex:1;line-height:1.35}.type-scope{gap:var(--space-3);display:grid}.type-scope-event{gap:var(--space-1);display:grid}.type-scope-quick{gap:var(--space-4);display:flex}.type-scope-quick .button.link{font-size:var(--fs-sm)}.type-scope-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.type-scope .tab-hint{margin:0}.selection-chips{margin:var(--space-2) 0 0;flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.selection-chip{background:var(--primary-soft);border:1px solid var(--primary-soft-strong);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);align-items:center;gap:2px;max-width:100%;padding:2px 4px 2px 10px;display:inline-flex}.selection-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selection-chip button{color:var(--text-muted);cursor:pointer;font-size:var(--fs-md);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;line-height:1;display:inline-flex}.selection-chip button:hover{background:var(--surface-hover);color:var(--danger)}.participants-search-form{margin-bottom:var(--space-5)}.participants-search-box{--control-height:var(--control-h);gap:var(--space-4);min-width:0;padding:var(--space-4) var(--card-padding);width:100%;display:grid}.participants-search-box .button,.participants-search-box .icon-button{height:var(--control-height);min-height:var(--control-height)}.participants-search-box .icon-button{width:var(--control-height);padding:0}.participants-search-scope{align-items:end;gap:var(--space-3);grid-template-columns:minmax(220px,1.4fr) minmax(160px,1fr) auto;display:grid}.participants-search-scope.with-type{grid-template-columns:minmax(200px,1.3fr) minmax(150px,1fr) minmax(150px,1fr) auto}.participants-search-filters{border-top:1px solid var(--border);padding-top:var(--space-4);gap:10px;display:grid}.participants-search-filter-row{grid-template-columns:minmax(180px, 1.1fr) minmax(120px, .7fr) minmax(0, 1.6fr) calc(var(--control-height) * 2 + 6px);align-items:end;gap:10px;display:grid}.participants-search-operator select{font-variant-emoji:text;min-width:0}.participants-search-filter-actions{height:var(--control-height);justify-content:flex-end;align-items:center;gap:6px;width:100%;display:flex}.participants-search-value{gap:0;min-width:0;display:grid}.participants-search-value-spacer{font-size:var(--fs-sm);font-weight:var(--fw-medium);visibility:hidden;margin-bottom:6px;line-height:1.2;display:block}.participants-search-value .searchable-multi-select,.participants-search-value .event-combobox{width:100%;min-width:0}.participants-search-presets{border-top:1px solid var(--border);padding-top:var(--space-3);grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;align-items:end;gap:10px;display:grid}.participants-results-toolbar{margin-bottom:var(--space-3);justify-content:space-between;align-items:center}.participants-results-actions{align-items:center;gap:var(--space-2);min-height:var(--control-h);flex-wrap:wrap;display:flex}.participants-results-count{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:var(--fw-medium);text-align:right;white-space:nowrap;margin:0 0 0 auto}.audit-filters{margin-bottom:var(--space-4)}@media (width<=1023px){.participants-search-form,.participants-search-box,.participants-search-scope,.participants-search-filters,.participants-search-filter-row,.participants-search-presets,.participants-search-value,.participants-search-box label{min-width:0;max-width:100%}.participants-search-box{padding:var(--space-4);overflow-x:hidden}.participants-search-scope,.participants-search-scope.with-type,.participants-search-filter-row,.participants-search-presets{grid-template-columns:minmax(0,1fr)}.participants-search-box .button:not(.icon-button),.participants-search-box .event-combobox,.participants-search-box .searchable-multi-select,.participants-search-presets .button{width:100%;min-width:0;max-width:100%}.participants-search-filter-actions{justify-content:flex-start;height:auto}.participants-results-toolbar{flex-direction:column;align-items:stretch;gap:10px}.participants-results-actions{width:100%}.participants-results-actions .button{flex:auto}.participants-results-count{text-align:left;margin-left:0}}.field-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.field-grid label.readonly span{color:var(--text-muted)}.address-layout{gap:var(--space-5);display:grid}.address-columns{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.address-block{min-width:0}.custom-fields-sections{gap:10px;display:grid}.custom-field-group{border-bottom:1px solid var(--border);padding-bottom:var(--space-2)}.custom-field-group:last-child{border-bottom:0}.custom-field-group-toggle{border-radius:var(--radius);color:inherit;cursor:pointer;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:6px var(--space-2);text-align:left;background:0 0;border:0;width:100%;margin:0;display:flex}.custom-field-group-toggle:hover{background:var(--surface-hover)}.custom-field-group-chevron{color:var(--text-muted);transition:transform .15s var(--ease);flex-shrink:0}.custom-field-group.is-open .custom-field-group-chevron{transform:rotate(90deg)}.custom-field-group-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);flex:1;min-width:0}.custom-field-group-count{color:var(--text-muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.custom-field-group-body{padding:var(--space-1) var(--space-2) var(--space-2) 34px;gap:10px;display:grid}.custom-field-multi{border:0;grid-column:1/-1;margin:0;padding:0}.custom-field-multi legend{font-size:var(--fs-sm);font-weight:var(--fw-medium);margin-bottom:var(--space-2)}.pdf-links,.admin-actions{margin-top:var(--space-4);flex-wrap:wrap;gap:10px;display:flex}.pdf-links a{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);font-size:var(--fs-sm);font-weight:var(--fw-semibold);height:var(--control-h-sm);padding:0 var(--space-3);transition:background .12s var(--ease), border-color .12s var(--ease);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.pdf-links a:hover{background:var(--surface-muted);border-color:var(--border-hover)}@media (width<=1023px){.master-section{padding:var(--space-4)}}@media (width<=640px){.pdf-links,.admin-actions{justify-content:stretch}.pdf-links .button,.admin-actions .button{flex:auto}}.address-block-header{align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-1);flex-wrap:wrap;justify-content:space-between;display:flex}.address-block-header h3{margin:0}.custom-fields-card{padding:0}.custom-fields-header{border-bottom:1px solid var(--border);align-items:flex-end;gap:var(--space-3) var(--space-5);padding:var(--card-padding);flex-wrap:wrap;justify-content:space-between;display:flex}.custom-fields-header h3{margin:0}.custom-fields-summary{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;margin-top:var(--space-1)}.custom-fields-tools{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.custom-fields-search{color:var(--text-subtle);align-items:center;display:flex;position:relative}.custom-fields-search svg{pointer-events:none;position:absolute;left:11px}.custom-fields-search>input:not([type=checkbox]):not([type=radio]):not([type=file]){height:var(--control-h-sm);min-height:var(--control-h-sm);width:220px;padding-left:34px}.custom-fields-groups .custom-field-group{border-bottom:1px solid var(--border);padding:var(--space-2) var(--space-3)}.custom-fields-groups .custom-field-group:last-child{border-bottom:0}.custom-fields-groups .custom-field-group-toggle:disabled{cursor:default;opacity:1}.custom-fields-groups .custom-field-group-body{padding:var(--space-2) var(--space-3) var(--space-4) 34px}.read-only-badge{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);margin-left:var(--space-2);vertical-align:middle;white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;line-height:1;display:inline-flex}.custom-field-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.form-action-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);bottom:var(--space-4);box-shadow:var(--shadow-md);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);z-index:5;justify-content:space-between;display:flex;position:sticky}.form-action-bar-status{color:var(--text-muted);font-size:var(--fs-sm)}.form-action-bar.is-dirty{border-color:var(--warning-border)}.form-action-bar.is-dirty .form-action-bar-status{color:var(--warning-text);font-weight:var(--fw-medium)}.form-action-bar-actions{gap:var(--space-2);display:flex}@media (width<=640px){.custom-fields-search>input:not([type=checkbox]):not([type=radio]):not([type=file]),.custom-fields-search,.custom-fields-tools{width:100%}.form-action-bar{flex-direction:column;align-items:stretch}.form-action-bar-actions .button{flex:1}}.admin-form{align-items:end;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-4) var(--card-padding);grid-template-columns:1.5fr 1.1fr 1fr 1.1fr 1.3fr auto;display:grid}.admin-form-create{margin-bottom:var(--space-6);grid-template-columns:1.4fr 1fr .9fr 1fr 1fr auto}.admin-create-profiles{grid-column:1/-1}.admin-profile-form{align-items:stretch;gap:var(--space-4);margin:var(--space-5) 0 var(--space-4);flex-direction:column;width:100%;display:flex}.admin-profile-form>*{width:100%;min-width:0}.admin-profile-form>label.checkbox-inline{width:auto}.admin-profile-summary-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.admin-profile-summary-list li{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);padding:10px var(--space-3);flex-direction:column;gap:2px;display:flex}.admin-profile-summary-list li span{color:var(--text-muted);font-size:var(--fs-sm)}.admin-settings-panel{margin-bottom:var(--space-6)}.admin-reference-status{gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.admin-reference-status li{gap:2px;display:grid}.admin-reference-status span{color:var(--text-muted);font-size:var(--fs-sm)}.admin-layout{align-items:start;gap:var(--space-5);grid-template-columns:minmax(260px,340px) minmax(320px,1fr);display:grid}.admin-user-filter{margin-bottom:var(--space-2)}.admin-user-list ul{margin:var(--space-3) 0 0;padding:0;list-style:none}.admin-user-list li{align-items:center;gap:6px;margin-bottom:6px;display:flex}.admin-user-list li>button:first-child{border-radius:var(--radius);color:inherit;cursor:pointer;padding:10px var(--space-3);text-align:left;transition:background .12s var(--ease), border-color .12s var(--ease);background:0 0;border:1px solid #0000;flex:1;align-items:flex-start;gap:2px;display:grid}.admin-user-list li>button:first-child:hover{background:var(--surface-hover)}.admin-user-list li>button:first-child.active{background:var(--primary-soft);border-color:var(--primary-soft-strong)}.admin-user-list li strong{font-size:var(--fs-base);font-weight:var(--fw-semibold);display:block}.admin-user-list li span,.admin-user-list li em{color:var(--text-muted);font-size:var(--fs-xs);font-style:normal}.admin-user-list li em.danger-text{color:var(--danger-text)}.admin-user-list .icon-button{height:var(--control-h-sm);min-height:var(--control-h-sm);width:var(--control-h-sm)}.admin-editor{gap:var(--space-4);display:grid}.admin-scope-stack{gap:var(--space-4);margin-bottom:var(--space-5);display:grid}.admin-host-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-host-chip{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);color:inherit;cursor:pointer;align-items:center;gap:var(--space-2);max-width:100%;padding:var(--space-2) 10px;text-align:left;display:inline-flex}.admin-host-chip:hover{border-color:var(--border-hover)}.admin-host-chip.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.admin-host-chip span:first-child{gap:2px;min-width:0;display:grid}.admin-host-chip strong{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.admin-host-chip em{color:var(--text-subtle);font-size:var(--fs-xs);font-style:normal}.admin-host-chip-remove{border-radius:var(--radius-sm);color:var(--text-subtle);flex-shrink:0;justify-content:center;align-items:center;padding:2px;display:inline-flex}.admin-host-chip-remove:hover{background:var(--danger-soft);color:var(--danger-text)}.admin-password-fieldset{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4) var(--space-4);gap:10px;display:grid}.admin-password-fieldset legend{font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:0 6px}.profile-section-header{margin-bottom:var(--space-4)}.profile-section-header h2{margin:0}.profile-editor-modal .modal-body{gap:var(--space-6)}.profile-editor-dirty{color:var(--warning-text);font-size:var(--fs-sm);font-weight:var(--fw-medium);margin-right:auto}.profile-editor-section{border-top:1px solid var(--border);gap:var(--space-4);padding-top:var(--space-5);display:grid}.profile-editor-section>h3{margin:0}.profile-filter{margin-bottom:var(--space-3);max-width:320px}.profile-grid{gap:var(--space-2);margin:var(--space-3) 0 var(--space-5);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:0;list-style:none;display:grid}.profile-tile{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:var(--space-1);padding-right:var(--space-1);transition:border-color .12s var(--ease), background .12s var(--ease);display:flex}.profile-tile:hover{border-color:var(--border-hover)}.profile-tile.is-active{background:var(--primary-soft);border-color:var(--primary)}.profile-tile-main{color:inherit;cursor:pointer;min-width:0;padding:10px var(--space-3);text-align:left;background:0 0;border:0;flex:1}.profile-tile-main strong{font-size:var(--fs-base);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-tile.is-active .profile-tile-main strong{color:var(--primary)}@media (width<=1023px){.admin-form,.admin-form-create,.admin-layout{grid-template-columns:1fr}}.permission-panel{flex-direction:column;width:100%;display:flex;overflow:hidden}.permission-panel-header{background:var(--surface-muted);border-bottom:1px solid var(--border);font-size:var(--fs-base);font-weight:var(--fw-semibold);padding:var(--space-3) var(--card-padding);margin:0}.permission-panel-body{gap:var(--space-3);padding:var(--space-4) var(--card-padding) var(--card-padding);flex-direction:column;display:flex}.permission-checkboxes{padding:6px 0 var(--space-3);flex-direction:column;gap:2px;width:100%;margin:0;display:flex}label.permission-option{border-radius:var(--radius);cursor:pointer;font-size:var(--fs-base);font-weight:var(--fw-medium);min-height:var(--control-h);padding:var(--space-2) 10px;transition:background .12s var(--ease);flex-direction:row;align-items:flex-start;gap:10px;width:100%;display:flex}.permission-option input[type=checkbox]{margin-top:2px}.permission-option:hover:not(.disabled){background:var(--surface-hover)}.permission-option.disabled{color:var(--text-subtle);cursor:not-allowed}.permission-option-text{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.permission-option-text strong{font-size:var(--fs-base);font-weight:var(--fw-semibold);line-height:1.35}.permission-option-text span{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-regular);line-height:1.4}.admin-permissions{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.permission-tab-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));width:100%;margin:0;display:grid}.permission-tab-card{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);min-height:100%;transition:border-color .12s var(--ease), box-shadow .12s var(--ease);flex-direction:column;display:flex;overflow:hidden}.permission-tab-card.is-active{border-color:var(--primary-soft-strong);box-shadow:0 0 0 1px var(--primary-ring)}.permission-tab-header{background:var(--surface);border-bottom:1px solid var(--border)}.permission-tab-extras{padding:6px var(--space-2) 10px;flex-direction:column;flex:1;gap:2px;display:flex}.permission-tab-extras-label{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase;margin:0 0 2px;padding:0 10px}.permission-tab-extras .permission-option{font-size:var(--fs-sm);min-height:var(--control-h-sm);padding:var(--space-1) var(--space-2)}.permission-footer-hint{color:var(--text-muted);font-size:var(--fs-xs);margin:var(--space-1) 0 0;line-height:1.45}.custom-field-scope-panel{margin-top:var(--space-1)}.custom-field-scope-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}.custom-field-scope-card{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);gap:var(--space-2);padding:var(--space-3);flex-direction:column;width:100%;display:flex}.custom-field-scope-card-header{flex-direction:column;gap:2px;display:flex}.custom-field-scope-card-header span{color:var(--text-muted);font-size:var(--fs-xs)}.custom-field-scope-group-label{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;margin:var(--space-2) 0 var(--space-1);text-transform:uppercase}.custom-field-scope-options{gap:var(--space-3);flex-direction:column;display:flex}.custom-field-scope-fields{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.custom-field-scope-option{font-size:var(--fs-sm);min-height:auto;padding:var(--space-2) 10px;align-items:flex-start}.custom-field-scope-id{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);word-break:break-all}@media (width<=1280px){.custom-field-scope-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1023px){.custom-field-scope-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-tab-grid{grid-template-columns:1fr}}@media (width<=640px){.custom-field-scope-fields{grid-template-columns:1fr}}.batch-badge-summary{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--radius);color:var(--warning-text);font-size:var(--fs-sm);margin:var(--space-3) 0 var(--space-4);padding:10px var(--space-3)}.batch-badge-summary p{margin:0;line-height:1.45}.batch-badge-summary h3{font-size:var(--fs-base);margin:0 0 var(--space-2)}.batch-badge-preview-notice-secondary{margin-top:var(--space-2)}.batch-badge-merge-failures-title{font-weight:var(--fw-semibold);margin:0 0 6px}.batch-badge-merge-failures{margin:0;padding-left:1.2rem;line-height:1.45}.batch-badge-merge-failures li+li{margin-top:var(--space-1)}.batch-badge-merge-failure-timeout{font-weight:var(--fw-semibold)}.batch-badge-create-failures{margin-top:var(--space-3)}.batch-badge-create-failures h3{font-size:var(--fs-base);margin:0 0 6px}.batch-badge-create-failures-hint{font-size:var(--fs-sm);margin:0 0 var(--space-3);opacity:.85}.batch-badge-create-failure-detail{font-weight:var(--fw-regular);opacity:.85}.batch-badge-preview-summary{overscroll-behavior:contain;flex:none;max-height:min(32vh,280px);margin:0;overflow:auto}.batch-badge-preview-layout{gap:var(--space-4);grid-template-columns:minmax(200px,240px) minmax(0,1fr);min-height:min(42vh,420px);display:grid}.batch-badge-preview-list{overscroll-behavior:contain;min-height:0;max-height:min(56vh,560px);padding-right:var(--space-1);flex-direction:column;align-content:start;gap:6px;display:flex;overflow:auto}.batch-badge-preview-list-item{appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;padding:var(--space-2) 10px;text-align:left;flex:none;justify-content:flex-start;align-items:center;width:100%;line-height:1.25;display:flex}.batch-badge-preview-list-item:hover{border-color:var(--border-hover)}.batch-badge-preview-list-item.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.batch-badge-preview-list-item strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;width:100%;display:block;overflow:hidden}.batch-badge-preview-main{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.batch-badge-preview-current{font-weight:var(--fw-semibold);margin:0}.batch-badge-preview-modal .badge-preview-frame{height:min(56vh,560px);min-height:200px}.badge-merge-jobs-list{gap:var(--space-4);flex-direction:column;display:flex}.badge-merge-job-card{overflow:hidden}.badge-merge-job-card-header{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--card-padding);flex-wrap:wrap;justify-content:space-between;display:flex}.badge-merge-job-card-header time{font-weight:var(--fw-semibold);display:block}.badge-merge-job-host{color:var(--text-muted);font-size:var(--fs-sm);margin-top:2px;display:block}.badge-merge-job-followup{border:0;border-top:1px solid var(--warning-border);padding:var(--space-4) var(--card-padding) var(--card-padding);border-radius:0;margin:0}.badge-merge-job-followup-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.badge-merge-job-followup-header h3{font-size:var(--fs-base);margin:0}.badge-merge-job-followup-hint{font-size:var(--fs-sm);margin:0 0 var(--space-3)}.badge-merge-job-followup .table-wrap{color:var(--text)}.badge-merge-job-failures-table td,.badge-merge-job-failures-table th{vertical-align:top}.badge-merge-job-failures-table td:nth-child(4){overflow-wrap:anywhere;white-space:normal}@media (width<=1023px){.batch-badge-preview-summary{max-height:min(28vh,220px)}.batch-badge-preview-layout{grid-template-columns:1fr;min-height:0}.batch-badge-preview-list{max-height:140px}.batch-badge-preview-modal .badge-preview-frame{height:min(40vh,360px);min-height:180px}}@media (width<=640px){.badge-merge-job-card-header{flex-direction:column;align-items:flex-start}}.modal-backdrop{animation:backdrop-in .16s var(--ease);background:var(--overlay);overscroll-behavior:contain;padding:var(--space-6);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes backdrop-in{0%{opacity:0}}.modal{animation:modal-in .18s var(--ease);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:calc(100dvh - 2 * var(--space-6));flex-direction:column;width:100%;margin:auto;display:flex}.modal-sm{max-width:420px}.modal-md{max-width:560px}.modal-lg{max-width:880px}.modal-xl{max-width:1180px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}}.modal-header{border-bottom:1px solid var(--border);align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-6);flex:none;justify-content:space-between;display:flex}.modal-heading{align-items:center;gap:10px;min-width:0;display:flex}.modal-heading h2{font-size:var(--fs-lg);overflow-wrap:anywhere}.modal-heading-icon{background:var(--primary-soft);border-radius:var(--radius);color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.modal-heading-icon.tone-danger{background:var(--danger-soft);color:var(--danger)}.modal-body{gap:var(--space-4);overscroll-behavior:contain;min-height:0;padding:var(--space-5) var(--space-6);flex:auto;display:grid;overflow-y:auto}.modal-body>p{color:var(--text-muted);line-height:var(--lh-base)}.modal-footer{background:var(--surface);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--border);padding:var(--space-4) var(--space-6);flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.modal-footer-start{flex-wrap:wrap;gap:10px;margin-right:auto;display:flex}.modal-form-fields{gap:var(--space-4);display:grid}.field-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=640px){.field-row{grid-template-columns:1fr}}.badge-preview-frame{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);width:100%;height:70vh}.file-preview-image{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);object-fit:contain;max-width:100%;max-height:70vh;margin:0 auto;display:block}@media (width<=1023px){.modal-backdrop{padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));align-items:flex-end}.modal{max-height:calc(100dvh - 24px);margin:auto auto 0}.badge-preview-frame{height:56vh}}@media (width<=640px){.modal-header{padding-left:var(--space-4)}.modal-body{padding:var(--space-4)}.modal-footer{padding:var(--space-3) var(--space-4)}.modal-footer .button,.modal-footer-start{flex:auto}}.file-name-cell{align-items:center;gap:var(--space-2);min-width:0;max-width:100%;display:inline-flex}.file-name-cell>span{font-weight:var(--fw-medium);text-overflow:ellipsis;overflow:hidden}.file-type-icon{color:var(--text-subtle);flex-shrink:0}label.file-dropzone{background:var(--surface-muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:var(--space-1);padding:var(--space-6) var(--space-4);text-align:center;transition:border-color .15s var(--ease), background .15s var(--ease);flex-direction:column;justify-content:center;display:flex}label.file-dropzone:hover,label.file-dropzone.is-dragging,label.file-dropzone:focus-within{background:var(--primary-soft);border-color:var(--primary)}label.file-dropzone.has-file{border-style:solid}.file-dropzone-icon{background:var(--surface);border:1px solid var(--border);color:var(--primary);height:40px;margin-bottom:var(--space-1);border-radius:50%;justify-content:center;align-items:center;width:40px;display:inline-flex}.file-dropzone-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);overflow-wrap:anywhere}.file-dropzone-hint{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-regular)}.upload-progress{align-items:center;gap:var(--space-3);display:flex}.upload-progress .progress-bar{flex:1}.upload-progress-value{color:var(--text-muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;text-align:right;min-width:3.5ch}.progress-bar{background:var(--surface-hover);border-radius:var(--radius-pill);height:4px;position:relative;overflow:hidden}.progress-bar>span{background:var(--primary);border-radius:inherit;height:100%;transition:width .2s var(--ease);display:block}.progress-bar.is-indeterminate>span{animation:progress-indeterminate 1.2s var(--ease) infinite;width:40%;position:absolute}@keyframes progress-indeterminate{0%{left:-40%}to{left:100%}}.report-assignment-list{margin:0 0 var(--space-3);gap:var(--space-1);padding:0;list-style:none;display:grid}.report-assignment-list li{align-items:center;gap:var(--space-2);display:flex}.report-assignment-list li>span{flex:1;min-width:0}.report-cache-status{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.report-tree{gap:var(--space-2);flex-direction:column;display:flex}.report-tree-toolbar{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.report-tree-root,.report-tree-children{margin:0;padding:0;list-style:none}.report-tree-root{border:1px solid var(--border);border-radius:var(--radius-md,8px);max-height:min(55vh,520px);overflow-y:auto}.report-tree-row{align-items:center;gap:var(--space-2);padding-right:var(--space-3);border-bottom:1px solid var(--border);display:flex}.report-tree-toggle{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex}.report-tree-toggle:disabled{cursor:default}.report-tree-toggle svg.is-open{transform:rotate(90deg)}.report-tree-toggle svg{flex-shrink:0;transition:transform .15s}.report-tree-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.report-tree-count{color:var(--text-muted);font-size:var(--fs-sm,.875rem);white-space:nowrap;margin-left:auto}.report-tree-report{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:pointer;display:flex}.report-tree-report:hover,.report-tree-toggle:hover:not(:disabled){background:var(--surface-hover,#7f7f7f14)}.report-tree-report-text{gap:var(--space-1);text-align:left;flex-direction:column;flex:1;min-width:0;display:flex}.report-tree input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin:0}.report-tree-report input[type=checkbox]{margin-top:3px}.report-tree-row input[type=checkbox]{margin-right:var(--space-1)}.report-tree-badges{gap:var(--space-1);flex-wrap:wrap;display:flex}.report-browser{padding:0;overflow:hidden}.report-browser-toolbar{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.report-browser-list{margin:0;padding:0;list-style:none}.report-browser-folder,.report-browser-report{align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding-top:var(--space-1);padding-bottom:var(--space-1);padding-right:var(--space-4);display:flex}.report-browser-folder{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.report-browser-folder:disabled{cursor:default}.report-browser-folder svg{flex-shrink:0;transition:transform .15s}.report-browser-folder svg.is-open{transform:rotate(90deg)}.report-browser-folder svg:nth-of-type(2){color:#e8b53a}.report-browser-folder:hover:not(:disabled),.report-browser-report:hover{background:var(--surface-hover)}.report-browser-icon{color:var(--primary);flex-shrink:0}.report-browser-report-text{flex-direction:column;flex:1;min-width:0;display:flex}.report-browser-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.report-browser-folder .report-browser-name{font-weight:600}.report-browser-actions{gap:var(--space-1);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;display:flex}.report-browser-root{max-height:calc(100vh - 260px);overflow-y:auto}@media (width<=720px){.report-browser-report{flex-wrap:wrap}.report-browser-actions{justify-content:flex-start;width:100%;padding-left:24px}.report-browser-name{white-space:normal}}.report-browser-title{align-items:center;gap:var(--space-2);min-width:0;display:flex}.report-warning-icon{color:var(--warning);flex-shrink:0}.report-all-option{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md,8px)}.user-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.user-grid{gap:var(--space-2);margin:0 0 var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:0;list-style:none;display:grid}.user-tile{align-items:flex-start;gap:var(--space-1);padding-right:var(--space-1);padding-top:var(--space-1);background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .12s var(--ease), background .12s var(--ease);display:flex}.user-tile:hover{border-color:var(--border-hover);background:var(--surface-hover)}.user-tile-main{gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3) var(--space-3);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;display:flex}.user-tile-head{align-items:center;gap:var(--space-2);min-width:0;display:flex}.user-tile-avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.user-tile-name{flex-direction:column;flex:1;min-width:0;display:flex}.user-tile-name strong,.user-tile-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-tile-name span,.user-tile-meta{color:var(--text-muted);font-size:var(--fs-sm)}.user-tile-meta{flex-direction:column;gap:2px;padding-left:40px;display:flex}.user-tile-meta>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-tile-warning{color:var(--warning)}.user-tile-reports{align-items:center;gap:4px;display:inline-flex}.user-password-row{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.user-password-row>label{flex:1;min-width:220px}.create-reports-field{gap:6px;display:grid}.create-reports-label{color:var(--text);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.create-reports-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius);display:flex}.create-reports-row .tab-hint{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wallet-status{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.wallet-status-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.wallet-chip{border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-medium);white-space:nowrap;padding:2px 10px}.wallet-chip.ok{background:var(--success-soft);border-color:var(--success-border);color:var(--success-text)}.wallet-chip.warn{background:var(--warning-soft);border-color:var(--warning-border);color:var(--warning-text)}.wallet-chip.muted{color:var(--text-muted)}.wallet-layout{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.wallet-template-list ul{gap:var(--space-2);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.wallet-template-list li{flex:0 280px;min-width:200px}.wallet-template-list button{border-radius:var(--radius);color:var(--text);cursor:pointer;align-items:center;gap:var(--space-3);padding:var(--space-2);text-align:left;background:0 0;border:1px solid #0000;width:100%;display:flex}.wallet-template-list button:hover{background:var(--surface-hover)}.wallet-template-list button.active{background:var(--primary-soft);border-color:var(--primary-soft-strong)}.wallet-template-swatch{border-radius:var(--radius-sm);flex:none;width:20px;height:28px;box-shadow:inset 0 0 0 1px #0000001f}.wallet-template-text{flex:1;min-width:0;display:grid}.wallet-template-text strong,.wallet-template-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wallet-template-text span{color:var(--text-muted);font-size:var(--fs-xs)}.wallet-editor-column{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1fr) 340px;display:grid}.wallet-editor-column>.panel:only-child{grid-column:1/-1}.wallet-editor{gap:var(--space-5);display:grid}.wallet-editor-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.wallet-editor-head h2{margin:0}.wallet-fieldset{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.wallet-fieldset legend{font-size:var(--fs-md);font-weight:var(--fw-semibold);margin-bottom:var(--space-2);padding:0}.wallet-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.wallet-colors{gap:var(--space-4);flex-wrap:wrap;display:flex}.wallet-color span{align-items:center;gap:var(--space-2);display:flex}.wallet-colors .wallet-color input[type=color]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex:none;width:44px;height:32px;min-height:0;padding:2px}.wallet-color code{color:var(--text-muted);font-size:var(--fs-xs)}.wallet-field-rows{gap:var(--space-2);display:grid}.wallet-field-row{align-items:center;gap:var(--space-2);grid-template-columns:130px minmax(100px,.7fr) minmax(140px,1.3fr) auto;display:grid}.wallet-field-actions{gap:2px;display:flex}.wallet-fieldset>.button{justify-self:start}.wallet-placeholders{border:1px dashed var(--border-strong);border-radius:var(--radius);padding:var(--space-2) var(--space-3)}.wallet-placeholders summary{cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-medium)}.wallet-placeholders[open] summary{margin-bottom:var(--space-2)}.wallet-placeholders ul{margin:var(--space-2) 0 0;gap:2px;max-height:260px;padding:0;list-style:none;display:grid;overflow:auto}.wallet-placeholders li{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.wallet-placeholders code{font-family:var(--font-mono);font-size:var(--fs-xs)}.wallet-placeholder-value{color:var(--text-muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wallet-side{gap:var(--space-4);max-height:calc(100vh - 96px);display:grid;position:sticky;top:72px;overflow-y:auto}.wallet-side h2{margin-top:0}.wallet-preview{gap:var(--space-3);display:grid}.wallet-images ul{gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.wallet-images li{align-items:center;gap:var(--space-2);grid-template-columns:44px minmax(0,1fr) auto auto;display:grid}.wallet-image-thumb{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-subtle);justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.wallet-image-thumb img{object-fit:contain;max-width:100%;max-height:100%}.wallet-image-text{min-width:0;display:grid}.wallet-upload{cursor:pointer}.wallet-links{gap:var(--space-3);display:grid}.wallet-links-lookup{align-items:end;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.wallet-link-box{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);gap:var(--space-2);padding:var(--space-3);display:grid}.wallet-link-box code{font-family:var(--font-mono);font-size:var(--fs-xs);overflow-wrap:anywhere}.wallet-card-stage{gap:var(--space-3);justify-items:center;padding-top:40px;display:grid;position:relative}.wallet-card{background:var(--wallet-bg,#1f2937);box-shadow:var(--shadow-md);color:var(--wallet-fg,#fff);gap:var(--space-4);isolation:isolate;max-width:340px;padding:var(--space-4);border-radius:14px;width:100%;display:grid;position:relative;-webkit-mask:radial-gradient(22px at 50% 0,#0000 21px,#000 22px);mask:radial-gradient(22px at 50% 0,#0000 21px,#000 22px)}.wallet-card>*{z-index:1;position:relative}.wallet-card>.wallet-card-bg{border-radius:inherit;z-index:0;position:absolute;inset:0;overflow:hidden}.wallet-card-bg.is-placeholder{background:repeating-linear-gradient(135deg,#ffffff0f 0 10px,#0000 10px 20px)}.wallet-card-bg.is-placeholder>svg{bottom:var(--space-2);color:var(--wallet-fg);opacity:.6;right:var(--space-2);position:absolute}.wallet-card-bg img{filter:blur(10px)saturate(1.1);object-fit:cover;opacity:.85;width:100%;height:100%;transform:scale(1.15)}.wallet-card-header{align-items:flex-start;gap:var(--space-3);justify-content:space-between;min-height:32px;display:flex}.wallet-card-brand{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.wallet-card-logo{flex:none;justify-content:center;align-items:center;max-width:110px;height:32px;display:inline-flex}.wallet-card-logo.is-placeholder{border-radius:var(--radius-sm);opacity:.8;border:1px dashed;width:48px}.wallet-card-logo img{object-fit:contain;max-width:110px;max-height:32px}.wallet-card-logo-text{font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;min-width:24px;overflow:hidden}.wallet-card-header-fields{gap:var(--space-3);text-align:right;display:flex}.wallet-card-strip{margin-inline:calc(var(--space-4) * -1);min-height:72px;display:grid;position:relative;overflow:hidden}.wallet-card-strip.is-placeholder{background:#ffffff14}.wallet-card-strip>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.wallet-card-strip>svg{opacity:.6;right:var(--space-2);top:var(--space-2);position:absolute}.wallet-card-strip>.wallet-card-primary{padding:var(--space-3) var(--space-4);align-self:center;position:relative}.wallet-card-main{align-items:start;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.wallet-card-main-fields{gap:var(--space-3);display:grid}.wallet-card-thumbnail{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:90px;height:90px;display:flex;overflow:hidden}.wallet-card-thumbnail.is-placeholder{opacity:.8;border:1px dashed}.wallet-card-thumbnail img{object-fit:cover;width:100%;height:100%}.wallet-card-field{min-width:0;display:grid}.wallet-card-field.is-ghost{border-radius:var(--radius-sm);opacity:.75;border:1px dashed;padding:2px 6px}.wallet-card-field.is-ghost .wallet-card-value{font-size:var(--fs-xs);font-style:italic;font-weight:var(--fw-regular)}.wallet-card-label{color:var(--wallet-label,#cbd5e1);font-size:.6875rem;font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase}.wallet-card-value{font-size:var(--fs-base);overflow-wrap:anywhere}.wallet-card-primary .wallet-card-value{font-size:1.375rem;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.wallet-card-row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(90px,1fr));display:grid}.wallet-card-empty{opacity:.6}.wallet-card-barcode{align-items:center;gap:var(--space-1);padding-top:var(--space-2);justify-items:center;display:grid}.wallet-card-code{border-radius:var(--radius);color:#111;background:#fff;justify-content:center;align-items:center;width:120px;height:120px;display:flex}.wallet-card-code.linear{width:220px;height:64px}.wallet-card-code-text{font-size:var(--fs-xs);opacity:.85}.wallet-card-back{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);gap:var(--space-3);max-width:340px;padding:var(--space-4);border-radius:14px;width:100%;display:grid}.wallet-card-back .wallet-card-label{color:var(--text-muted)}.wallet-card-back-title{color:var(--text-muted);font-size:var(--fs-sm)}.wallet-card .is-hl,.wallet-card-back.is-hl,.wallet-card-back .is-hl,.wallet-card.hl-labels .wallet-card-label,.wallet-card.hl-values .wallet-card-value{border-radius:var(--radius-sm);outline-offset:3px;outline:2px solid #ffb020}.wallet-card.is-hl{box-shadow:inset 0 0 0 3px #ffb020, var(--shadow-md);outline:none}.wallet-card-strip.is-hl,.wallet-card-bg.is-hl{outline-offset:-3px}.wallet-callout{border-radius:var(--radius);box-shadow:var(--shadow-md);color:#1a1200;font-size:var(--fs-xs);font-weight:var(--fw-semibold);pointer-events:none;max-width:260px;transition:top .15s var(--ease), left .15s var(--ease);white-space:nowrap;text-overflow:ellipsis;z-index:3;background:#ffb020;padding:4px 10px;position:absolute;overflow:hidden}.wallet-callout:after{content:"";left:var(--arrow-left,50%);border:7px solid #0000;border-top-color:#ffb020;position:absolute;top:100%;transform:translate(-50%)}.wallet-callout.below:after{border-top-color:#0000;border-bottom-color:#ffb020;top:auto;bottom:100%}.wallet-focus-note{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--radius);color:var(--warning-text);font-size:var(--fs-sm);padding:var(--space-2) var(--space-3);margin:0}.public-wallet{background:var(--bg);min-height:100dvh}.public-wallet-top{padding:var(--space-3) var(--space-4);justify-content:flex-end;display:flex}.public-wallet-main{gap:var(--space-5);max-width:440px;padding:var(--space-2) var(--space-4) var(--space-8);margin:0 auto;display:grid}.public-wallet-intro{gap:var(--space-1);text-align:center;display:grid}.public-wallet-intro h1{font-size:var(--fs-xl);margin:0}.public-wallet-intro p{color:var(--text-muted);margin:0}.public-wallet-meta{color:var(--text-muted);font-size:var(--fs-sm);gap:var(--space-1);margin:var(--space-2) 0 0;justify-items:center;padding:0;list-style:none;display:grid}.public-wallet-meta li{align-items:center;gap:var(--space-1);display:flex}.public-wallet-actions{gap:var(--space-3);display:grid}.wallet-add-button{border-radius:var(--radius-lg);font-size:var(--fs-md);font-weight:var(--fw-semibold);align-items:center;gap:var(--space-2);min-height:52px;padding:var(--space-3) var(--space-4);justify-content:center;text-decoration:none;display:flex}.wallet-add-button.apple{color:#fff;background:#000}.wallet-add-button.google{color:#fff;background:#1f1f1f;border:1px solid #747775}.wallet-add-button:hover{opacity:.9}.wallet-add-button:focus-visible{outline:3px solid var(--primary-ring);outline-offset:2px}.public-wallet-hint{color:var(--text-subtle);font-size:var(--fs-xs);text-align:center;margin:0}.public-wallet-message{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:var(--space-2);margin-top:var(--space-8);padding:var(--space-6);text-align:center;justify-items:center;display:grid}.public-wallet-message h1{font-size:var(--fs-lg);margin:0}.public-wallet-message p{color:var(--text-muted);margin:0}@media (width<=900px){.wallet-editor-column{grid-template-columns:minmax(0,1fr)}.wallet-side{position:static}}@media (width<=640px){.wallet-field-row{grid-template-columns:minmax(0,1fr) auto}.wallet-field-row>input,.wallet-field-row>textarea{grid-column:1/-1}}.wallet-field-row.is-back{align-items:start}.wallet-field-row textarea{height:auto;min-height:0;padding:var(--space-2) var(--space-3);resize:vertical;font-family:inherit}.wallet-card-back .wallet-card-value{white-space:pre-line}.wallet-card-back a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.wallet-back-warning{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--radius);color:var(--warning-text);font-size:var(--fs-sm);align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.wallet-back-warning p{flex:260px;margin:0}.public-wallet-opening{background:var(--primary-soft);border:1px solid var(--primary-soft-strong);border-radius:var(--radius-lg);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.public-wallet-opening>div{gap:2px;display:grid}.public-wallet-opening span:not(.button-spinner){color:var(--text-muted);font-size:var(--fs-sm)}.public-wallet-qr{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:var(--space-4);padding:var(--space-4);flex-wrap:wrap;justify-content:center;display:flex}.public-wallet-qr-image{border-radius:var(--radius);background:#fff;padding:6px}.public-wallet-qr>div{gap:var(--space-1);flex:180px;display:grid}.public-wallet-qr strong{align-items:center;gap:var(--space-2);display:flex}.public-wallet-qr p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.wallet-tabs,.wallet-preview-switch{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);gap:2px;padding:3px;display:inline-flex}.wallet-tabs{justify-self:start}.wallet-tabs button,.wallet-preview-switch button{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);background:0 0;border:0;padding:6px 14px}.wallet-tabs button.active,.wallet-preview-switch button.active{background:var(--surface);box-shadow:var(--shadow-xs);color:var(--text)}.wallet-preview-switch button{font-size:var(--fs-xs);padding:4px 10px}.wallet-preview-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;display:flex}.wallet-preview-head h2{margin:0}.wallet-field-origin{color:var(--text-subtle);font-size:var(--fs-xs);white-space:nowrap;min-width:64px}.wallet-gcard{background:var(--gwallet-bg,#1f2937);box-shadow:var(--shadow-md);color:var(--gwallet-fg,#fff);gap:var(--space-3);max-width:340px;padding:var(--space-4) var(--space-4) 0;border-radius:18px;width:100%;display:grid;overflow:hidden}.wallet-gcard>:last-child:not(.wallet-gcard-hero){margin-bottom:var(--space-4)}.wallet-gcard-header{align-items:center;gap:var(--space-2);display:flex}.wallet-gcard-logo{background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;overflow:hidden}.wallet-gcard-logo.is-placeholder{color:#5f6368}.wallet-gcard-logo img{object-fit:contain;width:100%;height:100%}.wallet-gcard-issuer{font-size:var(--fs-sm);font-weight:var(--fw-medium)}.wallet-gcard-title{font-size:1.25rem;font-weight:var(--fw-regular);line-height:var(--lh-tight);margin:0}.wallet-gcard .wallet-card-label{color:inherit;font-size:.6875rem;font-weight:var(--fw-medium);letter-spacing:.02em;opacity:.75;text-transform:none}.wallet-gcard-row{gap:var(--space-3);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.wallet-gcard-row .wallet-card-field:nth-child(2):last-child,.wallet-gcard-row .wallet-card-field:nth-child(3){text-align:right}.wallet-gcard-row .wallet-card-field:nth-child(2):not(:last-child){text-align:center}.wallet-gcard .wallet-card-barcode{padding-top:0}.wallet-gcard-hero{margin-inline:calc(var(--space-4) * -1);justify-content:center;align-items:center;min-height:64px;max-height:120px;display:flex;overflow:hidden}.wallet-gcard-hero.is-placeholder{background:#7f7f7f2e}.wallet-gcard-hero img{object-fit:cover;width:100%}.wallet-gcard .is-hl,.wallet-gcard-hero.is-hl{border-radius:var(--radius-sm);outline-offset:3px;outline:2px solid #ffb020}.wallet-gcard-hero.is-hl{outline-offset:-3px}.wallet-gcard.is-hl{box-shadow:inset 0 0 0 3px #ffb020, var(--shadow-md);outline:none}.wallet-ph-field{min-width:0;position:relative}.wallet-ph-field.is-text{gap:4px;display:flex}.wallet-ph-field.is-text>input,.wallet-ph-field.is-text>textarea{flex:1;min-width:0}.wallet-ph-select{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);cursor:pointer;font:inherit;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:2px var(--space-3);text-align:left;justify-content:space-between;width:100%;display:flex}.wallet-ph-select:hover:not(:disabled){border-color:var(--border-hover)}.wallet-ph-select:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.wallet-ph-select:disabled{cursor:not-allowed;opacity:.6}.wallet-ph-select-text{min-width:0;line-height:1.2;display:grid}.wallet-ph-select-text>span,.wallet-ph-select-text>code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wallet-ph-select-text>span{font-size:var(--fs-base)}.wallet-ph-select-text>code,.wallet-ph-list code{color:var(--text-subtle);font-family:var(--font-mono);font-size:.6875rem}.wallet-ph-placeholder{color:var(--text-subtle)}.wallet-ph-insert{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;height:var(--control-h);flex:none;justify-content:center;align-items:center;width:36px;display:inline-flex}.wallet-ph-insert:hover:not(:disabled){color:var(--primary)}.wallet-ph-popover{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:30;min-width:280px;max-width:420px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0}.wallet-ph-search{border-bottom:1px solid var(--border);color:var(--text-subtle);align-items:center;gap:var(--space-2);padding:0 var(--space-3);display:flex!important}.wallet-ph-search input{box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.wallet-ph-list{max-height:300px;padding:var(--space-1) 0;overflow-y:auto}.wallet-ph-group{color:var(--text-subtle);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;padding:var(--space-2) var(--space-3) 2px;text-transform:uppercase}.wallet-ph-list button{color:var(--text);cursor:pointer;font:inherit;font-size:var(--fs-sm);align-items:baseline;gap:var(--space-2);padding:6px var(--space-3);text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;display:flex}.wallet-ph-list button.active{background:var(--primary-soft)}.wallet-ph-list button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wallet-ph-list button code{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:45%;overflow:hidden}.wallet-ph-empty{color:var(--text-muted);font-size:var(--fs-sm);padding:var(--space-2) var(--space-3);margin:0}.wallet-ph-freetext{background:var(--surface-muted);border:0;border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);color:var(--text-muted);cursor:pointer;font:inherit;font-size:var(--fs-sm);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;display:flex}.wallet-ph-freetext:hover{color:var(--text)}.wallet-ph-option-text{min-width:0;display:grid}.wallet-ph-option-text>span,.wallet-ph-option-text>small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wallet-ph-option-text>small{color:var(--text-subtle);font-size:.6875rem}.wallet-ph-list .wallet-ph-manual{border-top:1px dashed var(--border);margin-top:var(--space-1)}.wallet-slug-field{gap:var(--space-2);grid-column:1/-1;display:grid}.wallet-slug-input{gap:var(--space-2);display:flex}.wallet-slug-input>input{font-family:var(--font-mono);flex:1;min-width:0}.wallet-slug-input>.button{height:var(--control-h);flex:none}.participant-email-results{max-height:50vh;margin:var(--space-3) 0;overflow:auto}.participant-email-message{color:var(--text-muted);overflow-wrap:anywhere;font-size:.875rem}.admin-email-template-filters{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:12px;margin-bottom:12px;display:grid}.admin-reference-status li.is-editing{outline:2px solid var(--brand-blue);outline-offset:2px}
