:root{--ink:#181818;--muted:#62625b;--accent:#fff21d;--accent-soft:#fffbc4;--paper:#f7f7f2;--line:#deded5;--white:#fff;--sidebar:#000;--danger:#a53331}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:var(--ink);text-underline-offset:3px}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--ink);background:var(--accent);color:var(--ink);padding:10px 17px;border-radius:7px;text-decoration:none;cursor:pointer;display:inline-block;font-weight:600}button:hover,.button:hover{filter:brightness(.95)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #887000;outline-offset:3px}.secondary{background:transparent;color:var(--ink)}.quiet{background:transparent;color:inherit;border:0;padding:5px}.danger{background:var(--danger);border-color:var(--danger);color:white}input,select,textarea{border:1px solid #bdbdb3;background:white;border-radius:6px;padding:9px 11px;color:var(--ink);max-width:100%}textarea{width:100%;resize:vertical}.sidebar{position:fixed;top:0;bottom:0;left:0;width:248px;background:var(--sidebar);color:#f5f5ed;padding:27px 17px;display:flex;flex-direction:column;overflow:auto}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none;padding:0 5px 28px;font-size:22px;font-weight:650;letter-spacing:-.5px}.brandmark{position:relative;display:block;flex:none;width:52px;height:52px;overflow:hidden}.brandmark img{position:absolute;width:124%;max-width:none;height:auto;left:-12%;top:-16%}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:1px}.sidebar nav a{display:block;color:#f0f0e8;text-decoration:none;padding:8px 13px;border-radius:6px;font-size:13px;margin:1px 0}.sidebar nav a:hover,.sidebar nav a[aria-current]{background:#262626;color:var(--accent)}.account{margin-top:auto;padding:25px 10px 0;color:#c8c8c0;display:flex;justify-content:space-between;align-items:center;font-size:11px}.workspace{margin-left:248px}.topbar{min-height:75px;padding:17px 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;letter-spacing:1px}.topbar form{display:flex;gap:9px;align-items:center;letter-spacing:0}.topbar select{padding:5px 15px}.topbar label{font-size:13px}main{max-width:1500px;margin:auto;padding:34px 42px 50px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}h1{font-size:31px;line-height:1.2;letter-spacing:-1px;margin:0}h2{font-size:18px;letter-spacing:-.3px;margin:0 0 16px}p{margin:10px 0 18px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:700;color:var(--muted);margin:0 0 8px}.lead{color:var(--muted);margin-bottom:25px}.metrics{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:10px;padding:25px 23px;display:flex;flex-direction:column;gap:8px}.metric span{font-size:13px;color:var(--muted)}.metric strong{font-size:31px;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums}.metric small{font-size:11px}.featured{background:var(--accent);border-color:#e5da16}.featured span{color:var(--ink)}.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:25px;margin-bottom:22px}.balances{display:flex;gap:40px}.balances div{display:flex;flex-direction:column;gap:4px;min-width:140px}.balances span{color:var(--muted);font-size:12px}.balances strong{font-size:22px;font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th{font-weight:600;color:var(--muted);font-size:11px}th,td{padding:13px 12px;border-bottom:1px solid #ebebe4;vertical-align:top}tbody tr:last-child td{border-bottom:0}td{font-variant-numeric:tabular-nums;max-width:260px;overflow-wrap:anywhere}.calculated{font-size:11px;min-width:150px}.calculated span{display:block}.row-actions a{display:block;white-space:nowrap;margin-bottom:7px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.search{display:flex;gap:10px;margin:0 0 20px}.search input{width:360px}.pagination{display:flex;gap:20px;justify-content:center;font-size:12px;color:var(--muted)}.empty{text-align:center;padding:55px;color:var(--muted)}.form-panel{max-width:850px}.form-panel form p{display:flex;flex-direction:column;gap:6px}.form-panel label{font-weight:600;font-size:13px}.form-panel input:not([type=checkbox]):not([type=hidden]),.form-panel select{width:100%}.form-panel input[type=checkbox]{width:20px;height:20px}.form-panel .helptext{font-size:12px;color:var(--muted)}.errorlist{color:var(--danger);padding-left:18px}.notice{padding:12px 17px;border:1px solid #ded797;border-radius:7px;background:var(--accent-soft);margin-bottom:20px}.notice.error,.panel.error{background:#fff2f0;border-color:#eec5c0}.success{color:var(--ink)}.save-status{font-size:11px;color:var(--muted)}.counts{display:flex;flex-wrap:wrap;gap:10px}.counts span{padding:6px 12px;background:var(--paper);border-radius:6px;font-size:12px}summary{cursor:pointer;font-weight:600}.multiline{white-space:pre-wrap}.filters{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.filters label{display:flex;flex-direction:column;gap:6px}.stat-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}footer{padding:10px 42px 25px;font-size:10px;color:var(--muted)}.anonymous{margin:0}.login{max-width:440px;margin:25px auto}.mobile-nav{display:none}.sr-only,.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:white;z-index:10;padding:10px}@media(max-width:1100px){main{padding:28px 24px}.topbar{padding:16px 24px}.metrics{gap:10px}.metric{padding:20px 16px}.metric strong{font-size:26px}.page-head{align-items:start;flex-direction:column}.balances{gap:22px}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:15px 20px;display:block}.brand{padding-bottom:12px}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{font-size:13px}.account{position:absolute;top:21px;right:15px;padding:0;display:block}.workspace{margin:0}.topbar{padding:12px 20px;min-height:55px}.topbar>span{display:none}.topbar form{margin-left:auto}main{padding:24px 17px 40px}h1{font-size:26px}.metrics{grid-template-columns:1fr}.metric{padding:20px}.panel{padding:18px}.balances{flex-wrap:wrap;gap:20px}.balances div{min-width:110px}.search input{width:100%}footer{padding:10px 17px}.filters{display:grid;grid-template-columns:1fr}.filters select{width:100%}}

.year-chart{margin:20px 0}.chart-track{position:relative;margin:8px 0;min-height:32px;background:var(--paper);border-radius:5px;overflow:hidden}.chart-track>span:last-child{position:relative;padding:5px 10px;display:block;font-size:12px}.chart-bar{position:absolute;top:0;bottom:0;left:0;opacity:.22;min-width:0}.chart-bar.income{background:#887000}.chart-bar.expense{background:#67675f}
/* Grouped navigation and readable record tables. */
.sidebar .desktop-nav{flex:1}.sidebar nav a{font-size:14px;padding:12px 13px;border-left:3px solid transparent}.sidebar nav a[aria-current]{border-left-color:var(--accent)}.sidebar nav .settings-link{margin-top:24px;border-top:1px solid #383833;border-radius:0 0 6px 6px}.account{display:block;flex-shrink:0;padding-top:20px}.account a{color:#f0f0e8;display:block;margin-bottom:5px}.workspace,main{min-width:0}.area-tabs{display:flex;gap:7px;overflow-x:auto;border-bottom:1px solid var(--line);padding:0 0 1px;margin-bottom:26px}.area-tabs a{padding:11px 16px;text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent}.area-tabs a[aria-current]{border-color:var(--ink);font-weight:700}.breadcrumbs{font-size:13px;margin-bottom:15px;display:flex;gap:8px}.list-filters{margin-bottom:18px;gap:12px}.list-filters input{width:260px}.list-filters select{max-width:220px}.filtered-total{display:flex;gap:10px;flex-wrap:wrap}.filtered-total span,.muted{color:var(--muted)}.records-table{padding:0;max-height:70vh;overflow:auto}.records-table th{position:sticky;top:0;background:#f3f3ea;z-index:2;white-space:nowrap}.records-table th a{color:var(--ink);text-decoration:none;display:block;padding:3px 0}.records-table td{padding:12px;min-height:46px;vertical-align:middle}.records-table td a{display:block;min-height:22px;padding:4px 0;font-weight:600}.records-table td small{display:block;font-weight:400;font-size:11px}.records-table tr:hover td{background:#fffde4}.numeric{text-align:right;white-space:nowrap}.mobile-sort{display:none}.detail-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px}.detail-metrics strong{font-size:24px}.record-data{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px 24px;margin:0}.record-data dt{color:var(--muted);font-size:12px}.record-data dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.permission-row{display:grid;grid-template-columns:minmax(180px,1fr) 3fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.badge{display:inline-block;background:#f3f3ea;border-radius:5px;font-size:12px;padding:4px 7px;margin:2px}.list-block{margin-bottom:38px}.pagination{flex-wrap:wrap;margin:17px 0 25px}.checkbox-label input{width:auto}.panel{min-width:0}.table-wrap{max-width:100%}
@media(min-width:761px){.records-table td:first-child{position:sticky;left:0;background:white;z-index:1}.records-table th:first-child{left:0;z-index:3}}
@media(max-width:760px){.account{position:static;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}.account a{margin:0}.area-tabs{margin-right:-17px;padding-right:20px}.list-filters{display:flex;align-items:end}.list-filters label{flex:1;min-width:140px}.list-filters input,.list-filters select{width:100%;max-width:100%}.mobile-sort{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-bottom:20px}.mobile-sort label{display:flex;flex-direction:column;font-size:12px;gap:4px}.permission-row{grid-template-columns:1fr;gap:6px}.records-table.movimientos,.records-table.socios,.records-table.pedidosBebidas{max-height:none}.records-table.movimientos table,.records-table.socios table,.records-table.pedidosBebidas table{display:block}.records-table.movimientos thead,.records-table.socios thead,.records-table.pedidosBebidas thead{display:none}.records-table.movimientos tbody,.records-table.socios tbody,.records-table.pedidosBebidas tbody{display:block}.records-table.movimientos tr,.records-table.socios tr,.records-table.pedidosBebidas tr{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:12px;border-bottom:1px solid var(--line);gap:4px 12px}.records-table.movimientos td,.records-table.socios td,.records-table.pedidosBebidas td{display:none;border:0;padding:2px;max-width:none;min-width:0;overflow-wrap:anywhere;white-space:normal}.records-table.movimientos td[data-label=concepto],.records-table.movimientos td[data-label=fecha],.records-table.movimientos td[data-label=importe],.records-table.movimientos td[data-label=tipo],.records-table.socios td[data-label=nombre],.records-table.socios td[data-label=pendiente],.records-table.socios td[data-label=activo],.records-table.pedidosBebidas td[data-label=producto],.records-table.pedidosBebidas td[data-label=coste_final],.records-table.pedidosBebidas td[data-label=stock],.records-table.pedidosBebidas td[data-label=proveedor],.records-table td.empty{display:block}.records-table.socios td[data-label=pendiente]::before{content:'Pendiente ';font-size:11px}.records-table.movimientos td[data-label=concepto],.records-table.socios td[data-label=nombre],.records-table.pedidosBebidas td[data-label=producto]{grid-column:1}.records-table .empty{grid-column:1 / -1}}

@media(min-width:761px){.desktop-nav{min-height:380px}.desktop-nav nav{height:100%;display:flex;flex-direction:column}.desktop-nav nav .settings-link{margin-top:auto}.sidebar{overflow:auto}}

@media(max-width:760px){.records-table.movimientos td,.records-table.socios td,.records-table.pedidosBebidas td{min-height:0}.records-table.movimientos td[data-label=concepto],.records-table.socios td[data-label=nombre],.records-table.pedidosBebidas td[data-label=producto]{grid-row:1;grid-column:1}.records-table.movimientos td[data-label=importe],.records-table.socios td[data-label=pendiente],.records-table.pedidosBebidas td[data-label=coste_final]{grid-row:1;grid-column:2}.records-table.movimientos td[data-label=fecha],.records-table.socios td[data-label=activo],.records-table.pedidosBebidas td[data-label=proveedor]{grid-row:2;grid-column:1;font-size:12px;color:var(--muted)}.records-table.movimientos td[data-label=tipo]{grid-row:2;grid-column:2;font-size:12px;color:var(--muted)}.records-table.pedidosBebidas td[data-label=stock]{grid-row:3;grid-column:1 / -1;font-size:12px;color:var(--muted)}}

/* Original barraca logos: preserve the supplied files and crop only their display. */
.sidebar a:focus-visible,.sidebar button:focus-visible,.sidebar summary:focus-visible{outline-color:var(--accent)}
.sidebar nav a[aria-current]{font-weight:700}.sidebar .quiet{color:#f0f0e8}
.area-tabs a[aria-current]{background:var(--accent-soft)}
input[type=checkbox]{accent-color:var(--ink)}
.login{padding:32px;box-shadow:0 10px 30px #18181808;border-top:5px solid var(--accent)}
.login-brand{text-align:center;margin-bottom:26px}.login-logo{position:relative;display:block;overflow:hidden;width:112px;height:112px;margin:0 auto 12px}.login-logo img{position:absolute;width:124%;height:auto;left:-12%;top:-16%}.login-brand strong{display:block;font-size:25px;letter-spacing:-.6px}.login-brand small{color:var(--muted);font-size:12px}
.login form p{display:flex;flex-direction:column;gap:6px}.login label{font-weight:600;font-size:13px}.login input:not([type=hidden]){width:100%}.login form button{width:100%;margin-top:6px}
.anonymous .topbar{justify-content:center;background:var(--sidebar);color:var(--accent);border-bottom:3px solid var(--accent)}
@media(max-width:760px){.anonymous .topbar>span{display:block}.login{margin:8px auto;padding:24px}.brand{font-size:22px}.brandmark{width:46px;height:46px}.sidebar{border-bottom:3px solid var(--accent)}}
