:root{--color-bg: #111020;--color-surface: #1c1a2c;--color-surface-2: #252340;--color-surface-input: #181630;--color-surface-hover: #2e2b48;--color-border: #3c3858;--color-border-subtle: #2b2840;--color-border-strong: #554e78;--color-text: #f0eef8;--color-text-muted: #9b98b5;--color-text-dim: #554f6a;--color-text-label: #c5c1da;--color-text-inverse: #0b0a10;--color-primary: #ff6a00;--color-primary-dark: #e05e00;--color-primary-ink: #0b0a10;--color-secondary: #7c6aff;--color-secondary-dark:#6655e8;--color-accent: #7c6aff;--color-accent-dark: #6655e8;--color-accent-muted: rgba(124, 106, 255, .15);--color-success: #34d399;--color-success-bg: rgba(52, 211, 153, .1);--color-success-border: rgba(52, 211, 153, .35);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .1);--color-danger: #f87171;--color-danger-bg: rgba(248, 113, 113, .12);--color-danger-border: rgba(248, 113, 113, .4);--color-admin-bg: #0e0c1a;--color-admin-deeper: #0a0814;--color-admin-border: #221f30;--color-admin-text: #f0eef8;--color-admin-muted: #8e8aab;--color-admin-accent: #ff6a00;--color-admin-surface: #151320;--color-admin-surface-border: #302c44;--color-glass: rgba(255, 255, 255, .05);--color-overlay: rgba(0, 0, 0, .6);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--spacing-xs: var(--space-2);--spacing-sm: var(--space-3);--spacing-md: var(--space-4);--spacing-lg: var(--space-6);--spacing-xl: var(--space-8);--spacing-2xl: var(--space-12);--radius-sm: .5rem;--radius-md: .65rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-full: 999px;--shadow-xs: 0 1px 4px rgba(0, 0, 0, .22);--shadow-sm: 0 4px 16px rgba(0, 0, 0, .28);--shadow-md: 0 8px 30px rgba(0, 0, 0, .34);--shadow-lg: 0 16px 50px rgba(0, 0, 0, .4);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .48);--shadow-inset-top: inset 0 1px 0 rgba(255, 255, 255, .07);--font-sans: system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Josefin Sans", system-ui, sans-serif;--font-editorial: "Cormorant Garant", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: clamp(1.75rem, 3vw + .5rem, 2.5rem);--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--weight-black: 900;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.7;--t-fast: .12s ease;--t-base: .2s ease;--t-slow: .35s ease;--container-max: 1200px;--container-pad: clamp(1rem, 2.4vw, 1.5rem);--sidebar-w: 260px;--header-h: calc(clamp(98px, 9vw, 160px) + 1.5rem) ;--z-header: 1000;--z-sidebar: 40;--z-topbar: 30;--z-backdrop: 80;--z-modal: 90;--header-bg: linear-gradient(180deg, rgba(8, 12, 22, .85), rgba(8, 12, 22, .65)), var(--color-bg);--header-border: rgba(255, 255, 255, .08);--header-text: var(--color-text);--header-link: var(--color-text);--header-link-hover: var(--color-primary);--header-link-active: var(--color-primary);--header-cta-bg: var(--color-primary);--header-cta-color: var(--color-primary-ink);--header-cta-border: var(--color-primary);--header-toggle-bg: rgba(255, 255, 255, .04);--header-toggle-border: rgba(255, 255, 255, .25);--header-toggle-hover-bg: rgba(255, 255, 255, .09);--header-toggle-hover-brd: rgba(255, 255, 255, .45);--header-nav-mob-bg: linear-gradient(180deg, rgba(8, 12, 22, .97), rgba(8, 12, 22, .9)), var(--color-bg);--header-nav-mob-border: rgba(255, 255, 255, .08);--header-nav-mob-active: rgba(255, 255, 255, .06);--footer-bg: #13131a;--footer-border: rgba(255, 255, 255, .1);--footer-text: rgba(255, 255, 255, .68);--footer-desc: rgba(255, 255, 255, .52);--footer-heading: #ffffff;--footer-link: rgba(255, 255, 255, .5);--footer-link-hover: rgba(255, 255, 255, .92);--footer-contact: rgba(255, 255, 255, .82);--footer-social-border: rgba(255, 255, 255, .14);--footer-social-bg: rgba(255, 255, 255, .05);--footer-cta-color: #ffffff;--footer-cta-shadow: rgba(255, 106, 0, .28);--footer-cta-shadow-hover: rgba(255, 106, 0, .38);--footer-bottom-bg: rgba(0, 0, 0, .25);--footer-bottom-border: rgba(255, 255, 255, .08);--footer-bottom-text: rgba(255, 255, 255, .32);--footer-bottom-strong: rgba(255, 255, 255, .55);--footer-bottom-link: rgba(255, 255, 255, .42);--footer-bottom-link-hover:rgba(255, 255, 255, .8);--chip-bg: #111723;--chip-color: #b7c0d4;--chip-border: #253047;--btn-primary-shadow: 0 6px 22px rgba(124, 106, 255, .28);--btn-primary-hover-shadow: 0 10px 28px rgba(124, 106, 255, .38);--btn-ghost-hover-bg: rgba(255, 255, 255, .05);--btn-accent-shadow: 0 6px 20px rgba(255, 106, 0, .22);--btn-accent-hover-shadow: 0 10px 24px rgba(255, 106, 0, .32);--alert-error-text: #ffd0d0;--alert-success-text: #b0f0da;--alert-info-text: #c8d9ff;--alert-info-border: rgba(74, 127, 255, .3);--shimmer-highlight: rgba(255, 255, 255, .07);--focus-shadow: rgba(124, 106, 255, .22);--field-error-text: #fca5a5;--field-error-border: #ef4444;--field-error-shadow: rgba(239, 68, 68, .18);--toggle-checked-bg: #1d3f8f;--date-color-scheme: dark;--date-icon-filter: invert(1) brightness(1.2) contrast(1.05);--date-icon-opacity: .85}.app-shell[data-theme=theme-2]{--color-bg: #ffffff;--color-surface: #ffffff;--color-surface-2: #f0f0f0;--color-surface-input: #ffffff;--color-surface-hover: #f5f5f5;--color-border: rgba(0, 0, 0, .12);--color-border-subtle: rgba(0, 0, 0, .06);--color-border-strong: rgba(0, 0, 0, .24);--color-text: #000000;--color-text-muted: rgba(0, 0, 0, .55);--color-text-dim: rgba(0, 0, 0, .35);--color-text-label: rgba(0, 0, 0, .72);--color-text-inverse: #ffffff;--color-primary: #000000;--color-primary-dark: #000000;--color-primary-ink: #ffffff;--color-secondary: #000000;--color-secondary-dark: #000000;--color-accent: #000000;--color-accent-dark: #000000;--color-accent-muted: rgba(0, 0, 0, .07);--color-success: #15803d;--color-success-bg: rgba(21, 128, 61, .08);--color-success-border: rgba(21, 128, 61, .22);--color-warning: #b45309;--color-warning-bg: rgba(180, 83, 9, .07);--color-danger: #b91c1c;--color-danger-bg: rgba(185, 28, 28, .07);--color-danger-border: rgba(185, 28, 28, .22);--color-glass: rgba(0, 0, 0, .04);--color-overlay: rgba(0, 0, 0, .5);--shadow-xs: 0 1px 3px rgba(0, 0, 0, .06);--shadow-sm: 0 4px 14px rgba(0, 0, 0, .08);--shadow-md: 0 8px 28px rgba(0, 0, 0, .1);--shadow-lg: 0 16px 44px rgba(0, 0, 0, .12);--shadow-xl: 0 24px 60px rgba(0, 0, 0, .14);--shadow-inset-top: inset 0 1px 0 rgba(0, 0, 0, .04);--header-bg: #000000;--header-border: rgba(255, 255, 255, .1);--header-text: #ffffff;--header-link: rgba(255, 255, 255, .85);--header-link-hover: #ffffff;--header-link-active: #ffffff;--header-cta-bg: #ffffff;--header-cta-color: #000000;--header-cta-border: #ffffff;--header-toggle-bg: rgba(255, 255, 255, .06);--header-toggle-border: rgba(255, 255, 255, .25);--header-toggle-hover-bg: rgba(255, 255, 255, .12);--header-toggle-hover-brd: rgba(255, 255, 255, .5);--header-nav-mob-bg: #000000;--header-nav-mob-border: rgba(255, 255, 255, .1);--header-nav-mob-active: rgba(255, 255, 255, .08);--footer-bg: #000000;--footer-border: rgba(255, 255, 255, .12);--footer-text: rgba(255, 255, 255, .75);--footer-desc: rgba(255, 255, 255, .55);--footer-heading: #ffffff;--footer-link: rgba(255, 255, 255, .55);--footer-link-hover: #ffffff;--footer-contact: rgba(255, 255, 255, .85);--footer-social-border: rgba(255, 255, 255, .18);--footer-social-bg: rgba(255, 255, 255, .08);--footer-cta-color: #000000;--footer-cta-shadow: rgba(0, 0, 0, .14);--footer-cta-shadow-hover: rgba(0, 0, 0, .24);--footer-bottom-bg: #000000;--footer-bottom-border: rgba(255, 255, 255, .1);--footer-bottom-text: rgba(255, 255, 255, .35);--footer-bottom-strong: rgba(255, 255, 255, .6);--footer-bottom-link: rgba(255, 255, 255, .45);--footer-bottom-link-hover:#ffffff;--chip-bg: #000000;--chip-color: #ffffff;--chip-border: transparent;--btn-primary-shadow: 0 6px 22px rgba(0, 0, 0, .14);--btn-primary-hover-shadow: 0 10px 28px rgba(0, 0, 0, .22);--btn-ghost-hover-bg: rgba(0, 0, 0, .05);--btn-accent-shadow: 0 6px 20px rgba(0, 0, 0, .14);--btn-accent-hover-shadow: 0 10px 24px rgba(0, 0, 0, .22);--alert-error-text: #7f1d1d;--alert-success-text: #064e3b;--alert-info-text: #1e3a8a;--alert-info-border: rgba(0, 0, 0, .12);--shimmer-highlight: rgba(0, 0, 0, .05);--focus-shadow: rgba(0, 0, 0, .18);--field-error-text: #991b1b;--field-error-border: #dc2626;--field-error-shadow: rgba(220, 38, 38, .15);--toggle-checked-bg: #000000;--date-color-scheme: light;--date-icon-filter: none;--date-icon-opacity: .55}.app-shell[data-theme=theme-2] input[type=date],.app-shell[data-theme=theme-2] input[type=time]{color-scheme:light}.app-shell[data-theme=theme-2] input[type=date]::-webkit-calendar-picker-indicator,.app-shell[data-theme=theme-2] input[type=time]::-webkit-calendar-picker-indicator{filter:none;opacity:.55}.app-shell[data-theme=theme-2] ::selection{background:#0000001f;color:#000}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}img,picture,video,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}nav ul,nav ol{list-style:none;margin:0;padding:0}a,button,[role=button]{-webkit-tap-highlight-color:transparent}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}html,body{height:100%;margin:0}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--leading-tight);margin:0}a{color:inherit;text-decoration:none}button{cursor:pointer}::selection{background:#7c6aff59;color:#fff}[id]{scroll-margin-top:calc(var(--header-h, 80px) + 1rem)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--color-text-muted)}.clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clamp-3{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media (pointer: fine){*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid transparent;background-clip:padding-box;border-radius:var(--radius-full)}*::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad);width:100%}.section{padding-block:var(--spacing-lg)}.grid{display:grid;gap:var(--spacing-md)}.grid-list{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}@media (min-width: 600px){.grid-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (min-width: 1024px){.grid-list{gap:var(--spacing-lg)}}.tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:grid;grid-template-rows:auto 1fr;transition:border-color var(--t-base),transform var(--t-fast),box-shadow var(--t-base)}.tile:hover{transform:translateY(-2px);border-color:#2b3950;box-shadow:var(--shadow-lg)}.media{position:relative;overflow:hidden;background:#0b0f17}.media img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;display:block;transition:transform var(--t-slow)}.media .overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.55));opacity:0;transition:opacity var(--t-base);display:grid;place-items:end center;padding:var(--spacing-xs)}.media .overlay__actions{display:flex;gap:.45rem;padding:.4rem;border-radius:var(--radius-md);background:#0f142099;border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(4px)}.media:hover img{transform:scale(1.04)}.media:hover .overlay{opacity:1}.tile__body{padding:var(--spacing-sm);display:grid;gap:.5rem}.tile__title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.tile__actions{display:flex;gap:.4rem;flex-wrap:wrap}@media (max-width: 420px){.tile__actions{flex-direction:column;align-items:stretch}.tile__actions .btn{width:100%;text-align:center}}.pager{display:flex;gap:var(--spacing-sm);align-items:center;justify-content:center;margin-top:var(--spacing-lg);flex-wrap:wrap}.pager span{color:var(--color-text-label)}.pager__info{min-width:140px;text-align:center;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:44px;padding:0 var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;font:inherit;font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);text-decoration:none;white-space:nowrap;letter-spacing:.02em;transition:transform var(--t-fast),box-shadow var(--t-base),background var(--t-base),border-color var(--t-base),opacity var(--t-base)}.btn:hover{transform:translateY(-1px);background:var(--color-surface-hover);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse);box-shadow:var(--btn-primary-shadow),var(--shadow-inset-top)}.btn.primary:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--btn-primary-hover-shadow),var(--shadow-inset-top)}.btn.ghost{background:transparent;border-color:var(--color-border-strong);color:var(--color-text-muted)}.btn.ghost:hover{background:var(--btn-ghost-hover-bg);border-color:var(--color-border-strong);color:var(--color-text)}.btn.danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger);box-shadow:0 4px 16px #00000014}.btn.danger:hover{border-color:var(--color-danger);filter:brightness(1.05);box-shadow:0 6px 20px #0000001f}.btn.sm{height:36px;padding:0 .75rem;font-size:var(--text-xs);border-radius:var(--radius-sm)}.btn.accent{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-ink);font-weight:var(--weight-extrabold);box-shadow:var(--btn-accent-shadow)}.btn.accent:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:var(--btn-accent-hover-shadow)}.lbl{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-label);margin-bottom:.35rem}.grid label{display:grid;gap:.35rem;min-width:0}input[type=text],input[type=number],input[type=email],input[type=password],input[type=search],input[type=date],input[type=time],input[type=file],input:not([type]),select,textarea{width:100%;min-height:44px;background:var(--color-surface-input);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.65rem .75rem;outline:none;transition:border-color var(--t-base),box-shadow var(--t-base);box-shadow:var(--shadow-inset-top)}input[type=text]::placeholder,input[type=number]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=date]::placeholder,input[type=time]::placeholder,input[type=file]::placeholder,input:not([type])::placeholder,select::placeholder,textarea::placeholder{color:var(--color-text-dim)}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=date]:focus,input[type=time]:focus,input[type=file]:focus,input:not([type]):focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-shadow)}input[type=text]:hover:not(:focus),input[type=number]:hover:not(:focus),input[type=email]:hover:not(:focus),input[type=password]:hover:not(:focus),input[type=search]:hover:not(:focus),input[type=date]:hover:not(:focus),input[type=time]:hover:not(:focus),input[type=file]:hover:not(:focus),input:not([type]):hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--color-border-strong)}textarea{min-height:unset;resize:vertical}input[type=file]{border-style:dashed;cursor:pointer;padding:.8rem;color:var(--color-text-muted)}input[type=date],input[type=time]{color-scheme:var(--date-color-scheme, dark)}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{filter:var(--date-icon-filter, invert(1) brightness(1.2) contrast(1.05));opacity:var(--date-icon-opacity, .85);cursor:pointer}select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23b8cae0' viewBox='0 0 24 24'><path d='M7 10l5 5 5-5z'/></svg>");background-repeat:no-repeat;background-position:right .7rem center;background-size:18px 18px;padding-right:2.2rem}.switch{display:flex;align-items:center;gap:.6rem;cursor:pointer}.switch input{display:none}.switch .toggle{flex-shrink:0;inline-size:38px;block-size:22px;border-radius:var(--radius-full);position:relative;background:var(--color-surface-2);border:1px solid var(--color-border);display:inline-block;transition:background var(--t-base),border-color var(--t-base)}.switch .toggle:after{content:"";position:absolute;inset:2px auto 2px 2px;inline-size:18px;block-size:18px;border-radius:var(--radius-full);background:var(--color-text-muted);transition:transform var(--t-base),background var(--t-base)}.switch input:checked+.toggle{background:var(--toggle-checked-bg);border-color:var(--color-accent)}.switch input:checked+.toggle:after{transform:translate(16px);background:var(--color-text-inverse)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}@media (max-width: 720px){.form-grid{grid-template-columns:1fr}}.field-wrap{display:flex;flex-direction:column;gap:0;min-width:0}.field-wrap label{width:100%}.field-wrap:has(label.full){grid-column:1/-1}.field-errors{display:flex;flex-direction:column;gap:.15rem;margin-top:.3rem}.field-errors small{font-size:var(--text-sm);color:var(--field-error-text);line-height:1.4}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:var(--field-error-border)!important;box-shadow:0 0 0 3px var(--field-error-shadow)!important}.actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.5rem}@media (max-width: 560px){.actions{justify-content:stretch}.actions .btn{width:100%}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:var(--spacing-md) 0;box-shadow:var(--shadow-inset-top),var(--shadow-sm)}.card.fancy{background:var(--color-surface-2);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-md),var(--shadow-inset-top)}.card__title{margin:.25rem 0 var(--spacing-md);font-weight:var(--weight-extrabold);font-size:var(--text-lg);color:var(--color-text);display:flex;align-items:center;gap:.5rem}.card__title .sparkle{color:#7ecbf5}.card__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap}.divider{height:1px;background:var(--color-border);margin:var(--spacing-md) 0}.chip{display:inline-flex;align-items:center;gap:.35rem;background:var(--chip-bg);color:var(--chip-color);border:1px solid var(--chip-border);padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:nowrap;line-height:1.4}.chip.alt{background:var(--chip-bg);color:var(--chip-color);opacity:.85}.chip.tone{background:var(--chip-bg);color:var(--color-accent);border-color:var(--color-accent-muted)}.chip.warn{background:var(--color-warning-bg);color:var(--color-warning);border-color:#0000001a}.chip.s1{background:#081628;color:#8fb3ff;border-color:#28406b;text-transform:uppercase;letter-spacing:.4px}.chip.s2{background:#061b16;color:#7dd3fc;border-color:#1e5044;text-transform:uppercase;letter-spacing:.4px}.chip.s3{background:#071a10;color:#86efac;border-color:#2b4a33;text-transform:uppercase;letter-spacing:.4px}.chip.s4{background:#1d0f05;color:#fbbf24;border-color:#5a3a16;text-transform:uppercase;letter-spacing:.4px}.badge{display:inline-block;padding:.2rem .45rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-semibold);background:var(--color-surface-2);color:var(--color-text-muted);white-space:nowrap;text-transform:capitalize}.badge--new{background:var(--color-warning-bg);color:var(--color-warning)}.badge--confirmed{background:var(--color-success-bg);color:var(--color-success)}.badge--completed{background:var(--color-accent-muted);color:var(--color-accent)}.badge--cancelled{background:var(--color-danger-bg);color:var(--color-danger)}.skeleton,.alert{margin:.85rem 0;padding:.85rem var(--spacing-md);border-radius:var(--radius-md)}.skeleton{position:relative;overflow:hidden;background:var(--color-surface);border:1px dashed var(--color-border);color:var(--color-text-muted)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,var(--shimmer-highlight) 50%,transparent 100%);transform:translate(-100%);animation:shimmer 1.4s linear infinite}.shimmer{position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,var(--shimmer-highlight) 40%,transparent 80%);transform:translate(-100%);animation:shimmer 1.6s infinite}@keyframes shimmer{to{transform:translate(100%)}}.alert--error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--alert-error-text)}.alert--success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--alert-success-text)}.alert--info{background:var(--color-accent-muted);border:1px solid var(--alert-info-border);color:var(--alert-info-text)}
