/* Ohole visual refresh — presentation-only, retains existing IDs and JS hooks */
:root{--ohole-red:#e32649;--ohole-pink:#ff5b78;--ohole-ink:#201820;--ohole-shadow:0 16px 44px rgba(75,22,40,.10)}
body{font-family:'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.auth-gate{background:radial-gradient(circle at 85% 15%,rgba(255,91,120,.19),transparent 35%),radial-gradient(circle at 12% 80%,rgba(227,38,73,.09),transparent 40%),#fff8f9}
.auth-brand{letter-spacing:-.035em}
.auth-brand strong{font-weight:800}
.auth-brand span{color:var(--ohole-red)}
.auth-card{border-radius:26px;box-shadow:var(--ohole-shadow);border:1px solid rgba(227,38,73,.11)}
.auth-card input,.auth-card select,.auth-card textarea{border-radius:12px}
.auth-card button[type=submit],.welcome-actions button:first-child{background:linear-gradient(135deg,#e32649,#ff5b78);color:white;border:0;border-radius:13px;box-shadow:0 8px 20px rgba(227,38,73,.18)}
.app-shell{min-height:100dvh}
.sidebar{border-right:1px solid rgba(128,78,93,.12)}
.brand{letter-spacing:-.035em}
.nav-item{border-radius:13px;transition:background .2s ease,transform .2s ease}
.nav-item:hover{transform:translateX(2px)}
.nav-item.active{background:linear-gradient(115deg,rgba(227,38,73,.14),rgba(255,91,120,.07));color:#d91c43}
.profile-card,.daily-card,.reward-card,.settings-card{border-radius:20px;box-shadow:0 10px 28px rgba(50,24,33,.055)}
.section-head{letter-spacing:-.02em}
button{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f46b89;outline-offset:2px}
img,video{max-width:100%}
@media(max-width:760px){.app-shell{min-height:100dvh}.auth-card{border-radius:22px}.sidebar{border-right:0}.profile-card,.daily-card,.reward-card,.settings-card{border-radius:16px}}
@media(prefers-reduced-motion:reduce){.nav-item{transition:none}.nav-item:hover{transform:none}}
