:root{--color-primary:#fe5000;--color-primary-hover:#ff6b35;--color-primary-focus:#cc4000;--color-on-primary:#fff;--color-secondary:#720072;--color-secondary-hover:#9b1e9b;--color-secondary-dark:#520052;--canvas:#f5f6f7;--surface-1:#fff;--surface-2:#f0f1f3;--surface-3:#e8e9ec;--surface-4:#e2e3e7;--hairline:#d1d5db;--hairline-strong:#9ca3af;--hairline-tertiary:#6b7280;--ink:#111213;--ink-muted:#3a3d44;--ink-subtle:#6b6f7a;--ink-tertiary:#9498a3;--inverse-canvas:#111213;--inverse-surface-1:#1c1e21;--inverse-ink:#f7f8f8;--semantic-success:#16a34a;--semantic-warning:#d97706;--semantic-error:#dc2626;--semantic-info:#2563eb;--semantic-overlay:#0006;--font-inter:"Inter";--font-jetbrains:"JetBrains Mono";--font-display:var(--font-inter), "SF Pro Display", -apple-system, system-ui, sans-serif;--font-body:var(--font-inter), "SF Pro Text", -apple-system, system-ui, sans-serif;--font-mono:var(--font-jetbrains), "SF Mono", ui-monospace, monospace;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-xxl:24px;--radius-pill:9999px;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--space-section:96px;--sidebar-width:240px;--sidebar-width-collapsed:64px;--navbar-height:56px;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-linear:linear;--dur-instant:.1s;--dur-fast:.18s;--dur-normal:.28s;--dur-slow:.4s;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000f;--shadow-md:0 4px 12px #0000001a, 0 2px 4px #0000000f;--shadow-lg:0 8px 24px #0000001f, 0 4px 8px #0000000f;--shadow-cta:0 4px 20px #fe50004d;--shadow-cta-lg:0 8px 32px #fe500066}[data-theme=dark]{--canvas:#010102;--surface-1:#0f1011;--surface-2:#141516;--surface-3:#18191a;--surface-4:#191a1b;--hairline:#23252a;--hairline-strong:#34343a;--hairline-tertiary:#3e3e44;--ink:#f7f8f8;--ink-muted:#d0d6e0;--ink-subtle:#8a8f98;--ink-tertiary:#62666d;--inverse-canvas:#fff;--inverse-surface-1:#f5f6f6;--inverse-ink:#000;--semantic-success:#27a644;--semantic-warning:#f59e0b;--semantic-error:#ef4444;--semantic-info:#3b82f6;--semantic-overlay:#000000a6;--shadow-sm:none;--shadow-md:none;--shadow-lg:none}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-optical-sizing:auto;scroll-behavior:smooth;font-size:100%}body{font-family:var(--font-body);letter-spacing:-.003em;color:var(--ink);background-color:var(--canvas);min-height:100vh;font-size:1rem;line-height:1.5;overflow-x:hidden}img,video{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.text-display-xl{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2.5rem,6vw,5rem);font-weight:600;line-height:1.05}.text-display-lg{font-family:var(--font-display);letter-spacing:-.032em;font-size:clamp(2rem,4vw,3.5rem);font-weight:600;line-height:1.1}.text-display-md{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;line-height:1.15}.text-headline{font-family:var(--font-display);letter-spacing:-.021em;font-size:1.75rem;font-weight:600;line-height:1.2}.text-card-title{font-family:var(--font-display);letter-spacing:-.018em;font-size:1.375rem;font-weight:500;line-height:1.25}.text-subhead{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.25rem;font-weight:400;line-height:1.4}.text-body-lg{letter-spacing:-.006em;font-size:1.125rem;font-weight:400;line-height:1.5}.text-body{letter-spacing:-.003em;font-size:1rem;font-weight:400;line-height:1.5}.text-body-sm{letter-spacing:0;font-size:.875rem;font-weight:400;line-height:1.5}.text-caption{letter-spacing:0;color:var(--ink-subtle);font-size:.75rem;font-weight:400;line-height:1.4}.text-button{letter-spacing:0;font-size:.875rem;font-weight:500;line-height:1.2}.text-eyebrow{letter-spacing:.025em;text-transform:uppercase;color:var(--ink-subtle);font-size:.8125rem;font-weight:500;line-height:1.3}.text-mono{font-family:var(--font-mono);letter-spacing:0;font-size:.8125rem;font-weight:400;line-height:1.5}.text-primary{color:var(--ink)}.text-secondary{color:var(--ink-muted)}.text-subtle{color:var(--ink-subtle)}.text-tertiary{color:var(--ink-tertiary)}.text-accent{color:var(--color-primary)}.page-container{min-height:calc(100vh - var(--navbar-height));padding:var(--space-xl) var(--space-lg);flex:1;width:100%;max-width:1280px;margin:0 auto}.page-header{margin-bottom:var(--space-xl);padding-top:var(--space-lg)}.page-section{margin-bottom:var(--space-xxl)}.card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-lg);transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out)}.card:hover{background:var(--surface-2);border-color:var(--hairline-strong)}.card-featured{background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-lg);padding:var(--space-lg)}.card-screenshot{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-xl);padding:16px 20px;overflow:visible}.card-dialog{background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-xl);padding:var(--space-xl)}.card-cta{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-xxl)}.btn{align-items:center;gap:var(--space-xs);border-radius:var(--radius-md);letter-spacing:0;cursor:pointer;transition:background var(--dur-instant) var(--ease-out), border-color var(--dur-instant) var(--ease-out), transform var(--dur-instant) var(--ease-out), box-shadow var(--dur-instant) var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;outline:none;padding:8px 14px;font-size:.875rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:focus-visible{outline-offset:2px;outline:2px solid #fe500080}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000;box-shadow:0 1px 2px #0000004d}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-cta)}.btn-primary:active{background:var(--color-primary-focus)}.btn-secondary{background:var(--surface-1);color:var(--ink);border-color:var(--hairline)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--hairline-strong)}.btn-tertiary{color:var(--ink);background:0 0;border-color:#0000}.btn-tertiary:hover{background:var(--surface-1)}.btn-inverse{background:var(--inverse-canvas);color:var(--inverse-ink);border-color:#0000}.btn-inverse:hover{background:var(--inverse-surface-1)}.btn-danger{background:var(--semantic-error);color:#fff;border-color:#0000}.btn-danger:hover{filter:brightness(1.1)}.btn-action-approve{color:#047857;background:#10b9811f;border:1px solid #10b98166;font-weight:700}.btn-action-approve:hover{background:#10b98138}.btn-action-pending{color:#b45309;background:#f59e0b1f;border:1px solid #f59e0b66;font-weight:700}.btn-action-pending:hover{background:#f59e0b38}.btn-action-refuse{color:#b91c1c;background:#ef44441f;border:1px solid #ef444466;font-weight:700}.btn-action-refuse:hover{background:#ef444438}.btn-action-delete{color:#b91c1c;background:#ef44441f;border:1px solid #ef444466;font-weight:700}.btn-action-delete:hover{background:#ef444438}.btn-action-purple{color:#720072;background:#7200721f;border:1px solid #72007266;font-weight:700}.btn-action-purple:hover{background:#72007238}.btn-action-orange{color:#cc4000;background:#fe50001f;border:1px solid #fe500066;font-weight:700}.btn-action-orange:hover{background:#fe500038}.btn-action-secondary{background:var(--surface-2);border:1px solid var(--hairline-strong);color:var(--ink);font-weight:700}.btn-action-secondary:hover{background:var(--surface-3)}[data-theme=dark] .btn-action-approve{color:#34d399;background:#10b98126;border:1px solid #10b9814d}[data-theme=dark] .btn-action-pending{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}[data-theme=dark] .btn-action-refuse{color:#fca5a5;background:#ef44441a;border:1px solid #ef444433}[data-theme=dark] .btn-action-delete{color:#f87171;background:#ef444426;border:1px solid #ef44444d}[data-theme=dark] .btn-action-purple{color:#d946ef;background:#72007226;border:1px solid #7200724d}[data-theme=dark] .btn-action-orange{color:#ff7a3b;background:#fe500026;border:1px solid #fe50004d}[data-theme=dark] .btn-action-secondary{color:#e4e4e7;background:#ffffff14;border:1px solid #ffffff26}.btn-sm{border-radius:var(--radius-sm);padding:6px 10px;font-size:.8125rem}.btn-lg{border-radius:var(--radius-md);padding:10px 20px;font-size:1rem}.btn-icon{border-radius:var(--radius-md);padding:8px}.btn[data-loading=true]{opacity:.7;cursor:not-allowed;pointer-events:none}.input{background:var(--surface-1);width:100%;color:var(--ink);border:1px solid var(--hairline);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease-out), outline var(--dur-fast) var(--ease-out);outline:none;padding:8px 12px;font-size:1rem;line-height:1.5;display:block}.input::placeholder{color:var(--ink-tertiary)}.input:focus{border-color:var(--hairline-strong);outline-offset:0;outline:2px solid #fe500059}.input:disabled{opacity:.4;cursor:not-allowed}.input-label{color:var(--ink-muted);margin-bottom:var(--space-xs);letter-spacing:0;font-size:.875rem;font-weight:500;display:block}.input-error{border-color:var(--semantic-error)}.input-error:focus{outline-color:#ef444459}.input-hint{color:var(--ink-subtle);margin-top:var(--space-xxs);font-size:.75rem}.input-error-msg{color:var(--semantic-error);margin-top:var(--space-xxs);font-size:.75rem}.badge{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-muted);border:1px solid var(--hairline);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:500;line-height:1.4;display:inline-flex}.badge-success{color:var(--semantic-success);background:#16a34a1f;border-color:#16a34a40}.badge-warning{color:var(--semantic-warning);background:#d977061f;border-color:#d9770640}.badge-error{color:var(--semantic-error);background:#dc26261f;border-color:#dc262640}.badge-primary{color:var(--color-primary);background:#fe50001f;border-color:#fe500040}.badge-purple{color:var(--color-secondary);background:#7200721f;border-color:#72007240}.badge-counter{background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:600;display:inline-flex}.table-wrapper{width:100%;min-height:250px;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table-th{padding:var(--space-md) var(--space-md);text-align:left;color:var(--ink-subtle);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--hairline);white-space:nowrap;background:var(--surface-1);z-index:1;font-size:.75rem;font-weight:500;position:sticky;top:0}.table-td{padding:var(--space-md) var(--space-md);color:var(--ink);border-bottom:1px solid var(--hairline);vertical-align:middle;font-size:.875rem}.table-tr{transition:background var(--dur-instant) var(--ease-out)}.table-tr:hover .table-td{background:var(--surface-2)}.table-tr:last-child .table-td{border-bottom:none}.skeleton{background:linear-gradient(90deg, var(--surface-1) 25%, var(--surface-2) 50%, var(--surface-1) 75%);border-radius:var(--radius-md);background-size:400% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton-text{height:1em;margin:4px 0}.skeleton-title{width:60%;height:1.5em}.skeleton-circle{border-radius:var(--radius-pill);width:40px;height:40px}.divider{background:var(--hairline);height:1px;margin:var(--space-lg) 0;border:none}.divider-strong{background:var(--hairline-strong)}.state-empty{padding:var(--space-xxl) var(--space-lg);text-align:center;color:var(--ink-subtle);justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;min-height:200px;display:flex}.state-empty-icon{opacity:.4;font-size:2.5rem}.state-loading{padding:var(--space-xxl);justify-content:center;align-items:center;min-height:200px;display:flex}.spinner{border:2px solid var(--hairline-strong);border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid-2{gap:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.bg-canvas{background:var(--canvas)}.bg-surface-1{background:var(--surface-1)}.bg-surface-2{background:var(--surface-2)}.overflow-hidden{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-pill{border-radius:var(--radius-pill)}.p-lg{padding:var(--space-lg)}.p-md{padding:var(--space-md)}.p-sm{padding:var(--space-sm)}.mt-lg{margin-top:var(--space-lg)}.mb-lg{margin-bottom:var(--space-lg)}.transition-fast{transition:all var(--dur-fast) var(--ease-out)}.transition-normal{transition:all var(--dur-normal) var(--ease-out)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--hairline-strong);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--hairline-tertiary)}.overlay{background:var(--semantic-overlay);z-index:50;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}.hide-on-mobile{display:none!important}@media (min-width:768px){.hide-on-mobile{display:table-cell!important}}.hide-on-tablet{display:none!important}@media (min-width:1024px){.hide-on-tablet{display:table-cell!important}}.grid-layout{gap:var(--space-lg);grid-template-columns:1fr;align-items:start;display:grid}@media (min-width:1024px){.grid-layout-left-sidebar{grid-template-columns:320px 1fr}.grid-layout-right-sidebar{grid-template-columns:1fr 340px}}@media (max-width:768px){.btn{min-height:42px;padding:10px 16px;font-size:.9375rem}.btn-sm{min-height:38px;padding:8px 12px;font-size:.875rem}.input{padding:10px 12px;font-size:.9375rem}.table-td,.table-th{padding:var(--space-sm) var(--space-sm);font-size:.8125rem}}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-container{padding:var(--space-md)}}.input-floating-wrapper{width:100%;position:relative}.input-floating{width:100%;color:var(--ink);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:0 0;outline:none;padding:14px;font-size:1rem;line-height:1.5;transition:border-color .2s,box-shadow .2s;display:block}.input-floating::placeholder{color:#0000}.input-floating:focus{border-color:var(--color-primary);border-width:2px;padding:13px}.input-floating-label{color:var(--ink-muted);pointer-events:none;background:var(--surface-1);transform-origin:0 0;margin-left:-4px;padding:0 4px;font-size:1rem;transition:transform .2s,font-size .2s,color .2s,top .2s;position:absolute;top:14px;left:14px}.card-screenshot .input-floating-label{background:var(--surface-1)}.input-floating:focus~.input-floating-label,.input-floating:not(:placeholder-shown)~.input-floating-label,.input-floating[data-has-value=true]~.input-floating-label{color:var(--color-primary);font-size:.75rem;top:-8px}.input-floating:not(:focus):not(:placeholder-shown)~.input-floating-label,.input-floating:not(:focus)[data-has-value=true]~.input-floating-label{color:var(--ink-muted)}.ql-snow .ql-editor p{margin-bottom:.5em}
