:root{--blue:#155a97;--pink:#de167d;--muted:#586c86;--line:#dfe7f1}body{background:#f4f7fc}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:26px 16px;z-index:20;border-top:5px solid var(--pink);overflow:auto}.sidebar .brand{min-width:0;gap:8px;margin-bottom:36px}.sidebar .brand-logo{width:55px;height:55px}.sidebar .brand strong{font-size:17px}.sidebar nav{display:grid;gap:9px}.sidebar nav a{padding:14px 12px;border-radius:12px;display:flex;align-items:center;gap:8px;color:#51637d;font-size:14px;font-weight:650}.sidebar nav a:hover{background:#f5f8fc}.sidebar nav a.selected{color:var(--blue);background:#eaf3fc;box-shadow:inset 4px 0 var(--pink)}.sidebar-account{margin-top:auto;padding:28px 8px 0}.sidebar-account small{display:block;margin:6px 0 18px;color:var(--muted)}.workspace{margin:0 0 0 250px;max-width:none;padding:28px 32px 48px}.login-workspace{margin:auto}.login-logo{width:130px;height:100px;object-fit:contain}.intro h1{font-size:30px}.intro h1 .stock-icon{color:var(--blue);width:28px;height:28px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stats strong{font-size:25px;letter-spacing:0}.stats article{border-top:3px solid var(--blue)}.stats article:nth-child(3){border-top-color:var(--pink)}.stats .stock-icon{color:var(--blue);width:25px;height:25px;margin-bottom:8px}.stats p{font-size:12px}.metric-line{display:block;font-weight:750;color:var(--blue);margin:8px 0}.material-line{display:grid;grid-template-columns:minmax(160px,2fr) 1fr auto;gap:12px;align-items:end;background:#f7faff;padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.line-editor[data-kind=recovered] .material-line{grid-template-columns:2fr 1fr 2fr auto}.add-line{margin-top:6px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title a{color:var(--blue)}fieldset{border:0;padding:0;margin:16px 0;min-width:0}legend{font-weight:750;margin-bottom:12px;font-size:16px}.hint{font-size:12px;margin-top:10px}.danger{border-color:#b42348;color:#a81940;background:#fff4f6}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.decision-option{display:flex;flex-direction:row;align-items:center;border:1px solid var(--line);border-radius:12px;padding:14px;font-size:14px}.decision-option input{width:auto}.decision-option:has(input:checked){border:2px solid var(--blue);background:#eff7ff}.decision-option.danger:has(input:checked){border-color:#b42348;background:#fff0f3}.audit-card{margin-bottom:16px}.audit-card h3{margin:0 0 10px}.audit-meta{margin:0 0 14px;font-size:13px}.manual{max-width:1000px}.manual p{margin:10px 0}.manual li{line-height:1.7;margin:7px 0}.manual h2{margin-top:12px}.manual table{min-width:550px}.manual-nav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.manual-nav a{color:var(--blue);text-decoration:underline}.tablewrap{max-height:650px}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.filters label{min-width:170px}.tablewrap td{vertical-align:top}input[type=radio]{accent-color:var(--pink)}[hidden]{display:none!important}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.catalog-list details{margin-top:12px}.muted{color:var(--muted)}.pagination{display:flex;justify-content:space-between;margin-top:16px}.pagination a{color:var(--blue);text-decoration:underline}
@media(max-width:1150px){.workspace{padding:22px 18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:1fr}.line-editor[data-kind=recovered] .material-line{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.sidebar{position:static;width:auto;overflow:visible;padding:14px}.sidebar .brand{margin-bottom:12px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.sidebar nav a{padding:10px;font-size:12px}.sidebar-account{margin:12px 0 0;padding:8px 0 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sidebar-account small{margin:0}.sidebar-account form{margin-left:auto}.workspace{margin:0;padding:20px 12px}.intro h1{font-size:26px}.material-line,.line-editor[data-kind=recovered] .material-line{grid-template-columns:1fr 1fr}.material-line label:first-child{grid-column:1/-1}.decision-grid{grid-template-columns:1fr}.stats strong{font-size:23px}.fields{grid-template-columns:1fr}.card{padding:17px}.login{margin:20px auto}}
@media print{.sidebar,button,.filter,.filters,.manual-nav,footer{display:none}.workspace{margin:0;padding:0}.card{break-inside:avoid;box-shadow:none}.tablewrap{overflow:visible;max-height:none}}

/* Retiro/recojo: requisitos visibles también en móvil. */
.withdrawal-notice {margin:16px 0;padding:18px;border:2px solid #d91681;border-left-width:7px;border-radius:12px;background:#fff0f7;color:#652044;}
.withdrawal-notice strong {font-size:1.15rem;}
.withdrawal-notice p {margin:8px 0;}
.required-highlight {border:2px solid #d91681!important;border-radius:10px;padding:14px;background:#fff6fb;}
.required-highlight small {display:block;color:#9c155c;font-weight:700;margin-top:8px;}
[hidden] {display:none!important;}
