.portal-shell{background:var(--portal-gradient);min-height:100vh;color:var(--text);overflow:auto}.portal-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 1.25rem;display:flex}.portal-brand-lockup{--brand-logo-height:28px;align-items:center;gap:.55rem;min-width:0;display:flex}.portal-brand-lockup--compact{--brand-logo-height:22px}.portal-brand{color:var(--accent);margin-right:.75rem;font-weight:700;text-decoration:none}.portal-auth-brand{--brand-logo-height:40px;justify-content:center;margin-bottom:.85rem;display:flex}.portal-subtitle{color:var(--text-muted);font-size:.85rem}.portal-nav{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.portal-nav a{color:var(--text-muted);font-size:.85rem;text-decoration:none}.portal-nav a:hover{color:var(--accent)}.portal-main{max-width:1200px}.portal-stat{background:var(--bg);border:1px solid var(--border);color:var(--text)}.portal-stat a{color:var(--accent);font-size:.8rem}.portal-auth{background:var(--surface);border:1px solid var(--border);max-width:420px;color:var(--text);margin:4rem auto;padding:1.5rem}.portal-auth .form-control{background:var(--input-bg);border-color:var(--control-border);color:var(--text)}.portal-auth .form-control:focus{background:var(--input-bg);color:var(--text);border-color:var(--accent);box-shadow:0 0 0 .15rem var(--focus-ring)}.portal-auth a{color:var(--accent)}.portal-footer{max-width:1200px;color:var(--text-muted)}.artwork-mat{background:#0b1329}.admin-house-picker{aspect-ratio:2;border:1px solid var(--border);cursor:crosshair;touch-action:none;width:100%;max-width:720px;display:block}.affiliate-dashboard{max-width:960px}.affiliate-env-badge{border:1px solid var(--warning);color:var(--warning);border-radius:999px;margin:0 0 .75rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.affiliate-steps{counter-reset:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.affiliate-step{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.3rem;font-size:.78rem;display:flex;position:relative}.affiliate-step:not(:last-child):after{content:"";background:var(--border);height:2px;position:absolute;top:.9rem;left:calc(50% + 1.1rem);right:calc(1.1rem - 50%)}.affiliate-step.is-done:not(:last-child):after{background:var(--success)}.affiliate-step-dot{border:2px solid var(--border);background:var(--bg);border-radius:50%;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-weight:700;display:inline-flex}.affiliate-step.is-done .affiliate-step-dot{border-color:var(--success);color:var(--success)}.affiliate-step.is-current{color:var(--text);font-weight:600}.affiliate-step.is-current .affiliate-step-dot{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.affiliate-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.affiliate-choice-option{border:1px solid var(--control-border);cursor:pointer;border-radius:.5rem;align-items:flex-start;gap:.6rem;min-height:44px;padding:.65rem .75rem;display:flex}.affiliate-choice-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.affiliate-choice-option input{margin-top:.2rem}.affiliate-choice-option:focus-within{box-shadow:0 0 0 3px var(--focus-ring)}.affiliate-link-card{border-color:var(--accent)}.affiliate-link-row{gap:.5rem;display:flex}.affiliate-link-row .form-control{flex:auto;min-width:0}.affiliate-copy-btn{flex:none;min-width:7.5rem;min-height:44px}.affiliate-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;display:grid}.affiliate-details{grid-template-columns:max-content 1fr;gap:.25rem 1rem;display:grid}.affiliate-details dt{color:var(--text-muted);font-weight:500}.affiliate-details dd{overflow-wrap:anywhere;margin:0}@media (max-width:575.98px){.affiliate-steps{gap:.25rem}.affiliate-step{font-size:.68rem}.affiliate-step:not(:last-child):after{display:none}.affiliate-choice{grid-template-columns:1fr}.affiliate-link-row{flex-direction:column}.affiliate-copy-btn{width:100%}}
