@import url('https://fonts.googleapis.com/css2?family=Maven+Pro:wght@400;500;600;700&family=Poppins:wght@500;600;700;800&display=swap');
:root{--cream:#F6F3EE;--panel:#FFFFFF;--ink:#152242;--navy:#152242;--muted:#6D645A;--accent:#D1724C;--accent-dk:#B05C38;--tint:#F7E8DF;--line:#E6DFD4;--line2:#F1ECE4;--danger:#E25A4F;--danger-text:#B23A30;--danger-bg:#FBE9E6;--success-bg:#E6F1E7;--shadow:0 8px 30px rgba(21,34,66,.08);--sh-sm:0 2px 8px rgba(21,34,66,.06);--fh:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif;--fb:'Maven Pro',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--fb);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3,.val,.landing h1,.mhead h2,.suc h2{font-family:var(--fh)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}img{display:block;max-width:100%}.up{font-family:var(--fh);text-transform:uppercase;letter-spacing:.03em}
.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}
header{display:flex;align-items:center;gap:18px;padding:13px 20px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;z-index:20}
.brand{display:flex;align-items:center;gap:10px}.logo{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--accent),var(--accent-dk));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:19px}.brand h1{font-size:16px;font-weight:700}.brand p{font-size:11.5px;color:var(--muted);margin-top:1px}
.pw{display:flex;align-items:center;gap:9px;margin-left:6px}.pw .l{font-size:12px;color:var(--muted);font-weight:600}.seg{display:flex;background:var(--line2);border-radius:999px;padding:3px}.seg button{padding:7px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--muted);transition:.15s}.seg button.on{background:var(--panel);color:var(--ink);box-shadow:var(--sh-sm)}
.tot{margin-left:auto;display:flex;align-items:center;gap:14px}.tot .tb{text-align:right}.tot .lbl{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tot .val{font-size:23px;font-weight:800;letter-spacing:-.5px;line-height:1.1}.tot .val span{font-size:13px;font-weight:600;color:var(--muted)}.cta{background:var(--ink);color:#fff;padding:12px 20px;border-radius:11px;font-weight:700;font-size:13px}.cta:hover{background:#0E1830}
.main{display:grid;grid-template-columns:320px 1fr 330px;flex:1;min-height:0}
.catalog{background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.chead{padding:15px 18px 9px}.chead h2{font-size:14px;font-weight:700}.chead p{font-size:12px;color:var(--muted);margin-top:2px}.filters{display:flex;gap:7px;flex-wrap:wrap;padding:0 18px 11px}.chip{padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--muted);background:var(--line2)}.chip.on{background:var(--accent);color:#fff}.clist{overflow-y:auto;padding:4px 14px 20px;flex:1}
.card{display:flex;gap:12px;padding:10px;border-radius:14px;cursor:pointer}.card:hover{background:var(--line2)}.card .th{width:64px;height:64px;border-radius:11px;background:#fff center/contain no-repeat;flex:none;border:1px solid var(--line)}.card .in{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.card .nm{font-size:13.5px;font-weight:600;line-height:1.25}.card .tp{font-size:11px;color:var(--muted);margin-top:1px}.card .pr{font-size:13px;font-weight:700;color:var(--accent-dk);margin-top:5px}.card .pr small{font-weight:600;color:var(--muted);font-size:11px}.add{align-self:center;width:32px;height:32px;border-radius:10px;background:var(--ink);color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;flex:none;transition:.15s}.add:hover{background:var(--accent-dk);transform:scale(1.06)}
.center{display:flex;flex-direction:column;min-height:0;background:radial-gradient(circle at 30% 15%,#fff,var(--cream))}.rtabs-bar{display:flex;align-items:center;gap:8px;padding:11px 18px;flex-wrap:wrap;position:relative;z-index:10}.rtabs{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.rtab{display:flex;align-items:center;gap:7px;padding:7px 11px 7px 13px;border-radius:11px;background:var(--panel);border:1px solid var(--line);font-size:12.5px;font-weight:600;white-space:nowrap}.rtab:hover{border-color:var(--accent)}.rtab.on{border-color:var(--accent);background:var(--tint);color:var(--accent-dk)}.rtab .rc{font-size:10.5px;font-weight:700;background:var(--line2);color:var(--muted);border-radius:999px;padding:1px 6px;min-width:17px;text-align:center}.rtab.on .rc{background:var(--accent);color:#fff}.rtab .rx{font-size:13px;color:var(--muted);width:16px;height:16px;border-radius:5px;display:flex;align-items:center;justify-content:center}.rtab .rx:hover{background:var(--danger);color:#fff}
.roomview{flex:1;overflow-y:auto;padding:8px 24px 28px;min-height:0}.roomcard{max-width:900px;margin:0 auto 18px;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;transition:.15s}.roomcard.on{border-color:var(--accent);box-shadow:0 0 0 2px rgba(209,114,76,.22),var(--shadow)}.rc-head{padding:16px 20px;border-bottom:1px solid var(--line2);display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.rc-head .t{font-family:var(--fh);font-size:17px;font-weight:700;display:flex;align-items:center;gap:9px}.rc-act{font-size:10.5px;font-weight:700;color:#fff;background:var(--accent);border-radius:999px;padding:3px 10px;text-transform:uppercase;letter-spacing:.04em}.rc-head .hr{display:flex;align-items:center;gap:10px}.rc-head .s{font-size:13px;font-weight:700;color:var(--accent-dk)}.rc-del{font-size:11.5px;font-weight:700;color:var(--muted);border:1px solid var(--line);border-radius:8px;padding:5px 11px;background:var(--panel)}.rc-del:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.rc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;padding:20px}
.addcard{border:2px dashed var(--line);background:transparent;box-shadow:none;cursor:pointer;padding:30px 20px;text-align:center;color:var(--muted);border-radius:18px}
.addcard:hover{border-color:var(--accent);color:var(--accent-dk)}
.addcard .plus{width:46px;height:46px;border-radius:50%;border:1.5px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 10px}
.addcard .at{font-family:var(--fh);font-weight:700;font-size:15px}
.addcard .as{font-size:12.5px;margin-top:3px}
.addcard .types{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:6px}
.pcard{border:1px solid var(--line);border-radius:14px;overflow:hidden;position:relative;background:#fff;transition:.15s}.pcard:hover{box-shadow:var(--sh-sm);border-color:var(--accent)}
.pcard .rm{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.95);color:var(--muted);font-size:13px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:0 1px 3px rgba(0,0,0,.10);cursor:pointer;transition:.15s}.pcard .rm:hover{background:var(--danger);border-color:var(--danger);color:#fff}.ri .rm{width:26px;height:26px;flex:0 0 auto;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s}.ri .rm:hover{background:var(--danger);border-color:var(--danger);color:#fff}.pcard .im{height:120px;background:#fff center/contain no-repeat;border-bottom:1px solid var(--line2);cursor:zoom-in}.pcard .em{height:110px;display:flex;align-items:center;justify-content:center;font-size:46px;border-bottom:1px solid var(--line2);cursor:zoom-in;background:#fff}.pcard .bd{padding:9px 11px 11px}.pcard .n{font-size:12.5px;font-weight:600;line-height:1.25;min-height:31px}.pcard .p{font-size:12.5px;font-weight:700;color:var(--accent-dk);margin-top:4px}.pcard .qc{display:flex;align-items:center;gap:8px;margin-top:9px}.pcard .qb,.xrow .qb{width:24px;height:24px;border-radius:7px;background:var(--line2);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center}.pcard .qb:hover,.xrow .qb:hover{background:var(--accent);color:#fff}.pcard .qn,.xrow .qn{font-size:13px;font-weight:700;min-width:16px;text-align:center}.rc-empty{padding:40px 24px;text-align:center;color:var(--muted);font-size:13.5px;line-height:1.6}.rc-empty svg{opacity:.3;margin-bottom:8px}
.xsec{max-width:900px;margin:30px auto 0}.xsec-t{font-family:var(--fh);font-size:19px;font-weight:800;letter-spacing:-.3px}.xsec-s{font-size:12.5px;color:var(--muted);margin-top:2px}.xgrp{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--accent-dk);margin:18px 2px 10px}.xgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.xrows{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:10px}
.xrow{display:flex;align-items:center;gap:11px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 13px;transition:.15s}.xrow:hover{border-color:var(--accent)}.xrow.sel{border-color:var(--accent);background:var(--tint)}.xrow .xi{font-size:21px;flex:none}.xrow .xn{flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.25}.xrow .xp{font-size:11.5px;color:var(--accent-dk);font-weight:700;margin-top:2px}.xrow .qc{display:flex;align-items:center;gap:6px;flex:none}
.recap{background:var(--panel);border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.rhead{padding:15px 18px 8px;border-bottom:1px solid var(--line2)}.rhead h2{font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}.badge{background:var(--accent);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:2px 8px;min-width:20px;text-align:center}.rlist{overflow-y:auto;flex:1;padding:8px 12px}
.rr{display:flex;align-items:baseline;justify-content:space-between;margin:12px 6px 3px;gap:8px}.rr .n{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.rr .s{font-size:11.5px;font-weight:700;color:var(--accent-dk);white-space:nowrap}.rr:first-child{margin-top:2px}.re{font-size:11.5px;color:var(--muted);margin:0 6px 6px;font-style:italic}.ri{display:flex;align-items:center;gap:10px;padding:8px;border-radius:11px}.ri:hover{background:var(--line2)}.ri .t{width:40px;height:40px;border-radius:9px;background:#fff center/contain no-repeat;flex:none;border:1px solid var(--line)}.ri .n{flex:1;min-width:0}.ri .n a{font-size:12.5px;font-weight:600;line-height:1.2;color:var(--ink);text-decoration:none;display:block;cursor:pointer}.ri .n a:hover{color:var(--accent-dk);text-decoration:underline}.ri .n .p{font-size:11px;color:var(--muted);margin-top:2px}.rempty{padding:40px 24px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5}
.sum{border-top:1px solid var(--line);padding:14px 18px 16px}.srow{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin-bottom:7px;color:var(--muted)}.srow.big{color:var(--ink);font-size:15px;font-weight:700;margin-top:10px;padding-top:12px;border-top:1px dashed var(--line)}.srow.big .amt{font-size:22px;font-weight:800;letter-spacing:-.5px}.srow .amt{font-weight:700;color:var(--ink)}.bn{font-size:11px;color:var(--muted);margin-top:2px}.fin{width:100%;margin-top:12px;background:var(--accent);color:#fff;padding:13px;border-radius:12px;font-weight:700;font-size:14px;text-align:center}.fin:hover{background:var(--accent-dk)}.clr{width:100%;margin-top:8px;font-size:12px;color:var(--muted);padding:6px}.clr:hover{color:var(--danger-text)}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;background:var(--ink);color:#fff;padding:11px 20px;border-radius:12px;font-size:13px;font-weight:600;box-shadow:var(--shadow);pointer-events:none;transition:.3s;z-index:400}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.landing{position:fixed;inset:0;z-index:200;overflow:auto;padding:34px 24px;background:radial-gradient(circle at 72% 12%,#fff,var(--cream));display:flex;align-items:center;justify-content:center}.li{max-width:780px;text-align:center;width:100%}.li .crumb{font-size:12px;color:var(--muted);font-weight:600;margin-bottom:22px}.li .crumb span{margin:0 7px;opacity:.6}.li .crumb b{color:var(--accent-dk)}.li .lr{display:inline-flex;align-items:center;gap:11px;margin-bottom:24px}.li .lr .logo{width:38px;height:38px;font-size:21px}.li .lr span{font-size:18px;font-weight:800}.li .eb{font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.li h1{font-size:44px;font-weight:800;letter-spacing:-1.4px;line-height:1.05}.li p{font-size:16px;color:var(--muted);line-height:1.6;max-width:580px;margin:20px auto 0}.lcta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}.lp{background:var(--accent);color:#fff;padding:16px 32px;border-radius:14px;font-size:16px;font-weight:800;box-shadow:0 12px 30px rgba(209,114,76,.32)}.lp:hover{background:var(--accent-dk);transform:translateY(-2px)}.ls{background:var(--panel);border:1px solid var(--line);color:var(--ink);padding:16px 26px;border-radius:14px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center}.ls:hover{border-color:var(--accent)}.lfeat{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;margin-top:26px;font-size:13px;color:var(--muted);font-weight:600}.lthumbs{display:flex;gap:13px;justify-content:center;margin-top:40px;flex-wrap:wrap}.lthumbs .lt{width:104px;height:104px;border-radius:16px;background:#fff center/contain no-repeat;border:1px solid var(--line);box-shadow:var(--sh-sm)}
.qdots{display:flex;gap:7px;justify-content:center;margin-bottom:22px}.qdot{width:9px;height:9px;border-radius:50%;background:var(--line)}.qdot.on{background:var(--accent)}
.qwrap{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:24px}.qwrap .rtab{font-size:14px;padding:11px 16px}
.qmoods{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:24px}
.mood{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 12px;text-align:center;transition:.15s}
.mood:hover{border-color:var(--accent)}.mood.on{border-color:var(--accent);background:var(--tint);box-shadow:0 0 0 2px rgba(209,114,76,.2)}
.mood.pack{padding:12px}.mood .mimg{height:96px;border-radius:12px;background:#fff center/contain no-repeat;border:1px solid var(--line);margin-bottom:8px}
.mood .mi{font-size:30px}.mood .mn{font-family:var(--fh);font-weight:700;font-size:14px;margin-top:8px}.mood .md{font-size:11.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.qform{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.qform input{font-family:inherit;font-size:14px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink)}
.qform input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(209,114,76,.16)}
@media(max-width:560px){.qform{grid-template-columns:1fr}}
@keyframes qp{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.85}}
.qspin .logo{animation:qp 1.2s ease-in-out infinite}
.qbar{width:260px;height:6px;border-radius:99px;background:var(--line2);margin:24px auto 0;overflow:hidden}
.qbar-i{height:100%;border-radius:99px;background:var(--accent);animation:qb 3.2s ease forwards}
@keyframes qb{0%{width:5%}60%{width:64%}100%{width:100%}}
.mov{position:fixed;inset:0;background:rgba(21,34,66,.5);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:300;padding:24px}.mov.open{display:flex}.modal{background:var(--panel);border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.3);width:100%;max-width:640px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;position:relative;overflow:hidden}.mx{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:10px;background:var(--line2);font-size:16px;color:var(--muted);display:flex;align-items:center;justify-content:center;z-index:3}.mx:hover{background:var(--danger);color:#fff}.mhead{padding:24px 26px 16px;border-bottom:1px solid var(--line2)}.mhead h2{font-size:19px;font-weight:800}.mhead p{font-size:13px;color:var(--muted);margin-top:3px}.mrec{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.mchip{background:var(--line2);border-radius:10px;padding:8px 12px;font-size:12px;color:var(--muted);font-weight:600}.mchip b{display:block;font-size:15px;color:var(--ink);font-weight:800;margin-top:1px}.mchip.ac{background:var(--tint)}.mchip.ac b{color:var(--accent-dk)}
#mForm{display:flex;flex-direction:column;min-height:0}#mStep1,#propForm{display:flex;flex-direction:column;min-height:0}
.mbody{overflow-y:auto;padding:20px 26px 24px}.irec{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:12px}.iroom{background:var(--line2);padding:7px 13px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;display:flex;justify-content:space-between}.iroom span{color:var(--accent-dk)}.iit{display:flex;align-items:center;gap:10px;padding:8px 13px;border-top:1px solid var(--line2);font-size:13px}.iit .t{width:34px;height:34px;border-radius:8px;background:#fff center/contain no-repeat;border:1px solid var(--line);flex:none}.iit .n{flex:1;min-width:0}.iit .q{color:var(--muted);font-size:11.5px}.iit .p{font-weight:700;white-space:nowrap}.call{display:flex;gap:11px;align-items:flex-start;background:var(--tint);border:1px solid #EBD6C7;border-radius:12px;padding:12px 14px;font-size:12.5px;line-height:1.5;color:#8A5545}.call .ic{font-size:18px;flex:none}.call b{color:var(--ink);font-weight:700}
.rp-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px;background:var(--cream);text-align:left}
.rp-h{font-size:13px;margin-bottom:9px}
.rp-ctl{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.rp-file{font-size:12px;max-width:100%}
.rp-gen{background:var(--ink);color:#fff;padding:9px 14px;border-radius:10px;font-weight:700;font-size:12px}
.rp-gen:hover{background:#0E1830}.rp-gen:disabled{opacity:.55;cursor:wait}
.rp-prev,.rp-out{max-width:100%;border-radius:10px;border:1px solid var(--line);margin-top:10px}
.rp-status{font-size:12px;color:var(--muted);margin-top:8px}
.fsec{margin-bottom:18px}.fsec h3{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--accent-dk);margin-bottom:11px}.frow{display:flex;gap:12px;flex-wrap:wrap}.fld{flex:1;min-width:150px;margin-bottom:12px;display:flex;flex-direction:column}.fld.full{flex-basis:100%}.fld.sm{flex:0 0 130px;min-width:110px}.fld label{font-size:12px;font-weight:600;margin-bottom:5px}.fld label .rq{color:var(--danger-text)}.fld input,.fld select,.fld textarea{font-family:inherit;font-size:13.5px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--cream);color:var(--ink);width:100%}.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px rgba(209,114,76,.16)}.fld textarea{resize:vertical;min-height:64px}
.sr{display:flex;gap:8px;flex-wrap:wrap}.sr label{display:flex;align-items:center;gap:6px;padding:9px 13px;border:1px solid var(--line);border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;background:var(--cream);margin:0}.sr label:hover{border-color:var(--accent)}.sr input{display:none}.sr label:has(input:checked){border-color:var(--accent);background:var(--tint);color:var(--accent-dk)}.chk{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:var(--muted);line-height:1.45;margin-top:2px}.chk input{width:16px;height:16px;margin-top:1px;flex:none;accent-color:var(--accent)}.mfoot{padding:16px 26px 22px;border-top:1px solid var(--line2)}.subm{width:100%;background:var(--accent);color:#fff;padding:14px;border-radius:12px;font-weight:800;font-size:15px}.subm:hover{background:var(--accent-dk)}.subm:disabled{opacity:.55;cursor:wait}.fnote{font-size:11px;color:var(--muted);text-align:center;margin-top:9px}
.suc{text-align:center;padding:40px 30px}.suc .ci{width:66px;height:66px;border-radius:50%;background:#EAF6EC;color:#2E9E4F;display:flex;align-items:center;justify-content:center;font-size:34px;margin:0 auto 18px}.suc h2{font-size:22px;font-weight:800}.suc p{font-size:14px;color:var(--muted);margin-top:8px;line-height:1.5;max-width:430px;margin:8px auto 0}.suc .ref{display:inline-block;margin-top:16px;background:var(--line2);border-radius:10px;padding:9px 16px;font-size:13px;font-weight:700}.suc .ref span{color:var(--accent-dk)}.suc .srec{margin-top:22px;text-align:left;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:16px 18px}.suc .srec .l{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px;color:var(--muted)}.suc .srec .l b{color:var(--ink)}.suc .srec .tt{border-top:1px dashed var(--line);margin-top:8px;padding-top:10px;font-size:15px;font-weight:800;color:var(--ink)}.suc .c2{margin-top:22px;background:var(--ink);color:#fff;padding:12px 26px;border-radius:11px;font-weight:700;font-size:14px}
.vph{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--accent-dk);margin:28px 0 6px;text-align:left}
.vps{font-size:12px;color:var(--muted);margin-bottom:10px;text-align:left}
.modal.pd{max-width:880px}.pdwrap{display:flex;min-height:0;max-height:calc(100vh - 48px)}.pd-left{flex:1;background:#fff;padding:26px;display:flex;flex-direction:column;gap:12px;border-right:1px solid var(--line2);min-width:0}.pd-img{flex:1;min-height:300px;background:#fff center/contain no-repeat}.pd-thumbs{display:flex;gap:8px;flex-wrap:wrap}.pd-th{width:52px;height:52px;border:1px solid var(--line);border-radius:9px;background:#fff center/contain no-repeat;cursor:pointer}.pd-th.on{border-color:var(--accent);box-shadow:0 0 0 2px rgba(209,114,76,.2)}.pd-right{flex:1;padding:26px;overflow-y:auto;min-width:0}.pd-cat{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--accent-dk)}.pd-right h2{font-size:21px;font-weight:800;letter-spacing:-.3px;margin:6px 0 13px}.pd-prices{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.pd-pr{border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:11.5px;color:var(--muted);font-weight:600}.pd-pr b{display:block;font-size:13.5px;color:var(--ink);margin-top:1px}.pd-pr.on{border-color:var(--accent);background:var(--tint)}.pd-pr.on b{color:var(--accent-dk)}.pd-desc{font-size:13.5px;line-height:1.65;color:#3E3832;margin-bottom:16px}.pd-desc p{margin-bottom:8px}.pd-desc ul{margin:6px 0 8px 18px}.pd-desc img{display:none}.pd-link{display:block;text-align:center;margin-top:11px;font-size:12.5px;color:var(--muted);text-decoration:underline}
@media(max-width:1080px){.main{grid-template-columns:270px 1fr 300px}}@media(max-width:900px){.main{grid-template-columns:1fr;grid-template-rows:auto auto auto;overflow-y:auto}.app{height:auto;min-height:100vh;overflow:auto}.catalog,.recap{border:none;border-bottom:1px solid var(--line)}.clist{max-height:320px}.li h1{font-size:32px}.pdwrap{flex-direction:column;overflow-y:auto}.pd-left{border-right:none;border-bottom:1px solid var(--line2)}.pd-img{min-height:220px}}
input[type=range]{-webkit-appearance:none;appearance:none;height:6px;border-radius:99px;background:var(--line);outline:none;accent-color:var(--accent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25)}input[type=range]::-moz-range-thumb{width:18px;height:18px;border:none;border-radius:50%;background:var(--accent);cursor:pointer}.dursl{display:flex;align-items:center;gap:11px}.dursl input[type=range]{width:150px}.dur-val{font-size:14px;font-weight:800;color:var(--ink);min-width:70px;font-family:var(--fh)}.langsw{display:inline-flex;gap:2px;background:var(--line2);border-radius:999px;padding:3px;vertical-align:middle}.langsw .langbtn{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;color:var(--muted);font-family:var(--fh);letter-spacing:.02em}.langsw .langbtn.on{background:var(--panel);color:var(--ink);box-shadow:var(--sh-sm)}.langsw-c{position:fixed;top:16px;right:18px;z-index:210}.ic{width:15px;height:15px;flex:none;display:inline-block;vertical-align:-2px}.rtab .ic{width:14px;height:14px}.rc-head .t .ic,.rr .n .ic{width:16px;height:16px}.iroom .ic{width:14px;height:14px;vertical-align:-2px}.pcard .em .ic{width:34px;height:34px;color:var(--muted)}.xrow .xi .ic{width:20px;height:20px;color:var(--accent-dk)}.ri .t .ic,.iit .t .ic{width:20px;height:20px;color:var(--muted)}.pd-img .ic{width:84px;height:84px;color:var(--line)}.lfeat .ic{width:16px;height:16px;vertical-align:-3px;margin-right:3px;color:var(--accent-dk)}.call .ic{width:17px;height:17px}.suc .ci .ic{width:30px;height:30px}.logo-img{height:26px;width:auto;display:block}.li .lr .logo-img{height:40px}.pbanner{background:var(--tint);color:var(--accent-dk);font-size:12.5px;font-weight:600;padding:9px 20px;text-align:center;border-bottom:1px solid #EBD6C7}.phint{font-weight:400;color:var(--muted);font-size:11px}
/* --- Curseur de duree plus lisible + langues a droite --- */
header .pw{background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:7px 16px;margin-left:14px}
header .pw .l{font-size:11px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.06em}
header .dursl input[type=range]{width:180px}
input[type=range]{height:8px}
input[type=range]::-webkit-slider-thumb{width:20px;height:20px;box-shadow:0 0 0 3px #fff,0 2px 6px rgba(21,34,66,.30)}
input[type=range]::-moz-range-thumb{width:20px;height:20px;box-shadow:0 0 0 3px #fff,0 2px 6px rgba(21,34,66,.30)}
.dur-val{font-size:15px;font-weight:800;color:var(--accent);min-width:78px}
header .langsw{margin-left:auto;margin-right:16px}
header .tot{margin-left:0}
.senderr{background:var(--danger-bg);border:1px solid var(--danger);color:var(--danger-text);border-radius:10px;padding:11px 14px;font-size:13px;line-height:1.5;margin-bottom:11px;text-align:left}.senderr a{color:var(--danger-text);font-weight:700}.subm:disabled{opacity:.6;cursor:wait}

/* --- Barre fixe sur mobile : la selection et le total restent visibles --- */
.mbar{display:none}
.shrow{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.shr{flex:1 1 140px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 10px;font-size:12px;font-weight:700;color:var(--ink);line-height:1.25}
.shr:hover{border-color:var(--accent);color:var(--accent-dk)}
.shrout{flex:1 1 100%;margin-top:8px;font-size:11px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--cream);color:var(--muted);font-family:inherit}
@media(max-width:900px){
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:250;display:flex;align-items:center;gap:12px;padding:10px 16px;padding-bottom:calc(10px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(21,34,66,.12)}
.mbar-l{flex:1;min-width:0;text-align:left}
.mbar-l .c{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.mbar-l .t{display:block;font-family:var(--fh);font-size:20px;font-weight:800;color:var(--ink);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mbar-r{flex:0 0 auto;background:var(--accent);color:#fff;padding:13px 22px;border-radius:12px;font-weight:800;font-size:14px}
.mbar-r:active{background:var(--accent-dk)}
.app{padding-bottom:84px}
.toast{bottom:96px}
}
