@charset "UTF-8";:root{--color-cream: #FAF7F2;--color-sand: #F0E9DC;--color-terracotta: #F08070;--color-terra-dark: #C47358;--color-terra-light:#F5A898;--color-terra-pale: #FDE8E4;--color-sage: #8FAF96;--color-sage-dark: #6A8F74;--color-sage-pale: #E4EFE6;--color-navy: #1E3A5F;--color-navy-mid: #4A6080;--color-navy-light: #8AA0B8;--color-primary: var(--color-terracotta);--color-primary-dark: var(--color-terra-dark);--color-primary-light: var(--color-terra-pale);--color-secondary: var(--color-sage);--color-text: var(--color-navy);--color-text-muted: var(--color-navy-mid);--color-text-subtle: var(--color-navy-light);--color-border: rgba(30, 58, 95, .1);--color-bg: var(--color-cream);--color-surface: #FFFFFF;--color-success: var(--color-sage-dark);--color-success-bg: var(--color-sage-pale);--color-error: #D94F4F;--color-error-bg: #FDEAEA;--color-warning: #E89C45;--color-warning-bg: #FEF4E4;--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--font-display: "Playfair Display", Georgia, serif;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-pill:999px;--shadow-xs: 0 1px 4px rgba(30, 58, 95, .06);--shadow-sm: 0 4px 16px rgba(30, 58, 95, .08);--shadow-md: 0 8px 32px rgba(30, 58, 95, .1);--shadow-terra: 0 8px 32px rgba(240, 128, 112, .2);--glass-bg: rgba(255, 255, 255, .6);--glass-border: rgba(255, 255, 255, .75);--glass-blur: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);font-size:15px;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-weight:600;line-height:1.25;color:var(--color-navy)}h1{font-size:22px}h2{font-size:18px}h3{font-size:16px}a{color:var(--color-terracotta);text-decoration:none}a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .18s ease;white-space:nowrap}.btn--primary{background:var(--color-terracotta);color:#fff;box-shadow:var(--shadow-terra)}.btn--primary:hover:not(:disabled){background:var(--color-terra-dark);transform:scale(1.02)}.btn--primary:disabled{opacity:.5;cursor:not-allowed}.btn--secondary{background:var(--color-terra-pale);color:var(--color-terra-dark)}.btn--secondary:hover:not(:disabled){background:#f8d5cf}.btn--sage{background:var(--color-sage-pale);color:var(--color-sage-dark)}.btn--sage:hover:not(:disabled){background:#d0e4d4}.btn--ghost{background:transparent;color:var(--color-text-muted);border:1.5px solid var(--color-border)}.btn--ghost:hover:not(:disabled){background:var(--color-sand)}.btn--danger{background:var(--color-error);color:#fff}.btn--danger:hover:not(:disabled){background:#b83e3e}.btn--full{width:100%}.btn--sm{padding:6px 14px;font-size:12px}.btn--xs{padding:4px 10px;font-size:12px}.btn--icon{padding:8px 14px;font-size:18px;line-height:1;min-width:40px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:500;color:var(--color-navy-mid);letter-spacing:.01em}.form-group input,.form-group select,.form-group textarea{padding:11px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:14px;color:var(--color-navy);background:var(--color-surface);outline:none;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-terracotta);box-shadow:0 0 0 3px #f0807026}.form-group input.invalid,.form-group select.invalid,.form-group textarea.invalid{border-color:var(--color-error)}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--color-navy-light)}.form-group .error-msg{font-size:12px;color:var(--color-error)}.card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--color-navy)}.badge{display:inline-flex;align-items:center;padding:3px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:500}.badge--success{background:var(--color-success-bg);color:var(--color-sage-dark)}.badge--warning{background:var(--color-warning-bg);color:#92530a}.badge--error{background:var(--color-error-bg);color:var(--color-error)}.badge--info{background:#dbeafe;color:#1e40af}.badge--neutral{background:var(--color-sand);color:var(--color-navy-mid)}.badge--pending{background:#fef3c7;color:#92400e}.badge--accepted{background:#d1fae5;color:#065f46}.badge--refused{background:#fee2e2;color:#991b1b}.badge--revoked,.badge--expired{background:#f3f4f6;color:#6b7280}.badge--verified{background:#d1fae5;color:#065f46;font-weight:600}.badge--primary{background:var(--color-terracotta);color:#fff}.badge--pill{border-radius:var(--radius-pill);padding:2px 9px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;color:var(--color-text-muted);text-align:center}.empty-state .empty-icon{font-size:40px;margin-bottom:12px}.empty-state p{font-size:14px;margin-top:8px}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:currentColor;border-radius:50%;animation:spin .65s linear infinite}.spinner--terra{border-color:var(--color-terra-pale);border-top-color:var(--color-terracotta)}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500}.alert--error{background:var(--color-error-bg);color:var(--color-error)}.alert--success{background:var(--color-success-bg);color:var(--color-sage-dark)}.alert--warning{background:var(--color-warning-bg);color:#92530a}[data-theme=dark]{--color-cream: #1A1714;--color-sand: #252019;--color-navy: #EFE8DE;--color-navy-mid: #A89080;--color-navy-light: #7A6858;--color-terra-pale: rgba(240, 128, 112, .15);--color-terra-dark: #F5A898;--color-sage-pale: rgba(143, 175, 150, .18);--color-sage-dark: #9FC5A6;--color-text: #EFE8DE;--color-text-muted: #A89080;--color-text-subtle: #7A6858;--color-bg: #1A1714;--color-surface: #222019;--color-border: rgba(239, 232, 222, .1);--color-success-bg: rgba(106, 143, 116, .2);--color-error-bg: rgba(217, 79, 79, .18);--color-warning-bg: rgba(232, 156, 69, .18);--glass-bg: rgba(26, 23, 20, .88);--glass-border: rgba(239, 232, 222, .1);--shadow-xs: 0 1px 4px rgba(0, 0, 0, .35);--shadow-sm: 0 4px 16px rgba(0, 0, 0, .45);--shadow-md: 0 8px 32px rgba(0, 0, 0, .55);--shadow-terra: 0 8px 32px rgba(240, 128, 112, .12);color-scheme:dark}[data-theme=dark] .btn--secondary{background:#f080702e;color:#f5a898}[data-theme=dark] .btn--secondary:hover:not(:disabled){background:#f0807047}[data-theme=dark] .btn--ghost{color:var(--color-text-muted);border-color:var(--color-border)}[data-theme=dark] .btn--ghost:hover:not(:disabled){background:#efe8de0f}[data-theme=dark] .btn--sage{background:#8faf962e;color:#9fc5a6}[data-theme=dark] .btn--sage:hover:not(:disabled){background:#8faf9647}[data-theme=dark] .btn--toggle{background:#efe8de14;color:var(--color-text-muted)}[data-theme=dark] .btn--toggle.active{background:#f0807038;color:#f5a898}[data-theme=dark] .card{background:var(--glass-bg);border-color:var(--color-border)}[data-theme=dark] .alert--warning{color:#e5ac6b}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:#efe8de0d;color:var(--color-text);border-color:#efe8de26}[data-theme=dark] .form-group input::placeholder,[data-theme=dark] .form-group select::placeholder,[data-theme=dark] .form-group textarea::placeholder{color:var(--color-navy-light)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{border-color:var(--color-terracotta)}
