:root{--club-green:#0d6b2c;--club-green-dark:#084c20;--club-orange:#ee7d11}
.sidebar{background:linear-gradient(180deg,var(--club-green-dark),var(--club-green));position:relative;overflow:hidden}
.sidebar::after{content:"";position:absolute;left:14%;right:14%;bottom:7%;height:220px;background:url('complutum-basket-logo.png') center/contain no-repeat;opacity:.10;pointer-events:none;filter:grayscale(1) brightness(3)}
.sidebar>*{position:relative;z-index:1}.sidebar nav{overflow:visible}.sidebar nav button{padding:8px 12px;margin:1px 8px;border-radius:8px;font-size:13px}.sidebar nav button.active{background:var(--club-orange);color:#fff}.brand{min-height:74px}.brand img{max-width:68px;max-height:68px}
.family-session #mainNav button:not([data-view="dashboard"]){display:none}.family-welcome{padding:22px;border-radius:16px;background:linear-gradient(125deg,var(--club-green-dark),var(--club-green));color:white;margin-bottom:20px}.family-welcome h2{margin:0 0 8px}.family-welcome p{margin:0;opacity:.9}
.money-positive{color:#087a35}.money-negative{color:#b42318}.data-table small{white-space:normal}.cell-input{min-width:100px}
.module-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border:1px solid var(--line);border-radius:10px;padding:14px}.module-picker legend{font-weight:800}.module-picker .check{font-weight:600;font-size:12px}
@media(max-height:850px) and (min-width:900px){.sidebar nav button{padding:5px 10px;font-size:12px}.brand{min-height:58px}.sidebar::after{height:150px}}
