*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #cc22b8;--brand-light: #e63fd0;--brand-deep: #7a0f70;--ink: #ffffff;--bg: #ffffff;--bg-subtle: #faf1f8;--surface: #ffffff;--surface-2: #fdf6fc;--border: rgba(36, 20, 40, .1);--border-2: rgba(36, 20, 40, .18);--text: #241428;--text-2: #5a4560;--text-3: #7d6884;--accent: #a3159a;--accent-h: #7a0f70;--accent-s: #fcf0fa;--accent-t: #f7ddf2;--green-bg: #dcfce7;--green-text: #166534;--green-border: #bbf7d0;--yellow-bg: #fef9c3;--yellow-text: #854d0e;--yellow-border: #fef08a;--red-bg: #fee2e2;--red-text: #991b1b;--red-border: #fecaca;--r-sm: 10px;--r: 14px;--r-lg: 20px;--r-xl: 24px;--shadow-sm: 0 1px 2px rgba(36,20,40,.04), 0 1px 3px rgba(36,20,40,.06);--shadow: 0 2px 8px rgba(36,20,40,.06), 0 1px 3px rgba(36,20,40,.08);--shadow-md: 0 6px 18px -6px rgba(36,20,40,.18), 0 2px 6px rgba(36,20,40,.06);--shadow-lg: 0 8px 32px rgba(36,20,40,.12), 0 4px 12px rgba(36,20,40,.08);--font-display: "Space Grotesk", system-ui, sans-serif;--font-ui: "Outfit", system-ui, -apple-system, sans-serif;--t: .15s ease;color-scheme:light}[data-theme=dark]{--bg: #0d0714;--bg-subtle: #150a16;--surface: #1b0f1d;--surface-2: #271729;--border: rgba(255, 255, 255, .1);--border-2: rgba(255, 255, 255, .2);--text: #f6ecf6;--text-2: #cbb6cd;--text-3: #9b859f;--brand-deep: #d13ec0;--accent: #fb7ceb;--accent-h: #ffb3f4;--accent-s: rgba(204,34,184,.15);--accent-t: rgba(204,34,184,.25);--green-bg: rgba(22,163,74,.15);--green-text: #4ade80;--green-border: rgba(22,163,74,.3);--yellow-bg: rgba(234,179,8,.12);--yellow-text: #facc15;--yellow-border: rgba(234,179,8,.3);--red-bg: rgba(220,38,38,.15);--red-text: #f87171;--red-border: rgba(220,38,38,.3);--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow: 0 2px 8px rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.2);--shadow-md: 0 8px 24px -8px rgba(0,0,0,.6), 0 2px 8px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.4);color-scheme:dark}html{font-family:var(--font-ui);color:var(--text);background:var(--bg);transition:background var(--t),color var(--t);-webkit-font-smoothing:antialiased}body{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{display:block;max-width:100%}main{flex:1}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--r-sm);font-size:.875rem;font-weight:600;border:1.5px solid transparent;transition:all var(--t);white-space:nowrap;line-height:1;cursor:pointer;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);color:var(--ink);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-light);border-color:var(--brand-light);transform:translateY(-1px);box-shadow:0 4px 12px #cc22b859}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-s)}.btn-ghost{background:transparent;color:var(--text-2);border-color:var(--border)}.btn-ghost:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.btn-danger{background:transparent;color:var(--red-text);border-color:var(--red-border)}.btn-danger:hover{background:var(--red-bg)}.btn-success{background:transparent;color:var(--green-text);border-color:var(--green-border)}.btn-success:hover{background:var(--green-bg)}.btn-sm{padding:.4rem .875rem;font-size:.8125rem}.btn-lg{padding:.875rem 1.75rem;font-size:1rem}.btn-icon{padding:.5rem;aspect-ratio:1;border-radius:var(--r-sm)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:1.5rem}.card-sm{padding:1rem;border-radius:var(--r)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.01em}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}.badge-open{background:var(--accent-t);color:var(--accent)}.badge-closed{background:var(--surface-2);color:var(--text-3)}.badge-pending{background:var(--yellow-bg);color:var(--yellow-text)}.badge-accepted{background:var(--green-bg);color:var(--green-text)}.badge-rejected{background:var(--red-bg);color:var(--red-text)}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.125rem}.form-label{font-size:.8125rem;font-weight:600;color:var(--text-2);letter-spacing:.01em}.form-input,.form-textarea{width:100%;padding:.625rem .875rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:inherit;font-size:.9375rem;color:var(--text);transition:border-color var(--t),box-shadow var(--t);appearance:none}.form-select{width:100%;padding:.5625rem .875rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:inherit;font-size:.9375rem;color:var(--text);transition:border-color var(--t),box-shadow var(--t);cursor:pointer}.form-select option{background:var(--surface);color:var(--text)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-3)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-t)}.form-textarea{min-height:120px;resize:vertical;line-height:1.6}.form-hint{font-size:.8125rem;color:var(--text-3)}.alert{display:flex;align-items:flex-start;gap:.625rem;padding:.875rem 1rem;border-radius:var(--r);margin-bottom:1rem;font-size:.875rem;line-height:1.5;border:1px solid}.alert-error{background:var(--red-bg);color:var(--red-text);border-color:var(--red-border)}.alert-success{background:var(--green-bg);color:var(--green-text);border-color:var(--green-border)}.alert-info{background:var(--accent-s);color:var(--accent);border-color:var(--accent-t)}.divider{height:1px;background:var(--border);margin:1.5rem 0}.text-muted{color:var(--text-3)}.text-accent{color:var(--accent)}.fw-600{font-weight:600}.fw-700{font-weight:700}
