body[data-page="preferencias"] { color-scheme: light; }
html[data-theme="dark"] body[data-page="preferencias"] { color-scheme: dark; }
.qp-shell { max-width:1100px; margin:0 auto; padding:24px 20px 90px; color:var(--text); }
.qp-header { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-bottom:20px; }
.qp-header h1 { margin:0 0 8px; }
.qp-header p { margin:0; color:var(--muted); }
.qp-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.qp-tabs button { min-height:44px; }
.qp-tabs [aria-selected="true"] { border:2px solid var(--purple,#8f62c5); }
.qp-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.qp-box { min-width:0; border:1px solid var(--stroke,#e2dce9); border-radius:18px; padding:20px; background:var(--panel,#fff); }
.qp-box h2 { font-size:18px; margin:0 0 12px; }
.qp-box label { display:block; margin-bottom:8px; }
.qp-box select,.qp-box input { width:100%; max-width:100%; min-width:0; box-sizing:border-box; font:inherit; padding:10px 12px; min-height:44px; border:1px solid var(--stroke,#d9cfdf); border-radius:10px; background:var(--surface,#fff); color:var(--text,#241c2d); }
.qp-box input[type="checkbox"] { width:20px; min-height:20px; flex:0 0 20px; }
.qp-box .qp-check { display:flex; align-items:center; gap:10px; min-height:44px; margin:0; }
.qp-prioridad { margin-bottom:12px; }
.qp-ayuda { display:block; color:var(--muted,#71617e); line-height:1.6; margin:8px 0 0; }
.qp-opciones { display:grid; gap:2px; }
.qp-larga { max-height:260px; overflow:auto; padding-right:6px; }
.qp-rango,.qp-altura-inputs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.qp-altura-inputs { margin-top:8px; }
.qp-altura-inputs input[hidden] { display:none; }
.qp-pie { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.qp-pie button { min-height:48px; }
.qp-error-texto { color:#bd3150; }
.qp-status { padding:14px; margin:16px 0; border-radius:12px; background:var(--surface,#f3edf7); }
.qp-shell [hidden] { display:none !important; }
.qp-nota { padding:16px 0; line-height:1.7; color:var(--muted,#71617e); }
@media(max-width:680px){.qp-form{grid-template-columns:1fr}.qp-shell{padding:18px 14px 60px}.qp-box{padding:16px}.qp-rango{gap:10px}}

.qp-altura-inputs.qp-altura-simple { grid-template-columns:1fr; }
.qp-altura-inputs label { margin:0; }
.qp-altura-inputs label > span { display:block; margin-bottom:6px; }
