:root{
  --forest:#18372f;--forest2:#234b3f;--ink:#24312c;--muted:#75807b;
  --canvas:#f4f3ed;--paper:#fffefa;--line:#e2e6df;--gold:#c49a5a;
  --green:#4f8068;--red:#b95f55;--blue:#587e8b;--clay:#aa7058;
  --shadow:0 12px 34px rgba(31,52,44,.075)
}
*{box-sizing:border-box}
html{background:var(--canvas)}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px}
button,input,select,textarea{font:inherit;color:inherit}
button,a,select{touch-action:manipulation}
a{text-decoration:none;color:inherit}
[hidden]{display:none!important}
.app-shell{min-height:100vh}
.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;display:flex;width:240px;flex-direction:column;background:radial-gradient(circle at 10% 4%,rgba(255,255,255,.07),transparent 30%),var(--forest);color:#edf3ef;transition:transform .2s ease}
.brand{display:flex;height:94px;align-items:center;gap:12px;padding:0 23px;border-bottom:1px solid rgba(255,255,255,.1)}
.brand-symbol,.auth-brand>span{display:grid;width:40px;height:40px;flex:none;place-items:center;border:1px solid rgba(229,199,128,.75);border-radius:50%;color:#e5c780;font-family:Georgia,serif;font-size:21px;font-style:italic}
.brand strong,.brand small,.user-box strong,.user-box small,.auth-brand strong,.auth-brand small{display:block}
.brand strong,.auth-brand strong{font-family:Georgia,serif;font-size:18px;font-weight:500;letter-spacing:.15em}
.brand small,.auth-brand small{margin-top:3px;color:rgba(255,255,255,.5);font-size:8px;letter-spacing:.17em}
.sidebar nav{flex:1;overflow-y:auto;padding:22px 14px}
.sidebar nav p{margin:5px 11px 10px;color:rgba(255,255,255,.35);font-size:9px;font-weight:700;letter-spacing:.17em}
.sidebar nav p:not(:first-child){margin-top:27px}
.sidebar nav a{position:relative;display:flex;height:43px;align-items:center;gap:13px;margin-bottom:3px;padding:0 13px;border-radius:10px;color:rgba(255,255,255,.67);font-size:12px;transition:.16s ease}
.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}
.sidebar nav a.active:before{position:absolute;left:-14px;width:3px;height:23px;border-radius:0 4px 4px 0;background:#d7b66e;content:""}
.sidebar nav a i{display:grid;width:22px;place-items:center;font-size:16px;font-style:normal}
.sidebar nav a em{display:grid;min-width:22px;height:20px;margin-left:auto;place-items:center;border-radius:10px;background:#dab76d;color:var(--forest);font-size:9px;font-style:normal;font-weight:800}
.user-box{display:flex;min-height:76px;align-items:center;gap:10px;padding:12px 17px;border-top:1px solid rgba(255,255,255,.1)}
.avatar{display:grid;width:36px;height:36px;flex:none;place-items:center;border-radius:50%;background:#d8b66d;color:var(--forest);font-size:12px;font-weight:800}
.user-box>span:nth-child(2){min-width:0}
.user-box strong{overflow:hidden;font-size:10px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.user-box small{margin-top:3px;color:rgba(255,255,255,.48);font-size:8px}
.user-box>a{margin-left:auto;color:rgba(255,255,255,.55);font-size:18px}
.main{min-height:100vh;margin-left:240px}
.topbar{position:sticky;z-index:40;top:0;display:flex;height:94px;align-items:center;padding:0 clamp(24px,3.5vw,52px);border-bottom:1px solid var(--line);background:rgba(244,243,237,.92);backdrop-filter:blur(14px)}
.topbar>div:first-of-type>span,.eyebrow{color:#8b958f;font-size:9px;font-weight:750;letter-spacing:.16em}
.topbar h1{margin:4px 0 0;font-family:Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-.02em}
.top-actions{display:flex;align-items:center;gap:9px;margin-left:auto}
.icon-button{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:#5d6b65;cursor:pointer;font-size:21px}
.primary-button,.secondary-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:0 17px;border:0;border-radius:10px;cursor:pointer;font-size:11px;font-weight:750}
.primary-button{background:var(--forest);color:#fff;box-shadow:0 7px 16px rgba(24,55,47,.14)}
.primary-button:hover{background:var(--forest2)}
.secondary-button{border:1px solid var(--line);background:#fff}
.primary-button.full{width:100%;margin-top:8px}
.mobile-menu{display:none}
.content{max-width:1540px;margin:0 auto;padding:28px clamp(24px,3.5vw,52px) 55px}
.intro,.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px}
.intro h2,.page-heading h2{margin:4px 0 3px;font-family:Georgia,serif;font-size:24px;font-weight:500}
.intro p,.page-heading p{margin:0;color:var(--muted);font-size:11px}
.date-chip{padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.55);color:#6f7d76;font-size:9px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}
.stats-grid.compact{margin-bottom:18px}
.stat-card,.panel{border:1px solid rgba(218,223,214,.85);background:var(--paper);box-shadow:var(--shadow)}
.stat-card{display:flex;min-height:111px;align-items:center;gap:13px;padding:17px;border-radius:14px}
.stat-card>i{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:11px;font-size:17px;font-style:normal;font-weight:700}
.tone-green{background:#e2ede5;color:var(--green)}.tone-blue{background:#e3ecef;color:var(--blue)}.tone-gold{background:#f3ead9;color:#9e7139}.tone-clay{background:#f1e5df;color:var(--clay)}
.stat-card span small,.stat-card span strong,.stat-card span em{display:block}
.stat-card span small{color:#89928e;font-size:8px;font-weight:800;letter-spacing:.12em}
.stat-card span strong{margin-top:5px;font-family:Georgia,serif;font-size:22px;font-weight:600;letter-spacing:-.025em}
.stat-card span em{margin-top:4px;color:#8b958f;font-size:8px;font-style:normal}
.panel{overflow:hidden;border-radius:15px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(275px,.85fr);gap:16px}
.panel>header{display:flex;min-height:74px;align-items:center;justify-content:space-between;padding:15px 19px;border-bottom:1px solid #e9ebe5}
.panel>header h3{margin:4px 0 0;font-family:Georgia,serif;font-size:17px;font-weight:600}
.panel>header a{color:#4f7766;font-size:9px;font-weight:700}
.timeline{min-width:720px;overflow:hidden}
.calendar-card{overflow-x:auto}
.calendar-card>header,.calendar-card>footer{position:sticky;z-index:3;left:0}
.timeline-head,.timeline-row{display:grid;grid-template-columns:150px repeat(14,minmax(33px,1fr))}
.timeline.extended{min-width:1280px}.timeline.extended .timeline-head,.timeline.extended .timeline-row{grid-template-columns:170px repeat(30,minmax(35px,1fr))}
.timeline-head>span{display:grid;height:48px;place-content:center;border-bottom:1px solid #eaede6;background:#fafaf7;color:#68766f;text-align:center;font-size:10px;font-weight:700}
.timeline-head>span:first-child{justify-content:start;padding-left:17px;color:#9aa19d;font-size:8px;letter-spacing:.1em}
.timeline-head>span.weekend{background:#faf6ec}
.timeline-head small{color:#a0a8a3;font-size:7px}
.timeline-row>strong,.timeline-row>span{height:49px;border-bottom:1px solid #edf0ea}
.timeline-row>strong{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:0 13px;overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.timeline-row>strong small{margin-top:3px;color:#9aa39e;font-size:7px;font-weight:400}
.timeline-row>span{display:grid;place-items:center;border-left:1px solid #f0f2ed;font-size:18px}
.timeline-row>span.available{background:#fffefa;color:transparent}
.timeline-row>span.occupied{background:#dfeae3;color:#5e8972}
.timeline-row>span:nth-child(7n),.timeline-row>span:nth-child(7n+1){background-color:#faf8f1}
.timeline-row>span.occupied:nth-child(7n),.timeline-row>span.occupied:nth-child(7n+1){background-color:#dce8e0}
.calendar-card>footer{display:flex;min-height:45px;align-items:center;gap:14px;padding:0 17px;background:var(--paper);color:#8d9691;font-size:8px}
.legend{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%}.legend.occupied{background:#658f79}.legend.available{border:1px solid #bbc5bf;background:#fff}
.movements-card>header>b{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#e4eee8;color:#4f7766;font-size:9px}
.movement-list{padding:6px 16px 14px}
.movement-list>a{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #ebeee7}
.movement-list>a:last-child{border:0}
.movement-list>a>i{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;font-style:normal}.movement-list>a>i.in{background:#e2eee6;color:#4e8068}.movement-list>a>i.out{background:#f2e9d8;color:#a4773e}.movement-list>a>i.pending{background:#f3ead8;color:#a5793e}
.movement-list strong,.movement-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.movement-list strong{font-size:10px}.movement-list small{margin-top:4px;color:#8d9692;font-size:8px}
.movement-list em{padding:4px 7px;border-radius:6px;background:#edf2ef;color:#60766c;font-size:7px;font-style:normal;font-weight:750}
.empty{display:grid;min-height:220px;place-content:center;justify-items:center;color:#9aa39e;text-align:center}.empty>span{display:grid;width:43px;height:43px;place-items:center;border-radius:50%;background:#e7efe9;color:#5c806f;font-size:18px}.empty strong{margin-top:10px;color:#56635d;font-family:Georgia,serif;font-size:13px}.empty small{margin-top:4px;font-size:8px}.empty.inline{min-height:90px}
.dashboard-lower{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:16px;margin-top:16px}
.attention{display:grid;min-height:93px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 19px}
.attention>i{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:#f3ead9;color:#9e7139;font-style:normal;font-weight:800}
.attention span>strong,.attention span>em{display:block}.attention span>strong{margin-top:4px;font-family:Georgia,serif;font-size:14px}.attention span>em{margin-top:3px;color:#8a948f;font-size:8px;font-style:normal}.attention>a{color:#4f7766;font-size:9px;font-weight:700}
.quick-actions{padding:15px 17px}.quick-actions>div{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.quick-actions button{display:grid;min-height:50px;place-content:center;justify-items:center;gap:2px;border:1px solid #e6e9e2;border-radius:9px;background:#fafaf7;color:#5d7067;cursor:pointer;font-size:17px}.quick-actions button small{font-size:7px;font-weight:650}
.page-heading{align-items:center}.page-heading h2{font-size:25px}.large-calendar{overflow-x:auto}
.table-panel>header h3{font-family:Georgia,serif}
.table-toolbar{display:flex;gap:9px;padding:14px 16px;border-bottom:1px solid var(--line)}.table-toolbar input{flex:1}.table-toolbar select{min-width:175px}
.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{padding:12px 15px;border-bottom:1px solid var(--line);background:#fafaf7;color:#8b958f;font-size:8px;font-weight:800;letter-spacing:.08em;text-align:left}td{padding:13px 15px;border-bottom:1px solid #edf0ea;color:#59655f;font-size:9px}tbody tr:hover{background:#fbfcf9}td strong,td small{display:block}td strong{color:#34423c;font-size:9px}td small{margin-top:4px;color:#9aa19e;font-size:7px}.channel-dot{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%}.amount-due{color:#a96650;font-weight:750}.amount-paid{color:#4e8068;font-weight:750}
.status,.status-form select{display:inline-block;padding:5px 7px;border:0;border-radius:7px;font-size:7px;font-weight:750}.status-form{margin:0}.status-form select{cursor:pointer;outline:0}.status.pending,.status-form select.pending{background:#f3ead8;color:#a5793e}.status.confirmed,.status-form select.confirmed{background:#e1ece5;color:#4f7e68}.status.checked_in,.status-form select.checked_in{background:#dfeaed;color:#537d89}.status.checked_out,.status-form select.checked_out{background:#e8e9e6;color:#757d79}.status.cancelled,.status-form select.cancelled,.status.no_show,.status-form select.no_show{background:#f0e1de;color:#a35f55}.status.tentative,.status-form select.tentative{background:#e7e1ec;color:#776586}
.unit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.unit-card{padding:18px}.unit-card>div{display:flex;align-items:center;gap:12px}.unit-icon{display:grid;width:43px;height:43px;place-items:center;border-radius:12px;background:#e3ece6;color:#547967;font-size:18px}.unit-card small,.unit-card h3,.unit-card em{display:block}.unit-card small{color:#919a95;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.unit-card h3{margin:3px 0;font-family:Georgia,serif;font-size:15px}.unit-card em{color:#8c9691;font-size:8px;font-style:normal}.unit-card form{margin-top:15px}.housekeeping{width:100%;height:37px;padding:0 10px;border:0;border-radius:8px;outline:0;font-size:9px;font-weight:700}.housekeeping.clean{background:#e2ede5;color:#4e8068}.housekeeping.dirty{background:#f3ead8;color:#a5793e}.housekeeping.inspection{background:#e3eaed;color:#527b87}.housekeeping.maintenance{background:#f0e1de;color:#a35f55}
.report-card .bars{padding:16px 20px 21px}.bar-row{display:grid;grid-template-columns:130px minmax(130px,1fr) 130px;align-items:center;gap:16px;padding:10px 0}.bar-row>span{font-size:9px}.bar-row>span i{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%}.bar-row>b{height:8px;overflow:hidden;border-radius:5px;background:#eef0eb}.bar-row>b i{display:block;height:100%;border-radius:5px}.bar-row>strong{text-align:right;font-size:10px}.bar-row>strong small{display:block;margin-top:3px;color:#919a95;font-size:7px;font-weight:400}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.catalog-item{display:flex;align-items:center;gap:12px;padding:16px}.catalog-item>span{display:grid;width:39px;height:39px;place-items:center;border-radius:11px;background:#e6eee9;color:#547967;font-family:Georgia,serif}.catalog-item small{color:#969e9a;font-size:7px;text-transform:uppercase}.catalog-item h3{margin:3px 0;font-family:Georgia,serif;font-size:13px}.catalog-item strong{color:#527464;font-size:10px}
.alert{position:relative;margin-bottom:14px;padding:12px 42px 12px 14px;border-radius:10px;font-size:10px}.alert.success{border:1px solid #cadfd1;background:#e9f3ed;color:#416b56}.alert.danger{border:1px solid #e5c9c3;background:#f7e9e6;color:#8e4d43}.alert button{position:absolute;top:6px;right:7px;border:0;background:transparent;cursor:pointer;font-size:18px}
.modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:18px}.modal-backdrop{position:absolute;inset:0;background:rgba(10,28,22,.57);backdrop-filter:blur(4px)}.modal-card{position:relative;width:min(480px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:16px;background:var(--paper);box-shadow:0 24px 70px rgba(10,28,22,.28);animation:modalIn .18s ease-out}.modal-card.large{width:min(690px,100%)}@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.98)}}.modal-card>header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;padding:18px 21px;border-bottom:1px solid var(--line);background:var(--paper)}.modal-card>header h2{margin:3px 0 0;font-family:Georgia,serif;font-size:20px}.modal-card>header button{display:grid;width:33px;height:33px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:21px}.modal-card form{padding:19px 21px}.modal-card form>footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid.one{grid-template-columns:1fr}.form-grid label{display:grid;gap:6px}.form-grid label.wide{grid-column:1/-1}.form-grid label>span,.auth-card label>span{color:#606d67;font-size:9px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea,.table-toolbar input,.table-toolbar select,.auth-card input,.installer-card input{width:100%;min-height:40px;padding:9px 11px;border:1px solid #dfe3dc;border-radius:8px;outline:0;background:#fff;font-size:10px}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.table-toolbar input:focus,.auth-card input:focus,.installer-card input:focus{border-color:#7d9b8d;box-shadow:0 0 0 3px rgba(100,139,120,.1)}.form-grid label>small{color:#929b96;font-size:8px}.form-note{margin-top:14px;padding:9px 11px;border-radius:8px;background:#edf3ef;color:#587165;font-size:8px}
.search-body{padding:18px 20px}.search-body>input{width:100%;height:43px;padding:0 12px;border:1px solid var(--line);border-radius:9px;outline:0}.search-result{display:block;padding:11px 4px;border-bottom:1px solid var(--line)}.search-result strong,.search-result small{display:block}.search-result strong{font-size:10px}.search-result small{margin-top:3px;color:#8d9691;font-size:8px}
.auth-page{display:grid;min-height:100vh;place-items:center;padding:20px;background:radial-gradient(circle at 50% 10%,#315849 0,transparent 33%),var(--forest)}.auth-card,.installer-card{width:min(420px,100%);padding:30px;border:1px solid rgba(255,255,255,.08);border-radius:19px;background:var(--paper);box-shadow:0 28px 70px rgba(3,16,12,.3)}.installer-card{width:min(580px,100%)}.auth-brand{display:flex;align-items:center;gap:11px}.auth-brand>span{background:var(--forest)}.auth-brand strong{color:var(--forest)}.auth-brand small{color:#89938e}.auth-card h1,.installer-card h1{margin:27px 0 5px;font-family:Georgia,serif;font-size:27px;font-weight:500}.auth-card>p,.installer-card>p{margin:0 0 20px;color:#818b86;font-size:10px}.auth-card form{display:grid;gap:14px}.auth-card label{display:grid;gap:6px}.version{display:block;margin-top:22px;color:#a0a7a3;font-size:7px;text-align:center}.installer-card h2{margin:22px 0 10px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:11px}
.mobile-nav{display:none}
body.menu-open{overflow:hidden}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-lower{grid-template-columns:1fr}.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
  .sidebar{transform:translateX(-100%)}body.menu-open .sidebar{transform:translateX(0);box-shadow:10px 0 40px rgba(13,32,25,.28)}body.menu-open:after{position:fixed;z-index:45;inset:0;background:rgba(11,29,23,.45);content:""}
  .main{margin-left:0;padding-bottom:67px}.topbar{height:72px;padding:0 15px}.mobile-menu{display:grid;width:38px;height:38px;margin-right:10px;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.topbar>div:first-of-type>span{display:none}.topbar h1{font-size:19px}.top-actions{gap:6px}.top-actions .primary-button{width:39px;min-height:39px;padding:0;font-size:0}.top-actions .primary-button b{font-size:17px}.icon-button{width:39px;height:39px}.content{padding:20px 13px 30px}.intro,.page-heading{align-items:flex-start}.intro h2,.page-heading h2{font-size:21px}.date-chip{display:none}
  .stats-grid{display:flex;overflow-x:auto;margin-right:-13px;padding-right:13px;scrollbar-width:none}.stats-grid::-webkit-scrollbar{display:none}.stat-card{min-width:220px}.dashboard-grid,.dashboard-lower{gap:13px}.attention{grid-template-columns:auto 1fr}.attention>a{grid-column:2}
  .mobile-nav{position:fixed;z-index:44;inset:auto 0 0;display:grid;height:66px;grid-template-columns:repeat(5,1fr);padding:5px;border-top:1px solid var(--line);background:rgba(255,254,250,.96);box-shadow:0 -8px 25px rgba(31,51,43,.07);backdrop-filter:blur(12px)}.mobile-nav a{display:grid;place-content:center;justify-items:center;gap:3px;color:#8b958f}.mobile-nav a.active{color:var(--forest)}.mobile-nav i{font-size:16px;font-style:normal}.mobile-nav span{font-size:7px;font-weight:650}
  .page-heading .primary-button{width:39px;min-height:39px;padding:0;font-size:0}.page-heading .primary-button:first-letter{font-size:16px}.unit-grid{grid-template-columns:1fr}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-row{grid-template-columns:95px 1fr 95px;gap:8px}.table-toolbar{flex-direction:column}.table-toolbar select{width:100%}
}
@media(max-width:520px){.content{padding-top:17px}.stats-grid{margin-bottom:13px}.stat-card{min-width:205px}.panel>header{padding:14px}.quick-actions>div{gap:5px}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.modal{padding:7px}.modal-card{max-height:calc(100vh - 14px);border-radius:13px}.modal-card form,.modal-card>header{padding-left:16px;padding-right:16px}.catalog-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:85px minmax(70px,1fr) 80px}.auth-card,.installer-card{padding:24px 20px}.installer-card .form-grid{grid-template-columns:1fr}}

/* Legibilidad general — v1.0.1 */
.brand small{font-size:10px}
.sidebar nav p{font-size:11px}
.sidebar nav a{font-size:14px}
.user-box strong{font-size:12px}
.user-box small{font-size:10px}
.topbar>div:first-of-type>span,.eyebrow{font-size:11px}
.intro p,.page-heading p{font-size:14px;line-height:1.45}
.date-chip{font-size:11px}
.stat-card span small{font-size:11px}
.stat-card span em{font-size:11px}
.panel>header a{font-size:11px}
.timeline-head>span{font-size:12px}
.timeline-head>span:first-child{font-size:10px}
.timeline-head small{font-size:9px}
.timeline-row>strong{font-size:11px}
.timeline-row>strong small{font-size:9px}
.calendar-card>footer{font-size:10px}
.movements-card>header>b{font-size:11px}
.movement-list strong{font-size:12px}
.movement-list small{font-size:10px}
.movement-list em{font-size:9px}
.empty strong{font-size:15px}
.empty small{font-size:10px}
.attention span>em{font-size:10px}
.attention>a{font-size:11px}
.quick-actions button small{font-size:10px}
th{font-size:11px;letter-spacing:.055em}
td{font-size:12px}
td strong{font-size:12px}
td small{font-size:10px}
.status,.status-form select{font-size:10px}
.unit-card small{font-size:10px}
.unit-card h3{font-size:16px}
.unit-card em{font-size:10px}
.housekeeping{font-size:11px}
.bar-row>span{font-size:11px}
.bar-row>strong{font-size:12px}
.bar-row>strong small{font-size:9px}
.catalog-item small{font-size:9px}
.catalog-item h3{font-size:15px}
.catalog-item strong{font-size:12px}
.alert{font-size:12px}
.form-grid label>span,.auth-card label>span{font-size:11px}
.form-grid input,.form-grid select,.form-grid textarea,.table-toolbar input,.table-toolbar select,.auth-card input,.installer-card input{font-size:12px}
.form-grid label>small,.form-note{font-size:10px}
.search-result strong{font-size:12px}
.search-result small{font-size:10px}
.auth-card>p,.installer-card>p{font-size:12px}
.version{font-size:9px}
.installer-card h2{font-size:13px}

@media(max-width:800px){
  .mobile-nav span{font-size:10px}
}

/* Permisos, novedades y adaptación responsive — v1.1.0 */
html,body{max-width:100%;overflow-x:hidden}
.main,.content,.panel,.page-heading>div{min-width:0}
.topbar h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quick-actions>div{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}
.table-action{display:inline-flex;min-height:32px;align-items:center;padding:0 11px;border:1px solid #dbe2dc;border-radius:7px;background:#fff;color:#426b59;cursor:pointer;font-size:10px;font-weight:750;text-decoration:none}
.table-action:hover{background:#edf3ef}
.operation-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.operation-card{padding:18px}
.unit-card>.unit-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}
.issue-count{align-self:start;padding:5px 8px;border-radius:999px;background:#e6eee9;color:#557363;font-size:9px;font-weight:750;white-space:nowrap}
.issue-count.has-open{background:#f3ead8;color:#946b35}
.unit-status-form{margin-top:15px}
.housekeeping.readonly{display:flex;align-items:center;margin-top:15px}
.issue-create{margin-top:12px;border:1px solid #e1e7e0;border-radius:10px;background:#fbfcf9}
.issue-create>summary,.issue-resolve>summary{display:flex;min-height:42px;align-items:center;padding:0 12px;color:#426b59;cursor:pointer;font-size:11px;font-weight:750;list-style:none}
.issue-create>summary::-webkit-details-marker,.issue-resolve>summary::-webkit-details-marker{display:none}
.issue-create form,.issue-resolve form{display:grid;gap:10px;margin:0;padding:0 12px 12px}
.issue-create label,.issue-resolve label{display:grid;gap:6px}
.issue-create label>span,.issue-resolve label>span{color:#606d67;font-size:10px;font-weight:700}
.issue-create select,.issue-create textarea,.issue-resolve textarea{width:100%;min-width:0;padding:9px 11px;border:1px solid #dfe3dc;border-radius:8px;outline:0;background:#fff;font-size:11px;resize:vertical}
.issue-create select:focus,.issue-create textarea:focus,.issue-resolve textarea:focus{border-color:#7d9b8d;box-shadow:0 0 0 3px rgba(100,139,120,.1)}
.issue-create .primary-button,.issue-resolve .primary-button{width:max-content;min-height:36px;padding:0 12px;font-size:10px}
.issue-section{margin-top:17px;padding-top:15px;border-top:1px solid #e7eae4}
.issue-section>header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.issue-section>header strong{font-size:12px}.issue-section>header small{color:#929b96;font-size:9px;text-transform:none;letter-spacing:0}
.issue-empty{padding:19px 0 5px;color:#929b96;font-size:11px;text-align:center}
.issue-list{display:grid;gap:9px;margin-top:11px}
.issue-item{padding:12px;border:1px solid #e4e8e2;border-left:3px solid #be8845;border-radius:9px;background:#fff}
.issue-item.resolved{border-left-color:#5f8b74;background:#fbfdfb}
.issue-item-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.issue-item-head>span{color:#69766f;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.07em}
.issue-item-head>b{padding:4px 7px;border-radius:999px;background:#f3ead8;color:#936b36;font-size:8px}
.issue-item.resolved .issue-item-head>b{background:#e1ece5;color:#4f7e68}
.issue-item>p,.issue-resolution p{margin:9px 0;color:#405049;font-size:11px;line-height:1.45;overflow-wrap:anywhere;white-space:normal}
.issue-meta{color:#929b96!important;font-size:9px!important;text-transform:none!important;letter-spacing:0!important}
.issue-resolve{margin-top:9px;border-top:1px solid #edf0eb}
.issue-resolve>summary{min-height:36px;padding:0;color:#4f7e68;font-size:10px}
.issue-resolve form{padding:0 0 3px}
.issue-resolution{margin-top:10px;padding:9px 10px;border-radius:8px;background:#eaf2ed}
.issue-resolution>strong{color:#436c59;font-size:10px}.issue-resolution p{margin:5px 0}.issue-resolution small{color:#73847b!important;font-size:8px!important;text-transform:none!important;letter-spacing:0!important}
.catalog-item em{margin-top:5px;color:#89958f;font-size:9px;font-style:normal}
.catalog-item>div{min-width:0;flex:1}.catalog-edit{align-self:center;margin-left:auto;padding:7px 9px;border:1px solid #dbe2dc;border-radius:7px;background:#fff;color:#426b59;cursor:pointer;font-size:9px;font-weight:750}
.check-label{display:flex!important;grid-template-columns:none;align-items:center;gap:9px!important;min-height:40px}.check-label input{width:18px!important;min-height:18px!important;margin:0}.check-label span{font-size:11px!important}

/* Ficha de consulta de reservas — v1.3.0 */
.reservation-link{display:grid;gap:3px;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit}
.reservation-link strong{color:#315f4c;text-decoration:underline;text-decoration-color:#b8cec2;text-underline-offset:3px}
.reservation-link small{margin:0;color:#668274}.reservation-link:hover strong{color:#183f31;text-decoration-color:#658c78}
.modal-card.reservation-detail-card{width:min(780px,100%)}
.reservation-detail-body{padding:20px 22px 6px}
.detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 18px;border-radius:13px;background:linear-gradient(135deg,#eef4f0,#f9f8f2)}
.detail-hero small{color:#7b8a83;font-size:9px;font-weight:800;letter-spacing:.08em}.detail-hero h3{margin:4px 0 5px;color:#203a30;font-family:Georgia,serif;font-size:21px}.detail-hero p{margin:0;color:#75817b;font-size:11px}.detail-hero>.status{flex:none;margin-top:2px}
.detail-actions{display:flex;gap:9px;margin-top:13px}.detail-actions a[hidden]{display:none}.detail-actions a{text-decoration:none}
.detail-section{padding:19px 1px 17px;border-bottom:1px solid #e7ebe5}.detail-section:last-child{border-bottom:0}.detail-section>h3{margin:0 0 13px;color:#31443b;font-family:Georgia,serif;font-size:15px}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.detail-grid.financial{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid>div{min-width:0;padding:11px 12px;border:1px solid #e4e8e2;border-radius:9px;background:#fff}.detail-grid>div.wide{grid-column:1/-1}.detail-grid dt{margin-bottom:5px;color:#8b958f;font-size:9px;font-weight:750}.detail-grid dd{margin:0;color:#34453d;font-size:12px;font-weight:650;line-height:1.4;overflow-wrap:anywhere;white-space:normal}
.detail-notes{display:grid;gap:10px}.detail-notes article{padding:12px 14px;border-left:3px solid #d8b067;border-radius:8px;background:#faf8f1}.detail-notes article:nth-child(2){border-left-color:#75a087;background:#f2f7f3}.detail-notes article:nth-child(3){border-left-color:#7899a4;background:#f2f6f7}.detail-notes span{color:#68766f;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.detail-notes p{margin:7px 0 0;color:#3f4f47;font-size:12px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}
.reservation-detail-footer{display:flex;justify-content:flex-end;padding:14px 22px 20px;border-top:1px solid var(--line)}

/* Consumos centralizados por reserva — v1.5.0 */
.consumption-groups{display:grid;gap:16px}.consumption-group{overflow:hidden}.consumption-group-head{display:grid!important;grid-template-columns:auto minmax(190px,1fr) auto auto;align-items:center;gap:14px;padding:16px 18px!important;background:linear-gradient(135deg,#fbfcf9,#f3f7f3)}
.consumption-unit-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:#dfece4;color:#416d58;font-size:19px}.consumption-group-name{min-width:0}.consumption-group-name small,.consumption-group-total small{display:block;color:#849089;font-size:9px;font-weight:800;letter-spacing:.07em}.consumption-group-name h3{margin:4px 0;color:#263d33;font-family:Georgia,serif;font-size:17px;overflow-wrap:anywhere}.consumption-group-name p{margin:0;color:#86918b;font-size:10px}.consumption-group-total{text-align:right}.consumption-group-total strong{display:block;margin-top:4px;color:#466f5b;font-family:Georgia,serif;font-size:17px}.consumption-group-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.primary-button.compact,.secondary-button.compact{min-height:34px;padding:0 11px;border-radius:8px;font-size:9px;text-decoration:none;white-space:nowrap}.consumption-group .table-scroll{border-top:1px solid var(--line)}

@media(max-width:800px){
  .content{width:100%}.operation-grid{grid-template-columns:1fr}.operation-card{padding:15px}
  .page-heading{gap:12px}.page-heading>div{flex:1}.table-scroll{-webkit-overflow-scrolling:touch}
  .modal-card.large{width:100%}
  .form-grid input,.form-grid select,.form-grid textarea,.table-toolbar input,.table-toolbar select,.auth-card input,.installer-card input,.issue-create select,.issue-create textarea,.issue-resolve textarea{font-size:16px}
  .housekeeping,.status-form select{font-size:16px}
  .consumption-group-head{grid-template-columns:auto minmax(0,1fr) auto}.consumption-group-total{grid-column:3}.consumption-group-actions{grid-column:1/-1;justify-content:flex-start}.primary-button.compact,.secondary-button.compact{font-size:11px}
}
@media(max-width:520px){
  .topbar h1{max-width:47vw}.page-heading{margin-bottom:17px}.page-heading p{font-size:12px}
  .unit-card>.unit-summary{grid-template-columns:auto minmax(0,1fr)}.issue-count{grid-column:2;width:max-content;margin-top:4px}
  .issue-section>header{align-items:flex-start;flex-direction:column;gap:3px}
  .modal-card form>footer{flex-direction:column-reverse}.modal-card form>footer button{width:100%}
  .table-toolbar{padding:11px}.table-scroll{max-width:100vw}
  .catalog-item{align-items:flex-start}.bar-row{font-size:10px}
  .reservation-detail-body{padding:15px 14px 4px}.detail-hero{padding:14px;flex-direction:column;gap:10px}.detail-actions{display:grid;grid-template-columns:1fr}.detail-grid,.detail-grid.financial{grid-template-columns:1fr}.detail-grid>div.wide{grid-column:auto}.reservation-detail-footer{padding:12px 14px 16px}.reservation-detail-footer button{width:100%}
  .consumption-group-head{grid-template-columns:auto minmax(0,1fr);padding:14px!important}.consumption-group-total{grid-column:2;text-align:left}.consumption-group-actions{display:grid;grid-template-columns:1fr;width:100%}.consumption-group-actions>*{width:100%}.consumption-group-name h3{font-size:15px}
}
@media(max-width:360px){
  .topbar{padding:0 9px}.mobile-menu{margin-right:6px}.content{padding-right:9px;padding-left:9px}
  .operation-card{padding:12px}.modal{padding:4px}.modal-card{max-height:calc(100vh - 8px)}
  .modal-card form,.modal-card>header{padding-right:13px;padding-left:13px}
}
@media print{.sidebar,.topbar,.mobile-nav,.page-heading button,.table-toolbar{display:none!important}.main{margin:0}.content{padding:0}.panel,.stat-card{box-shadow:none}body{background:#fff}}

/* Administración e integraciones recuperadas — v1.6.0 */
.heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.heading-actions form,.inline-actions form,.catalog-actions form,.unit-actions form{margin:0}
.inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.table-action.danger{border-color:#ead8d3;color:#9b5b4d;background:#fff8f6}.danger-outline{border-color:#ead8d3!important;color:#9b5b4d!important}
.sync-help,.cron-card{margin-bottom:16px;padding:18px 20px}.sync-help>strong,.cron-card h3{display:block;margin-bottom:7px;color:#294438;font-family:Georgia,serif;font-size:16px}.sync-help p,.cron-card p{margin:0;color:#65716b;font-size:12px;line-height:1.55}.error-note{display:block;max-width:300px;margin-top:5px;color:#a56355!important;white-space:normal!important;overflow-wrap:anywhere}
.copy-field{display:flex;min-width:0;gap:7px;margin-top:12px}.copy-field input{width:100%;min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fafaf7;color:#65716b;font-size:11px}.sync-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.sync-unit{padding:18px}.sync-unit h3{margin:5px 0 6px;color:#294438;font-family:Georgia,serif}.sync-unit p{margin:0;color:#78857e;font-size:11px;line-height:1.45}
.manage-units .unit-card{display:flex;min-width:0;flex-direction:column}.manage-units .unit-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.manage-units .unit-card>header h3{margin:4px 0 0}.unit-card.inactive,.catalog-item.inactive{opacity:.62}.unit-meta{display:grid;gap:9px;margin:16px 0 0}.unit-meta>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid #edf0eb}.unit-meta dt{color:#89958f;font-size:9px;font-weight:750;text-transform:uppercase}.unit-meta dd{margin:0;color:#3e5047;font-size:11px;text-align:right}.unit-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:15px}.unit-actions .secondary-button{min-height:35px;padding:0 12px;font-size:10px}
.catalog-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-left:auto}.catalog-item.inactive{filter:saturate(.7)}
.export-card{margin-top:16px;padding:0}.export-card>header{padding:17px 19px 10px}.export-card>p{margin:0;padding:0 19px 14px;color:#75827b;font-size:11px}.export-form{display:grid;grid-template-columns:180px 180px minmax(0,1fr);align-items:end;gap:12px;padding:0 19px 19px}.export-form label{display:grid;gap:6px}.export-form label span{color:#6d7973;font-size:10px;font-weight:750}.export-form input{height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.export-actions{display:flex;flex-wrap:wrap;gap:7px}.export-actions .secondary-button{min-height:40px;padding:0 12px;font-size:10px}
.audit-json{display:block;max-width:420px;max-height:88px;overflow:auto;padding:6px;border-radius:6px;background:#f6f7f4;color:#5e6a64;font-size:9px;white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:900px){.sync-grid{grid-template-columns:1fr}.export-form{grid-template-columns:1fr 1fr}.export-actions{grid-column:1/-1}}
@media(max-width:800px){.heading-actions{align-items:stretch;flex-direction:column;width:100%}.heading-actions>*{width:100%}.heading-actions form button{width:100%}.copy-field{flex-direction:column}.copy-field button{width:100%}.inline-actions{min-width:170px}.manage-units .unit-card>header{align-items:flex-start}.export-actions .secondary-button{flex:1 1 160px}}
@media(max-width:520px){.export-form{grid-template-columns:1fr}.export-actions{grid-column:auto;display:grid}.unit-actions{align-items:stretch;flex-direction:column}.unit-actions>*{width:100%}.unit-actions button{width:100%}}
.inventory-history{margin-top:16px}

/* Carta digital - v1.7.0 */
.menu-admin-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:14px;margin-bottom:14px}.menu-share-card,.menu-qr-card{padding:19px}.menu-share-card>div>h3,.menu-qr-card h3{margin:4px 0 7px;font-family:Georgia,serif;font-size:18px}.menu-share-card p,.menu-qr-card p{margin:0 0 13px;color:#77827c;line-height:1.5}.menu-inline-form{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.menu-inline-form form{margin:0}.menu-qr-card{display:flex;align-items:center;gap:18px}.menu-qr-card>img{width:126px;height:126px;padding:7px;border:1px solid var(--line);border-radius:14px;background:white;object-fit:contain}.menu-admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}.menu-admin-stats>span{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:var(--paper);box-shadow:var(--shadow)}.menu-admin-stats strong{font-family:Georgia,serif;font-size:22px;font-weight:500;color:var(--forest)}.menu-admin-stats small{color:#7e8983;font-size:10px}.menu-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.menu-admin-item{overflow:hidden;padding:0}.menu-admin-photo{width:100%;height:145px;object-fit:cover}.menu-admin-body{padding:16px}.menu-admin-body header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.menu-admin-body small{display:block;color:#9b8a68;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.menu-admin-body h3{margin:3px 0 0;font-family:Georgia,serif;font-size:15px}.menu-admin-body>strong{display:block;color:#527464;font-size:13px}.menu-admin-body p{margin:7px 0;color:#78827d;font-size:10px;line-height:1.45}.menu-admin-body em{display:block;margin-top:7px;color:#929b96;font-size:8px;font-style:normal}.menu-admin-actions{display:flex;flex-wrap:wrap;gap:6px;padding:11px 16px 16px;border-top:1px solid var(--line)}.menu-admin-actions form{margin:0}.menu-admin-actions .table-action{min-height:29px}.menu-admin-item.inactive{opacity:.62}.menu-admin-item.inactive .menu-admin-photo{filter:grayscale(.8)}
@media(max-width:1180px){.menu-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.menu-admin-top{grid-template-columns:1fr}.menu-admin-grid{grid-template-columns:1fr}.menu-admin-stats{display:flex;overflow-x:auto}.menu-admin-stats>span{min-width:190px}.menu-qr-card{align-items:flex-start}.menu-qr-card>img{width:104px;height:104px}}
@media(max-width:520px){.menu-qr-card{display:block}.menu-qr-card>img{margin-bottom:12px}.menu-admin-actions{gap:5px}}
.collection-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px}.collection-tabs a{display:flex;flex-direction:column;gap:3px;padding:15px 17px;border:1px solid var(--line);border-radius:13px;background:var(--paper);box-shadow:var(--shadow);text-decoration:none;color:var(--forest)}.collection-tabs a strong{font-family:Georgia,serif;font-size:16px}.collection-tabs a small{color:#7f8984;font-size:10px}.collection-tabs a.active{border-color:#c6a45d;box-shadow:0 0 0 2px rgba(198,164,93,.12),var(--shadow)}.collection-tabs a.active:before{content:'ACTIVA';font-size:8px;font-weight:800;letter-spacing:.12em;color:#a38242}.internal-menu-note{display:flex;align-items:flex-start;gap:14px;padding:15px 17px;margin-bottom:14px}.internal-menu-note>span{flex:none;padding:6px 8px;border-radius:999px;background:#efe5cb;color:#8d6b2e;font-size:8px;font-weight:900;letter-spacing:.12em}.internal-menu-note p{margin:0;color:#66726c;font-size:11px;line-height:1.55}.internal-menu-note strong{color:var(--forest)}
@media(max-width:700px){.collection-tabs{grid-template-columns:1fr}.internal-menu-note{display:block}.internal-menu-note>span{display:inline-block;margin-bottom:9px}}

/* v1.9.2 · administración dinámica de secciones de cartas */
.menu-sections-panel{margin:18px 0;padding:20px}.menu-sections-head{margin-bottom:14px}.menu-sections-head h3{margin:4px 0 6px}.menu-sections-head p{margin:0;color:var(--muted,#718078)}.menu-section-list{display:grid;gap:10px}.menu-section-row{display:flex;gap:10px;align-items:flex-end;padding:12px;border:1px solid rgba(17,61,48,.12);border-radius:14px;background:rgba(255,255,255,.45)}.menu-section-form,.menu-section-new{display:grid;grid-template-columns:minmax(220px,1fr) 110px auto auto;gap:10px;align-items:end;flex:1}.menu-section-form label,.menu-section-new label{display:grid;gap:5px}.menu-section-form label span,.menu-section-new label span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7a857f}.menu-section-form input,.menu-section-new input{width:100%}.section-count{white-space:nowrap;align-self:center;font-size:12px;color:#6f7c75}.menu-section-new{margin-top:14px;padding-top:14px;border-top:1px dashed rgba(17,61,48,.18)}@media(max-width:820px){.menu-section-row{align-items:stretch;flex-direction:column}.menu-section-form,.menu-section-new{grid-template-columns:1fr 90px}.menu-section-form .section-count,.menu-section-new .section-count{grid-column:1/-1}.menu-section-form button,.menu-section-new button{width:100%}}

/* v1.10.0: descargas por carta, QR identificados e inventario */
.menu-download-hub{margin:0 0 14px;padding:18px 20px}.menu-download-hub header h3{margin:4px 0 5px;font-family:Georgia,serif;font-size:18px}.menu-download-hub header p{margin:0;color:#77827c;line-height:1.5}.menu-download-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.menu-download-grid>div{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fbfcf9}.menu-download-grid strong{font-family:Georgia,serif;color:var(--forest);font-size:14px}.menu-download-grid span{display:flex;flex-wrap:wrap;gap:6px}.menu-qr-card>img.qr-labeled{width:165px;height:auto;max-height:235px;padding:0;border:0;border-radius:10px;background:transparent;object-fit:contain;box-shadow:0 7px 22px rgba(16,47,37,.12)}
@media(max-width:900px){.menu-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.menu-download-grid{grid-template-columns:1fr}.menu-qr-card>img.qr-labeled{width:150px;max-height:none}}
