*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #E8442A;--brand-strong: #C42D1B;--brand-soft: #FCE3DF;--bg: #F6F4F1;--surface: #FFFFFF;--surface-alt: #F1EEE9;--ink: #191C22;--ink-muted: #5C6470;--line: #E5E1DB;--success: #15803D;--success-bg: #DCFCE7;--danger: #B91C1C;--danger-bg: #FEE2E2;--warning: #92400E;--warning-bg: #FEF3C7;--info: #1D4ED8;--info-bg: #DBEAFE;--radius: 12px;--radius-sm: 8px;--radius-lg: 20px;--shadow: 0 1px 3px rgba(30, 20, 15, .06), 0 4px 14px rgba(30, 20, 15, .05);--shadow-lg: 0 10px 36px rgba(30, 20, 15, .12), 0 2px 8px rgba(30, 20, 15, .06);--font-display: "Barlow Condensed", sans-serif;--font-body: "Barlow", sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--dur-fast: .15s;--dur-base: .25s;--dur-slow: .4s;--primary: var(--brand);--primary-dark: var(--brand-strong);--primary-light: var(--brand);--secondary: var(--ink);--accent: var(--brand-strong);--bg-card: var(--surface);--text: var(--ink);--text-muted: var(--ink-muted);--border: var(--line)}:root[data-theme=dark]{--brand: #FF5A44;--brand-strong: #FF7A63;--brand-soft: #3A2420;--bg: #14161B;--surface: #1D2026;--surface-alt: #23262D;--ink: #F2F1EE;--ink-muted: #9BA1AC;--line: #2B2F37;--success: #4ADE80;--success-bg: #113322;--danger: #FCA5A5;--danger-bg: #3B1615;--warning: #FCD34D;--warning-bg: #3B2A0A;--info: #93C5FD;--info-bg: #172554;--shadow: 0 1px 3px rgba(0, 0, 0, .35), 0 4px 14px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 36px rgba(0, 0, 0, .45), 0 2px 8px rgba(0, 0, 0, .3)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]):not([data-theme=dark]){--brand: #FF5A44;--brand-strong: #FF7A63;--brand-soft: #3A2420;--bg: #14161B;--surface: #1D2026;--surface-alt: #23262D;--ink: #F2F1EE;--ink-muted: #9BA1AC;--line: #2B2F37;--success: #4ADE80;--success-bg: #113322;--danger: #FCA5A5;--danger-bg: #3B1615;--warning: #FCD34D;--warning-bg: #3B2A0A;--info: #93C5FD;--info-bg: #172554;--shadow: 0 1px 3px rgba(0, 0, 0, .35), 0 4px 14px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 36px rgba(0, 0, 0, .45), 0 2px 8px rgba(0, 0, 0, .3)}}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.6;transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}a{color:var(--brand);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--brand-strong)}img{max-width:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:1rem;z-index:10000;padding:.75rem 1.5rem;background:var(--brand);color:#fff;border-radius:0 0 8px 8px;font-weight:700;transition:top var(--dur-fast) var(--ease-out)}.skip-link:focus{top:0}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-2{margin-bottom:1rem}.w-full{width:100%}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-muted{color:var(--ink-muted)}.font-bold{font-weight:700}.hidden{display:none}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem;border:1px solid var(--line)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all var(--dur-base) var(--ease-out);text-decoration:none;font-family:var(--font-body)}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-strong);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #e8442a59}.btn-secondary{background:var(--ink);color:var(--bg)}.btn-outline{background:transparent;color:var(--brand);border:2px solid var(--brand)}.btn-outline:hover{background:var(--brand);color:#fff;transform:translateY(-2px)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(.9)}.btn-sm{padding:.375rem .875rem;font-size:.8rem}.btn-lg{padding:.875rem 2rem;font-size:1rem}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-weight:600;margin-bottom:.375rem;font-size:.9rem;color:var(--ink)}.form-control{width:100%;padding:.625rem 1rem;border:2px solid var(--line);border-radius:var(--radius-sm);font-size:.9rem;color:var(--ink);background:var(--surface);transition:all var(--dur-fast) var(--ease-out);font-family:var(--font-body)}.form-control:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #e8442a26}.form-control.error{border-color:var(--danger)}.form-control::placeholder{color:var(--ink-muted)}select.form-control{cursor:pointer}textarea.form-control{resize:vertical;min-height:100px}.error-msg{color:var(--danger);font-size:.8rem;margin-top:.25rem}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:99px;font-size:.75rem;font-weight:600}.badge-primary{background:var(--brand-soft);color:var(--brand-strong)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-muted{background:var(--line);color:var(--ink-muted)}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--line);font-size:.9rem}th{font-weight:600;color:var(--ink-muted);background:var(--bg);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}tr:hover td{background:var(--bg)}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.01em}.page-header p{color:var(--ink-muted);margin-top:.25rem;font-family:var(--font-body)}.alert{padding:.875rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem}.alert-success{background:var(--success-bg);color:var(--success);border-left:4px solid var(--success)}.alert-danger{background:var(--danger-bg);color:var(--danger);border-left:4px solid var(--danger)}.alert-warning{background:var(--warning-bg);color:var(--warning);border-left:4px solid var(--warning)}.alert-info{background:var(--info-bg);color:var(--info);border-left:4px solid var(--info)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.spinner{width:2rem;height:2rem;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}.spinner-sm{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes revealUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.loading-center{display:flex;justify-content:center;align-items:center;padding:3rem}.modal-overlay{position:fixed;inset:0;background:#0f0c0a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn var(--dur-base) var(--ease-out)}.modal{background:var(--surface);color:var(--ink);border-radius:var(--radius);padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideDown var(--dur-base) var(--ease-out);box-shadow:var(--shadow-lg);border:1px solid var(--line)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{font-size:1.35rem;font-weight:700;font-family:var(--font-display);text-transform:uppercase}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-.5rem -.5rem -.5rem 0;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:1.25rem;color:var(--ink-muted);transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.modal-close:hover{background:var(--surface-alt)}.modal-close:hover{color:var(--ink)}.skeleton-line,.skeleton-image{position:relative;overflow:hidden;background:var(--line);border-radius:var(--radius-sm)}.skeleton-line{height:.9em;margin-bottom:.6rem}.skeleton-line:last-child{width:70%}.skeleton-image{width:100%;aspect-ratio:16 / 10;border-radius:var(--radius)}.skeleton-card{border-radius:var(--radius);padding:1rem;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.skeleton-line:after,.skeleton-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite}:root[data-theme=dark] .skeleton-line:after,:root[data-theme=dark] .skeleton-image:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);background-size:200% 100%}.auth-page{min-height:calc(100vh - 130px);display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem;position:relative;background:var(--bg);overflow:hidden}.auth-bg{position:absolute;top:0;left:0;right:0;height:42%;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);clip-path:polygon(0 0,100% 0,100% 78%,0 100%);z-index:0}.auth-card{position:relative;z-index:1;width:100%;max-width:420px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:2.5rem 2rem;border:1px solid var(--line)}.auth-header{text-align:center;margin-bottom:1.75rem}.auth-header h1{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:1.85rem;color:var(--ink);letter-spacing:.01em}.auth-header p{color:var(--ink-muted);margin-top:.375rem;font-size:.9rem;font-family:var(--font-body)}.auth-divider{display:flex;align-items:center;margin:1.5rem 0;color:var(--ink-muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-divider span{padding:0 1rem;text-transform:lowercase}.auth-footer{text-align:center;color:var(--ink-muted);font-size:.9rem}.auth-footer a{color:var(--brand);font-weight:600}.auth-footer a.back-link{display:inline-flex;align-items:center;gap:.375rem}.input-icon-wrap{position:relative}.input-icon-wrap .form-control{padding-left:2.75rem}.input-icon-wrap .input-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:var(--ink-muted);pointer-events:none;display:flex}.input-icon-wrap .input-toggle-btn{position:absolute;right:.625rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--ink-muted);padding:.375rem;display:flex;border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-out)}.input-icon-wrap .input-toggle-btn:hover{color:var(--brand)}.diagonal-cut{clip-path:polygon(0 0,100% 0,100% 92%,0 100%)}.diagonal-cut-top{clip-path:polygon(0 8%,100% 0,100% 100%,0 100%)}.stripe{position:relative;display:inline-block}.stripe:after{content:"";position:absolute;left:.02em;right:.02em;bottom:-.08em;height:.22em;background:var(--brand);border-radius:2px;z-index:-1}[appReveal]{opacity:0;transform:translateY(16px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}[appReveal].is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){[appReveal]{opacity:1;transform:none;transition:none}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--ink-muted)}::selection{background:var(--brand);color:#fff}@media (max-width: 768px){.page-header h1{font-size:1.5rem}}
