:root{
  --navy:#0B1F4D;--blue:#2563EB;--teal:#14B8A6;--coral:#FF6B6B;--ink:#10213A;--muted:#66758C;--bg:#F7F9FC;--line:#E4EAF2;--white:#fff;--success:#17A673;--danger:#D94A54;--warning:#B7791F;--radius:18px;--shadow:0 14px 36px rgba(11,31,77,.08);--shadow-sm:0 6px 18px rgba(11,31,77,.06)
}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white)}body{margin:0;background:var(--white);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.muted{color:var(--muted)}.text-right{text-align:right}.mobile-only{display:none}
.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:50px;display:block}.brand-name{font-size:23px;letter-spacing:-.8px;font-weight:900;color:var(--navy);white-space:nowrap}.brand-name b{background:linear-gradient(90deg,var(--teal),var(--blue),var(--coral));-webkit-background-clip:text;background-clip:text;color:transparent}.brand-compact .brand-mark{width:56px;height:64px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr);background:var(--bg)}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:22px 18px;display:flex;flex-direction:column;z-index:20}.sidebar-brand{padding:0 8px 18px}.module-chip{margin:0 4px 18px;padding:11px 13px;border:1px solid #D8E5F7;border-radius:14px;background:linear-gradient(135deg,#F3FBFB,#F5F8FF);display:flex;align-items:center;gap:9px}.module-chip span{font-weight:800;color:var(--navy)}.module-chip small{color:var(--muted);margin-left:auto}.nav-list{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;color:#4F6079;font-weight:650;transition:.18s ease}.nav-item:hover{background:#F5F8FD;color:var(--navy)}.nav-item.active{background:linear-gradient(90deg,#EAF2FF,#F2FBFB);color:#1459D9;box-shadow:inset 3px 0 0 var(--blue)}.nav-icon{width:26px;height:26px;border:1px solid #DCE5F2;border-radius:8px;display:grid;place-items:center;background:#fff;color:var(--navy);font-size:14px}.nav-item.active .nav-icon{border-color:#C9DAFC;color:var(--blue)}.sidebar-foot{margin-top:auto;padding-top:16px}.security-note{display:flex;gap:10px;align-items:center;padding:12px;border-radius:14px;background:#F5FBF9;border:1px solid #D7F0E8}.security-note>span{width:28px;height:28px;border-radius:9px;background:#E0F6EE;color:var(--success);display:grid;place-items:center;font-weight:900}.security-note div{display:flex;flex-direction:column}.security-note b{font-size:12px}.security-note small{font-size:11px;color:var(--muted)}
.main-column{min-width:0}.topbar{height:76px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:15;backdrop-filter:blur(12px)}.company-context{display:flex;align-items:center;gap:10px}.company-context>div{display:flex;flex-direction:column}.company-context small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.company-context strong{font-size:14px}.company-dot{width:10px;height:10px;border-radius:99px;background:var(--teal);box-shadow:0 0 0 5px rgba(20,184,166,.12)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.company-switcher select{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 30px 8px 10px;max-width:190px}.top-link{width:36px;height:36px;border:1px solid var(--line);border-radius:11px;display:grid;place-items:center;color:var(--navy);background:#fff}.user-menu{display:flex;align-items:center;gap:9px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#DDF8F5,#E5EEFF);color:var(--navy);font-weight:800;border:1px solid #D7E5F5}.avatar.small{width:32px;height:32px;font-size:12px}.user-copy{display:flex;flex-direction:column;line-height:1.2}.user-copy strong{font-size:13px}.user-copy small{font-size:11px;color:var(--muted);margin-top:3px}.content-area{padding:28px;max-width:1500px;width:100%;margin:0 auto}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.page-heading h1{margin:4px 0 5px;font-size:30px;line-height:1.15;color:var(--navy);letter-spacing:-.8px}.page-heading p{margin:0;color:var(--muted);max-width:760px}.hero-heading{padding:6px 0 3px}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:#0C8E8C;font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.eyebrow:before{content:"";width:18px;height:2px;background:linear-gradient(90deg,var(--teal),var(--coral));border-radius:2px}.compact-heading{align-items:center}.version-pill{padding:7px 10px;border-radius:999px;background:#EEF4FF;color:var(--blue);font-weight:800;font-size:12px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.card-head h2{font-size:17px;color:var(--navy);margin:0 0 4px}.card-head p{margin:0;color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-sm);transition:.18s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:20px;font-weight:900}.stat-icon.teal{background:#E8FAF7;color:#099C91}.stat-icon.blue{background:#EDF3FF;color:#1F64E8}.stat-icon.navy{background:#EFF2F8;color:var(--navy)}.stat-icon.coral{background:#FFF0F0;color:#E6535A}.stat-card>div{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:baseline;flex:1}.stat-card small{grid-column:1;font-weight:700;color:var(--muted)}.stat-card strong{grid-row:1/3;grid-column:2;font-size:28px;color:var(--navy);justify-self:end}.stat-card em{grid-column:1;font-style:normal;color:#8490A2;font-size:11px}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.span-2{min-width:0}.setup-list{display:flex;flex-direction:column}.setup-row{display:flex;gap:12px;padding:15px 0;border-top:1px solid #EDF1F6}.setup-row:first-child{border-top:0;padding-top:4px}.setup-check{width:30px;height:30px;flex:0 0 30px;border-radius:10px;background:#E8F8F3;color:var(--success);display:grid;place-items:center;font-weight:900}.setup-row b{color:var(--navy)}.setup-row p{margin:3px 0 0;color:var(--muted);font-size:12px}.integration-list{display:flex;flex-direction:column;gap:4px}.integration-list>div{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #EEF2F6}.integration-list>div:last-child{border-bottom:0}.integration-list b{font-size:12px}.integration-list small{color:var(--muted);font-size:11px}.integration-dot{width:9px;height:9px;border-radius:99px;background:#CBD5E1}.integration-dot.on{background:var(--success);box-shadow:0 0 0 4px rgba(23,166,115,.1)}.integration-list.compact>div{padding:8px 0}.note-box{background:#F8FAFD;border:1px solid #E8EEF6;border-radius:12px;padding:11px 12px;color:var(--muted);font-size:11px;margin:14px 0 0}
.btn{border:0;border-radius:11px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:750;transition:.17s ease;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#1F69F3,#2457D9);color:#fff;box-shadow:0 7px 16px rgba(37,99,235,.2)}.btn-primary:hover{filter:brightness(.98);transform:translateY(-1px)}.btn-ghost{background:#fff;border:1px solid var(--line);color:#42536D}.btn-ghost:hover{background:#F8FAFD;border-color:#D5DEEA}.btn-danger-soft{background:#FFF1F2;color:#C53C49;border:1px solid #FFDADF}.btn-sm{padding:7px 10px;border-radius:9px;font-size:12px}.btn-lg{padding:12px 18px;font-size:14px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:10px;width:38px;height:38px}.inline-form{display:inline-flex}.actions{display:flex;gap:7px;justify-content:flex-end}
.alert{padding:12px 14px;border-radius:12px;margin-bottom:16px;border:1px solid;font-size:13px}.alert strong{margin-right:5px}.alert ul{margin:8px 0 0;padding-left:19px}.alert-success{background:#F0FBF7;border-color:#CDEFE2;color:#146C51}.alert-error{background:#FFF4F4;border-color:#FFDADA;color:#9C3038}.alert-warning{background:#FFF9ED;border-color:#F7E4B9;color:#845E16}
.table-wrap{overflow:auto;margin:-3px}table{width:100%;border-collapse:collapse;min-width:760px}th{text-align:left;padding:12px 13px;color:#728096;font-size:10px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line);font-weight:800}td{padding:13px;border-bottom:1px solid #EDF1F5;color:#43526A;vertical-align:middle;font-size:12px}tbody tr:last-child td{border-bottom:0}td strong{color:var(--navy)}.cell-sub{display:block;color:#8A96A7;margin-top:3px;font-size:10px}.person-cell{display:flex;align-items:center;gap:10px}.person-cell>div{display:flex;flex-direction:column}.person-cell small{color:var(--muted);font-size:10px}.status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.status.success{background:#EAF8F2;color:#16835F}.status.info{background:#EDF4FF;color:#245FCE}.status.danger{background:#FFF0F1;color:#C33E48}.muted-status{background:#F2F4F7;color:#748093}.empty-inline{text-align:center;color:var(--muted);padding:26px}.cards-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.role-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;align-items:center;gap:13px;box-shadow:var(--shadow-sm)}.role-symbol{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#EEF4FF,#EAF9F7);color:var(--blue);font-size:18px}.role-main{flex:1}.role-title{display:flex;align-items:center;gap:8px}.role-title h3{margin:0;color:var(--navy);font-size:14px}.role-main p{margin:4px 0 0;color:var(--muted);font-size:11px}
.form-card{padding:24px}.narrow-card{max-width:650px}.stack-form{display:flex;flex-direction:column;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:6px;color:#42516A;font-size:11px;font-weight:750}label small{font-weight:500;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #DDE5EF;background:#fff;border-radius:10px;padding:10px 11px;color:var(--ink);outline:none;transition:.16s ease}input:focus,select:focus,textarea:focus{border-color:#8BB1FA;box-shadow:0 0 0 3px rgba(37,99,235,.09)}textarea{resize:vertical}input[type=color]{padding:4px;height:42px}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:6px}.switches{display:flex;gap:22px;flex-wrap:wrap}.switch-row{flex-direction:row;align-items:center;gap:9px;font-size:12px}.switch-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue)}.field-group{border-top:1px solid var(--line);padding-top:16px}.field-group-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.field-group-title b{color:var(--navy)}.field-group-title span{font-size:10px;color:var(--muted)}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.choice-card{border:1px solid var(--line);border-radius:12px;padding:11px;flex-direction:row;align-items:flex-start;gap:9px;background:#FBFCFE;cursor:pointer}.choice-card input{width:17px;height:17px;accent-color:var(--blue);margin-top:1px}.choice-card span{display:flex;flex-direction:column}.choice-card b{font-size:11px;color:var(--navy)}.choice-card small{font-size:10px}.section-divider{height:1px;background:var(--line);margin:3px 0}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.permission-group{border:1px solid var(--line);border-radius:14px;padding:13px;background:#FCFDFE}.permission-group-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.permission-group-head h3{font-size:12px;color:var(--navy);margin:0}.permission-group-head small{font-size:9px;color:var(--muted)}.permission-list{display:flex;flex-direction:column;gap:6px}.permission-list label{flex-direction:row;align-items:center;padding:7px 8px;border-radius:9px;background:#fff;border:1px solid #EDF1F5;cursor:pointer}.permission-list input{width:16px;height:16px;accent-color:var(--blue)}.permission-list span{display:flex;flex-direction:column}.permission-list b{font-size:10px}.permission-list small{font-size:9px}.settings-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.85fr);gap:18px}.settings-side{display:flex;flex-direction:column;gap:18px}.logo-preview{height:120px;border:1px dashed #CBD7E6;background:#FAFCFE;border-radius:14px;display:grid;place-items:center;margin-bottom:14px}.logo-preview img{max-height:82px;max-width:85%;object-fit:contain}.logo-preview .brand-mark{width:62px;height:72px}
.notification-list{display:flex;flex-direction:column;gap:10px}.notification-card{background:#fff;border:1px solid #DDE7F2;border-left:3px solid var(--blue);border-radius:14px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start;box-shadow:var(--shadow-sm)}.notification-card.read{border-left-color:#D6DEE8;opacity:.82}.notif-icon{width:34px;height:34px;border-radius:11px;background:#EEF4FF;color:var(--blue);display:grid;place-items:center;font-weight:900;flex:0 0 34px}.notif-copy{flex:1}.notif-copy>div{display:flex;justify-content:space-between;gap:12px}.notif-copy h3{margin:0;color:var(--navy);font-size:13px}.notif-copy time{font-size:10px;color:var(--muted)}.notif-copy p{margin:5px 0 0;color:var(--muted);font-size:11px}
.auth-body{min-height:100vh;background:#fff}.auth-grid{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr)}.auth-showcase{background:radial-gradient(circle at 18% 20%,rgba(20,184,166,.12),transparent 30%),radial-gradient(circle at 84% 70%,rgba(37,99,235,.12),transparent 30%),linear-gradient(145deg,#F7FCFC,#F7F9FE);display:grid;place-items:center;padding:58px;border-right:1px solid var(--line)}.auth-showcase-inner{max-width:620px}.auth-showcase .brand{margin-bottom:50px}.auth-showcase h1{font-size:50px;line-height:1.05;letter-spacing:-2px;margin:0 0 18px;color:var(--navy)}.auth-showcase p{font-size:16px;color:var(--muted);max-width:520px}.showcase-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:40px}.showcase-cards>div{background:rgba(255,255,255,.8);border:1px solid #DFE8F2;border-radius:16px;padding:16px;display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.showcase-cards span{font-size:10px;color:var(--blue);font-weight:900}.showcase-cards strong{color:var(--navy);font-size:12px;margin-top:9px}.showcase-cards small{color:var(--muted);font-size:10px;margin-top:3px}.auth-panel{display:grid;place-items:center;padding:40px}.auth-panel-inner{width:min(440px,100%)}.auth-card h2{font-size:30px;color:var(--navy);margin:6px 0 5px;letter-spacing:-.8px}.auth-card .muted{margin:0 0 22px}.auth-form{margin-top:20px}.auth-links{text-align:center;margin-top:18px}.auth-links a{color:var(--blue);font-weight:700;font-size:12px}.auth-shell{width:min(1050px,calc(100% - 32px));margin:0 auto;padding:32px 0 60px}.auth-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:24px}.auth-brand p{color:var(--muted);margin:4px 0}.install-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:28px}.requirements-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0 22px}.requirement{border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;gap:8px;align-items:center}.requirement>span{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;font-weight:900}.requirement.ok>span{background:#EAF8F2;color:var(--success)}.requirement.bad>span{background:#FFF0F1;color:var(--danger)}.requirement div{display:flex;flex-direction:column}.requirement b{font-size:10px}.requirement small{font-size:9px;color:var(--muted)}.section-title{display:flex;align-items:center;gap:11px;margin-top:4px}.section-title>span{width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--teal),var(--blue));color:#fff;display:grid;place-items:center;font-weight:900}.section-title h2{font-size:14px;color:var(--navy);margin:0}.section-title p{font-size:10px;color:var(--muted);margin:2px 0 0}.empty-state{text-align:center;padding:24px;border:1px dashed #CAD6E4;border-radius:14px;background:#FBFCFE}.empty-state strong{color:var(--navy)}.empty-state p{color:var(--muted);margin:5px auto 0;max-width:600px;font-size:12px}.simple-error-shell{min-height:100vh;display:grid;place-items:center;align-content:center;gap:22px;padding:30px;background:#FAFCFE}.error-page{text-align:center;max-width:560px}.error-code{display:inline-grid;place-items:center;width:78px;height:78px;border-radius:24px;background:linear-gradient(135deg,#EAF8F5,#EEF3FF);color:var(--blue);font-size:24px;font-weight:900}.error-page h1{font-size:31px;color:var(--navy);margin:14px 0 5px}.error-page p{color:var(--muted);margin:0 0 20px}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid.four{grid-template-columns:repeat(2,1fr)}.choice-grid{grid-template-columns:repeat(2,1fr)}.requirements-grid{grid-template-columns:repeat(2,1fr)}.auth-showcase h1{font-size:42px}.showcase-cards{grid-template-columns:1fr}.showcase-cards>div{display:grid;grid-template-columns:40px 1fr;column-gap:5px}.showcase-cards small{grid-column:2}}
@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-275px;transition:left .2s ease;width:252px;box-shadow:20px 0 45px rgba(11,31,77,.12)}.sidebar.open{left:0}.mobile-only{display:inline-grid;place-items:center}.topbar{padding:0 16px;gap:12px}.content-area{padding:20px 16px}.company-switcher{display:none}.user-copy{display:none}.dashboard-grid,.settings-layout{grid-template-columns:1fr}.auth-grid{grid-template-columns:1fr}.auth-showcase{display:none}.auth-panel{min-height:100vh}.cards-list{grid-template-columns:1fr}}
@media(max-width:650px){body{font-size:13px}.topbar{height:66px}.topbar-actions{gap:7px}.top-link{display:none}.content-area{padding:16px 12px}.page-heading{align-items:flex-start;flex-direction:column;gap:13px}.page-heading h1{font-size:25px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px;gap:9px}.stat-icon{width:38px;height:38px;border-radius:11px}.stat-card strong{font-size:22px}.stat-card em{display:none}.card{padding:15px;border-radius:15px}.form-card{padding:17px}.form-grid,.form-grid.four{grid-template-columns:1fr}.choice-grid,.permission-groups{grid-template-columns:1fr}.field-group-title{flex-direction:column;gap:3px}.form-actions{flex-wrap:wrap}.form-actions .btn{flex:1}.notification-card{align-items:flex-start}.notif-copy>div{flex-direction:column;gap:2px}.requirements-grid{grid-template-columns:1fr}.install-card{padding:18px}.auth-shell{width:min(100% - 20px,1050px);padding-top:15px}.auth-panel{padding:24px 18px}.auth-card h2{font-size:26px}.stats-grid .stat-card>div{display:block}.stats-grid .stat-card strong{display:block;margin-top:3px}.topbar .brand-name{display:none}.actions{min-width:180px}.settings-side{min-width:0}}

/* Resumen ejecutivo */
.app-icon{width:18px;height:18px;display:block;flex:0 0 auto}.nav-icon .app-icon{width:16px;height:16px}.top-link .app-icon{width:17px;height:17px}.account-shortcut{display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#FBFCFE;transition:.18s ease}.account-shortcut:hover{background:#F4F8FD;border-color:#CFDCEC}.account-shortcut>div:nth-child(2){display:flex;flex-direction:column;min-width:0}.account-shortcut b{font-size:11px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-shortcut small{font-size:10px;color:var(--muted)}.account-shortcut>.app-icon{width:15px;height:15px;color:#8B99AB}
.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.dashboard-heading h1{margin:4px 0 5px;font-size:31px;line-height:1.1;color:var(--navy);letter-spacing:-.9px}.dashboard-heading p{margin:0;color:var(--muted);max-width:690px}.dashboard-filters{display:flex;align-items:flex-end;gap:9px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.filter-field{min-width:132px;gap:4px}.filter-field span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#79869A}.filter-field input,.filter-field select{height:39px;padding:7px 9px;border-radius:9px;font-size:11px}.property-filter{min-width:190px}.filter-submit{height:39px;display:inline-flex;align-items:center;gap:7px;padding-inline:14px}.filter-submit .app-icon{width:15px;height:15px}
.executive-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.kpi-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:var(--shadow-sm);min-width:0;transition:transform .18s ease,box-shadow .18s ease}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}.kpi-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center}.kpi-icon .app-icon{width:17px;height:17px}.kpi-icon.teal{background:#E9FAF7;color:#079A90}.kpi-icon.blue{background:#EDF3FF;color:#2563EB}.kpi-icon.navy{background:#EEF2F8;color:#0B1F4D}.kpi-icon.coral{background:#FFF0F0;color:#E9575E}.kpi-icon.violet{background:#F3F0FF;color:#7048C8}.kpi-icon.amber{background:#FFF7E6;color:#C67B08}.kpi-card>small{display:block;color:#66758C;font-size:10px;font-weight:700;margin-bottom:3px}.kpi-card>strong{display:flex;align-items:baseline;gap:4px;color:var(--navy);font-size:22px;letter-spacing:-.6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card>p{margin:4px 0 0;color:#8A97A9;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-star{font-size:14px;color:#F4A621}.metric-change{font-size:9px;font-weight:800;padding:4px 6px;border-radius:999px;white-space:nowrap}.metric-change.up{color:#0A8B66;background:#E9F8F2}.metric-change.down{color:#C94951;background:#FFF0F1}.metric-change.neutral{color:#758399;background:#F2F5F8}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;align-items:start}.dashboard-main-grid .span-main{min-width:0}.dashboard-card-head{margin-bottom:14px;align-items:center}.dashboard-card-head h2{font-size:16px;margin:0}.dashboard-card-head p{font-size:10px;margin:2px 0 0}.period-chip,.count-chip{display:inline-flex;align-items:center;justify-content:center;border:1px solid #DDE6F1;background:#FAFCFE;color:#5C6C83;border-radius:9px;padding:6px 9px;font-size:9px;font-weight:750}.count-chip{min-width:28px;color:var(--blue);background:#EEF4FF;border-color:#D6E3FB}.chart-shell{position:relative;color:var(--blue);padding:0 2px 2px}.line-chart{display:block;width:100%;height:225px;overflow:visible}.chart-axis{stroke:#DDE5EF;stroke-width:1}.chart-grid-line{stroke:#EDF1F6;stroke-width:1;stroke-dasharray:3 4}.chart-area{fill:url(#revenueArea);stroke:none}.chart-line{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-labels{display:flex;justify-content:space-between;padding:0 7px;color:#8B98A9;font-size:9px}.chart-empty{position:absolute;inset:45px 0 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.chart-empty>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#F1F6FF;color:var(--blue);margin-bottom:8px}.chart-empty .app-icon{width:20px;height:20px}.chart-empty strong{font-size:11px;color:var(--navy)}.chart-empty small{font-size:9px;color:var(--muted);margin-top:2px}.is-empty .chart-line,.is-empty .chart-area{opacity:.2}
.upcoming-list,.ranking-list,.channel-list,.activity-list{display:flex;flex-direction:column}.upcoming-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #EEF2F6}.upcoming-row:first-child{border-top:0}.date-tile{width:42px;height:42px;border-radius:11px;background:#F2F7FF;border:1px solid #DFE8F6;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.date-tile b{font-size:14px;color:var(--navy)}.date-tile span{font-size:8px;text-transform:uppercase;color:var(--blue);margin-top:3px}.upcoming-copy{display:flex;flex-direction:column;min-width:0}.upcoming-copy strong{font-size:11px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upcoming-copy span{font-size:9px;color:var(--muted);margin-top:2px}.dashboard-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:25px 14px;border:1px dashed #D4DEEA;border-radius:13px;background:#FBFCFE}.dashboard-empty.compact{padding:20px 12px}.dashboard-empty>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#EEF4FF;color:var(--blue);margin-bottom:8px}.dashboard-empty .app-icon{width:18px;height:18px}.dashboard-empty strong{font-size:10px;color:var(--navy)}.dashboard-empty small{font-size:9px;color:var(--muted);margin-top:3px;max-width:230px}.ranking-row{padding:10px 0;border-top:1px solid #EEF2F6}.ranking-row:first-child{border-top:0}.ranking-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:7px}.ranking-title strong{font-size:10px;color:var(--navy)}.ranking-title span{font-size:9px;color:var(--blue);font-weight:800}.progress-track{height:7px;border-radius:999px;background:#EDF2F7;overflow:hidden}.progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--blue))}.channel-row{display:grid;grid-template-columns:8px minmax(80px,.8fr) minmax(80px,1fr) 42px;align-items:center;gap:8px;padding:9px 0;border-top:1px solid #EEF2F6}.channel-row:first-child{border-top:0}.channel-dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}.channel-row strong{font-size:10px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-row>b{font-size:9px;text-align:right;color:#5C6A7E}.channel-meter{height:6px;border-radius:999px;background:#EDF2F7;overflow:hidden}.channel-meter span{display:block;height:100%;border-radius:999px;background:var(--blue)}
.calendar-legend{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted)}.calendar-legend i{width:7px;height:7px;border-radius:50%;background:var(--teal)}.mini-calendar{border:1px solid #E8EDF4;border-radius:14px;overflow:hidden}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays{background:#F8FAFD;border-bottom:1px solid #E8EDF4}.calendar-weekdays span{padding:8px;text-align:center;font-size:8px;font-weight:800;color:#7C899A;text-transform:uppercase;letter-spacing:.05em}.calendar-day{position:relative;min-height:61px;padding:8px;border-right:1px solid #EEF2F6;border-bottom:1px solid #EEF2F6;background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.blank{background:#FBFCFE}.calendar-day b{font-size:9px;color:#4E5D73}.calendar-day.today b{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:8px;background:#EEF4FF;color:var(--blue)}.calendar-day.has-event:after{content:"";position:absolute;left:8px;bottom:8px;width:18px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--blue))}.calendar-day small{position:absolute;right:7px;top:7px;min-width:17px;height:17px;border-radius:999px;background:#EAF8F5;color:#078D84;display:grid;place-items:center;font-size:8px;font-weight:900}.activity-row{display:flex;gap:10px;padding:10px 0;border-top:1px solid #EEF2F6}.activity-row:first-child{border-top:0}.activity-icon{width:31px;height:31px;flex:0 0 31px;border-radius:10px;background:#F2F6FC;color:#53709A;display:grid;place-items:center}.activity-icon .app-icon{width:14px;height:14px}.activity-row>div{display:flex;flex-direction:column;min-width:0}.activity-row strong{font-size:10px;color:var(--navy)}.activity-row span{font-size:8.5px;color:var(--muted);margin-top:2px}.text-link{font-size:9px;font-weight:800;color:var(--blue)}
@media(max-width:1380px){.executive-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1080px){.dashboard-heading{align-items:flex-start;flex-direction:column}.dashboard-filters{width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.filter-field,.property-filter{min-width:0}.filter-submit{align-self:end;justify-content:center}.dashboard-main-grid{grid-template-columns:1fr}.executive-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.executive-kpis{grid-template-columns:repeat(2,1fr);gap:9px}.dashboard-filters{grid-template-columns:1fr 1fr}.property-filter{grid-column:1/-1}.filter-submit{grid-column:1/-1}.dashboard-heading h1{font-size:26px}.kpi-card{padding:13px}.kpi-card>strong{font-size:19px}.line-chart{height:190px}.calendar-day{min-height:48px;padding:6px}.calendar-day.has-event:after{left:6px;bottom:6px;width:14px}.content-area{overflow-x:hidden}}
@media(max-width:390px){.executive-kpis{grid-template-columns:1fr}.dashboard-filters{grid-template-columns:1fr}.property-filter,.filter-submit{grid-column:auto}.kpi-card>p{white-space:normal}.calendar-weekdays span{font-size:7px;padding:7px 2px}.calendar-day{min-height:43px;padding:4px}.calendar-day small{right:3px;top:3px}.chart-labels{font-size:8px}}

/* Propiedades y catálogo */
.app-icon{width:18px;height:18px;display:block}.heading-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.heading-actions .app-icon,.btn .app-icon{width:15px;height:15px}.property-page-heading{align-items:center}.property-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(140px,.7fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:17px;padding:13px;box-shadow:var(--shadow-sm);margin-bottom:12px}.property-filters label{gap:4px}.property-filters label>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#79869A}.property-filters input,.property-filters select{height:40px;padding:8px 10px;font-size:11px}.filter-actions{display:flex;gap:7px}.filter-actions .btn{height:40px}.catalog-summary{display:flex;align-items:baseline;gap:6px;margin:16px 2px;color:var(--muted);font-size:11px}.catalog-summary strong{font-size:18px;color:var(--navy)}
.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.property-card{background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.property-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#D6E1EF}.property-cover{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(145deg,#F1F7FB,#EDF5FE);overflow:hidden}.property-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.property-card:hover .property-cover img{transform:scale(1.025)}.cover-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7790AA;background:radial-gradient(circle at 25% 25%,rgba(20,184,166,.1),transparent 30%),linear-gradient(145deg,#F7FAFE,#EEF5FC)}.cover-placeholder .app-icon{width:30px;height:30px;color:#4D79A8}.cover-placeholder span{font-size:10px;font-weight:700}.cover-placeholder.large .app-icon{width:42px;height:42px}.property-status{position:absolute;top:12px;left:12px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;backdrop-filter:blur(8px);box-shadow:0 4px 12px rgba(11,31,77,.08)}.property-status.active{background:rgba(237,251,246,.94);color:#0A7C5C}.property-status.inactive{background:rgba(245,246,248,.94);color:#69778A}.photo-count{position:absolute;right:12px;bottom:11px;display:flex;align-items:center;gap:5px;border-radius:999px;background:rgba(11,31,77,.78);color:#fff;padding:5px 8px;font-size:9px;font-weight:800;backdrop-filter:blur(8px)}.photo-count .app-icon{width:12px;height:12px}.property-card-body{padding:15px}.property-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.property-title-row>div{min-width:0}.property-title-row small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#0C8E8C;font-weight:800}.property-title-row h2{font-size:16px;color:var(--navy);margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.property-title-row>strong{font-size:12px;color:var(--navy);white-space:nowrap}.property-location{display:flex;align-items:center;gap:5px;color:#718096;font-size:10px;margin:9px 0}.property-location .app-icon{width:13px;height:13px;color:var(--teal)}.property-facts{display:flex;gap:6px;flex-wrap:wrap;padding:10px 0;border-top:1px solid #EDF2F6;border-bottom:1px solid #EDF2F6}.property-facts span{display:flex;align-items:center;gap:4px;color:#586980;font-size:9px;background:#F8FAFC;border:1px solid #EDF1F5;border-radius:8px;padding:5px 7px}.property-facts .app-icon{width:12px;height:12px;color:#466A93}.property-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;color:#8A97A9;font-size:9px}.property-card-foot .text-link{display:flex;align-items:center;gap:3px}.property-card-foot .app-icon{width:11px;height:11px}.property-empty{padding:52px 24px}.property-empty .empty-icon{width:54px;height:54px;border-radius:16px;background:#EEF7FB;color:var(--teal);display:grid;place-items:center;margin:0 auto 12px}.property-empty .empty-icon .app-icon{width:27px;height:27px}.property-empty .btn{margin-top:16px}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin:22px 0 4px}.pagination a{min-width:34px;height:34px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:#fff;color:#66758C;font-size:11px;font-weight:800}.pagination a:hover{border-color:#BFD0E6;color:var(--navy)}.pagination a.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 5px 14px rgba(37,99,235,.2)}
.property-form{display:flex;flex-direction:column;gap:16px}.property-form-section{padding:22px}.section-heading{display:flex;align-items:center;gap:11px;margin-bottom:18px}.section-heading h2{font-size:15px;margin:0;color:var(--navy)}.section-heading p{font-size:10px;color:var(--muted);margin:2px 0 0}.section-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 38px}.section-icon .app-icon{width:18px;height:18px}.section-icon.teal{background:#EAF9F6;color:#0B948A}.section-icon.blue{background:#EDF3FF;color:#2563EB}.section-icon.coral{background:#FFF0F0;color:#E6545C}.section-icon.violet{background:#F3F0FF;color:#6D4AC6}.section-icon.navy{background:#EFF2F8;color:var(--navy)}.property-form-footer{position:sticky;bottom:10px;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #DCE5F0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:16px;padding:12px 14px;box-shadow:0 12px 32px rgba(11,31,77,.12)}
.property-detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.detail-breadcrumb{display:flex;align-items:center;gap:7px;color:#8693A5;font-size:10px}.detail-breadcrumb a{color:var(--blue);font-weight:750}.detail-title-line{display:flex;align-items:center;gap:10px;margin-top:7px}.detail-title-line h1{font-size:30px;line-height:1.1;color:var(--navy);margin:0;letter-spacing:-.8px}.detail-title-block>p{margin:6px 0 0;color:var(--muted);max-width:760px}.property-hero-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.7fr);background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:18px}.detail-cover{aspect-ratio:16/7.8;background:#F3F7FB;min-height:310px}.detail-cover img{width:100%;height:100%;object-fit:cover;display:block}.detail-overview{padding:26px;display:flex;flex-direction:column;justify-content:center}.detail-overview h2{font-size:26px;color:var(--navy);margin:8px 0 17px}.detail-overview h2 small{font-size:10px;color:var(--muted);font-weight:600}.overview-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:17px}.overview-facts>span{border:1px solid #E5ECF4;background:#FAFCFE;border-radius:12px;padding:10px 7px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}.overview-facts .app-icon{width:16px;height:16px;color:var(--blue);margin-bottom:3px}.overview-facts strong{font-size:14px;color:var(--navy)}.overview-facts small{font-size:8px;color:var(--muted)}.overview-meta{display:flex;flex-direction:column;gap:8px;border-top:1px solid #E9EEF5;padding-top:14px}.overview-meta>div{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px}.overview-meta>div>.app-icon{width:15px;height:15px;color:#4F759F}.overview-meta span{display:flex;flex-direction:column}.overview-meta small{font-size:8px;color:#8B98A9;text-transform:uppercase;letter-spacing:.06em}.overview-meta strong{font-size:10px;color:#394C65}.property-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.55fr);gap:18px;align-items:start}.property-detail-main,.property-detail-side{display:flex;flex-direction:column;gap:18px}.detail-section,.detail-side-card{min-width:0}.rich-copy{margin:0;color:#4D5E75;font-size:12px;line-height:1.75}.feature-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-columns h3{font-size:11px;color:var(--navy);margin:0 0 10px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:9px;background:#EFFAF8;border:1px solid #D8F0EC;color:#177C72;font-size:9px;font-weight:750}.chip .app-icon{width:11px;height:11px}.service-chip{background:#F1F5FF;border-color:#DDE7FC;color:#315FBB}.tag-chip{background:#F7F3FF;border-color:#E8DFFC;color:#6A4DB3}.muted-chip{background:#F5F7F9;border-color:#E8ECF0;color:#8490A0}.tag-row{border-top:1px solid #EDF1F5;padding-top:14px;margin-top:16px}.tag-row>strong{font-size:10px;color:var(--navy);display:block;margin-bottom:8px}.room-list{display:flex;flex-direction:column;gap:9px}.room-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:flex-start;border:1px solid #E6ECF3;border-radius:13px;padding:12px;background:#FCFDFE}.room-card-icon{width:38px;height:38px;border-radius:11px;background:#EDF4FF;color:var(--blue);display:grid;place-items:center}.room-card-copy>div{display:flex;align-items:center;gap:7px}.room-card-copy strong{font-size:11px;color:var(--navy)}.room-card-copy>small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.room-card-copy p{font-size:9px;color:#65768D;margin:6px 0 0}.row-editor{position:relative}.row-editor summary{list-style:none;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 9px;color:#53647B;font-size:9px;font-weight:800}.row-editor summary::-webkit-details-marker{display:none}.row-editor[open]{grid-column:1/-1;width:100%;padding-top:7px}.inline-edit-form{display:grid;grid-template-columns:1.3fr 1fr repeat(4,.55fr) 1.4fr auto auto;gap:6px;align-items:center;background:#F7F9FC;border-radius:11px;padding:9px}.inline-edit-form input{padding:7px;font-size:9px}.mini-check{display:flex;flex-direction:row;align-items:center;gap:5px;font-size:9px;font-weight:700;white-space:nowrap}.mini-check input[type=checkbox]{width:15px;height:15px;accent-color:var(--blue)}.delete-row-form{display:flex;justify-content:flex-end;margin-top:6px}.quick-add-form{margin-top:14px;padding-top:14px;border-top:1px solid #E9EEF4}.quick-add-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.quick-add-title strong{font-size:10px;color:var(--navy)}.quick-add-title span{font-size:9px;color:var(--muted)}.quick-add-grid{display:grid;grid-template-columns:1.2fr 1fr repeat(4,.6fr) 1.2fr auto auto;gap:7px;align-items:center}.quick-add-grid input{padding:8px;font-size:9px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-item{margin:0;position:relative;overflow:hidden;border-radius:13px;border:1px solid #E2E9F2;background:#F7F9FC}.gallery-item img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover}.cover-badge{position:absolute;top:8px;left:8px;border-radius:999px;background:rgba(11,31,77,.82);color:#fff;padding:4px 7px;font-size:8px;font-weight:850}.gallery-item figcaption{display:flex;gap:5px;padding:7px;background:#fff}.gallery-item figcaption form{flex:1}.gallery-item figcaption .btn{width:100%;font-size:9px;padding:6px}.gallery-upload{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;border-top:1px solid #E9EEF4;margin-top:14px;padding-top:14px}.gallery-upload input{font-size:10px}.detail-key-values{display:flex;flex-direction:column}.detail-key-values>div{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid #EEF2F6}.detail-key-values>div:first-child{border-top:0}.detail-key-values span{font-size:10px;color:var(--muted)}.detail-key-values strong{font-size:10px;color:var(--navy)}.charge-list{display:flex;flex-direction:column}.charge-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:9px 0;border-top:1px solid #EEF2F6}.charge-row:first-child{border-top:0}.charge-row>div{display:flex;flex-direction:column}.charge-row strong{font-size:10px;color:var(--navy)}.charge-row small{font-size:8px;color:var(--muted);margin-top:2px}.charge-row>b{font-size:10px;color:#39536E}.mini-delete{width:23px;height:23px;border-radius:7px;border:1px solid #FFDADF;background:#FFF4F5;color:#C33E48;font-size:15px;line-height:1}.charge-form{border-top:1px solid #E9EEF4;margin-top:10px;padding-top:12px;display:flex;flex-direction:column;gap:7px}.charge-form input,.charge-form select{font-size:9px;padding:8px}.charge-form-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.charge-checks{display:flex;gap:12px;flex-wrap:wrap}.btn-full{width:100%}.policy-block{padding:11px 0;border-top:1px solid #EDF1F5}.policy-block:first-of-type{border-top:0;padding-top:0}.policy-block strong{font-size:10px;color:var(--navy)}.policy-block p{font-size:9px;line-height:1.6;color:#62738A;margin:5px 0 0}.management-card form+form{margin-top:8px}.danger-zone{padding-top:8px;border-top:1px solid #F1E1E3}.import-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;align-items:start}.import-guide .section-heading{margin-bottom:13px}.csv-columns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.csv-columns code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;background:#F5F8FC;border:1px solid #E5EBF3;color:#445A73;padding:5px 7px;border-radius:7px}
@media(max-width:1180px){.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-filters{grid-template-columns:1fr 1fr 1fr}.property-filters .search-field{grid-column:1/-1}.filter-actions{justify-content:flex-end}.property-hero-card{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.property-detail-grid{grid-template-columns:minmax(0,1fr) 320px}.quick-add-grid,.inline-edit-form{grid-template-columns:repeat(4,1fr)}.quick-add-grid .btn{grid-column:span 1}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.property-filters{grid-template-columns:1fr 1fr}.property-filters .search-field{grid-column:1/-1}.filter-actions{grid-column:1/-1}.property-hero-card{grid-template-columns:1fr}.detail-cover{min-height:260px}.property-detail-grid{grid-template-columns:1fr}.property-detail-side{display:grid;grid-template-columns:1fr 1fr;align-items:start}.management-card{grid-column:1/-1}.import-layout{grid-template-columns:1fr}.property-form-footer{bottom:6px}}
@media(max-width:720px){.heading-actions{width:100%}.heading-actions .btn{flex:1}.property-filters{grid-template-columns:1fr}.property-filters .search-field,.filter-actions{grid-column:auto}.filter-actions .btn{flex:1}.property-grid{grid-template-columns:1fr}.property-detail-heading{align-items:flex-start;flex-direction:column}.detail-title-line{align-items:flex-start;flex-wrap:wrap}.detail-title-line h1{font-size:25px}.detail-cover{min-height:220px}.detail-overview{padding:18px}.overview-facts{grid-template-columns:repeat(2,1fr)}.feature-columns{grid-template-columns:1fr}.room-card{grid-template-columns:34px minmax(0,1fr)}.row-editor{grid-column:1/-1}.quick-add-grid,.inline-edit-form{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-upload{grid-template-columns:1fr}.property-detail-side{grid-template-columns:1fr}.management-card{grid-column:auto}.property-form-footer{align-items:flex-start;flex-direction:column}.property-form-footer .form-actions{width:100%}}
@media(max-width:390px){.gallery-grid{grid-template-columns:1fr}.quick-add-grid,.inline-edit-form{grid-template-columns:1fr}.property-card-body{padding:13px}.property-title-row{flex-direction:column}.property-title-row>strong{font-size:11px}.detail-overview h2{font-size:22px}.overview-facts{gap:5px}.overview-facts>span{padding:8px 5px}.property-form-section{padding:16px}.heading-actions .btn{flex-basis:100%}}
.type-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:start}.type-list{display:flex;flex-direction:column}.type-row{display:flex;gap:8px;align-items:center;padding:10px 0;border-top:1px solid #EDF1F5}.type-row:first-child{border-top:0}.type-edit-form{display:grid;grid-template-columns:34px minmax(180px,1fr) auto auto auto;gap:8px;align-items:center;flex:1}.type-icon{width:34px;height:34px;border-radius:10px;background:#EDF7F6;color:var(--teal);display:grid;place-items:center}.type-icon .app-icon{width:16px;height:16px}.type-edit-form input{padding:8px 9px;font-size:10px}.type-count{font-size:9px;color:var(--muted);white-space:nowrap}.type-create-card{position:sticky;top:94px}@media(max-width:920px){.type-layout{grid-template-columns:1fr}.type-create-card{position:static}}@media(max-width:650px){.type-row{align-items:stretch;flex-direction:column}.type-edit-form{grid-template-columns:34px minmax(0,1fr)}.type-count,.type-edit-form .mini-check,.type-edit-form .btn{grid-column:2}.type-row>.inline-form{justify-content:flex-end}}

/* Availability and rates */
.availability-heading{align-items:flex-start}.availability-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.availability-tabs .btn{white-space:nowrap}.availability-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px;padding:18px 20px}.availability-property-picker{min-width:260px}.availability-property-picker label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:800;color:var(--navy)}.availability-property-picker select{min-width:260px}.availability-property-summary{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;justify-content:flex-end}.availability-property-summary>span{min-width:128px;padding:10px 13px;border-radius:12px;background:#F8FAFD;border:1px solid #E8EDF4;display:flex;flex-direction:column;gap:3px}.availability-property-summary small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.availability-property-summary strong{font-size:11px;color:var(--navy)}
.availability-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.55fr);gap:18px;align-items:start}.calendar-panel{padding:20px}.availability-side{display:flex;flex-direction:column;gap:18px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.calendar-heading h2{margin:3px 0 0;color:var(--navy);font-size:19px}.calendar-nav{display:flex;align-items:center;gap:7px}.calendar-nav .icon-btn{display:grid;place-items:center;text-decoration:none;font-size:20px;color:var(--navy)}.calendar-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:9px 11px;border:1px solid #E9EEF5;background:#FBFCFE;border-radius:11px;margin-bottom:12px}.calendar-legend span{display:inline-flex;align-items:center;gap:6px;font-size:9px;color:#63748B;font-weight:700}.legend-dot{width:8px;height:8px;border-radius:999px;background:#DCE5EF}.legend-dot.available{background:#BFEDE5}.legend-dot.blocked{background:#FFD6DA}.legend-dot.maintenance{background:#FFE0A6}.legend-dot.special{background:#D9D3FF}
.availability-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #E4EAF2;border-radius:15px;overflow:hidden;background:#fff}.calendar-weekday{padding:9px 5px;text-align:center;font-size:9px;color:#718198;font-weight:850;background:#F7F9FC;border-right:1px solid #E9EEF5}.calendar-weekday:nth-child(7){border-right:0}.calendar-day{min-height:102px;padding:9px;border-top:1px solid #E9EEF5;border-right:1px solid #E9EEF5;background:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:8px;transition:.18s ease;position:relative}.calendar-day:nth-child(7n+7){border-right:0}.calendar-day:hover{background:#FAFCFF;box-shadow:inset 0 0 0 1px #DDE7F5}.calendar-day.outside{background:#FBFCFE;color:#A8B2C0}.calendar-day.today{box-shadow:inset 0 0 0 2px #8CB5FF}.calendar-day.is-blocked{background:#FFF7F8}.calendar-day.block-maintenance{background:#FFFBF2}.calendar-day.block-external{background:#F7F9FF}.calendar-day.has-special-rate:not(.is-blocked){background:#FBFAFF}.calendar-day-top{display:flex;align-items:center;justify-content:space-between}.calendar-day-top b{font-size:11px;color:#31425A}.outside .calendar-day-top b{color:#ABB5C2}.rule-pin{width:17px;height:17px;border-radius:999px;display:grid;place-items:center;background:#EEF0FF;color:#6654D8;font-size:20px;line-height:8px}.calendar-rate{align-self:flex-start;border-radius:8px;background:#F1F8F7;color:#1D7D72;padding:4px 6px;font-size:9px;font-weight:850}.has-special-rate .calendar-rate{background:#F1EEFF;color:#644FB5}.calendar-status{font-size:8px;font-weight:850;color:#B94754;line-height:1.2;word-break:break-word}.block-maintenance .calendar-status{color:#A36A00}.block-external .calendar-status{color:#5269B8}
.action-card{padding:18px}.action-card form{display:flex;flex-direction:column;gap:12px}.form-grid.one{display:grid;grid-template-columns:1fr;gap:10px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:9px}.action-card textarea{resize:vertical;min-height:64px}.availability-events-card{margin-top:18px;padding:20px}.section-heading.split{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.text-link{display:inline-flex;align-items:center;gap:4px;color:var(--blue);font-size:10px;font-weight:800;text-decoration:none}.text-link .app-icon{width:13px;height:13px}.availability-event-list{display:flex;flex-direction:column;margin-top:8px}.availability-event{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;padding:11px 0;border-top:1px solid #EDF1F5}.availability-event:first-child{border-top:0}.availability-event>div{display:flex;flex-direction:column;gap:3px}.availability-event strong{font-size:10px;color:var(--navy)}.availability-event span{font-size:9px;color:var(--muted)}.event-icon{width:38px;height:38px;border-radius:11px;background:#F5F7FA;color:#687A91;display:grid;place-items:center}.event-icon .app-icon{width:17px;height:17px}.event-icon.manual{background:#FFF1F3;color:#C34F5D}.event-icon.maintenance{background:#FFF6E4;color:#AF7100}.event-icon.external{background:#EFF3FF;color:#536AC4}.event-icon.rule{background:#F1EEFF;color:#6A52C6}.inline-empty{display:flex;gap:10px;align-items:center;padding:16px;border:1px dashed #DDE5EF;border-radius:13px;background:#FBFCFE}.inline-empty>.app-icon{width:20px;height:20px;color:var(--teal);flex:0 0 auto}.inline-empty>div{display:flex;flex-direction:column;gap:3px}.inline-empty strong{font-size:10px;color:var(--navy)}.inline-empty span{font-size:9px;color:var(--muted)}
.rate-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:18px;align-items:start;margin-bottom:18px}.rate-settings-card,.rate-preview-card,.seasons-card,.occupancy-card{padding:20px}.rate-form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.day-rule-group{margin-top:16px;padding-top:14px;border-top:1px solid #E9EEF4}.day-rule-group>strong{display:block;font-size:10px;color:var(--navy);margin-bottom:9px}.day-chips{display:flex;flex-wrap:wrap;gap:7px}.day-chips label{position:relative}.day-chips input{position:absolute;opacity:0;pointer-events:none}.day-chips span{display:grid;place-items:center;min-width:43px;height:32px;border:1px solid #DFE6EF;border-radius:9px;background:#fff;font-size:9px;font-weight:850;color:#607188;cursor:pointer;transition:.16s}.day-chips input:checked+span{background:#EEF5FF;border-color:#B9D1FF;color:#1F61D8;box-shadow:inset 0 0 0 1px #C8DBFF}.day-chips input:focus-visible+span{outline:2px solid #7AA9FF;outline-offset:2px}.day-rule-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rate-settings-card .form-actions{margin-top:18px}.pricing-order{display:flex;flex-direction:column;margin:12px 0 16px}.pricing-order>div{display:grid;grid-template-columns:31px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-top:1px solid #EDF1F5}.pricing-order>div:first-child{border-top:0}.pricing-order b{width:31px;height:31px;border-radius:10px;background:#EEF4FF;color:var(--blue);display:grid;place-items:center;font-size:10px}.pricing-order span{display:flex;flex-direction:column;gap:2px}.pricing-order strong{font-size:10px;color:var(--navy)}.pricing-order small{font-size:9px;color:var(--muted)}.soft-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#F1F5FB;color:#61758E;font-size:8px;font-weight:850}.rate-table-wrap{overflow:auto;margin-top:8px}.modern-table{width:100%;border-collapse:collapse;min-width:760px}.modern-table th{text-align:left;padding:10px 9px;background:#F8FAFD;border-bottom:1px solid #E5EAF1;color:#6A7A90;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.modern-table td{padding:11px 9px;border-bottom:1px solid #EDF1F5;color:#51627A;font-size:9px;vertical-align:middle}.modern-table td strong{color:var(--navy);font-size:10px}.cell-subtitle{display:block;margin-top:3px;color:var(--muted);font-size:8px}.table-empty{text-align:center!important;padding:25px!important;color:var(--muted)!important}.inline-builder{display:grid;grid-template-columns:1.25fr .85fr repeat(2,1fr) .9fr .55fr .55fr .55fr auto;gap:8px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid #E9EEF4}.inline-builder label{min-width:0}.inline-builder input,.inline-builder select{padding:8px;font-size:9px}.occupancy-list{display:flex;flex-direction:column;margin-top:8px}.occupancy-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #EDF1F5}.occupancy-row:first-child{border-top:0}.occupancy-icon{width:38px;height:38px;border-radius:11px;background:#EFF7FF;color:#2B67C8;display:grid;place-items:center}.occupancy-icon .app-icon{width:17px;height:17px}.occupancy-row>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.occupancy-row strong{font-size:10px;color:var(--navy)}.occupancy-row span{font-size:9px;color:var(--muted)}.occupancy-builder{grid-template-columns:1fr 1fr 1fr 1fr auto}
.calendar-connect-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.calendar-import-card,.calendar-export-card,.calendar-source-card{padding:20px}.calendar-import-card form{display:flex;flex-direction:column;gap:12px}.calendar-export-card>label{display:flex;flex-direction:column;gap:6px;color:var(--navy);font-size:10px;font-weight:800;margin-top:12px}.copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.copy-field input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;background:#F8FAFD}.security-note,.quote-note{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:10px;border-radius:11px;background:#F7FAFF;border:1px solid #E3EBF8;color:#60748D;font-size:9px;line-height:1.5}.security-note .app-icon,.quote-note .app-icon{width:16px;height:16px;color:#4B72B4;flex:0 0 auto}.source-list{display:flex;flex-direction:column;margin-top:8px}.source-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 0;border-top:1px solid #EDF1F5}.source-row:first-child{border-top:0}.source-icon{width:40px;height:40px;border-radius:12px;background:#F1F5FF;color:#566EC2;display:grid;place-items:center}.source-icon .app-icon{width:18px;height:18px}.source-row>div{display:flex;flex-direction:column;gap:3px}.source-row strong{font-size:10px;color:var(--navy)}.source-row span{font-size:9px;color:var(--muted)}
.quote-layout{display:grid;grid-template-columns:minmax(290px,.55fr) minmax(0,1.45fr);gap:18px;align-items:start}.quote-form-card,.quote-result-card{padding:20px}.quote-form-card form{display:flex;flex-direction:column;gap:14px}.quote-placeholder,.quote-unavailable{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.quote-status-icon{width:58px;height:58px;border-radius:17px;background:#EFF8F7;color:var(--teal);display:grid;place-items:center;margin-bottom:14px}.quote-status-icon .app-icon{width:27px;height:27px}.quote-unavailable .quote-status-icon{background:#FFF2F3;color:#C24F5B}.quote-placeholder h2,.quote-unavailable h2{font-size:18px;color:var(--navy);margin:0 0 6px}.quote-placeholder p,.quote-unavailable p{max-width:430px;font-size:10px;line-height:1.6;color:var(--muted);margin:0 0 15px}.quote-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:15px;border-bottom:1px solid #E9EEF4}.quote-head h2{font-size:20px;color:var(--navy);margin:3px 0}.quote-head p{font-size:9px;color:var(--muted);margin:0}.night-breakdown{display:flex;flex-direction:column;max-height:340px;overflow:auto}.night-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #EDF1F5}.night-breakdown span{display:flex;flex-direction:column;gap:2px}.night-breakdown strong{font-size:9px;color:var(--navy)}.night-breakdown small{font-size:8px;color:var(--muted)}.night-breakdown b{font-size:10px;color:#38516E}.quote-totals{padding-top:10px}.quote-totals>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;color:#596B82;font-size:9px}.quote-totals>div strong{font-size:10px;color:#344C68}.quote-totals .discount,.quote-totals .discount strong{color:#198572}.quote-totals .quote-total{border-top:1px solid #DDE5EF;margin-top:7px;padding-top:13px;color:var(--navy);font-weight:850}.quote-totals .quote-total strong{font-size:17px;color:var(--navy)}
@media(max-width:1180px){.availability-layout{grid-template-columns:minmax(0,1fr) 320px}.rate-form-grid{grid-template-columns:repeat(3,1fr)}.inline-builder{grid-template-columns:repeat(4,1fr)}.inline-builder .btn{min-height:38px}.occupancy-builder{grid-template-columns:repeat(4,1fr)}.occupancy-builder .btn{grid-column:4}.calendar-day{min-height:92px}}
@media(max-width:1024px){.availability-toolbar{align-items:stretch}.availability-property-summary{justify-content:flex-start}.availability-layout{grid-template-columns:1fr}.availability-side{display:grid;grid-template-columns:1fr 1fr}.rate-layout{grid-template-columns:1fr}.calendar-connect-grid{grid-template-columns:1fr}.quote-layout{grid-template-columns:1fr}.quote-form-card{max-width:none}.availability-calendar{min-width:720px}.calendar-panel{overflow-x:auto}.calendar-heading,.calendar-legend{min-width:720px}}
@media(max-width:768px){.availability-heading .heading-actions{width:100%;justify-content:flex-start}.availability-tabs .btn{flex:1 1 calc(50% - 8px)}.availability-toolbar{flex-direction:column;align-items:stretch}.availability-property-picker,.availability-property-picker select{min-width:0;width:100%}.availability-property-summary{display:grid;grid-template-columns:repeat(3,1fr)}.availability-property-summary>span{min-width:0}.availability-side{grid-template-columns:1fr}.rate-form-grid{grid-template-columns:1fr 1fr}.day-rule-columns{grid-template-columns:1fr;gap:0}.inline-builder,.occupancy-builder{grid-template-columns:1fr 1fr}.inline-builder .btn,.occupancy-builder .btn{grid-column:1/-1}.availability-event,.source-row,.occupancy-row{grid-template-columns:36px minmax(0,1fr)}.availability-event form,.source-row form,.occupancy-row form{grid-column:2;justify-self:start}.section-heading.split{flex-direction:column}.two-cols{grid-template-columns:1fr 1fr}}
@media(max-width:414px){.availability-tabs .btn{flex-basis:100%}.availability-property-summary{grid-template-columns:1fr}.rate-form-grid{grid-template-columns:1fr}.inline-builder,.occupancy-builder{grid-template-columns:1fr}.day-chips{display:grid;grid-template-columns:repeat(4,1fr)}.day-chips span{min-width:0}.two-cols{grid-template-columns:1fr}.copy-field{grid-template-columns:1fr}.copy-field .btn{width:100%}.quote-head{flex-direction:column}.calendar-panel{padding:14px}.action-card,.rate-settings-card,.rate-preview-card,.seasons-card,.occupancy-card,.calendar-import-card,.calendar-export-card,.calendar-source-card,.quote-form-card,.quote-result-card{padding:16px}}
.property-card-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.property-card-links .text-link{font-size:9px}.property-card-links .app-icon{width:12px;height:12px}@media(max-width:414px){.property-card-foot{align-items:flex-start}.property-card-links{justify-content:flex-end}}

/* Módulo 5 · Anfitriones y propietarios */
.partner-page-heading{align-items:flex-end}.partner-filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(2,minmax(160px,1fr)) auto;gap:14px;align-items:end;background:#fff;border:1px solid #e7edf6;border-radius:20px;padding:18px;box-shadow:0 12px 34px rgba(11,31,77,.055);margin-bottom:18px}.partner-filters label{display:grid;gap:7px}.partner-filters label>span,.stack-form label>span,.inline-create-card label>span{font-size:12px;font-weight:750;color:#5d6b83}.partner-filters input,.partner-filters select,.stack-form input,.stack-form select,.stack-form textarea,.inline-create-card input,.inline-create-card select,.inline-create-card textarea{width:100%;border:1px solid #dbe4f0;background:#fff;border-radius:12px;padding:11px 12px;color:#10213a;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.partner-filters input:focus,.partner-filters select:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus,.inline-create-card input:focus,.inline-create-card select:focus,.inline-create-card textarea:focus{border-color:#8cb4ff;box-shadow:0 0 0 4px rgba(37,99,235,.09)}.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.partner-card{background:#fff;border:1px solid #e5ebf4;border-radius:22px;padding:20px;box-shadow:0 14px 38px rgba(11,31,77,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.partner-card:hover{transform:translateY(-2px);box-shadow:0 18px 46px rgba(11,31,77,.09);border-color:#d5e3fa}.partner-card-top{display:flex;gap:14px;align-items:flex-start}.partner-avatar{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:17px;background:linear-gradient(145deg,#e4fbf8,#e9f0ff);color:#0b568f;font-weight:850;font-size:18px;border:1px solid #d8ecef}.partner-avatar.large{width:68px;height:68px;flex-basis:68px;border-radius:22px;font-size:24px}.partner-card-copy{min-width:0;flex:1}.partner-card-copy h2{margin:8px 0 4px;font-size:18px;line-height:1.2}.partner-card-copy h2 a{color:#0b1f4d;text-decoration:none}.partner-card-copy p{margin:0;color:#68758a;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.partner-badges{display:flex;flex-wrap:wrap;gap:6px}.badge.soft{background:#eef5ff;color:#2257a5}.badge.muted{background:#f0f3f7;color:#68758a}.badge.warning{background:#fff6db;color:#946800}.partner-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin:18px 0;padding:14px 0;border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7}.partner-card-metrics div{display:grid;gap:3px;text-align:center}.partner-card-metrics div+div{border-left:1px solid #edf1f7}.partner-card-metrics strong{font-size:20px;color:#0b1f4d}.partner-card-metrics span{font-size:11px;color:#7a8799}.partner-card-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#708096;font-size:12px}.partner-detail-heading{align-items:center}.partner-heading-profile{display:flex;align-items:center;gap:16px}.partner-heading-profile h1{margin:3px 0 8px}.partner-heading-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#64748b;font-size:13px}.partner-heading-meta svg{width:15px;height:15px}.partner-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.partner-kpi-grid .metric-card{display:flex;align-items:center;gap:13px;min-height:108px}.partner-kpi-grid .metric-card>div{display:grid;gap:3px}.partner-kpi-grid .metric-card small{color:#6b7890}.partner-kpi-grid .metric-card strong{font-size:24px;color:#0b1f4d}.partner-kpi-grid .metric-card em{font-style:normal;color:#8290a4;font-size:11px}.metric-icon.coral{background:#fff0f0;color:#ee6262}.metric-icon.purple{background:#f2edff;color:#7252c7}.partner-detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:18px;align-items:start}.partner-main-column,.partner-side-column{display:grid;gap:18px}.panel-card{background:#fff;border:1px solid #e5ebf4;border-radius:22px;padding:20px;box-shadow:0 12px 34px rgba(11,31,77,.045)}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.panel-heading h2{margin:3px 0 0;font-size:18px;color:#0b1f4d}.assignment-list,.contract-list,.document-list,.rating-list,.note-list,.timeline-list{display:grid;gap:10px}.assignment-row,.contract-row,.document-row,.rating-row{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #e8edf5;border-radius:16px;background:#fbfcfe}.assignment-icon,.document-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#ecfbf8;color:#0b9489;flex:0 0 38px}.assignment-icon svg,.document-icon svg{width:19px;height:19px}.grow{flex:1;min-width:0}.assignment-row strong,.contract-row strong,.document-row strong,.rating-row strong{display:block;color:#132746;font-size:14px}.assignment-row span,.contract-row span,.document-row span{display:block;margin-top:3px;color:#66758b;font-size:12px}.assignment-row small,.contract-row small,.document-row small,.rating-row small{display:block;margin-top:4px;color:#8a96a8;font-size:11px}.icon-action{width:34px;height:34px;border:0;border-radius:10px;display:grid;place-items:center;background:#f1f6ff;color:#2563eb;text-decoration:none;cursor:pointer}.icon-action svg{width:16px;height:16px}.icon-action.danger{background:#fff0f0;color:#d64a4a;font-size:20px}.inline-create-card{margin-top:14px;padding:16px;border:1px dashed #cad8ea;border-radius:16px;background:#fbfdff}.inline-create-card .btn{margin-top:12px}.check-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px}.check-row input{width:auto!important}.inline-details{margin-top:14px}.inline-details summary{display:inline-flex;align-items:center;gap:7px;color:#2563eb;font-weight:750;font-size:13px;cursor:pointer;list-style:none}.inline-details summary::-webkit-details-marker{display:none}.inline-details summary svg{width:16px;height:16px}.contract-row{justify-content:space-between}.row-actions{display:flex;align-items:center;gap:8px}.row-actions select{border:1px solid #dce4ef;border-radius:10px;padding:8px 10px;background:#fff;color:#32445f}.document-row .btn{white-space:nowrap}.rating-score{display:grid;place-items:center;min-width:62px;height:38px;border-radius:12px;background:#fff5df;color:#a56a00;font-weight:850}.rating-row p{margin:4px 0;color:#586981;font-size:12px}.compact-empty{padding:18px;border:1px dashed #d8e1ed;border-radius:14px;color:#7b889b;text-align:center;background:#fbfcfe;font-size:13px}.sticky-panel{position:sticky;top:90px}.info-list{display:grid;gap:0;margin:0}.info-list div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #edf1f6}.info-list div:last-child{border-bottom:0}.info-list dt{font-size:12px;color:#7a8799}.info-list dd{margin:0;font-size:13px;color:#20344f;overflow-wrap:anywhere}.side-actions{display:grid;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid #edf1f6}.side-actions label{display:grid;gap:6px}.side-actions label span{font-size:12px;color:#68758a;font-weight:700}.side-actions select{width:100%;border:1px solid #dce5f0;border-radius:11px;padding:10px 12px;background:#fff}.btn-block{width:100%;justify-content:center}.btn-danger-soft{background:#fff0f0;color:#c83939;border:1px solid #ffd9d9}.stack-form{display:grid;gap:11px}.stack-form label{display:grid;gap:6px}.top-space{margin-top:14px}.note-list article{position:relative;padding:13px;border:1px solid #e8edf5;border-radius:14px;background:#fbfcfe}.note-list p{margin:0 0 7px;color:#33465f;font-size:13px;line-height:1.5}.note-list small{color:#8592a4;font-size:11px}.note-list form{margin-top:6px}.text-danger{padding:0;border:0;background:transparent;color:#c94141;font-size:11px;cursor:pointer}.partner-history{margin-top:18px}.timeline-list article{position:relative;display:flex;gap:12px;padding:4px 0 12px 3px}.timeline-dot{width:10px;height:10px;margin-top:5px;border-radius:50%;background:#14b8a6;box-shadow:0 0 0 4px #e8fbf8}.timeline-list strong{display:block;font-size:13px;color:#20344f}.timeline-list small{display:block;margin-top:3px;color:#8290a3;font-size:11px}.partner-form{max-width:1080px}.partner-form .form-card{margin-bottom:16px}

@media(max-width:1180px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-detail-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr)}}
@media(max-width:920px){.partner-filters{grid-template-columns:1fr 1fr}.partner-filters .search-field{grid-column:1/-1}.partner-detail-layout{grid-template-columns:1fr}.sticky-panel{position:static}.partner-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-side-column .sticky-panel{grid-column:1/-1}}
@media(max-width:720px){.partner-grid,.partner-kpi-grid,.partner-side-column{grid-template-columns:1fr}.partner-filters{grid-template-columns:1fr}.partner-filters .search-field{grid-column:auto}.partner-card-foot,.contract-row,.document-row{align-items:flex-start;flex-direction:column}.partner-card-foot .text-link{align-self:flex-end}.partner-heading-profile{align-items:flex-start}.partner-avatar.large{width:56px;height:56px;flex-basis:56px;border-radius:18px}.partner-detail-heading{align-items:flex-start}.partner-detail-heading .heading-actions{width:100%}.partner-detail-heading .heading-actions .btn{flex:1;justify-content:center}.row-actions{width:100%;justify-content:space-between}.document-row .btn{width:100%;justify-content:center}.info-list div{grid-template-columns:92px 1fr}}
@media(max-width:414px){.partner-card{padding:16px;border-radius:18px}.partner-card-metrics{margin:14px 0}.partner-card-metrics strong{font-size:18px}.panel-card{padding:16px;border-radius:18px}.assignment-row,.rating-row{align-items:flex-start}.partner-kpi-grid .metric-card{min-height:92px}.partner-kpi-grid .metric-card strong{font-size:21px}.partner-heading-profile{gap:10px}.partner-heading-meta{gap:5px}.partner-avatar.large{width:48px;height:48px;flex-basis:48px;font-size:19px}.inline-create-card{padding:13px}}

/* Huéspedes y relación */
.guest-page-heading,.guest-detail-heading{align-items:center}.guest-filters{display:grid;grid-template-columns:minmax(250px,1.7fr) repeat(3,minmax(135px,.8fr)) auto;gap:12px;align-items:end;background:#fff;border:1px solid #e7edf6;border-radius:20px;padding:18px;box-shadow:0 12px 34px rgba(11,31,77,.05);margin-bottom:18px}.guest-filters label{display:grid;gap:7px}.guest-filters label>span{font-size:12px;font-weight:750;color:#5d6b83}.guest-filters input,.guest-filters select{width:100%;border:1px solid #dbe4f0;background:#fff;border-radius:12px;padding:11px 12px;color:#10213a;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.guest-filters input:focus,.guest-filters select:focus{border-color:#8cb4ff;box-shadow:0 0 0 4px rgba(37,99,235,.09)}.guest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.guest-card{background:#fff;border:1px solid #e5ebf4;border-radius:22px;padding:20px;box-shadow:0 14px 38px rgba(11,31,77,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.guest-card:hover{transform:translateY(-2px);box-shadow:0 18px 46px rgba(11,31,77,.09);border-color:#d5e3fa}.guest-card-top{display:flex;gap:14px;align-items:flex-start}.guest-avatar{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:17px;background:linear-gradient(145deg,#eef6ff,#e8fbf8);color:#174f91;font-weight:850;font-size:18px;border:1px solid #d9e8f7}.guest-avatar.large{width:68px;height:68px;flex-basis:68px;border-radius:22px;font-size:24px}.guest-card-copy{min-width:0;flex:1}.guest-card-copy h2{margin:8px 0 4px;font-size:18px;line-height:1.2}.guest-card-copy h2 a{color:#0b1f4d;text-decoration:none}.guest-card-copy p{margin:0;color:#68758a;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guest-tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 0}.guest-tags span{font-size:10px;font-weight:750;padding:5px 8px;border-radius:999px;background:#f3f7ff;color:#4e6484;border:1px solid #e3eaf5}.guest-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin:17px 0;padding:14px 0;border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7}.guest-card-metrics div{display:grid;gap:3px;text-align:center;min-width:0}.guest-card-metrics div+div{border-left:1px solid #edf1f7}.guest-card-metrics strong{font-size:17px;color:#0b1f4d;overflow-wrap:anywhere}.guest-card-metrics span{font-size:10px;color:#7a8799}.guest-card-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#708096;font-size:12px}.guest-form{max-width:1080px}.guest-form .form-card{margin-bottom:16px}.guest-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.guest-kpi-grid .metric-card{display:flex;align-items:center;gap:13px;min-height:108px}.guest-kpi-grid .metric-card>div{display:grid;gap:3px}.guest-kpi-grid .metric-card small{color:#6b7890}.guest-kpi-grid .metric-card strong{font-size:22px;color:#0b1f4d}.guest-kpi-grid .metric-card em{font-style:normal;color:#8290a4;font-size:11px}.guest-detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:18px;align-items:start}.guest-main-column,.guest-side-column{display:grid;gap:18px}.guest-preference-list,.guest-request-list,.guest-support-list,.guest-balance-list{display:grid;gap:10px}.guest-preference-list article,.guest-request-list article,.guest-support-list article,.guest-balance-list article{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid #e8edf5;border-radius:16px;background:#fbfcfe}.guest-preference-list article>div:first-child,.guest-request-copy{flex:1;min-width:0}.guest-preference-list strong,.guest-request-list strong,.guest-support-list strong,.guest-balance-list strong{display:block;margin-top:7px;color:#132746;font-size:14px}.guest-preference-list p,.guest-request-list p,.guest-support-list p{margin:5px 0;color:#586981;font-size:12px;line-height:1.5}.guest-request-list small,.guest-support-list small,.guest-balance-list small{display:block;color:#8592a4;font-size:11px}.guest-request-list .row-actions{margin-left:auto;align-items:flex-start}.guest-request-list .row-actions form:first-child{display:flex;gap:6px;align-items:center}.guest-support-list article{align-items:stretch}.support-actions{width:min(235px,38%);display:grid;align-content:start;gap:7px}.support-actions .stack-form{gap:7px}.support-actions select,.support-actions textarea{font-size:11px;padding:8px}.resolution-copy{margin-top:8px;padding:8px 10px;border-radius:10px;background:#eefaf7;color:#35685f;font-size:11px;line-height:1.5}.balance-total{font-size:18px}.balance-total.due{color:#d14d4d}.balance-total.clear{color:#149b87}.guest-balance-list article{align-items:center}.balance-kind{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;font-weight:900}.balance-kind.charge{background:#fff0f0;color:#d54c4c}.balance-kind.credit{background:#eafaf6;color:#118873}.guest-balance-list article>b{color:#173252;white-space:nowrap}.guest-balance-list .row-actions{margin-left:auto}.guest-balance-list .row-actions form:first-child{display:flex;gap:6px;align-items:center}.guest-history{margin-top:18px}.metric-icon.blue{background:#edf4ff;color:#2563eb}.form-icon.coral{background:#fff0f0;color:#e05959}
@media(max-width:1240px){.guest-filters{grid-template-columns:1fr 1fr 1fr}.guest-filters .search-field{grid-column:1/-1}.guest-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}.guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-detail-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr)}}
@media(max-width:920px){.guest-detail-layout{grid-template-columns:1fr}.guest-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-side-column .sticky-panel{grid-column:1/-1}.guest-support-list article{flex-direction:column}.support-actions{width:100%}}
@media(max-width:720px){.guest-filters,.guest-grid,.guest-kpi-grid,.guest-side-column{grid-template-columns:1fr}.guest-filters .search-field,.guest-filters .filter-actions{grid-column:auto}.guest-card-foot,.guest-request-list article,.guest-balance-list article{align-items:flex-start;flex-direction:column}.guest-card-foot .text-link{align-self:flex-end}.guest-detail-heading{align-items:flex-start}.guest-detail-heading .heading-actions{width:100%}.guest-detail-heading .heading-actions .btn{flex:1;justify-content:center}.guest-avatar.large{width:56px;height:56px;flex-basis:56px;border-radius:18px}.guest-request-list .row-actions,.guest-balance-list .row-actions{width:100%;justify-content:space-between}.guest-balance-list article>b{white-space:normal}}
@media(max-width:414px){.guest-card{padding:16px;border-radius:18px}.guest-card-metrics strong{font-size:15px}.guest-avatar.large{width:48px;height:48px;flex-basis:48px;font-size:19px}.guest-kpi-grid .metric-card{min-height:92px}.guest-kpi-grid .metric-card strong{font-size:20px}}

/* Sitio público y páginas de alojamiento */
.website-heading{align-items:center}.website-admin-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr);gap:18px;align-items:start;margin-bottom:22px}.website-settings-card{padding:22px}.website-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.website-form label{display:grid;gap:7px;color:#42536d;font-weight:700;font-size:12px}.website-form input,.website-form select,.website-form textarea,.website-property-fields input,.website-property-fields textarea{width:100%;border:1px solid #dbe4f0;border-radius:12px;background:#fff;padding:11px 12px;color:#10213a;outline:none;transition:.18s ease}.website-form input:focus,.website-form select:focus,.website-form textarea:focus,.website-property-fields input:focus,.website-property-fields textarea:focus{border-color:#8cb4ff;box-shadow:0 0 0 4px rgba(37,99,235,.08)}.website-form small{font-weight:500;color:#8290a4}.input-prefix{display:flex;align-items:center;border:1px solid #dbe4f0;border-radius:12px;overflow:hidden;background:#f8fafc}.input-prefix span{padding:0 0 0 11px;color:#8290a4;font-weight:650}.input-prefix input{border:0!important;box-shadow:none!important;background:transparent}.website-colors{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.website-colors input[type=color]{height:46px;padding:5px}.switch-row{grid-template-columns:auto 1fr!important;align-items:center;gap:11px!important;padding:13px 14px;border:1px solid #e4eaf2;border-radius:14px;background:#fbfcfe}.switch-row input{width:18px;height:18px}.switch-row span{display:grid;gap:2px}.switch-row strong{color:#10213a}.switch-row small{font-weight:500}.website-preview-card{position:sticky;top:96px;display:grid;gap:14px}.website-preview-browser{border:1px solid #dfe7f1;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 18px 48px rgba(11,31,77,.08)}.website-preview-bar{height:42px;padding:0 12px;background:#f7f9fc;border-bottom:1px solid #e6ecf4;display:flex;align-items:center;gap:6px}.website-preview-bar i{width:8px;height:8px;border-radius:50%;background:#dbe3ee}.website-preview-bar span{margin-left:7px;font-size:10px;color:#7a879a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.website-preview-content{min-height:330px;padding:40px 28px;background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--preview-secondary) 16%,transparent),transparent 34%),#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.website-preview-content>span{color:var(--preview-secondary);text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:850}.website-preview-content h3{font-size:28px;line-height:1.07;letter-spacing:-.8px;color:#0b1f4d;margin:10px 0}.website-preview-content p{color:#67758c;margin:0 0 18px;line-height:1.6}.website-preview-content b{background:var(--preview-primary);color:#fff;border-radius:11px;padding:9px 13px}.website-public-link{padding:14px 15px;border:1px solid #e4eaf2;border-radius:15px;background:#fff;display:grid;gap:4px}.website-public-link small{color:#8290a4}.website-public-link a{color:#2563eb;font-weight:700;overflow-wrap:anywhere}.website-properties-section{background:#fff;border:1px solid #e4eaf2;border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(11,31,77,.05)}.count-badge{min-width:32px;height:32px;border-radius:10px;background:#eef4ff;color:#2563eb;display:grid;place-items:center;font-weight:800}.website-publication-list{display:grid;gap:14px}.website-publication-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;padding:15px;border:1px solid #e6ecf4;border-radius:18px;background:#fbfcfe}.website-property-media{height:100%;min-height:195px;border-radius:14px;overflow:hidden;background:#eef3f8}.website-property-media img{width:100%;height:100%;object-fit:cover}.website-property-media>div{height:100%;display:grid;place-items:center;color:#98a6b8}.website-property-copy{min-width:0}.website-property-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.website-property-title span:first-child{font-size:10px;color:#0c8e8c;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.website-property-title h3{margin:3px 0 0;color:#0b1f4d;font-size:18px}.website-property-fields{display:grid;grid-template-columns:1fr 120px;gap:10px}.website-property-fields label{display:grid;gap:6px;font-size:11px;color:#67758c;font-weight:700}.website-property-actions{display:flex;gap:10px;align-items:center;margin-top:12px;padding-top:11px;border-top:1px solid #e8edf4}.mini-check{display:inline-flex!important;align-items:center;gap:6px!important;color:#53637a!important}.mini-check input{width:16px!important}.spacer{flex:1}
.public-body{background:#fff;color:#10213a}.public-header{height:78px;max-width:1240px;margin:0 auto;padding:0 26px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f6}.public-brand{display:flex;align-items:center;gap:10px;color:#0b1f4d;font-weight:900;font-size:18px}.public-brand img{width:38px;height:38px;object-fit:contain}.public-brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--public-secondary) 16%,white),color-mix(in srgb,var(--public-primary) 12%,white));display:grid;place-items:center;color:var(--public-primary)}.public-nav{display:flex;gap:24px;color:#5d6c82;font-weight:650}.public-nav a:hover{color:var(--public-primary)}.public-hero{max-width:1240px;margin:0 auto;padding:64px 26px 72px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:48px;align-items:center}.public-hero-copy h1{font-size:56px;line-height:1.02;letter-spacing:-2.2px;color:#0b1f4d;margin:13px 0 18px;max-width:660px}.public-hero-copy p{font-size:17px;line-height:1.7;color:#637086;max-width:600px;margin:0 0 26px}.public-eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--public-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.public-eyebrow:before{content:"";width:20px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--public-secondary),var(--public-accent))}.public-btn{border:0;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 17px;font-weight:800;transition:.18s ease}.public-btn.primary{background:linear-gradient(135deg,var(--public-primary),color-mix(in srgb,var(--public-primary) 78%,#0b1f4d));color:#fff;box-shadow:0 12px 26px color-mix(in srgb,var(--public-primary) 22%,transparent)}.public-btn.primary:hover{transform:translateY(-1px);filter:brightness(.99)}.public-btn.full{width:100%}.public-btn.disabled{background:#eef2f6;color:#8390a2}.public-hero-visual{position:relative;min-height:460px;border-radius:32px;overflow:hidden;background:#eff5f8;box-shadow:0 24px 70px rgba(11,31,77,.12)}.public-hero-visual>img{width:100%;height:460px;object-fit:cover}.public-hero-card{position:absolute;left:22px;right:22px;bottom:22px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.75);border-radius:18px;padding:15px 17px;display:grid;gap:2px}.public-hero-card span{color:var(--public-secondary);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.public-hero-card strong{font-size:19px;color:#0b1f4d}.public-hero-card small{color:#69768a}.public-hero-placeholder{min-height:460px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;color:#78869a}.public-hero-placeholder svg{width:62px;height:62px;color:var(--public-primary)}.public-hero-placeholder strong{color:#0b1f4d;font-size:22px}.public-section{max-width:1240px;margin:0 auto;padding:34px 26px 76px}.public-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.public-section-head h2{font-size:32px;letter-spacing:-1px;color:#0b1f4d;margin:6px 0 0}.public-section-head p{color:#7b8798}.public-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.public-property-card{border:1px solid #e6ecf4;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 12px 34px rgba(11,31,77,.055);transition:.18s ease}.public-property-card:hover{transform:translateY(-3px);box-shadow:0 20px 46px rgba(11,31,77,.1)}.public-card-image{position:relative;display:block;height:235px;background:#eff4f8}.public-card-image img{width:100%;height:100%;object-fit:cover}.public-image-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#93a1b3;background:linear-gradient(145deg,#f2f6fa,#eaf1f6)}.public-image-placeholder svg{width:38px;height:38px}.public-featured{position:absolute;top:13px;left:13px;background:#fff;color:#0b1f4d;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:850;box-shadow:0 7px 18px rgba(11,31,77,.14)}.public-card-body{padding:18px}.public-card-kicker{display:flex;justify-content:space-between;gap:12px;color:#768397;font-size:10px}.public-card-kicker span:first-child{color:var(--public-secondary);font-weight:850;text-transform:uppercase}.public-card-body h3{font-size:20px;line-height:1.2;margin:8px 0;color:#0b1f4d}.public-card-body p{color:#68758a;line-height:1.55;margin:0;min-height:43px}.public-card-footer{display:flex;align-items:end;justify-content:space-between;gap:12px;border-top:1px solid #edf1f6;margin-top:16px;padding-top:14px}.public-card-footer strong{color:#0b1f4d}.public-card-footer small{color:#7f8c9e}.public-card-footer a{display:flex;align-items:center;gap:4px;color:var(--public-primary);font-weight:800;font-size:12px}.public-empty{border:1px dashed #dce5ef;border-radius:20px;padding:42px 20px;text-align:center;color:#7b8798;background:#fbfcfe}.public-empty svg{width:38px;height:38px;color:var(--public-primary)}.public-empty h3{color:#0b1f4d;margin:9px 0 4px}.public-empty p{margin:0}.public-empty.compact{padding:25px}.public-footer{max-width:1240px;margin:0 auto;padding:34px 26px 48px;border-top:1px solid #edf1f6;display:flex;justify-content:space-between;gap:24px}.public-footer strong{font-size:16px;color:#0b1f4d}.public-footer p{margin:4px 0 0;color:#7b8798}.public-contact{display:flex;gap:16px;align-items:center;color:var(--public-primary);font-weight:700}.public-property-hero{max-width:1240px;margin:0 auto;padding:40px 26px 28px}.public-property-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}.public-property-heading h1{font-size:42px;line-height:1.08;letter-spacing:-1.4px;color:#0b1f4d;margin:6px 0}.public-property-heading p{margin:0;color:#738096}.public-back{display:block;color:#6c7990;font-size:12px;margin-bottom:17px}.public-price{text-align:right;display:grid}.public-price small,.public-price span{color:#7b8799;font-size:11px}.public-price strong{font-size:24px;color:#0b1f4d}.public-gallery{display:grid;grid-template-columns:1.45fr .85fr;gap:8px;height:500px;border-radius:24px;overflow:hidden}.public-gallery.compact{grid-template-columns:1fr}.public-gallery-main,.public-gallery-side{min-width:0;min-height:0}.public-gallery img{width:100%;height:100%;object-fit:cover}.public-gallery-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.public-gallery .public-image-placeholder.large{height:500px}.public-property-layout{max-width:1240px;margin:0 auto;padding:18px 26px 76px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.62fr);gap:36px;align-items:start}.public-property-main{min-width:0}.public-detail-section{padding:27px 0;border-bottom:1px solid #edf1f6}.public-detail-section:first-child{padding-top:4px}.public-detail-section h2{font-size:25px;color:#0b1f4d;letter-spacing:-.5px;margin:7px 0 15px}.public-detail-section h3{font-size:15px;color:#233a57;margin:19px 0 8px}.public-copy{color:#56667d;line-height:1.75;margin:0}.public-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.public-facts>span{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;border:1px solid #e5ebf3;border-radius:15px;padding:13px}.public-facts svg{grid-row:1/3;width:22px;height:22px;color:var(--public-primary)}.public-facts strong{font-size:18px;color:#0b1f4d}.public-facts small{color:#7d899a}.public-feature-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.public-feature-columns h3{margin:0 0 10px}.public-chips{display:flex;flex-wrap:wrap;gap:8px}.public-chips span{display:inline-flex;align-items:center;gap:6px;border:1px solid #e3eaf3;border-radius:999px;padding:7px 10px;color:#56677e;background:#fbfcfe}.public-chips svg{width:14px;height:14px;color:var(--public-secondary)}.public-availability{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.public-availability>div{display:grid;text-align:center;gap:2px;padding:10px 4px;border-radius:12px;border:1px solid #e5ebf2}.public-availability small{font-size:9px;color:#8491a2;text-transform:uppercase}.public-availability strong{font-size:17px;color:#0b1f4d}.public-availability span{font-size:9px}.public-availability .available{background:#f1fbf8;border-color:#d7f0e9}.public-availability .available span{color:#168765}.public-availability .unavailable{background:#fff4f4;border-color:#f6dede}.public-availability .unavailable span{color:#c7545d}.public-note{font-size:11px;color:#8592a4;margin:10px 0 0}.public-note.center{text-align:center}.public-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.public-rule-grid>div,.public-location-card{display:flex;gap:12px;align-items:center;border:1px solid #e5ebf3;border-radius:15px;padding:14px;background:#fbfcfe}.public-rule-grid svg,.public-location-card svg{width:24px;height:24px;color:var(--public-primary)}.public-rule-grid span,.public-location-card div{display:grid}.public-rule-grid small,.public-location-card span{font-size:11px;color:#7c899b}.public-rule-grid strong,.public-location-card strong{color:#203753}.review-stars{font-size:24px;color:#f0b75c}.public-booking-card{position:sticky;top:22px;border:1px solid #e1e8f1;border-radius:22px;padding:22px;background:#fff;box-shadow:0 20px 54px rgba(11,31,77,.09)}.public-booking-card h2{font-size:24px;color:#0b1f4d;margin:6px 0 18px}.public-booking-card h2 small{font-size:11px;color:#8290a4;font-weight:600}.public-quote-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.public-quote-form label{display:grid;gap:5px;font-size:10px;font-weight:800;color:#6b788c}.public-quote-form label:nth-child(3),.public-quote-form button{grid-column:1/-1}.public-quote-form input{border:1px solid #dbe4ef;border-radius:11px;padding:10px 11px;min-width:0;outline:none}.public-quote-form input:focus{border-color:var(--public-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--public-primary) 10%,transparent)}.public-alert{margin-top:12px;padding:10px 11px;border-radius:11px;font-size:11px}.public-alert.error{background:#fff3f3;color:#a83e47;border:1px solid #f7dada}.public-quote-result{margin:15px 0;border-top:1px solid #edf1f6;padding-top:10px;display:grid;gap:8px}.public-quote-result>div{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#6d7a8e}.public-quote-result strong{color:#213851}.public-quote-result .total{border-top:1px solid #e6ebf2;padding-top:10px;margin-top:3px;font-size:13px}.public-quote-result .total strong{font-size:17px;color:#0b1f4d}
@media(max-width:1100px){.website-admin-grid{grid-template-columns:1fr}.website-preview-card{position:static;grid-template-columns:1fr 1fr}.public-hero{grid-template-columns:1fr 1fr}.public-hero-copy h1{font-size:46px}.public-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-property-layout{grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr)}.public-availability{grid-template-columns:repeat(7,minmax(58px,1fr));overflow:auto;padding-bottom:3px}}
@media(max-width:820px){.website-publication-card{grid-template-columns:130px 1fr}.website-property-fields{grid-template-columns:1fr}.website-property-fields .span-2{grid-column:auto}.public-header{height:70px}.public-nav{gap:14px}.public-hero{grid-template-columns:1fr;padding-top:42px}.public-hero-copy h1{font-size:44px}.public-hero-visual,.public-hero-visual>img,.public-hero-placeholder{min-height:390px;height:390px}.public-property-layout{grid-template-columns:1fr}.public-booking-card{position:static}.public-gallery{height:400px}.public-facts{grid-template-columns:repeat(2,1fr)}.public-property-heading{align-items:flex-start}.public-feature-columns{grid-template-columns:1fr}}
@media(max-width:620px){.website-form,.website-colors,.website-preview-card{grid-template-columns:1fr}.website-form .span-2{grid-column:auto}.website-publication-card{grid-template-columns:1fr}.website-property-media{min-height:180px;height:180px}.website-property-actions{flex-wrap:wrap}.website-property-actions .spacer{display:none}.website-property-actions .btn{flex:1}.public-header{padding:0 18px}.public-brand span:last-child{max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-nav a:last-child{display:none}.public-hero,.public-section,.public-property-hero,.public-property-layout,.public-footer{padding-left:18px;padding-right:18px}.public-hero{padding-bottom:48px}.public-hero-copy h1{font-size:38px;letter-spacing:-1.4px}.public-hero-copy p{font-size:15px}.public-property-grid{grid-template-columns:1fr}.public-section-head{align-items:flex-start;flex-direction:column}.public-hero-visual,.public-hero-visual>img,.public-hero-placeholder{min-height:320px;height:320px;border-radius:24px}.public-property-heading{flex-direction:column}.public-price{text-align:left}.public-property-heading h1{font-size:34px}.public-gallery{height:auto;display:block;border-radius:18px}.public-gallery-main{height:310px}.public-gallery-side{display:none}.public-facts{grid-template-columns:1fr 1fr}.public-rule-grid{grid-template-columns:1fr}.public-footer{flex-direction:column}.public-contact{align-items:flex-start;flex-direction:column}.public-quote-form{grid-template-columns:1fr}.public-quote-form label:nth-child(3),.public-quote-form button{grid-column:auto}}
@media(max-width:414px){.website-properties-section{padding:14px;border-radius:17px}.website-publication-card{padding:12px}.public-hero-copy h1{font-size:34px}.public-card-image{height:215px}.public-facts{grid-template-columns:1fr}.public-property-heading h1{font-size:30px}.public-gallery-main{height:265px}.public-booking-card{padding:18px;border-radius:18px}}

.website-form-fieldset{display:contents;border:0;margin:0;padding:0}.website-publication-fieldset{display:contents;border:0;margin:0;padding:0}.website-form-fieldset:disabled,.website-publication-fieldset:disabled{opacity:.78}

/* Módulo 8: buscador y reserva directa */
.home-booking-search{display:grid;grid-template-columns:1.35fr 1fr 1fr .7fr auto;gap:9px;align-items:end;margin-top:26px;padding:12px;border:1px solid #e6ecf4;border-radius:18px;background:#fff;box-shadow:0 16px 40px rgba(11,31,77,.08)}.home-booking-search label,.booking-search-bar label,.booking-filters label,.checkout-form label{display:grid;gap:5px;color:#66758a;font-size:10px;font-weight:800}.home-booking-search input,.booking-search-bar input,.booking-filters input,.booking-filters select,.checkout-form input,.checkout-form textarea,.checkout-coupon input{min-width:0;width:100%;border:1px solid #dbe4ef;border-radius:11px;background:#fff;color:#10213a;padding:10px 11px;outline:none}.home-booking-search input:focus,.booking-search-bar input:focus,.booking-filters input:focus,.booking-filters select:focus,.checkout-form input:focus,.checkout-form textarea:focus,.checkout-coupon input:focus{border-color:var(--public-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--public-primary) 10%,transparent)}
.booking-search-hero{max-width:1240px;margin:0 auto;padding:46px 26px 24px}.booking-search-hero h1{margin:7px 0 8px;color:#0b1f4d;font-size:42px;letter-spacing:-1.3px}.booking-search-hero>div>p{margin:0;color:#6e7c90}.booking-search-bar{margin-top:24px;display:grid;grid-template-columns:1.4fr 1fr 1fr .72fr auto;gap:10px;align-items:end;border:1px solid #e2e9f2;border-radius:20px;padding:14px;background:#fff;box-shadow:0 16px 44px rgba(11,31,77,.08)}
.booking-results-wrap{max-width:1240px;margin:0 auto;padding:20px 26px 76px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:26px;align-items:start}.booking-filters{position:sticky;top:22px;border:1px solid #e2e9f2;border-radius:20px;padding:18px;background:#fff;box-shadow:0 12px 32px rgba(11,31,77,.055)}.booking-filters h2{margin:6px 0 16px;font-size:19px;color:#0b1f4d}.booking-filters form{display:grid;gap:14px}.booking-filters fieldset{border:0;padding:0;margin:0}.booking-filters legend{margin-bottom:8px;font-size:10px;font-weight:850;color:#65748a}.booking-price-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.booking-filter-checks{display:grid;gap:7px;max-height:210px;overflow:auto;padding-right:3px}.booking-filter-checks label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:650}.booking-filter-checks input{width:16px;height:16px}.booking-clear{text-align:center;color:#64748b;font-size:11px;font-weight:750}.booking-results{min-width:0}.booking-results-head{margin-bottom:18px}.booking-results-head h2{font-size:28px}.booking-result-list{display:grid;gap:16px}.booking-result-card{display:grid;grid-template-columns:220px minmax(0,1fr) 185px;gap:18px;border:1px solid #e4eaf2;border-radius:20px;padding:13px;background:#fff;box-shadow:0 10px 28px rgba(11,31,77,.045)}.booking-result-image{height:170px;border-radius:15px;overflow:hidden;background:#eef3f7}.booking-result-image img{width:100%;height:100%;object-fit:cover}.booking-result-copy{padding:7px 0;min-width:0}.booking-result-copy h3{margin:8px 0 7px;color:#0b1f4d;font-size:20px}.booking-result-copy p{margin:0;color:#68778d;line-height:1.55}.booking-result-meta{margin-top:13px;display:flex;gap:10px;color:#738096;font-size:11px}.booking-result-meta span{display:flex;align-items:center;gap:5px}.booking-result-meta svg{width:15px;height:15px;color:var(--public-primary)}.booking-result-price{border-left:1px solid #edf1f5;padding:12px 2px 12px 18px;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right}.booking-result-price small,.booking-result-price span{font-size:10px;color:#7d899a}.booking-result-price strong{margin:3px 0 0;color:#0b1f4d;font-size:21px}.booking-result-price .public-btn{margin-top:14px}.booking-error-wide{margin:0 0 16px}
.checkout-heading{max-width:1120px;margin:0 auto;padding:42px 26px 20px}.checkout-heading h1{font-size:40px;letter-spacing:-1.1px;color:#0b1f4d;margin:7px 0}.checkout-heading p{margin:0;color:#718096}.checkout-layout{max-width:1120px;margin:0 auto;padding:10px 26px 76px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);gap:28px;align-items:start}.checkout-main{min-width:0}.checkout-form{display:grid;gap:15px}.checkout-card{border:1px solid #e3e9f2;border-radius:20px;padding:20px;background:#fff;box-shadow:0 10px 26px rgba(11,31,77,.04)}.checkout-card-head{display:flex;gap:11px;align-items:center;margin-bottom:17px}.checkout-card-head>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#eef4ff;color:var(--public-primary);font-weight:900}.checkout-card-head h2{font-size:18px;color:#0b1f4d;margin:0}.checkout-card-head p{font-size:11px;color:#7c8999;margin:2px 0 0}.checkout-stay-grid,.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkout-fields .span-2{grid-column:1/-1}.checkout-form textarea{resize:vertical}.checkout-coupon{display:grid;grid-template-columns:1fr auto;gap:9px}.checkout-coupon .public-btn{background:#f3f6fa;color:#334155;border:1px solid #e0e7ef}.checkout-terms{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;padding:14px;border:1px solid #e3e9f2;border-radius:15px;background:#fbfcfe;font-size:11px!important;font-weight:650!important}.checkout-terms input{width:18px;height:18px;margin-top:1px}.checkout-confirm{min-height:48px;font-size:13px}.checkout-alert{margin:0 0 14px}.checkout-summary{position:sticky;top:22px;border:1px solid #e1e8f1;border-radius:22px;padding:18px;background:#fff;box-shadow:0 20px 54px rgba(11,31,77,.08)}.checkout-property-mini{display:grid;grid-template-columns:88px 1fr;gap:12px;align-items:center;padding-bottom:16px;border-bottom:1px solid #edf1f5}.checkout-property-mini>img,.checkout-property-mini>.public-image-placeholder{width:88px;height:74px;border-radius:12px;object-fit:cover}.checkout-property-mini>div:last-child{display:grid;gap:2px}.checkout-property-mini small{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--public-secondary);font-weight:850}.checkout-property-mini strong{color:#0b1f4d}.checkout-property-mini span{color:#7a8798;font-size:10px}.checkout-price-lines{padding:16px 0;display:grid;gap:9px}.checkout-price-lines h3{margin:0 0 4px;color:#0b1f4d;font-size:15px}.checkout-price-lines>div{display:flex;justify-content:space-between;gap:12px;color:#69778b;font-size:11px}.checkout-price-lines strong{color:#243a55}.checkout-price-lines .discount strong{color:#0f8a69}.checkout-price-lines .total{margin-top:4px;padding-top:11px;border-top:1px solid #e6ebf1;font-size:13px}.checkout-price-lines .total strong{font-size:18px;color:#0b1f4d}.checkout-safe{display:flex;gap:10px;padding:12px;border-radius:13px;background:#f3faf8;color:#48655d}.checkout-safe svg{width:21px;height:21px;color:#0b8c72;flex:none}.checkout-safe div{display:grid;gap:2px}.checkout-safe strong{font-size:11px}.checkout-safe span{font-size:10px;line-height:1.45}.booking-confirmation{max-width:840px;margin:0 auto;padding:70px 26px 90px;text-align:center}.confirmation-mark{width:68px;height:68px;border-radius:22px;margin:0 auto 18px;display:grid;place-items:center;background:linear-gradient(145deg,#e9fbf6,#eef5ff);color:#0b9b79;box-shadow:0 14px 34px rgba(20,184,166,.12)}.confirmation-mark svg{width:34px;height:34px}.booking-confirmation h1{font-size:40px;letter-spacing:-1.2px;color:#0b1f4d;margin:8px 0}.booking-confirmation>p{color:#6e7c90}.confirmation-reference{display:inline-grid;gap:3px;margin:18px auto 24px;padding:13px 24px;border:1px solid #dfe7f1;border-radius:15px;background:#fff}.confirmation-reference small{font-size:9px;text-transform:uppercase;color:#8390a2}.confirmation-reference strong{font-size:21px;color:#0b1f4d;letter-spacing:.04em}.confirmation-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}.confirmation-grid>div{display:grid;gap:4px;padding:16px;border:1px solid #e3e9f1;border-radius:16px;background:#fbfcfe}.confirmation-grid small{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#8290a3}.confirmation-grid strong{color:#16304f}.confirmation-grid span{font-size:11px;color:#6f7d91}.confirmation-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}.confirmation-secondary{background:#f2f5f9;color:#334155}.confirmation-note{font-size:11px!important;margin-top:18px}
@media(max-width:1100px){.home-booking-search,.booking-search-bar{grid-template-columns:1.2fr 1fr 1fr .7fr}.home-booking-search button,.booking-search-bar button{grid-column:1/-1}.booking-results-wrap{grid-template-columns:230px minmax(0,1fr)}.booking-result-card{grid-template-columns:190px minmax(0,1fr)}.booking-result-price{grid-column:2;border-left:0;border-top:1px solid #edf1f5;padding:12px 0 0;flex-direction:row;justify-content:space-between;align-items:center;text-align:left}.booking-result-price .public-btn{width:auto;margin:0}.checkout-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:820px){.home-booking-search,.booking-search-bar{grid-template-columns:1fr 1fr}.home-booking-search button,.booking-search-bar button{grid-column:1/-1}.booking-results-wrap{grid-template-columns:1fr}.booking-filters{position:static}.booking-filter-checks{grid-template-columns:1fr 1fr;max-height:none}.checkout-layout{grid-template-columns:1fr}.checkout-summary{position:static;order:-1}.booking-result-card{grid-template-columns:180px minmax(0,1fr)}.confirmation-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.home-booking-search,.booking-search-bar,.checkout-stay-grid,.checkout-fields{grid-template-columns:1fr}.booking-search-hero,.booking-results-wrap,.checkout-heading,.checkout-layout,.booking-confirmation{padding-left:18px;padding-right:18px}.booking-search-hero h1,.checkout-heading h1,.booking-confirmation h1{font-size:34px}.booking-result-card{grid-template-columns:1fr}.booking-result-image{height:220px}.booking-result-price{grid-column:auto;align-items:center}.booking-filter-checks,.booking-price-row{grid-template-columns:1fr}.checkout-fields .span-2{grid-column:auto}.confirmation-grid{grid-template-columns:1fr}.confirmation-actions{flex-direction:column}.confirmation-actions .public-btn{width:100%}}
@media(max-width:414px){.home-booking-search,.booking-search-bar{padding:10px;border-radius:15px}.booking-results-wrap{padding-top:10px}.booking-result-card,.checkout-card{padding:13px;border-radius:17px}.checkout-coupon{grid-template-columns:1fr}.checkout-property-mini{grid-template-columns:76px 1fr}.checkout-property-mini>img,.checkout-property-mini>.public-image-placeholder{width:76px;height:68px}}

/* Reservations */
.reservation-page-heading{align-items:flex-end}.reservation-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 20px}.mini-kpi{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow-sm);display:grid;gap:4px}.mini-kpi span{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.mini-kpi strong{font-size:28px;color:var(--ink)}.mini-kpi small{color:var(--muted)}.reservation-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(5,minmax(120px,1fr));gap:12px;align-items:end;background:#fff;border:1px solid var(--border);border-radius:20px;padding:16px;box-shadow:var(--shadow-sm)}.reservation-filters label{display:grid;gap:7px}.reservation-filters label>span{font-size:12px;font-weight:800;color:var(--muted)}.reservation-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}.reservation-table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-sm)}.reservation-table{min-width:980px}.reservation-table td strong,.reservation-table td small{display:block}.reservation-table td small{margin-top:4px;color:var(--muted)}.reservation-status.pending{background:#fff7ed;color:#b45309}.reservation-status.confirmed{background:#eff6ff;color:#1d4ed8}.reservation-status.checked_in{background:#ecfdf5;color:#047857}.reservation-status.checked_out{background:#f0fdfa;color:#0f766e}.reservation-status.completed{background:#f1f5f9;color:#334155}.reservation-status.cancelled,.reservation-status.no_show{background:#fef2f2;color:#b91c1c}.reservation-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.summary-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:17px;box-shadow:var(--shadow-sm);display:grid;gap:7px}.summary-card>span{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.summary-card>strong{font-size:18px}.reservation-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px}.reservation-main-column,.reservation-side-column{display:grid;gap:18px;align-content:start}.detail-card,.side-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;box-shadow:var(--shadow-sm)}.side-card h2{font-size:16px;margin:0 0 14px}.detail-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.detail-data-grid>div{background:var(--soft);border-radius:14px;padding:13px;display:grid;gap:4px}.detail-data-grid span{font-size:12px;color:var(--muted)}.detail-data-grid strong{font-size:14px}.note-panel{margin-top:16px;border-left:3px solid var(--primary);background:#f8fbff;border-radius:12px;padding:14px}.note-panel p{margin:6px 0 0;color:var(--muted)}.rate-list{display:grid;gap:0}.rate-list>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--border)}.rate-list>div:last-child{border-bottom:0}.rate-list .rate-total{font-size:17px;padding-top:15px}.compact-list{display:grid;gap:10px}.compact-list>div{display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--soft);border-radius:14px;padding:12px}.compact-list strong,.compact-list small{display:block}.compact-list small{color:var(--muted);margin-top:3px}.inline-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.inline-form-grid label{display:grid;gap:6px}.inline-form-grid label>span{font-size:12px;font-weight:800;color:var(--muted)}.note-compose{display:grid;gap:10px;margin-bottom:16px}.note-list{display:grid;gap:10px}.note-list article{padding:14px;border:1px solid var(--border);border-radius:14px}.note-list article.important{border-color:#f59e0b;background:#fffbeb}.note-list article>div{display:flex;justify-content:space-between;gap:12px}.note-list small{color:var(--muted)}.note-list p{margin:8px 0;color:var(--ink)}.policy-list{display:grid;gap:12px}.policy-list article{background:var(--soft);border-radius:14px;padding:14px}.policy-list p{margin:7px 0 0;color:var(--muted)}.status-actions{display:grid;gap:10px}.status-actions form{display:grid;gap:8px}.status-actions .btn{width:100%}.side-card select{width:100%;margin-bottom:10px}.timeline-list{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding:0 0 16px}.timeline-item>span{width:10px;height:10px;border-radius:50%;background:var(--primary);margin-top:5px;box-shadow:0 0 0 4px #eff6ff}.timeline-item:not(:last-child):before{content:"";position:absolute;left:4px;top:16px;bottom:0;width:1px;background:var(--border)}.timeline-item strong,.timeline-item small{display:block}.timeline-item small{margin-top:3px;color:var(--muted);font-size:11px}.reservation-edit-form{max-width:980px}.muted-copy{color:var(--muted)}
@media(max-width:1240px){.reservation-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.reservation-detail-layout{grid-template-columns:minmax(0,1fr) 300px}.detail-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.reservation-kpi-grid,.reservation-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-detail-layout{grid-template-columns:1fr}.reservation-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.reservation-kpi-grid,.reservation-summary-grid,.reservation-side-column,.reservation-filters,.inline-form-grid{grid-template-columns:1fr}.reservation-filters .filter-actions{grid-column:auto}.detail-data-grid{grid-template-columns:1fr}.reservation-table-wrap{border-radius:16px}.reservation-detail-heading .heading-actions{width:100%}.reservation-detail-heading .heading-actions .btn{flex:1}.compact-list>div{align-items:flex-start;flex-direction:column}.inline-form-grid .span-2{grid-column:auto}}
@media(max-width:414px){.mini-kpi,.summary-card,.detail-card,.side-card{border-radius:16px}.reservation-page-heading,.reservation-detail-heading{gap:14px}.reservation-kpi-grid{gap:10px}.reservation-filters{padding:13px}}

/* Pagos, facturas internas y liquidaciones */
.heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.heading-actions form{margin:0}.btn-block{width:100%;justify-content:center}.table-subcopy{display:block;color:var(--muted);font-size:11px;margin-top:3px}.filter-bar{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm);display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.filter-bar input,.filter-bar select,.finance-period-form input,.payment-form input,.payment-form select,.payment-form textarea,.invoice-form input,.invoice-form select,.invoice-form textarea,.settlement-form-layout input,.settlement-form-layout select,.settlement-form-layout textarea,.settlement-pay-form input,.settlement-pay-form select,.danger-zone textarea{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 12px;outline:none;min-width:0;transition:.16s ease}.filter-bar input:focus,.filter-bar select:focus,.finance-period-form input:focus,.payment-form input:focus,.payment-form select:focus,.payment-form textarea:focus,.invoice-form input:focus,.invoice-form select:focus,.invoice-form textarea:focus,.settlement-form-layout input:focus,.settlement-form-layout select:focus,.settlement-form-layout textarea:focus,.settlement-pay-form input:focus,.settlement-pay-form select:focus,.danger-zone textarea:focus{border-color:#9bbcf7;box-shadow:0 0 0 3px rgba(37,99,235,.08)}.search-field{display:flex;align-items:center;gap:8px;min-width:260px;flex:1;border:1px solid var(--line);border-radius:12px;padding:0 10px;background:#fff}.search-field input{border:0!important;box-shadow:none!important;width:100%;padding-left:2px}.search-field .app-icon{width:17px;color:var(--muted)}
.finance-period-form{display:flex;gap:12px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.finance-period-form label{display:grid;gap:6px}.finance-period-form label span,.form-grid label>span,.payment-form label>span,.invoice-form label>span,.settlement-form-layout label>span,.settlement-pay-form label>span,.danger-zone label>span{font-size:12px;color:var(--muted);font-weight:800}.finance-kpi-grid,.finance-secondary-grid,.settlement-kpi-grid,.payment-summary-grid,.invoice-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.finance-kpi{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:var(--shadow-sm);display:flex;gap:13px;align-items:center}.finance-kpi .kpi-icon{width:42px;height:42px;border-radius:13px;background:#eef4ff;color:var(--blue);display:grid;place-items:center;flex:0 0 42px}.finance-kpi .kpi-icon.teal{background:#e9faf7;color:#0f9e90}.finance-kpi .kpi-icon.coral{background:#fff0f0;color:#d94a54}.finance-kpi .kpi-icon.navy{background:#eff2f8;color:var(--navy)}.finance-kpi>div{display:grid}.finance-kpi small,.finance-kpi em{color:var(--muted);font-style:normal}.finance-kpi strong{font-size:22px;color:var(--navy)}.finance-kpi em{font-size:11px}.finance-summary-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:var(--shadow-sm);display:grid;gap:5px}.finance-summary-card span{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.finance-summary-card strong{font-size:20px;color:var(--navy)}.finance-summary-card small{color:var(--muted)}.finance-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.action-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:12px;transition:.18s ease}.action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#cfddf2}.action-card>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#f1f6ff;color:var(--blue)}.action-card>div{display:grid;flex:1}.action-card small{color:var(--muted)}.action-card>.app-icon{width:17px;color:#8b98ab}.finance-two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.finance-list{display:grid}.finance-list>a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line);align-items:center}.finance-list>a:first-child{border-top:0}.finance-list strong,.finance-list small{display:block}.finance-list small{color:var(--muted);margin-top:3px}.empty-inline{padding:16px 0;color:var(--muted)}.finance-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.finance-report-grid .span-2{grid-column:1/-1}.report-breakdown{display:grid}.report-breakdown>div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.report-breakdown>div:last-child{border-bottom:0}.report-breakdown span,.report-breakdown small{display:block}.report-breakdown small{color:var(--muted);margin-top:2px}
.payment-form-layout,.payment-detail-layout,.invoice-detail-layout,.settlement-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.payment-main-column,.invoice-main-column,.settlement-main-column,.payment-side-column,.invoice-side-column,.settlement-side-column{display:grid;gap:18px;align-content:start}.form-section{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border-bottom:0}.form-grid{display:grid;gap:13px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label,.payment-form label,.invoice-form label,.settlement-form-layout label,.settlement-pay-form label,.danger-zone label{display:grid;gap:6px}.form-grid .span-2{grid-column:1/-1}.form-actions,.form-action-row{display:flex;align-items:center;gap:12px;justify-content:flex-end}.form-note,.document-note{font-size:11px;color:var(--muted)}.document-note{background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:11px;margin-top:12px}.payment-help p,.settlement-help p{color:var(--muted)}.payment-summary-grid,.invoice-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-summary-grid .summary-card,.invoice-summary-grid .summary-card,.settlement-summary-grid .summary-card{min-height:88px}.side-money,.side-data{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);align-items:center}.side-money:last-child,.side-data:last-child{border-bottom:0}.side-money span,.side-data span{color:var(--muted);font-size:12px}.side-money.emphasis strong{color:var(--blue);font-size:18px}.payment-side-column .btn-block,.reservation-finance-card .btn-block{margin-top:14px}.refund-list{display:grid;gap:10px}.refund-list article{border:1px solid var(--line);border-radius:14px;padding:13px}.refund-list article>div{display:flex;justify-content:space-between;gap:12px}.refund-list small{display:block;color:var(--muted)}.refund-list p{margin:6px 0 0;color:var(--muted)}.refund-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.payment-status.paid,.invoice-status.paid,.settlement-status.paid{background:#eaf8f3;color:#0b815f}.payment-status.partially_refunded,.invoice-status.partial,.settlement-status.approved{background:#eef4ff;color:#1d5dcc}.payment-status.refunded,.payment-status.voided,.invoice-status.voided,.settlement-status.cancelled{background:#fff0f0;color:#b53b45}.settlement-status.draft,.invoice-status.issued,.payment-status.pending{background:#fff7e8;color:#9b6717}.payment-status.failed{background:#fef2f2;color:#b91c1c}
.payment-method-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.payment-method-list{display:grid;gap:12px}.payment-method-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:var(--shadow-sm)}.payment-method-card.inactive{opacity:.68}.payment-method-card>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:start}.payment-method-card h3{margin:0 0 3px;color:var(--navy)}.payment-method-card p{margin:0;color:var(--muted)}.payment-method-card form{margin-top:13px}.method-edit-grid{display:grid;grid-template-columns:1.2fr .8fr 1.5fr auto;gap:9px;align-items:end}.method-status-form{display:flex;justify-content:flex-end}.method-status-form .btn{margin-left:auto}
.invoice-lines{display:grid;gap:10px}.invoice-line{display:grid;grid-template-columns:minmax(180px,2fr) .7fr 1fr .8fr 38px;gap:9px;align-items:end;background:#f9fbfd;border:1px solid var(--line);border-radius:14px;padding:12px}.invoice-remove-line{margin-bottom:1px}.invoice-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.invoice-summary-grid .summary-card.emphasis,.settlement-summary-grid .summary-card.emphasis{background:linear-gradient(145deg,#f6fbff,#f4fffc);border-color:#d6e7ef}.modern-table tfoot td{border-top:1px solid var(--line);padding:10px 12px;text-align:right}.modern-table tfoot td:first-child{text-align:right}.danger-zone{border-color:#f2d6d9;background:#fffdfd}.danger-zone p{color:var(--muted)}
.settlement-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settlement-filters select{min-width:160px}.settlement-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.settlement-help{position:sticky;top:96px}.help-step{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;padding:10px 0}.help-step>span{width:28px;height:28px;border-radius:9px;background:#edf4ff;color:var(--blue);font-weight:900;display:grid;place-items:center}.help-step p{margin:3px 0}.settlement-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}.settlement-pay-form{margin-top:6px}.reservation-payment-mini-list{display:grid;margin-top:12px;border-top:1px solid var(--line)}.reservation-payment-mini-list a{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.reservation-payment-mini-list strong,.reservation-payment-mini-list small{display:block}.reservation-payment-mini-list small{font-size:10px;color:var(--muted);margin-top:2px}.reservation-finance-card>.text-link{display:inline-flex;margin-top:12px}
@media(max-width:1240px){.finance-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-kpi-grid,.finance-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-line{grid-template-columns:2fr .7fr 1fr .8fr 38px}}
@media(max-width:920px){.payment-form-layout,.payment-detail-layout,.invoice-detail-layout,.settlement-detail-layout,.payment-method-layout,.settlement-form-layout{grid-template-columns:1fr}.settlement-help{position:static}.finance-two-column{grid-template-columns:1fr}.settlement-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-line{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-line .invoice-remove-line{grid-column:2;justify-self:end}.method-edit-grid{grid-template-columns:1fr 1fr}.method-edit-grid>*:nth-child(3){grid-column:1/-1}}
@media(max-width:620px){.finance-period-form{display:grid;grid-template-columns:1fr 1fr}.finance-period-form .btn{grid-column:1/-1}.finance-kpi-grid,.finance-secondary-grid,.finance-action-grid,.payment-summary-grid,.invoice-summary-grid,.settlement-kpi-grid,.settlement-summary-grid,.finance-report-grid,.form-grid.two{grid-template-columns:1fr}.finance-report-grid .span-2,.form-grid .span-2{grid-column:auto}.filter-bar{display:grid;grid-template-columns:1fr}.search-field{min-width:0;width:100%}.payment-form-layout,.payment-detail-layout,.invoice-detail-layout,.settlement-detail-layout{gap:14px}.invoice-line{grid-template-columns:1fr}.invoice-line .invoice-remove-line{grid-column:auto;justify-self:end}.method-edit-grid{grid-template-columns:1fr}.method-edit-grid>*:nth-child(3){grid-column:auto}.form-actions,.form-action-row{align-items:stretch;flex-direction:column}.form-actions .btn,.form-action-row .btn{width:100%}.settlement-filters select{min-width:0}}
@media(max-width:414px){.finance-period-form{grid-template-columns:1fr}.finance-period-form .btn{grid-column:auto}.finance-kpi,.finance-summary-card,.action-card,.payment-method-card{border-radius:15px}.settlement-form-layout .detail-card,.payment-form-layout .detail-card,.invoice-form{padding:16px}}
.payment-filters,.invoice-filters{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(5,minmax(120px,1fr));gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm);margin-bottom:15px}.invoice-filters{grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(130px,1fr)) auto}.payment-filters label,.invoice-filters label{display:grid;gap:6px}.payment-filters label>span,.invoice-filters label>span{font-size:11px;font-weight:800;color:var(--muted)}.payment-filters input,.payment-filters select,.invoice-filters input,.invoice-filters select{border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff;min-width:0}.payment-filters .search-field,.invoice-filters .search-field{display:grid;gap:6px;border:0;padding:0;background:transparent}.payment-filters .search-field input,.invoice-filters .search-field input{border:1px solid var(--line)!important;padding:10px 11px!important}.payment-filters .filter-actions,.invoice-filters .filter-actions{display:flex;gap:8px;align-items:center}.payment-table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}.payment-table-wrap .modern-table{min-width:980px}.invoice-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.method-list{display:grid;gap:12px}.method-card{border:1px solid var(--line);border-radius:15px;padding:14px;background:#fff}.method-card.inactive{opacity:.68}.method-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.method-card-head strong,.method-card-head small{display:block}.method-card-head small{color:var(--muted);margin-top:3px}.method-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:12px}.method-actions form{margin:0}.payment-method-layout>aside form{display:grid;gap:11px}.payment-method-layout>aside label{display:grid;gap:6px}.payment-method-layout>aside label>span{font-size:12px;font-weight:800;color:var(--muted)}.payment-method-layout>aside input,.payment-method-layout>aside select,.payment-method-layout>aside textarea{border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff}.catalog-summary{display:flex;gap:7px;align-items:baseline;margin:12px 2px;color:var(--muted)}.catalog-summary strong{color:var(--navy);font-size:20px}
@media(max-width:1240px){.payment-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}.invoice-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-filters .search-field{grid-column:1/-1}}
@media(max-width:720px){.payment-filters,.invoice-filters,.invoice-kpi-grid{grid-template-columns:1fr}.payment-filters .filter-actions,.invoice-filters .filter-actions,.invoice-filters .search-field{grid-column:auto}.payment-filters .filter-actions,.invoice-filters .filter-actions{align-items:stretch}.payment-filters .filter-actions .btn,.invoice-filters .filter-actions .btn{flex:1}.method-actions{align-items:stretch;flex-direction:column}.method-actions form,.method-actions .btn{width:100%}}
.receipt-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:16px}.payment-receipt{max-width:820px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.payment-receipt>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}.receipt-number{text-align:right;display:grid;gap:2px}.receipt-number span,.receipt-grid span,.receipt-notes span,.payment-receipt>footer span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.receipt-number strong{font-size:18px;color:var(--navy)}.receipt-number small{color:var(--muted)}.receipt-title{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:24px 0}.receipt-title span{font-size:18px;font-weight:800;color:var(--navy)}.receipt-title strong{font-size:30px;color:var(--navy)}.receipt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.receipt-grid>div{display:grid;gap:4px;padding:13px;border-radius:13px;background:#f8fafc}.receipt-notes{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:13px}.receipt-notes p{margin:5px 0 0}.payment-receipt>footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.payment-receipt>footer strong{font-size:18px;color:var(--navy)}
@media(max-width:620px){.receipt-toolbar{justify-content:stretch}.receipt-toolbar .btn{flex:1}.payment-receipt{padding:18px;border-radius:17px}.payment-receipt>header,.receipt-title,.payment-receipt>footer{align-items:flex-start;flex-direction:column}.receipt-number{text-align:left}.receipt-grid{grid-template-columns:1fr}.receipt-title strong{font-size:26px}}
@media print{.sidebar,.topbar,.receipt-toolbar{display:none!important}.app-shell{display:block;background:#fff}.main-column,.content-area{display:block;padding:0!important;margin:0!important;max-width:none!important}.payment-receipt{border:0;box-shadow:none;max-width:none;padding:0}.payment-receipt .brand-name{color:#0B1F4D!important}}

/* Operación de estancia y limpieza */
.operations-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.operations-kpi{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:var(--shadow-sm)}.operations-kpi .kpi-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#edf5ff,#effcf9);color:var(--blue)}.operations-kpi small,.operations-kpi strong{display:block}.operations-kpi small{color:var(--muted);font-weight:750}.operations-kpi strong{font-size:25px;color:var(--navy);margin-top:2px}.operations-filters,.cleaning-filters{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm);margin-bottom:16px}.cleaning-filters{grid-template-columns:repeat(6,minmax(115px,1fr)) auto}.operations-filters label,.cleaning-filters label{display:grid;gap:6px}.operations-filters label>span,.cleaning-filters label>span{font-size:11px;font-weight:800;color:var(--muted)}.operations-filters input,.operations-filters select,.cleaning-filters input,.cleaning-filters select{border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff;min-width:0}.operations-filters .filter-actions,.cleaning-filters .filter-actions{display:flex;gap:8px}.operations-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.operation-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);transition:.18s ease}.operation-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.operation-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.operation-card h3{margin:9px 0 2px;color:var(--navy);font-size:17px}.operation-card p{margin:0;color:var(--muted);font-size:12px}.operation-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.operation-dates>div{padding:10px;border-radius:12px;background:#f8fafc;border:1px solid #edf1f5}.operation-dates small,.operation-dates strong,.operation-dates span{display:block}.operation-dates small{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.operation-dates strong{color:var(--navy);margin-top:3px}.operation-dates span{font-size:11px;color:var(--muted)}.operation-flags{display:flex;flex-wrap:wrap;gap:6px;min-height:24px}.operation-flag{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.operation-flag.arrival{background:#eaf8f4;color:#11775b}.operation-flag.departure{background:#eef4ff;color:#235fc9}.operation-flag.cleaning{background:#fff4e8;color:#a65e12}.operation-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;border-top:1px solid var(--line);padding-top:11px;margin-top:12px}.operations-status-strip,.cleaning-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.operations-status-strip>div,.cleaning-summary-strip>div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 14px;box-shadow:var(--shadow-sm)}.operations-status-strip span,.cleaning-summary-strip span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.operations-status-strip strong,.cleaning-summary-strip strong{display:block;color:var(--navy);margin-top:5px}.operations-detail-layout,.cleaning-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.operations-main-column,.cleaning-main-column{display:grid;gap:16px}.operations-side-column,.cleaning-side-column{display:grid;gap:16px;position:sticky;top:96px}.checklist-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checklist-panel{border:1px solid var(--line);border-radius:15px;padding:12px}.checklist-panel h3{margin:0 0 8px;color:var(--navy);font-size:14px}.checklist-row{display:flex;align-items:center;gap:10px;padding:10px 2px;border-top:1px solid #eef2f6}.checklist-row:first-of-type{border-top:0}.checklist-toggle{width:28px;height:28px;border:1px solid #d7e1ec;border-radius:9px;background:#fff;display:grid;place-items:center;color:#fff;flex:0 0 28px}.checklist-row.done .checklist-toggle{background:#18a679;border-color:#18a679}.checklist-row strong,.checklist-row small{display:block}.checklist-row strong{font-size:12px;color:var(--navy)}.checklist-row small{font-size:10px;color:var(--muted);margin-top:2px}.operation-action-card{border-color:#dce7f5;background:linear-gradient(180deg,#fff,#fcfdff)}.operation-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:15px}.operation-check{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);border-radius:12px;padding:10px 11px;background:#fff}.operation-check input{margin-top:3px}.operation-check span{font-weight:700;color:#43526a;font-size:12px}.operation-check.automatic{background:#f3fbf8}.operation-check .checkmark{width:22px;height:22px;border-radius:7px;background:#e5f7f1;color:#148262;display:grid;place-items:center;flex:0 0 22px}.validation-list{display:grid;gap:10px}.validation-list article{display:flex;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px}.validation-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;background:#cbd5e1}.validation-dot.verified{background:var(--success)}.validation-dot.rejected{background:var(--danger)}.validation-list strong,.validation-list small{display:block}.validation-list p{margin:2px 0;color:var(--muted);font-size:11px;text-transform:capitalize}.validation-list small{color:#8792a4;font-size:10px}.side-data{display:grid;gap:3px;padding:9px 0;border-bottom:1px solid #eef2f6}.side-data:last-child{border-bottom:0}.side-data span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.side-data strong{font-size:12px;color:var(--navy)}.protected-value{margin-top:10px;padding:11px;border-radius:12px;background:#fff7ed;border:1px solid #fde2bd;display:grid;gap:4px}.protected-value small{color:#996018;font-weight:800}.protected-value strong{font-size:15px;color:#6f470e;word-break:break-all}.protected-value span{font-size:10px;color:#a57436}.mini-guest-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.mini-guest-list span{padding:5px 8px;border-radius:999px;background:#f3f6fa;color:#536178;font-size:10px}
.cleaning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cleaning-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);border-top:3px solid #d9e3ef}.cleaning-card.high{border-top-color:#f0a84b}.cleaning-card.urgent{border-top-color:#e55b65}.cleaning-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.cleaning-card-head>div{display:flex;gap:6px;flex-wrap:wrap}.cleaning-card h3{margin:14px 0 3px;color:var(--navy)}.cleaning-card p{margin:0;color:var(--muted);font-size:12px}.cleaning-card-meta{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:11px;margin-top:13px;color:var(--muted);font-size:10px}.cleaning-card-meta .has-alert{color:#bd424d;font-weight:800}.priority-pill{display:inline-flex!important;padding:4px 8px;border-radius:999px;font-size:10px!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important;background:#f3f5f8;color:#66758c!important}.priority-pill.high{background:#fff3df;color:#a46316!important}.priority-pill.urgent,.priority-pill.critical{background:#fff0f1;color:#bd424d!important}.priority-pill.low{background:#eff8f5;color:#278266!important}.priority-pill.medium{background:#edf4ff;color:#2b64bf!important}.badge.cleaning-status.pending{background:#fff7e8;color:#9b6819}.badge.cleaning-status.in_progress{background:#edf4ff;color:#245fc7}.badge.cleaning-status.completed{background:#eaf8f2;color:#16835f}.badge.cleaning-status.cancelled{background:#f1f3f6;color:#6c7788}.cleaning-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.cleaning-form-layout>aside{position:sticky;top:96px}.cleaning-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cleaning-control-grid form{border:1px solid var(--line);border-radius:13px;padding:12px;display:grid;gap:10px}.cleaning-control-grid label{display:grid;gap:6px}.photo-upload-row{display:grid;grid-template-columns:1fr 1.5fr auto;gap:10px;align-items:end;margin-bottom:14px}.photo-upload-row label{display:grid;gap:6px}.cleaning-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.cleaning-photo-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.cleaning-photo-grid img{display:block;width:100%;height:150px;object-fit:cover;background:#f3f6fa}.cleaning-photo-grid article>div{padding:10px}.cleaning-photo-grid strong,.cleaning-photo-grid small{display:block}.cleaning-photo-grid strong{font-size:11px;color:var(--navy)}.cleaning-photo-grid small{font-size:9px;color:var(--muted);margin-top:3px}.incident-form{border:1px solid var(--line);border-radius:14px;padding:13px;background:#fbfcfe;margin-bottom:14px}.incident-list{display:grid;gap:11px}.incident-card{border:1px solid var(--line);border-left:4px solid #9aa7b8;border-radius:14px;padding:13px;background:#fff}.incident-card.high{border-left-color:#e4a23d}.incident-card.critical{border-left-color:#d94a54}.incident-card h3{margin:9px 0 4px;color:var(--navy)}.incident-card p{margin:0 0 6px;color:#536178}.incident-card small{color:var(--muted)}.resolve-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.resolution-note{margin-top:10px;padding:10px;border-radius:11px;background:#f1f9f6}.resolution-note p{margin:3px 0 0}.incident-status.open{background:#fff3e7;color:#a05e15}.incident-status.resolved{background:#eaf8f2;color:#177c5d}
@media(max-width:1240px){.operations-board,.cleaning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cleaning-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.cleaning-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:1024px){.operations-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-detail-layout,.cleaning-detail-layout,.cleaning-form-layout{grid-template-columns:1fr}.operations-side-column,.cleaning-side-column,.cleaning-form-layout>aside{position:static}.operations-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:768px){.operations-board,.cleaning-grid,.checklist-columns,.cleaning-control-grid,.cleaning-photo-grid{grid-template-columns:1fr}.operations-status-strip,.cleaning-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.operation-check-grid{grid-template-columns:1fr}.photo-upload-row{grid-template-columns:1fr}.cleaning-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.cleaning-filters .filter-actions{grid-column:1/-1}}
@media(max-width:520px){.operations-kpi-grid,.operations-status-strip,.cleaning-summary-strip,.operations-filters,.cleaning-filters{grid-template-columns:1fr}.operations-filters .filter-actions,.cleaning-filters .filter-actions{grid-column:auto;align-items:stretch}.operations-filters .filter-actions .btn,.cleaning-filters .filter-actions .btn{flex:1}.operation-card,.cleaning-card{border-radius:15px}.operation-dates{grid-template-columns:1fr}.resolve-form{grid-template-columns:1fr}}

/* Módulo 12: mantenimiento e incidencias */
.maintenance-filters{display:grid;grid-template-columns:1.35fr repeat(7,minmax(120px,1fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm);margin-bottom:16px}.maintenance-filters label,.maintenance-form-layout label,.maintenance-tech-layout label,.maintenance-control-grid label,.maintenance-material-form label,.maintenance-evidence-form label,.availability-block-form label{display:grid;gap:6px}.maintenance-filters label>span,.maintenance-form-layout label>span,.maintenance-tech-layout label>span,.maintenance-control-grid label>span,.maintenance-material-form label>span,.maintenance-evidence-form label>span,.availability-block-form label>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.maintenance-filters .filter-actions{display:flex;gap:8px}.maintenance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.maintenance-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:.18s ease}.maintenance-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#8ba0ba}.maintenance-card.priority-high:before{background:#e8a33e}.maintenance-card.priority-critical:before{background:#d94a54}.maintenance-card.priority-low:before{background:#23a47b}.maintenance-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.maintenance-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.maintenance-card-head>div{display:flex;gap:6px;flex-wrap:wrap}.maintenance-card-title{padding:13px 0 10px}.maintenance-card-title h3{margin:6px 0 3px;color:var(--navy);font-size:16px}.maintenance-card-title p{margin:0;color:var(--muted);font-size:11px}.maintenance-type{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#f2f5f9;color:#536178}.maintenance-type.preventive{background:#e9f8f4;color:#187b61}.maintenance-type.corrective{background:#fff2ec;color:#a75a2b}.maintenance-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;border-top:1px solid var(--line);padding-top:11px;color:var(--muted);font-size:10px}.maintenance-card-meta span:last-child{grid-column:1/-1}.maintenance-cost-row{display:flex;align-items:center;gap:8px;margin-top:11px;padding-top:10px;border-top:1px solid #eef2f6}.maintenance-cost-row span{font-size:10px;color:var(--muted)}.maintenance-cost-row strong{color:var(--navy);font-size:12px}.maintenance-cost-row em{margin-left:auto;font-style:normal;color:#a45b18;background:#fff4e7;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800}.badge.maintenance-status.open{background:#edf4ff;color:#275fc3}.badge.maintenance-status.scheduled{background:#eef7ff;color:#2774a6}.badge.maintenance-status.in_progress{background:#fff3e4;color:#a05e15}.badge.maintenance-status.waiting_parts{background:#fff8dd;color:#8b6a0d}.badge.maintenance-status.resolved{background:#e9f8f2;color:#177c5d}.badge.maintenance-status.closed,.badge.maintenance-status.cancelled{background:#f1f3f6;color:#697789}.maintenance-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.maintenance-form-main{display:grid;gap:16px}.maintenance-form-side{position:sticky;top:96px}.maintenance-tech-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start}.maintenance-tech-layout>aside{position:sticky;top:96px}.stacked-form{display:grid;gap:11px}.table-subline{display:block;color:var(--muted);font-size:9px;margin-top:3px}.badge.success{background:#e9f8f2;color:#177c5d}.badge.muted{background:#f1f3f6;color:#697789}.maintenance-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.maintenance-summary-strip>div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 14px;box-shadow:var(--shadow-sm)}.maintenance-summary-strip span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.maintenance-summary-strip strong{display:block;color:var(--navy);margin-top:5px}.maintenance-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.maintenance-main-column,.maintenance-side-column{display:grid;gap:16px}.maintenance-side-column{position:sticky;top:96px}.detail-description{margin:0;color:#536178;white-space:normal}.maintenance-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.maintenance-control-grid form{display:grid;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}.status-resolution-field{display:none}.maintenance-control-grid form:has(select[name="status"] option[value="resolved"]:checked) .status-resolution-field{display:grid}.maintenance-material-form{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe;margin-bottom:13px}.material-grid{grid-template-columns:1.6fr .7fr .7fr .9fr 1.2fr auto!important;align-items:end}.material-notes{min-width:0}.maintenance-evidence-form{display:grid;grid-template-columns:1.2fr .7fr 1.2fr auto;gap:10px;align-items:end;margin-bottom:14px}.maintenance-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.maintenance-evidence-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.evidence-preview{display:grid;height:145px;background:#f4f7fb;place-items:center;overflow:hidden}.evidence-preview img{width:100%;height:100%;object-fit:cover}.document-preview{display:grid;place-items:center;gap:5px;color:var(--navy)}.document-preview .app-icon{width:30px;height:30px}.maintenance-evidence-grid article>div{padding:10px;display:grid;gap:4px}.maintenance-evidence-grid strong{font-size:11px;color:var(--navy);overflow-wrap:anywhere}.maintenance-evidence-grid small{font-size:9px;color:var(--muted)}.availability-block-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.availability-maintenance-active{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border-radius:14px;border:1px solid #f4d9ad;background:#fff9ee}.availability-maintenance-active>div{display:flex;align-items:center;gap:10px}.availability-maintenance-active>div>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#fff0d5;color:#9f6819}.availability-maintenance-active strong,.availability-maintenance-active p{display:block;margin:0}.availability-maintenance-active p{margin-top:2px;color:#8b6a36;font-size:11px}.text-link.danger{color:#bd424d}.app-icon{width:18px;height:18px}
@media(max-width:1366px){.maintenance-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.maintenance-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}.maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1024px){.maintenance-form-layout,.maintenance-tech-layout,.maintenance-detail-layout{grid-template-columns:1fr}.maintenance-form-side,.maintenance-tech-layout>aside,.maintenance-side-column{position:static}.maintenance-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.maintenance-evidence-form{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.maintenance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-grid{grid-template-columns:1fr}.maintenance-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-control-grid{grid-template-columns:1fr}.availability-block-form{grid-template-columns:1fr 1fr}.availability-block-form .btn{grid-column:1/-1}.maintenance-card-meta{grid-template-columns:1fr}.maintenance-card-meta span:last-child{grid-column:auto}}
@media(max-width:414px){.maintenance-filters,.maintenance-summary-strip,.maintenance-evidence-form,.maintenance-evidence-grid,.material-grid{grid-template-columns:1fr!important}.maintenance-filters .filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.maintenance-evidence-form .btn{width:100%}.availability-block-form{grid-template-columns:1fr}.availability-maintenance-active{align-items:flex-start;flex-direction:column}.maintenance-card-head{align-items:flex-start}.maintenance-card-head .btn{padding:7px 9px}.maintenance-cost-row{flex-wrap:wrap}.maintenance-cost-row em{margin-left:0;width:100%;text-align:center}}

/* Módulo 13: reseñas, reputación y soporte */
.reputation-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.reputation-kpis article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:13px;transition:.18s ease}.reputation-kpis article:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.reputation-kpis .kpi-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#e9fbf8,#edf3ff);display:grid;place-items:center;color:var(--blue);flex:0 0 44px}.reputation-kpis article>div{display:grid}.reputation-kpis small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.reputation-kpis strong{font-size:25px;color:var(--navy);line-height:1.15;margin:4px 0}.reputation-kpis article>div>span{font-size:10px;color:#78869a}.reputation-dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.reputation-wide{grid-column:1/-1}.rating-bars{display:grid;gap:12px}.rating-bars>div{display:grid;grid-template-columns:42px 1fr 34px;align-items:center;gap:10px}.rating-bars span,.rating-bars strong{font-size:11px;color:#536178}.rating-track{height:9px;border-radius:99px;background:#edf1f6;overflow:hidden}.rating-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--blue))}.rank-list,.recent-review-list,.source-metrics{display:grid;gap:9px}.rank-list>div{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid #eef2f6;border-radius:13px}.rank-list>div>span{width:34px;height:34px;border-radius:11px;background:#f2f6fd;display:grid;place-items:center;color:var(--navy)}.rank-list strong{display:block;color:var(--navy);font-size:12px}.rank-list small{display:block;color:var(--muted);font-size:9px}.rank-list b{color:#d28721}.recent-review-list>a{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:11px;padding:11px;border:1px solid #eef2f6;border-radius:14px;transition:.16s ease}.recent-review-list>a:hover{border-color:#cfdcf2;background:#fbfdff}.review-score{width:50px;height:50px;border-radius:14px;background:#fff7e9;color:#a56b14;display:grid;place-items:center;font-size:17px;font-weight:900;line-height:1}.review-score span{font-size:10px}.recent-review-list strong{display:block;color:var(--navy);font-size:12px}.recent-review-list p{margin:3px 0 0;color:var(--muted);font-size:10px}.recent-review-list>a>span{font-size:10px;color:#61728a}.source-metrics>div{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #eef2f6}.source-metrics>div:last-child{border-bottom:0}.source-metrics span{color:#526178}.source-metrics strong{color:var(--navy)}.source-metrics small{color:#a56b14}.reputation-filters,.support-filters{display:grid;grid-template-columns:1.35fr repeat(6,minmax(120px,1fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm);margin-bottom:16px}.reputation-filters label,.support-filters label,.review-form label,.response-form label,.support-form label,.support-control-grid label,.support-message-form label,.satisfaction-form label,.support-settings-grid label{display:grid;gap:6px}.reputation-filters label>span,.support-filters label>span,.review-form label>span,.response-form label>span,.support-form label>span,.support-control-grid label>span,.support-message-form label>span,.satisfaction-form label>span,.support-settings-grid label>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.reputation-filters .filter-actions,.support-filters .filter-actions{display:flex;gap:8px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.review-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);display:grid;gap:10px;transition:.18s ease}.review-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.review-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.review-card h3{margin:0;color:var(--navy);font-size:15px}.review-excerpt{margin:0;color:#5e6c80;font-size:11px;line-height:1.65;min-height:54px}.review-meta{display:flex;flex-wrap:wrap;gap:6px}.review-meta span{font-size:9px;border-radius:999px;background:#f4f7fb;color:#64738a;padding:4px 7px}.review-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #eef2f6;padding-top:10px}.review-card-foot small{color:var(--muted);font-size:9px}.badge.review-status.new{background:#edf4ff;color:#285fc2}.badge.review-status.published{background:#eaf8f2;color:#177c5d}.badge.review-status.hidden{background:#f1f3f6;color:#6c7888}.review-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.review-main-column,.review-side-column{display:grid;gap:16px}.review-side-column{position:sticky;top:96px}.review-hero{display:grid;grid-template-columns:82px 1fr;gap:18px}.review-hero-score{width:78px;height:78px;border-radius:20px;background:linear-gradient(135deg,#fff4d9,#fffaf0);display:grid;place-items:center;color:#a56b14;font-size:27px;font-weight:900;line-height:1}.review-hero-score span{font-size:14px}.review-full-body{color:#4f5f75;line-height:1.8}.response-form{display:grid;grid-template-columns:1fr 180px auto;gap:10px;align-items:end}.response-form label:first-child{grid-column:1/-1}.review-response-list{display:grid;gap:10px}.review-response-list article{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}.review-response-list article>div{display:flex;justify-content:space-between;gap:10px}.review-response-list p{margin:8px 0;color:#55647a;font-size:11px}.review-response-list small{color:var(--muted);font-size:9px}.settings-grid,.support-settings-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:start}.settings-list{display:grid;gap:8px;margin-top:16px}.settings-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #eef2f6}.settings-list strong,.settings-list small{display:block}.settings-list strong{color:var(--navy);font-size:12px}.settings-list small{color:var(--muted);font-size:9px;margin-top:2px}.settings-list.compact{max-height:420px;overflow:auto;padding-right:4px}.support-list{display:grid;gap:10px}.support-ticket-row{display:grid;grid-template-columns:140px minmax(0,1fr) 170px;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:17px;padding:14px 16px;box-shadow:var(--shadow-sm);transition:.17s ease}.support-ticket-row:hover{transform:translateY(-1px);border-color:#ccd8eb}.support-ticket-row.sla-breached{border-left:4px solid var(--danger)}.support-code strong{display:block;color:var(--navy);font-size:11px}.support-code span{display:block;color:var(--muted);font-size:9px;margin-top:4px}.support-main>div{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.support-main h3{margin:5px 0 2px;color:var(--navy);font-size:14px}.support-main p{margin:0;color:var(--muted);font-size:10px}.support-assignee{display:grid;text-align:right}.support-assignee span,.support-assignee small{font-size:9px;color:var(--muted)}.support-assignee strong{font-size:11px;color:var(--navy);margin:3px 0}.sla-alert{font-size:9px;font-weight:800;color:#b4333e;background:#fff0f1;border-radius:999px;padding:4px 7px}.badge.support-status.open{background:#edf4ff;color:#285fc2}.badge.support-status.in_progress{background:#fff3e4;color:#9b5b17}.badge.support-status.waiting_guest{background:#f4efff;color:#7450ad}.badge.support-status.resolved{background:#eaf8f2;color:#177c5d}.badge.support-status.closed,.badge.support-status.cancelled{background:#f1f3f6;color:#697789}.priority-pill.urgent{background:#fff0f1;color:#b4333e}.support-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.support-summary-strip>div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 14px;box-shadow:var(--shadow-sm)}.support-summary-strip span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.support-summary-strip strong{display:block;color:var(--navy);margin-top:5px;font-size:11px}.support-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.support-main-column,.support-side-column{display:grid;gap:16px}.support-side-column{position:sticky;top:96px}.support-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.support-control-grid form{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fbfcfe}.support-message-form{display:grid;grid-template-columns:180px 1fr auto;gap:10px;align-items:end;margin-bottom:15px}.support-message-form .message-body{min-width:0}.support-conversation{display:grid;gap:10px}.support-conversation article{padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.support-conversation article.internal-note{background:#fffaf0;border-color:#f2dfb7}.support-conversation article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.support-conversation p{margin:8px 0;color:#536178;font-size:11px;line-height:1.65}.support-conversation small{color:var(--muted);font-size:9px}.satisfaction-form{display:grid;grid-template-columns:180px 1fr auto;gap:10px;align-items:end}.sla-warning{margin-top:10px;padding:10px;border-radius:12px;background:#fff0f1;color:#a83540;font-size:10px;font-weight:700}.text-danger{color:var(--danger)!important}.sla-policy-list{display:grid;gap:10px}.sla-policy-list form{display:grid;grid-template-columns:130px 1fr 1fr auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:14px;padding:11px;background:#fbfcfe}.sla-policy-list form>div{display:grid;gap:5px}.sla-policy-list label{position:relative}.sla-policy-list label small{position:absolute;right:9px;bottom:10px;font-size:9px;color:var(--muted)}.sla-policy-list input{padding-right:56px}
@media(max-width:1366px){.reputation-filters,.support-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.reputation-filters .filter-actions,.support-filters .filter-actions{grid-column:1/-1;justify-content:flex-end}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1024px){.reputation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.reputation-dashboard-grid,.review-detail-layout,.support-detail-layout,.settings-grid,.support-settings-grid{grid-template-columns:1fr}.review-side-column,.support-side-column{position:static}.support-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.support-ticket-row{grid-template-columns:120px minmax(0,1fr)}.support-assignee{grid-column:2;text-align:left;display:flex;gap:8px;align-items:center}.sla-policy-list form{grid-template-columns:110px 1fr 1fr auto}}
@media(max-width:768px){.review-grid{grid-template-columns:1fr}.reputation-filters,.support-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.support-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.support-ticket-row{grid-template-columns:1fr}.support-assignee{grid-column:auto}.support-control-grid,.response-form,.support-message-form,.satisfaction-form{grid-template-columns:1fr}.response-form label:first-child{grid-column:auto}.sla-policy-list form{grid-template-columns:1fr 1fr}.sla-policy-list form>div,.sla-policy-list form .btn{grid-column:1/-1}.review-hero{grid-template-columns:1fr}.review-hero-score{width:70px;height:70px}}
@media(max-width:414px){.reputation-kpis,.reputation-filters,.support-filters,.support-summary-strip,.sla-policy-list form{grid-template-columns:1fr}.reputation-filters .filter-actions,.support-filters .filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.reputation-dashboard-grid{gap:12px}.recent-review-list>a{grid-template-columns:44px 1fr}.recent-review-list>a>span{grid-column:2}.review-score{width:44px;height:44px}.support-ticket-row{padding:13px;border-radius:15px}.support-main>div{align-items:flex-start}.sla-policy-list form>div,.sla-policy-list form .btn{grid-column:auto}}

/* Promociones, cupones y campañas */
.marketing-head{align-items:flex-end}.marketing-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.marketing-kpi-grid.compact{margin-bottom:16px}.marketing-kpi-grid.compact .metric-card{min-height:108px}.marketing-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.marketing-main,.marketing-side{display:grid;gap:16px}.marketing-side{position:sticky;top:92px}.marketing-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.8fr)) auto auto;gap:10px;align-items:center;margin-bottom:16px}.marketing-filters.campaign-filter{grid-template-columns:minmax(240px,1.5fr) minmax(150px,.7fr) auto auto}.marketing-filters select,.marketing-filters input{width:100%}.coupon-code-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.coupon-code-line strong{color:var(--navy);letter-spacing:.04em}.tiny-badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#eef5ff;color:#2b5dac;font-size:9px;font-weight:800}.marketing-table td>span,.marketing-table td>small{display:block}.marketing-table td>small{margin-top:3px;color:var(--muted);font-size:9px}.row-actions{display:flex;gap:6px;justify-content:flex-end}.row-actions form{margin:0}.mini-list{display:grid}.mini-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eef2f6}.mini-list-row:last-child{border-bottom:0}.mini-list-row strong,.mini-list-row span{display:block}.mini-list-row strong{font-size:11px;color:var(--navy)}.mini-list-row span{margin-top:3px;font-size:9px;color:var(--muted)}.mini-list-row>b{font-size:10px;color:#2f5d9e;white-space:nowrap}.muted-copy{color:var(--muted);font-size:10px;line-height:1.6}.marketing-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.form-main,.form-side{display:grid;gap:16px}.sticky-card{position:sticky;top:92px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label{display:grid;gap:6px;color:#44546a;font-size:11px;font-weight:700}.form-grid label small{font-size:9px;color:var(--muted);font-weight:600}.form-grid .span-2{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.stack-form select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:10px 12px;outline:none;transition:.16s ease}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.stack-form select:focus{border-color:#9ab7ea;box-shadow:0 0 0 3px rgba(37,99,235,.08)}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.choice-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.choice-card{position:relative}.choice-card>input{position:absolute;opacity:0;pointer-events:none}.choice-card>span{display:flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:13px;padding:9px 11px;background:#fff;color:#536178;transition:.16s ease}.choice-card .app-icon{width:17px;height:17px;color:#6b7c94}.choice-card>input:checked+span{border-color:#8bb7ff;background:#f4f8ff;color:var(--navy);box-shadow:0 0 0 2px rgba(37,99,235,.06)}.choice-card>input:checked+span .app-icon{color:var(--blue)}.choice-card b{font-size:10px}.switch-label{align-content:center}.switch-label>span:first-child{font-size:11px}.switch-control{display:inline-flex!important;position:relative;width:44px;height:25px;align-items:center}.switch-control input{position:absolute;opacity:0;inset:0}.switch-control i{display:block;width:44px;height:25px;border-radius:999px;background:#cfd8e4;position:relative;transition:.18s ease}.switch-control i:after{content:"";position:absolute;width:19px;height:19px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:0 2px 6px rgba(0,0,0,.16);transition:.18s ease}.switch-control input:checked+i{background:var(--teal)}.switch-control input:checked+i:after{transform:translateX(19px)}.form-note{margin-top:14px;padding:11px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e8edf4;color:#657389;font-size:10px}.audience-panel{margin-top:14px}.audience-panel[hidden]{display:none!important}.audience-panel h3{margin:0 0 10px;color:var(--navy);font-size:12px}.guest-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto;padding-right:4px}.guest-choice-list label{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);border-radius:12px;padding:9px 10px;background:#fff}.guest-choice-list input{margin-top:3px}.guest-choice-list b,.guest-choice-list small{display:block}.guest-choice-list b{font-size:10px;color:var(--navy)}.guest-choice-list small{font-size:9px;color:var(--muted);margin-top:2px}.side-stats{display:grid;gap:8px;margin-top:12px}.side-stats>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #eef2f6}.side-stats span{font-size:9px;color:var(--muted)}.side-stats strong{font-size:10px;color:var(--navy)}.redemption-list{margin-top:14px}.redemption-list h3{margin:0 0 7px;font-size:11px;color:var(--navy)}.redemption-list>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #eef2f6}.redemption-list b,.redemption-list small{display:block}.redemption-list b{font-size:9px;color:var(--navy)}.redemption-list small{font-size:8px;color:var(--muted);margin-top:2px}.redemption-list strong{font-size:9px;color:#2f5d9e;white-space:nowrap}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;border-color:#f4c9cd;background:#fffafb}.danger-zone h2{margin:0;color:#a7333e;font-size:14px}.danger-zone p{margin:4px 0 0;color:#7b5f63;font-size:10px}.campaign-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.campaign-card{display:grid;gap:11px;border:1px solid var(--line);border-radius:18px;padding:16px;background:#fff;box-shadow:var(--shadow-sm);transition:.18s ease}.campaign-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#ccd8eb}.campaign-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.campaign-card-top>span:last-child{font-size:9px;color:var(--muted)}.campaign-card h3{margin:0;color:var(--navy);font-size:15px}.campaign-card>p{margin:0;color:#607087;font-size:10px;line-height:1.6;min-height:32px}.campaign-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.campaign-card-stats>div{padding:8px;border-radius:11px;background:#f8fafc}.campaign-card-stats span,.campaign-card-stats strong{display:block}.campaign-card-stats span{font-size:8px;color:var(--muted)}.campaign-card-stats strong{margin-top:3px;font-size:10px;color:var(--navy)}.campaign-card>small{font-size:8px;color:var(--muted)}.campaign-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.campaign-detail-grid>main,.campaign-detail-grid>aside{display:grid;gap:16px}.campaign-detail-grid>aside{position:sticky;top:92px}.campaign-summary-card dl{margin:12px 0 0}.campaign-summary-card dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eef2f6}.campaign-summary-card dt{font-size:9px;color:var(--muted)}.campaign-summary-card dd{margin:0;text-align:right;font-size:10px;color:var(--navy);font-weight:700}.stack-form{display:grid;gap:10px}.danger-mini{border-color:#f2c8cc;background:#fffafb}.danger-mini h2{color:#a7333e}.timeline-list{display:grid}.timeline-list.large{max-width:860px}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative;padding:10px 0}.timeline-item:not(:last-child):before{content:"";position:absolute;left:8px;top:29px;bottom:-10px;width:1px;background:#e5ebf3}.timeline-dot{width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--blue));margin:5px 0 0 4px;position:relative;z-index:1}.timeline-item strong{display:block;color:var(--navy);font-size:10px;text-transform:capitalize}.timeline-item p{margin:2px 0;color:#617087;font-size:9px}.timeline-item small{font-size:8px;color:#8994a5}.btn-block{width:100%;justify-content:center}.back-link{display:inline-block;margin-bottom:6px;color:#64748b;font-size:10px;font-weight:700}.text-link{color:var(--blue);font-weight:800;font-size:10px}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid #eef2f6}.pagination-bar>span{font-size:9px;color:var(--muted)}.pagination-bar>div{display:flex;gap:7px}
@media(max-width:1180px){.marketing-layout,.marketing-form-layout,.campaign-detail-grid{grid-template-columns:1fr}.marketing-side,.sticky-card,.campaign-detail-grid>aside{position:static}.marketing-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1024px){.marketing-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.marketing-filters .search-field{grid-column:1/-1}.marketing-filters.campaign-filter{grid-template-columns:1fr 1fr}.marketing-filters.campaign-filter .search-field{grid-column:1/-1}.marketing-table{min-width:920px}.guest-choice-list{grid-template-columns:1fr}.form-side{grid-template-columns:repeat(2,minmax(0,1fr))}.form-side .sticky-card{height:max-content}}
@media(max-width:768px){.marketing-kpi-grid,.campaign-card-grid,.form-side{grid-template-columns:1fr}.marketing-filters,.marketing-filters.campaign-filter,.form-grid{grid-template-columns:1fr}.marketing-filters .search-field,.marketing-filters.campaign-filter .search-field,.form-grid .span-2{grid-column:auto}.choice-grid,.choice-grid.compact{grid-template-columns:1fr 1fr}.danger-zone{align-items:flex-start;flex-direction:column}.campaign-card-stats{grid-template-columns:1fr}.campaign-detail-grid{gap:12px}.pagination-bar{align-items:flex-start;flex-direction:column}}
@media(max-width:414px){.marketing-kpi-grid,.choice-grid,.choice-grid.compact{grid-template-columns:1fr}.marketing-filters{gap:8px}.marketing-form-layout{gap:12px}.campaign-card{padding:14px}.page-actions{width:100%;display:grid;grid-template-columns:1fr}.page-actions .btn{justify-content:center}.coupon-code-line{align-items:flex-start;flex-direction:column}.guest-choice-list{max-height:280px}.danger-zone .btn{width:100%}}

/* M15 communications */
.communication-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0 0 22px}.communications-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.communications-main{min-width:0}.communications-filters{display:grid;grid-template-columns:minmax(260px,1fr) 170px 170px auto auto;gap:10px;align-items:center;margin:16px 0 18px}.conversation-list{display:flex;flex-direction:column}.conversation-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 4px;border-top:1px solid var(--border);color:inherit;text-decoration:none;transition:.18s ease}.conversation-row:hover{background:#f8fbff;transform:translateX(2px)}.conversation-avatar{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#e7f2ff,#e9fbf8);color:var(--navy);font-weight:800}.conversation-copy{min-width:0}.conversation-title{display:flex;gap:10px;align-items:center;min-width:0}.conversation-title span{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-copy p{margin:6px 0;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:12px}.conversation-meta span+span:before{content:'•';margin-right:8px}.conversation-state{display:flex;align-items:center;gap:8px}.conversation-state b{font-size:12px;color:var(--muted)}.priority-dot{width:9px;height:9px;border-radius:50%;background:#94a3b8}.priority-dot.high{background:#fb923c}.priority-dot.urgent{background:#ef4444}.priority-dot.low{background:#14b8a6}.quick-nav-card>a{display:grid;grid-template-columns:34px 1fr 20px;gap:10px;align-items:center;padding:13px 0;border-top:1px solid var(--border);text-decoration:none;color:inherit}.quick-nav-card>a span{display:flex;flex-direction:column}.quick-nav-card>a small{color:var(--muted);margin-top:2px}.quick-nav-card>a:hover strong{color:var(--blue)}.inline-links{display:flex;gap:14px;flex-wrap:wrap}.conversation-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}.message-stream{display:flex;flex-direction:column;gap:14px;padding:4px 0 18px}.message-bubble{max-width:84%;padding:14px 16px;border-radius:18px;background:#f4f7fb;border:1px solid #e7edf6}.message-bubble.outbound{margin-left:auto;background:#eef7ff;border-color:#dcecff}.message-bubble.internal{background:#fff9ed;border-color:#f8e8bd}.message-bubble.inbound{margin-right:auto}.message-bubble-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px}.message-bubble-head span{color:var(--muted)}.message-bubble h4{margin:0 0 7px}.message-bubble p{margin:0;line-height:1.58;white-space:normal}.message-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.message-tags>span{font-size:11px;padding:4px 8px;border-radius:999px;background:#fff;border:1px solid var(--border);color:var(--muted)}.message-tags form{display:inline-flex}.message-composer{border-top:1px solid var(--border);padding-top:18px;display:flex;flex-direction:column;gap:13px}.composer-hint{font-size:12px;color:var(--muted);padding:10px 12px;border-radius:12px;background:#f8fafc}.compact-form{display:flex;flex-direction:column;gap:13px}.info-stack>div:not(.panel-card-head){display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid var(--border)}.info-stack span{color:var(--muted)}.template-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.template-card{padding:18px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(15,31,77,.05);display:flex;flex-direction:column;min-height:220px}.template-card-top,.template-card-foot{display:flex;justify-content:space-between;gap:10px;align-items:center}.template-card h3{margin:16px 0 7px}.template-card>p{color:var(--muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.template-card-foot{margin-top:auto;padding-top:14px}.channel-badge{font-size:12px;border-radius:999px;padding:5px 9px;background:#eff6ff;color:#1d4ed8}.variable-chips{display:flex;gap:7px;flex-wrap:wrap;align-items:center;padding:12px;border-radius:14px;background:#f8fafc}.variable-chips code{font-size:12px;background:#fff;padding:4px 7px;border:1px solid var(--border);border-radius:8px}.reminder-layout,.automation-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.automation-card-grid{display:grid;gap:12px}.automation-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:16px}.automation-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#eff8ff;color:var(--blue)}.automation-card>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.automation-card span,.automation-card small{color:var(--muted)}.channel-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.channel-card{padding:22px;border-radius:22px;border:1px solid var(--border);background:#fff;box-shadow:0 12px 34px rgba(15,31,77,.06);display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start}.channel-card>.status-pill{grid-column:2;justify-self:start}.channel-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#eaf4ff,#ebfbf8);color:var(--navy)}.channel-card h2{margin:0 0 7px}.channel-card p{margin:0 0 8px;color:var(--muted);line-height:1.55}.channel-card small{display:block;color:var(--muted);margin-top:4px}.activity-timeline{display:flex;flex-direction:column}.activity-timeline article{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--blue);margin-top:5px;box-shadow:0 0 0 5px #edf5ff}.activity-timeline p{margin:4px 0;color:var(--muted)}.activity-timeline small{color:var(--muted)}
@media(max-width:1180px){.communication-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.communications-layout,.conversation-detail-layout,.reminder-layout,.automation-layout{grid-template-columns:1fr}.communications-side,.conversation-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.template-card-grid,.channel-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.communications-filters{grid-template-columns:1fr 1fr}.communications-filters .search-field{grid-column:1/-1}.template-card-grid{grid-template-columns:1fr}.conversation-state b{display:none}}
@media(max-width:768px){.communication-kpi-grid{grid-template-columns:1fr 1fr}.conversation-row{grid-template-columns:40px minmax(0,1fr)}.conversation-avatar{width:40px;height:40px;border-radius:13px}.conversation-state{grid-column:2;justify-content:flex-start}.message-bubble{max-width:95%}.communications-side,.conversation-side,.channel-card-grid{grid-template-columns:1fr}.reminder-layout .modern-table{min-width:760px}}
@media(max-width:520px){.communication-kpi-grid{grid-template-columns:1fr}.communications-filters{grid-template-columns:1fr}.communications-filters .search-field{grid-column:auto}.conversation-title{align-items:flex-start;flex-direction:column;gap:2px}.conversation-meta{gap:5px}.message-bubble{max-width:100%}.template-card,.channel-card{border-radius:16px}.automation-card{grid-template-columns:40px minmax(0,1fr)}.automation-card>.status-pill{grid-column:2;justify-self:start}}
@media(max-width:414px){.conversation-row{padding:14px 0}.message-bubble{padding:12px 13px}.variable-chips code{font-size:11px}.page-actions .btn{width:100%;justify-content:center}}

/* M16 employees, roles and access */
.employee-kpi-grid,.access-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.employee-filters{display:grid;grid-template-columns:minmax(260px,1fr) 180px 200px auto auto;gap:10px;align-items:center;margin-bottom:18px}.employee-filters .search-field{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:0 12px;background:#fff}.employee-filters .search-field input{border:0;box-shadow:none;padding-left:0}.employee-filters .search-field .app-icon{width:17px;height:17px;color:var(--muted)}.employee-table{min-width:980px}.table-subtext{display:block;margin-top:3px;color:var(--muted);font-size:11px}.employee-form-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);gap:18px;align-items:start}.employee-form-side{display:grid;gap:16px;position:sticky;top:88px}.assignment-list{display:grid;gap:8px}.assignment-list.scroll{max-height:340px;overflow:auto;padding-right:4px}.assignment-list label{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid #e7edf5;border-radius:13px;background:#fbfcfe;cursor:pointer}.assignment-list input{margin-top:3px;accent-color:var(--blue)}.assignment-list span{display:flex;flex-direction:column;gap:2px}.assignment-list small{color:var(--muted)}.side-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.catalog-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.catalog-create-form{display:grid;grid-template-columns:1fr 1.3fr auto;gap:10px;align-items:end;padding:14px;border:1px dashed #d6e0ec;border-radius:16px;background:#fbfdff;margin-bottom:16px}.catalog-create-form label{display:grid;gap:6px}.catalog-create-form input,.catalog-create-form select{width:100%;border:1px solid #dbe4f0;background:#fff;border-radius:11px;padding:10px 11px}.catalog-create-form .span-2{grid-column:1/3}.catalog-list{display:grid;gap:9px}.catalog-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf1f6;padding:12px 0}.catalog-list article:first-child{border-top:0}.catalog-list article>div{display:flex;flex-direction:column;gap:2px}.catalog-list small{color:var(--muted)}.access-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:18px;align-items:start}.access-events{position:sticky;top:88px}.user-security-grid{display:grid;grid-template-columns:minmax(300px,.58fr) minmax(0,1.42fr);gap:18px;margin-bottom:18px}.security-profile-head{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:16px}.avatar.large{width:62px;height:62px;font-size:20px}.security-profile-head h2{margin:0;color:var(--navy)}.security-profile-head p{margin:4px 0 0;color:var(--muted)}.security-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.security-actions form{display:grid;gap:9px}.security-actions label{display:grid;gap:6px}.security-actions input{width:100%;border:1px solid #dbe4f0;border-radius:11px;padding:10px 11px}.btn-danger{background:#d94a54;color:#fff;box-shadow:0 7px 16px rgba(217,74,84,.16)}.btn-danger:hover{filter:brightness(.97);transform:translateY(-1px)}.session-list{display:grid;gap:10px}.session-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid #e7edf5;border-radius:15px;padding:13px;background:#fbfcfe}.session-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf5ff;color:var(--blue)}.session-icon .app-icon{width:19px;height:19px}.session-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.session-list p{margin:5px 0;color:#52647b;font-size:12px;overflow-wrap:anywhere}.session-list small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.access-history-table{min-width:850px}.status.neutral{background:#f0f3f7;color:#68758a}.metric-icon.teal{background:#eaf9f6;color:#0b948a}.page-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
@media(max-width:1180px){.employee-form-layout,.access-layout,.user-security-grid{grid-template-columns:1fr}.employee-form-side,.access-events{position:static}.employee-form-side{grid-template-columns:1fr 1fr}.employee-form-side .side-actions{grid-column:1/-1}.catalog-layout{grid-template-columns:1fr}}
@media(max-width:900px){.employee-kpi-grid,.access-kpi-grid{grid-template-columns:1fr 1fr}.employee-filters{grid-template-columns:1fr 1fr}.employee-filters .search-field{grid-column:1/-1}.catalog-create-form{grid-template-columns:1fr 1fr}.catalog-create-form .btn{grid-column:1/-1}.security-profile-head{grid-template-columns:56px minmax(0,1fr)}.security-profile-head>.status{grid-column:2;justify-self:start}}
@media(max-width:768px){.employee-kpi-grid,.access-kpi-grid,.employee-form-side{grid-template-columns:1fr}.employee-form-side .side-actions{grid-column:auto}.employee-filters{grid-template-columns:1fr}.employee-filters .search-field{grid-column:auto}.catalog-create-form{grid-template-columns:1fr}.catalog-create-form .span-2,.catalog-create-form .btn{grid-column:auto}.session-list article{grid-template-columns:38px minmax(0,1fr)}.session-list article>form{grid-column:2}.side-actions{grid-template-columns:1fr}}
@media(max-width:414px){.employee-kpi-grid,.access-kpi-grid{grid-template-columns:1fr}.security-profile-head{grid-template-columns:48px minmax(0,1fr)}.avatar.large{width:48px;height:48px}.page-actions{width:100%;display:grid;grid-template-columns:1fr}.page-actions .btn{width:100%}.assignment-list.scroll{max-height:260px}}

/* Módulo 17 · Reportes y Centro IA */
.report-filter-bar{display:grid;grid-template-columns:minmax(190px,1.25fr) repeat(2,minmax(145px,.8fr)) minmax(180px,1fr) auto;gap:14px;align-items:end;padding:18px 20px;margin-bottom:22px}
.report-filter-bar label,.premium-form label{display:flex;flex-direction:column;gap:7px}.report-filter-bar label>span,.premium-form label>span{font-size:12px;font-weight:750;color:var(--muted,#64748b)}
.report-kpi-grid,.ai-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:0 0 22px}.report-kpi-grid .metric-card,.ai-kpi-grid .metric-card{min-width:0}
.report-result-card{overflow:hidden}.report-result-head{align-items:flex-start;gap:18px}.report-result-head p{max-width:760px}.export-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.report-table{min-width:780px}.report-table td,.report-table th{white-space:nowrap}.table-foot{display:flex;justify-content:space-between;gap:14px;padding:13px 18px;border-top:1px solid var(--line,#e8edf4);font-size:12px;color:var(--muted,#64748b)}
.schedule-layout,.ai-settings-layout,.prompt-form-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:20px;align-items:start}.schedule-create-card,.ai-security-card,.prompt-side-card{position:sticky;top:88px}.schedule-list{display:grid;gap:12px;padding:0 18px 18px}.schedule-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px;border:1px solid var(--line,#e8edf4);border-radius:18px;background:#fff;transition:.2s ease}.schedule-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,35,70,.07)}.schedule-icon,.result-icon,.prompt-icon,.prompt-side-icon,.security-visual{display:grid;place-items:center;flex:0 0 auto;color:#2563eb;background:#eff6ff;border-radius:14px}.schedule-icon{width:44px;height:44px}.schedule-icon svg,.result-icon svg,.prompt-icon svg{width:20px;height:20px}.schedule-copy{min-width:0}.schedule-title{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.schedule-copy p{margin:4px 0;color:#334155}.schedule-copy small{color:#64748b}.schedule-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.schedule-actions form{margin:0}.report-history-card{margin-top:20px}
.ai-main-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr);gap:20px;align-items:start}.ai-run-card,.ai-status-card,.ai-history-card{overflow:hidden}.ai-run-form{display:grid;gap:14px}.ai-status-card{position:sticky;top:88px}.ai-feature-list{display:grid;gap:0}.ai-feature-list>article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line,#e8edf4)}.ai-feature-list>article:last-child{border-bottom:0}.ai-feature-list article>div:first-child{min-width:0;display:grid;gap:3px}.ai-feature-list strong{color:#10213a}.ai-feature-list small{color:#64748b}.ai-feature-form{display:flex;align-items:center;gap:8px;min-width:min(270px,48%)}.ai-feature-form select{min-width:0;flex:1}.switch-button{appearance:none;border:0;width:42px;height:24px;border-radius:999px;background:#dbe3ee;padding:3px;cursor:pointer;transition:.2s ease;flex:0 0 auto}.switch-button span{display:block;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.2);transition:.2s ease}.switch-button.on{background:#14b8a6}.switch-button.on span{transform:translateX(18px)}.switch-button:focus-visible{outline:3px solid rgba(37,99,235,.2);outline-offset:2px}.privacy-note{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:13px 14px;background:#f8fafc;border:1px solid #e8edf4;border-radius:14px;color:#475569;font-size:13px}.privacy-note svg{width:18px;height:18px;flex:0 0 auto;color:#2563eb}.ai-result-card{margin-top:18px;border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#fafdff);border-radius:18px;padding:18px}.ai-result-card h3{margin:0 0 10px}.ai-result-text{white-space:pre-wrap;line-height:1.7;color:#26364d}.ai-result-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #e8edf4;color:#64748b;font-size:12px}.ai-history-card{margin-top:20px}.ai-result-list{display:grid}.ai-result-list>a{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:12px;align-items:center;padding:14px 18px;border-top:1px solid #eef2f7;color:inherit;text-decoration:none;transition:.2s ease}.ai-result-list>a:hover{background:#f8fbff}.ai-result-list>a>div{min-width:0;display:grid;gap:3px}.ai-result-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-result-list small{color:#64748b}.result-icon{width:42px;height:42px}
.ai-security-card{padding:24px}.security-visual,.prompt-side-icon{width:56px;height:56px;border-radius:18px;margin-bottom:16px;background:linear-gradient(135deg,#e8f3ff,#e8fffa);color:#0f6ddf}.security-visual svg,.prompt-side-icon svg{width:27px;height:27px}.ai-security-card h2,.prompt-side-card h2{margin:0 0 8px}.ai-security-card>p,.prompt-side-card>p{color:#64748b;line-height:1.65}.security-points{display:grid;gap:10px;margin:18px 0}.security-points span{display:flex;align-items:center;gap:8px;color:#334155;font-size:13px}.security-points svg{width:16px;height:16px;color:#14b8a6}.verified-at{display:block;margin-top:12px;color:#64748b;text-align:center}.input-suffix{position:relative}.input-suffix input{padding-right:48px}.input-suffix em{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:#64748b}
.ai-prompt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.prompt-card{display:flex;flex-direction:column;min-height:260px;padding:20px;background:#fff;border:1px solid #e8edf4;border-radius:20px;box-shadow:0 8px 24px rgba(15,35,70,.04);transition:.2s ease}.prompt-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,35,70,.08)}.prompt-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.prompt-icon{width:42px;height:42px}.prompt-card h2{margin:0;font-size:18px}.prompt-card>p{margin:5px 0 14px;color:#64748b}.prompt-preview{flex:1;padding:13px;border-radius:14px;background:#f8fafc;color:#475569;line-height:1.55;font-size:13px;overflow-wrap:anywhere}.prompt-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.prompt-card-foot small{color:#94a3b8}.prompt-side-card{padding:24px}.prompt-side-card label{margin:18px 0}.prompt-form-layout main.panel-card{overflow:hidden}
.ai-provider-summary{display:flex;gap:12px;align-items:center}.ai-provider-summary .provider-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1}.ai-provider-summary .provider-dot.active{background:#14b8a6;box-shadow:0 0 0 5px rgba(20,184,166,.12)}

@media(max-width:1280px){.report-kpi-grid,.ai-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-prompt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.report-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-bar .btn{width:100%}.schedule-layout,.ai-settings-layout,.prompt-form-layout,.ai-main-layout{grid-template-columns:1fr}.schedule-create-card,.ai-security-card,.prompt-side-card,.ai-status-card{position:static}.ai-feature-form{min-width:min(340px,52%)}}
@media(max-width:768px){.report-kpi-grid,.ai-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-result-head{flex-direction:column}.export-actions{justify-content:flex-start}.schedule-card{grid-template-columns:42px minmax(0,1fr)}.schedule-actions{grid-column:1/-1;justify-content:flex-start;padding-left:56px}.ai-feature-list>article{align-items:flex-start;flex-direction:column}.ai-feature-form{width:100%;min-width:0}.ai-prompt-grid{grid-template-columns:1fr}.table-foot{flex-direction:column}}
@media(max-width:520px){.report-filter-bar{grid-template-columns:1fr;padding:15px}.report-kpi-grid,.ai-kpi-grid{grid-template-columns:1fr}.schedule-actions{padding-left:0}.schedule-actions form,.schedule-actions .btn{width:100%}.schedule-card{align-items:start}.prompt-card{padding:17px}.ai-security-card,.prompt-side-card{padding:20px}.ai-result-list>a{padding:13px}.export-actions{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.export-actions .btn{justify-content:center;padding-inline:8px}}
@media(max-width:414px){.schedule-card{grid-template-columns:1fr}.schedule-icon{display:none}.schedule-actions{display:grid;grid-template-columns:1fr}.export-actions{grid-template-columns:1fr}.report-filter-bar{gap:11px}.prompt-card-foot{align-items:flex-start;flex-direction:column}}

/* Módulo 18 · Estado, seguridad y continuidad */
.system-heading{align-items:center}.system-status-grid{display:grid;grid-template-columns:minmax(320px,1.5fr) repeat(3,minmax(180px,.75fr));gap:14px;margin-bottom:18px}.system-score-card{display:flex;align-items:center;gap:18px}.system-score{width:86px;height:86px;border-radius:24px;display:grid;place-items:center;text-align:center;background:#eef8f5;color:var(--success)}.system-score.attention{background:#fff7e8;color:#9a681b}.system-score strong{font-size:28px;line-height:1}.system-score span{font-size:10px;font-weight:800;max-width:60px}.system-score-card h2{margin:0 0 4px;color:var(--navy)}.system-score-card p{margin:0;color:var(--muted)}.system-mini-card{display:flex;align-items:center;gap:13px}.system-mini-icon{width:44px;height:44px;border-radius:14px;background:#eef4ff;color:var(--blue);display:grid;place-items:center;flex:0 0 auto}.system-mini-card>div{display:flex;flex-direction:column;min-width:0}.system-mini-card small{color:var(--muted)}.system-mini-card strong{font-size:19px;color:var(--navy)}
.system-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:18px;align-items:start;margin-bottom:18px}.system-check-list{display:grid}.system-check-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid #edf1f6}.system-check-row:first-child{border-top:0;padding-top:2px}.system-check-row>div{display:grid;gap:2px}.system-check-row small{color:var(--muted)}.check-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1}.check-dot.ok{background:var(--success);box-shadow:0 0 0 4px rgba(23,166,115,.1)}.check-dot.attention{background:#e6a23c;box-shadow:0 0 0 4px rgba(230,162,60,.1)}.system-policy-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.policy-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.system-admin-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:18px;align-items:start}.retention-form{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:10px 0 15px;border-bottom:1px solid var(--line)}.retention-form label{display:flex;align-items:center;gap:8px;color:var(--muted)}.retention-form input{width:80px}.backup-list{display:grid}.backup-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid #edf1f6}.backup-row:first-child{border-top:0}.backup-main{display:flex;align-items:center;gap:12px;min-width:0}.backup-icon{width:42px;height:42px;border-radius:13px;background:#eef8f5;color:var(--teal);display:grid;place-items:center;flex:0 0 auto}.backup-main>div{display:grid;gap:3px;min-width:0}.backup-main b{overflow-wrap:anywhere;color:var(--navy)}.backup-main small{color:var(--muted)}.backup-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.backup-actions form{margin:0}.backup-more{position:relative}.backup-more summary{list-style:none;cursor:pointer;padding:7px 10px;border:1px solid var(--line);border-radius:9px;font-size:12px;font-weight:750;color:#42536d}.backup-more summary::-webkit-details-marker{display:none}.backup-menu{position:absolute;right:0;top:calc(100% + 7px);z-index:8;width:280px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:grid;gap:10px}.restore-form{display:grid;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--line)}.restore-form label{display:grid;gap:5px;font-size:11px;color:var(--muted)}.maintenance-actions{display:grid;gap:10px}.maintenance-actions>form{padding:13px;border:1px solid var(--line);border-radius:14px;background:#fbfcfe;display:grid;gap:11px}.maintenance-actions>form>div{display:grid;gap:2px}.maintenance-actions small{color:var(--muted)}.maintenance-history{margin-top:18px}.maintenance-history h3{margin:0 0 8px;color:var(--navy);font-size:14px}.maintenance-run{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #edf1f6}.maintenance-run>div{display:grid;gap:2px}.maintenance-run small{color:var(--muted)}
.offline-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#fff,#f7f9fc)}.offline-card{width:min(460px,100%);padding:34px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.offline-icon{width:70px;height:70px;margin:0 auto 18px;border-radius:22px;background:linear-gradient(135deg,#e8faf7,#edf3ff);display:grid;place-items:center;color:var(--blue)}.offline-card h1{margin:0 0 8px;color:var(--navy);font-size:28px}.offline-card p{margin:0 auto 22px;color:var(--muted);max-width:360px}.offline-actions{display:flex;gap:9px;justify-content:center}.topbar [data-install-app][hidden]{display:none!important}
@media(max-width:1240px){.system-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-score-card{grid-column:1/-1}.system-admin-grid{grid-template-columns:1fr}.maintenance-card{order:-1}}
@media(max-width:980px){.system-layout{grid-template-columns:1fr}.system-policy-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-row{align-items:flex-start;flex-direction:column}.backup-actions{width:100%;justify-content:flex-start}}
@media(max-width:680px){.system-status-grid{grid-template-columns:1fr}.system-score-card{grid-column:auto}.system-policy-form .form-grid,.policy-switches{grid-template-columns:1fr}.retention-form{justify-content:flex-start;flex-wrap:wrap}.backup-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.backup-actions>.status,.backup-actions>.backup-more{grid-column:1/-1}.backup-actions .btn{width:100%}.backup-menu{position:static;width:100%;margin-top:8px}.offline-actions{flex-direction:column}.offline-actions .btn{width:100%}}
@media(max-width:414px){.system-score-card{align-items:flex-start;flex-direction:column}.system-score{width:76px;height:76px;border-radius:20px}.system-check-row{grid-template-columns:10px minmax(0,1fr)}.system-check-row>.status{grid-column:2;justify-self:start}.backup-actions{grid-template-columns:1fr}.backup-actions>.status,.backup-actions>.backup-more{grid-column:auto}.offline-card{padding:26px 20px}}
