/* CORAL DINING V3 — product prototype. No framework dependency. */
:root{--ink:#16353a;--muted:#7c8c8c;--muted2:#9caaa7;--navy:#0c2d34;--navy2:#17434a;--teal:#166e70;--teal2:#0f595a;--sea:#dcf2ee;--mint:#e7f6ee;--sand:#f6f3ed;--cream:#fbfaf7;--gold:#d7aa70;--goldp:#fff2de;--red:#cb6753;--redp:#fff0eb;--line:#e8eae5;--white:#fff;--shadow:0 14px 42px rgba(31,52,49,.075);--serif:'Playfair Display',Georgia,serif;--sans:'Manrope','DM Sans',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f9f7;font-family:var(--sans);font-size:13px;color:var(--ink);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}h1,h2,h3,h4,p{margin:0}a{color:inherit}img{display:block;object-fit:cover}.ico{display:inline-block;vertical-align:middle;flex:none;width:19px;height:19px;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;fill:none}.icon-16{width:16px;height:16px}.icon-14{width:14px;height:14px}.icon-22{width:22px;height:22px}.icon-25{width:25px;height:25px}.icon-28{width:28px;height:28px}.hidden{display:none!important}.text-muted{color:var(--muted)}.section-caption{font-size:10px;letter-spacing:2.6px;text-transform:uppercase;font-weight:800;color:#ba8b56}.overline{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border-radius:12px;font-weight:800;font-size:12px;white-space:nowrap;transition:.18s ease;outline-offset:3px}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 8px 23px #0b606326}.btn-primary:hover{background:var(--teal2)}.btn-dark{background:var(--navy);color:white}.btn-dark:hover{background:#18454c}.btn-light{background:white;color:var(--ink);border:1px solid var(--line)}.btn-soft{background:#e7f4f0;color:#176367}.btn-gold{background:var(--gold);color:#192f33}.btn-danger{background:var(--redp);color:#b25143}.btn-ghost{background:transparent;color:var(--ink)}.btn-sm{padding:9px 12px;font-size:11px;border-radius:9px}.btn-lg{padding:16px 24px;font-size:13px;border-radius:14px}.btn-square{padding:0;width:42px;height:42px}.btn-full{width:100%}.btn-icon{border:1px solid var(--line);color:var(--ink);background:white;width:39px;height:39px;display:grid;place-items:center;border-radius:11px}.btn-icon:hover{background:#f3f7f4}.pill{display:inline-flex;align-items:center;gap:7px;background:#eef4ef;border:1px solid #e2eee7;border-radius:100px;font-size:10px;letter-spacing:.2px;padding:7px 10px;font-weight:800;color:#41756d;white-space:nowrap}.pill.success{background:#e8f6ee;color:#287950;border-color:#dcf1e4}.pill.warning{background:#fff2de;color:#b47a32;border-color:#f6e9cf}.pill.info{background:#e4f2f5;color:#2c7a89;border-color:#dcebed}.pill.gray{background:#f1f2f0;color:#72817e;border-color:#e6ebe7}.pill.danger{background:#fff0ed;color:#b85c4b;border-color:#f5e2dd}.panel{background:white;border:1px solid #e9ece9;border-radius:20px;box-shadow:0 8px 29px rgba(26,53,54,.027)}.row{display:flex;align-items:center;gap:12px}.split{display:flex;align-items:center;justify-content:space-between;gap:14px}.muted{color:var(--muted)}.subtle{color:#9aa8a4}.tiny{font-size:10px}.small{font-size:11px}.divider{height:1px;background:var(--line);margin:18px 0}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#38b98c;box-shadow:0 0 0 3px #38b98c23}.text-right{text-align:right}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--muted);padding:42px 18px}.empty-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:19px;color:#5f8581;background:#edf5f1}.empty strong{font-size:15px;color:var(--ink)}.empty p{max-width:280px;line-height:1.6;font-size:12px}.input,.select,.textarea{width:100%;min-height:44px;background:#fff;border:1px solid #e3e8e6;border-radius:11px;padding:11px 13px;color:var(--ink);outline:0;transition:border .2s,box-shadow .2s}.input:focus,.select:focus,.textarea:focus{border-color:#5ba4a0;box-shadow:0 0 0 3px #1f817d17}.textarea{min-height:92px;resize:vertical}.field{display:flex;flex-direction:column;gap:7px}.field>label,.field-label{font-size:11px;color:#526763;font-weight:800}.field-note{font-size:10px;color:#9aa6a2}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.search-input{position:relative}.search-input .ico{position:absolute;top:50%;left:15px;transform:translateY(-50%);color:#8f9e99}.search-input .input{padding-left:44px}.switch{display:inline-flex;align-items:center;gap:9px;cursor:pointer;user-select:none}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch-track{width:38px;height:22px;background:#cbd6d1;display:inline-flex;align-items:center;padding:3px;border-radius:40px;transition:.2s;flex:none}.switch-track::before{content:"";height:16px;width:16px;background:white;border-radius:50%;box-shadow:0 2px 4px #0002;transition:.2s}.switch input:checked+.switch-track{background:#177c77}.switch input:checked+.switch-track::before{transform:translateX(16px)}.switch input:focus-visible+.switch-track{outline:3px solid #86aeb1}.switch-text{font-size:11px;font-weight:700;color:#627772}
/* persistent demo mode top line */
.demo-bar{position:sticky;top:0;z-index:70;height:41px;background:#092e35;color:#d7e9e5;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(16px,3vw,44px);gap:10px}.demo-meta{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.35px}.demo-meta strong{color:#e3b980}.demo-meta .ico{color:#dfbe88}.role-buttons{display:flex;align-items:center;gap:5px}.role-buttons button{border:0;color:#c2dad7;padding:7px 11px;font-size:10px;font-weight:800;border-radius:7px;background:transparent;white-space:nowrap}.role-buttons button:hover{background:#21474d}.role-buttons button.active{background:#f7faf6;color:#14363b}.demo-mobile-role{display:none;background:#173f44;color:white;border:1px solid #36646a;border-radius:7px;padding:7px;font-size:11px}
/* guest layout */
.guest-shell{min-height:calc(100vh - 41px);background:radial-gradient(ellipse at 80% 0%,#f7faf5 0,transparent 40%),#fbfaf8}.guest-header{height:85px;display:flex;align-items:center;position:sticky;top:41px;z-index:35;background:#fffc;border-bottom:1px solid #ecefe8;backdrop-filter:blur(18px)}.guest-nav-wrap{max-width:1300px;width:100%;margin:auto;padding:0 24px;display:flex;align-items:center;gap:35px}.brand-logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;flex:none}.logo-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:50%;border:1px solid #d5b486;color:#ab854f;background:linear-gradient(155deg,#fffefa,#f5eee0)}.logo-copy strong{display:block;font:700 21px/1.07 var(--serif);letter-spacing:1.25px;color:#163b3d}.logo-copy small{display:block;font-size:8px;letter-spacing:3.2px;font-weight:800;color:#ae925f;margin-top:5px}.guest-links{display:flex;gap:27px;align-items:center;margin-left:60px}.guest-links button{background:transparent;border:0;font-size:12px;font-weight:800;color:#748782;padding:15px 0;position:relative}.guest-links button:hover,.guest-links button.selected{color:#174d53}.guest-links button.selected:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#b89360;border-radius:20px}.guest-nav-right{margin-left:auto;display:flex;gap:14px;align-items:center}.guest-context{font-size:11px;color:#657c78;display:flex;align-items:center;gap:7px}.guest-context strong{color:#265d5e}.cart-trigger{background:#0f5558;color:#fff;border:none;border-radius:12px;display:flex;align-items:center;gap:10px;height:45px;padding:0 16px;font-weight:800;font-size:12px;box-shadow:0 7px 18px #13565724}.cart-bubble{background:#d6af76;color:#102e32;font-size:10px;min-width:20px;height:20px;display:grid;place-items:center;border-radius:50%}.guest-wrap{max-width:1300px;margin:0 auto;padding:31px 24px 68px}.guest-breadcrumb{font-size:11px;color:#94a19d;display:flex;align-items:center;gap:8px;margin:5px 0 21px}.guest-breadcrumb strong{color:#3f6260}.guest-hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:386px;border-radius:24px;background:#10353b;overflow:hidden;box-shadow:0 25px 55px #123f4720}.hero-left{position:relative;padding:52px clamp(30px,4.9vw,76px);background:radial-gradient(circle at 15% 25%,#1d535a 0%,transparent 48%),linear-gradient(120deg,#143c42,#092e36);color:white;overflow:hidden}.hero-left::after{content:"";position:absolute;bottom:-146px;right:-96px;width:340px;height:340px;border:1px solid #ffffff1b;border-radius:50%;box-shadow:0 0 0 60px #ffffff04,0 0 0 120px #ffffff04}.hero-left>*{position:relative;z-index:1}.hero-eyebrow{display:flex;align-items:center;gap:10px;letter-spacing:2.3px;text-transform:uppercase;font-size:9.5px;font-weight:800;color:#dbba89;margin-bottom:24px}.hero-eyebrow span{width:22px;height:1px;background:#e2b879}.hero-left h1{font:500 clamp(34px,4vw,52px)/1.15 var(--serif);letter-spacing:-1.9px;margin-bottom:18px;max-width:520px}.hero-left h1 em{color:#d8b27d;font-style:italic}.hero-left p{color:#c5d9d5;line-height:1.77;max-width:380px;font-size:12px;margin-bottom:26px}.hero-left .btn{background:#f4f0e5;color:#163c3f}.hero-left .btn:hover{background:white}.hero-photo{position:relative;min-height:340px;background:#b2bbb5}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#102c32a6,transparent 52%)}.hero-card{position:absolute;bottom:24px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:15px;color:white;z-index:1}.hero-card small{display:block;color:#f3d4a2;text-transform:uppercase;letter-spacing:2px;font-size:9px;font-weight:800;margin-bottom:7px}.hero-card strong{font-size:16px}.hero-card span{font-size:11px;color:#e7eee7}.hero-rating{background:#ffffffee;color:#255c57;border-radius:11px;padding:10px 13px;white-space:nowrap;font-weight:800;font-size:11px}.hero-rating .ico{color:#ce9755}.guest-benefits{margin:22px 0 45px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.benefit{display:flex;align-items:center;gap:13px;padding:13px 17px}.benefit-ico{width:38px;height:38px;display:grid;place-items:center;background:#eaf4ee;border-radius:13px;color:#277b74}.benefit strong{display:block;font-size:11px;margin-bottom:4px}.benefit span{color:#90a19b;font-size:10px}.guest-section-header{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}.guest-section-header h2{font:600 clamp(27px,3vw,34px)/1.15 var(--serif);letter-spacing:-.8px;margin:10px 0 7px}.guest-section-header p{color:#8b9995;font-size:12px}.dish-filter{display:flex;align-items:center;gap:12px}.dish-filter .search-input{width:265px}.dish-filter .input{min-height:44px}.dish-filter .select{width:155px}.category-rail{display:flex;gap:10px;overflow-x:auto;padding:0 1px 6px;margin-bottom:24px;scrollbar-width:thin}.category-chip{border:1px solid #e4ebe5;background:#fff;border-radius:12px;padding:12px 17px;display:flex;align-items:center;gap:9px;font-weight:800;font-size:11px;color:#71827e;white-space:nowrap;flex:none}.category-chip:hover{border-color:#accfc2}.category-chip.active{background:#143f42;color:white;border-color:#143f42;box-shadow:0 7px 18px #113f421f}.category-chip .ico{width:17px;height:17px}.dishes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.dish-card{background:#fff;border:1px solid #ebede9;border-radius:18px;overflow:hidden;box-shadow:0 5px 15px #082e3209;display:flex;flex-direction:column;min-width:0;transition:box-shadow .2s,transform .2s}.dish-card:hover{transform:translateY(-3px);box-shadow:0 17px 38px #173d3819}.dish-cover{height:181px;position:relative;overflow:hidden;background:#eaf1ec;cursor:pointer}.dish-cover img{height:100%;width:100%;transition:transform .4s}.dish-card:hover .dish-cover img{transform:scale(1.055)}.dish-cover .food-label{position:absolute;top:13px;left:13px;background:#fffefaed;box-shadow:0 3px 9px #0001;color:#786346;font-size:9px;font-weight:800;padding:7px 10px;border-radius:8px;display:flex;gap:4px;align-items:center}.unavailable-mask{position:absolute;inset:0;background:#082f36ba;display:grid;place-items:center;color:white;font-weight:800;font-size:14px}.dish-info{padding:17px 17px 16px;flex:1;display:flex;flex-direction:column}.dish-cat{color:#b1956d;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;font-weight:800;margin-bottom:7px}.dish-name{font-size:15px;letter-spacing:-.4px;font-weight:800;line-height:1.35;margin-bottom:6px}.dish-desc{color:#899894;font-size:11px;line-height:1.6;min-height:50px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dish-meta{display:flex;align-items:center;gap:12px;color:#91a09a;font-size:10px;margin-top:12px}.dish-meta .ico{width:13px;height:13px}.dish-buy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:18px}.dish-price{font-size:17px;font-weight:800;letter-spacing:-.7px;color:#173c3c}.dish-price small{display:block;font-weight:600;letter-spacing:0;font-size:9px;color:#9aa8a1;margin-top:2px}.dish-add{border:0;border-radius:11px;background:#e8f3ef;color:#195f61;width:39px;height:39px;display:grid;place-items:center}.dish-add:hover{background:#17696b;color:white}.guest-footer{text-align:center;margin-top:44px;padding:19px;color:#a0aca6;font-size:10px;line-height:1.6;border-top:1px solid #edf0ea}.mobile-cart{display:none}
/* modal & cart */
.backdrop{position:fixed;inset:0;background:#0b2328a8;z-index:90;display:flex;justify-content:center;align-items:center;padding:20px;backdrop-filter:blur(5px)}.drawer-bg{justify-content:flex-end;padding:0}.drawer{width:min(460px,100%);height:100%;background:#fff;box-shadow:-20px 0 60px #071d2740;display:flex;flex-direction:column;animation:slidein .2s ease-out}.drawer-head{padding:24px 26px 21px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.drawer-head h2{font-size:19px;letter-spacing:-.5px}.drawer-head p{font-size:11px;color:#91a09c;margin-top:5px}.drawer-body{overflow:auto;flex:1;padding:22px 25px}.drawer-footer{padding:20px 25px 25px;border-top:1px solid var(--line);background:#fbfcfa}.cart-product{display:flex;gap:13px;padding:16px 0;border-bottom:1px solid #edf1ed}.cart-product>img{width:75px;height:78px;border-radius:12px}.cart-product-info{flex:1;min-width:0}.cart-product-info strong{font-size:12px}.cart-product-info p{color:#91a19b;font-size:10px;line-height:1.5;margin-top:4px}.cart-product .price{font-weight:800;font-size:12px;margin-top:7px}.qty-control{display:inline-flex;align-items:center;gap:12px;background:#f2f6f3;border-radius:9px;padding:4px 5px;font-weight:800}.qty-control button{width:25px;height:25px;display:grid;place-items:center;border:0;background:white;border-radius:7px;color:#1e6466}.qty-control span{min-width:11px;text-align:center}.price-line{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#6d807b;padding:8px 0}.price-line strong{color:#193b3e}.price-line.final{font-size:16px;font-weight:800;margin:8px 0 14px}.price-line.final strong{font-size:21px}.drawer-stage{display:flex;align-items:center;gap:9px;margin-bottom:24px;font-size:10px;color:#94a29c}.stage-num{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#f0f3f0;font-weight:800;color:#708b84}.stage-num.active{background:#176a6b;color:white}.modal-card{background:white;border-radius:22px;width:min(840px,100%);overflow:hidden;box-shadow:0 35px 95px #071c294a;max-height:95vh;display:flex;flex-direction:column;animation:rise .18s ease-out}.modal-head{padding:21px 26px;border-bottom:1px solid #edf0e9;display:flex;justify-content:space-between;align-items:center;gap:15px}.modal-head h2{font-size:17px;letter-spacing:-.4px}.modal-head p{color:#91a09b;font-size:11px;margin-top:3px}.modal-body{overflow-y:auto;padding:25px 26px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #edf0e9;padding:18px 25px;background:#fafbf9}.product-detail{display:grid;grid-template-columns:1fr 1.1fr;max-height:80vh;width:min(840px,100%)}.detail-photo{position:relative;background:#ecf1e9;min-height:440px}.detail-photo img{height:100%;width:100%;position:absolute;inset:0}.detail-content{padding:28px 30px;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.detail-content h2{font:600 27px var(--serif);margin:12px 0}.detail-content p{line-height:1.65;color:#7c8d88;font-size:12px}.detail-close{position:absolute;top:14px;right:14px;z-index:1;background:white}.option-list{margin-top:19px;display:grid;gap:10px}.option-line{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e8eee8;border-radius:10px;cursor:pointer}.option-line input{accent-color:#0f7374}.option-line span{flex:1;font-size:11px;font-weight:700}.option-line strong{font-size:11px}.detail-actions{margin-top:auto;padding-top:20px}.detail-actions .btn{flex:1}.detail-total{display:block;font-size:20px;font-weight:800}.detail-total small{display:block;font-size:9px;color:#9bad9f}.notice{background:#edf6f3;border:1px solid #deeeea;color:#28686a;padding:13px;border-radius:10px;font-size:11px;line-height:1.55}.receipt-icon{width:85px;height:85px;border-radius:50%;background:#e4f7ea;color:#21966c;display:grid;place-items:center;margin:0 auto 18px}.receipt-head{text-align:center;padding:25px 18px}.receipt-head h2{font:600 31px var(--serif);margin:10px 0}.receipt-head p{color:#8c9995;font-size:12px}.tracking{max-width:940px;margin:0 auto;padding:35px 0 55px}.track-card{padding:32px 40px;position:relative;overflow:hidden}.track-label{font-size:10px;letter-spacing:1.7px;color:#bd9467;text-transform:uppercase;font-weight:800}.track-id{font-size:48px;font-weight:800;letter-spacing:-2px;margin:8px 0}.track-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:40px 0 34px;position:relative}.track-steps:before{content:"";height:2px;background:#e5ebe8;position:absolute;top:20px;left:10%;right:10%}.track-step{position:relative;display:flex;align-items:center;flex-direction:column;gap:9px;text-align:center;color:#9aa8a3}.track-round{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#f1f4f1;border:4px solid white;box-shadow:0 0 0 1px #e8eee8;z-index:1;color:#a2b0aa}.track-step.complete .track-round{background:#2c9273;color:white}.track-step.current .track-round{background:#143f43;color:white;box-shadow:0 0 0 4px #d5efe4}.track-step strong{font-size:11px;color:#849792}.track-step.current strong,.track-step.complete strong{color:#1c5553}.track-step small{font-size:10px}.tracking-items{padding:19px 25px;margin-top:18px}.tracking-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.tracking-item:last-child{border:0}.tracking-item img{width:55px;height:55px;border-radius:10px}.tracking-item strong{font-size:12px}.tracking-item small{display:block;color:#9ba7a3;margin-top:5px;font-size:10px}.tracking-item b{margin-left:auto;font-size:12px}.tracking-footer{display:flex;gap:9px;justify-content:center;margin-top:25px}
/* staff application */
.staff-shell{min-height:calc(100vh - 41px);display:flex;background:#f6f8f6}.staff-side{background:#0d3037;color:#ecf6f2;width:245px;flex:0 0 245px;min-height:calc(100vh - 41px);position:sticky;top:41px;height:calc(100vh - 41px);display:flex;flex-direction:column;padding:26px 15px 15px}.staff-side .brand-logo{padding:0 12px 34px}.staff-side .logo-icon{width:40px;height:40px;background:#173f43;border-color:#3a6260;color:#dab989}.staff-side .logo-copy strong{color:white;font-size:17px}.staff-side .logo-copy small{font-size:7px;color:#c7a271}.staff-section-name{margin:8px 13px 12px;color:#749ca0;letter-spacing:2.3px;text-transform:uppercase;font-size:9px;font-weight:800}.staff-nav{display:flex;flex-direction:column;gap:5px}.staff-nav button{display:flex;align-items:center;gap:13px;text-align:left;width:100%;color:#a8c2c1;background:transparent;border:0;padding:13px 15px;border-radius:11px;font-size:11px;font-weight:750;transition:.14s}.staff-nav button:hover{background:#204952;color:white}.staff-nav button.active{background:#1e5258;color:white;box-shadow:inset 3px 0 #e5ba82}.staff-nav .ico{width:18px;height:18px}.staff-nav small{margin-left:auto;background:#d7a769;color:#112b31;padding:2px 6px;border-radius:6px;font-size:9px}.staff-bottom{margin-top:auto;background:#19414a;border:1px solid #31575c;border-radius:14px;padding:15px}.staff-bottom .online{color:#b5eee0;font-size:11px;font-weight:800}.staff-bottom p{color:#87aba9;font-size:10px;line-height:1.55;margin-top:8px}.staff-bottom button{margin-top:12px;background:#2b5961;color:white;border:1px solid #3c7174;padding:8px 10px;border-radius:7px;font-size:10px;font-weight:800}.staff-main{flex:1;min-width:0}.staff-top{height:78px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:41px;z-index:30}.staff-top .location{font-size:11px;color:#95a49d;margin-bottom:5px}.staff-top .location strong{color:#2e5354}.staff-top h3{font-size:15px;letter-spacing:-.35px}.staff-top-right{display:flex;align-items:center;gap:11px}.staff-avatar{width:38px;height:38px;background:#e4f0e7;border-radius:12px;display:grid;place-items:center;color:#286d64;font-weight:800}.staff-user{font-size:11px;font-weight:800}.staff-user small{display:block;font-size:9px;font-weight:600;color:#99a6a1;margin-top:3px}.staff-content{padding:32px 34px 70px;max-width:1640px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-header h1{font-size:28px;letter-spacing:-1px;margin:8px 0 6px;font-weight:800}.page-header p{color:#8a9992;font-size:12px}.page-header-actions{display:flex;align-items:center;gap:9px}.dashboard-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;margin:7px 0 27px;padding:27px 31px;background:radial-gradient(circle at 65% 20%,#23595a,transparent 60%),linear-gradient(120deg,#123c42,#102e37);border-radius:20px;color:white;overflow:hidden;position:relative}.dashboard-hero:after{content:"✳";position:absolute;right:30px;top:-58px;font-size:215px;color:#ffffff0a}.dashboard-hero>*{position:relative;z-index:1}.dashboard-hero h2{font:500 28px var(--serif);margin:8px 0}.dashboard-hero p{font-size:11px;color:#c9dbd6;line-height:1.6}.dashboard-hero .section-caption{color:#d9b98c}.dashboard-hero .btn{background:#f9f6ef;color:#143f42}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat-card{padding:22px 22px 18px;position:relative;min-height:141px}.stat-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#82958e;font-weight:700}.stat-ic{display:grid;place-items:center;width:34px;height:34px;background:#eaf5f0;border-radius:10px;color:#43867d}.stat-value{font-size:29px;font-weight:800;letter-spacing:-1.4px;margin-top:16px}.stat-foot{font-size:10px;color:#a4b0ab;margin-top:5px}.dash-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,1fr);gap:18px}.content-panel{padding:23px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.panel-head h3{font-size:15px;letter-spacing:-.3px}.panel-head p{font-size:10px;color:#9aa8a0;margin-top:5px}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:11px;text-align:left;white-space:nowrap}.data-table th{padding:13px 12px;color:#91a19b;text-transform:uppercase;font-size:9px;letter-spacing:1px;font-weight:800;border-bottom:1px solid #e8eeea}.data-table td{padding:14px 12px;border-bottom:1px solid #f0f2ef;color:#46605b}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td{background:#fafcfa}.data-table strong{color:#193b3d}.data-table .p-img{width:42px;height:42px;border-radius:10px}.row-title{font-size:11px;font-weight:800;color:#243f40}.row-sub{font-size:9px;color:#9baba4;margin-top:4px;line-height:1.35}.table-actions{display:flex;gap:7px;justify-content:flex-end}.table-actions button{border:1px solid #e3ebe6;background:white;border-radius:8px;width:31px;height:31px;display:grid;place-items:center;color:#3b716c}.table-actions button:hover{background:#e9f4ef}.order-mini{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf1ee}.order-mini:last-child{border:0}.order-idx{width:38px;height:38px;background:#eaf5f0;border-radius:11px;display:grid;place-items:center;color:#43887e}.order-mini .details{flex:1}.order-mini .details strong{font-size:11px}.order-mini .details span{display:block;color:#9ba7a2;font-size:10px;margin-top:5px}.rank-row{display:flex;gap:10px;align-items:center;margin:14px 0}.rank-row img{width:42px;height:42px;border-radius:9px}.rank-content{flex:1;min-width:0}.rank-content strong{font-size:10px}.rank-content small{font-size:9px;color:#99a9a1}.rank-bar{height:5px;background:#eef2ee;border-radius:10px;margin-top:9px;overflow:hidden}.rank-bar span{display:block;height:100%;background:#4c9d90;border-radius:10px}.chart-wrap{height:175px;display:flex;align-items:flex-end;gap:14px;border-bottom:1px solid #e9f0eb;padding:5px 6px 0;position:relative}.chart-col{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:9px;min-width:0}.chart-bar{width:100%;max-width:45px;min-height:3px;background:linear-gradient(180deg,#65b7a6,#20746f);border-radius:8px 8px 0 0;position:relative}.chart-bar em{position:absolute;top:-22px;left:50%;transform:translateX(-50%);font-size:9px;font-style:normal;color:#778b84;font-weight:800}.chart-col small{font-size:9px;color:#9aa8a2;position:absolute;bottom:-20px}.chart-labels{display:flex;justify-content:space-around;font-size:9px;color:#9aaa9f;margin-top:10px}.chart-data{padding-bottom:18px}
/* Staff list, management */
.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:17px;flex-wrap:wrap}.toolbar .search-input{width:min(340px,100%)}.toolbar .select{width:auto;min-width:147px}.toolbar .spacer{flex:1}.catalog-rowimg{display:flex;align-items:center;gap:11px}.catalog-rowimg img{width:52px;height:52px;border-radius:11px}.catalog-rowimg strong{display:block;font-size:11px}.catalog-rowimg span{display:block;font-size:10px;color:#a0ada7;margin-top:5px}.catalog-table{padding:5px 19px 16px}.catalog-table .data-table td{padding:12px}.stat-mini{display:flex;align-items:center;gap:10px;padding:13px 15px;background:#fff;border:1px solid #e9ede9;border-radius:12px;font-size:11px;color:#778b85}.stat-mini strong{color:#265f5f}.cat-admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.cat-line{display:flex;align-items:center;gap:13px;border-bottom:1px solid #ebefeb;padding:14px 0}.cat-line:last-child{border-bottom:0}.cat-icon{width:40px;height:40px;border-radius:11px;background:#edf5f0;color:#3c8178;display:grid;place-items:center}.cat-info{flex:1}.cat-info strong{display:block;font-size:12px}.cat-info span{display:block;font-size:10px;color:#9ca9a2;margin-top:5px}.form-panel{padding:23px}.form-panel h3{font-size:15px;margin-bottom:19px}.ops-note{background:#f0f8f4;border:1px solid #deeee5;padding:16px;border-radius:12px;color:#557b70;font-size:11px;line-height:1.7;margin-top:20px}.chart-panel{padding:22px 23px}.report-split{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-top:18px}.report-big{font-size:23px;font-weight:800}.report-chart{display:flex;gap:17px;align-items:flex-end;height:215px;margin:23px 0 30px;border-bottom:1px solid #edf1ec}.report-bar{flex:1;max-width:80px;background:linear-gradient(0deg,#236e70,#8bccb8);border-radius:11px 11px 0 0;min-height:3px;position:relative}.report-bar span{position:absolute;top:-22px;left:50%;transform:translateX(-50%);color:#87a199;font-size:9px}.report-bar small{position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:9px;color:#91a49c}.progress-bar{height:7px;background:#edf3ee;border-radius:20px;overflow:hidden}.progress-bar span{display:block;height:100%;background:#3f9388;border-radius:20px}.team-badge{width:38px;height:38px;border-radius:12px;background:#e6f3ed;color:#457b6c;display:grid;place-items:center;font-weight:800}
/* Kitchen KDS */
.kitchen-hero{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;margin-bottom:18px;background:#143b43;color:#fff;border-radius:17px;gap:16px}.kitchen-hero h2{font-size:18px;margin:3px 0 6px}.kitchen-hero p{font-size:11px;color:#a4ccc5}.kitchen-hero .pill{background:#26585b;border-color:#407673;color:#cbf1e6}.kds-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.kds-col{background:#eaf0ed;border:1px solid #e3eae5;border-radius:18px;min-height:480px;padding:13px}.kds-head{display:flex;justify-content:space-between;align-items:center;padding:7px 7px 16px}.kds-head h3{font-size:13px;display:flex;gap:8px;align-items:center}.kds-head .count{border-radius:8px;padding:5px 9px;background:white;color:#366c66;font-size:11px}.kds-order{padding:18px;border-radius:14px;background:white;border:1px solid #e8eae7;box-shadow:0 6px 20px #20404109;margin-bottom:12px}.kds-order.alert{border-left:4px solid #d79e70}.kds-order .order-no{font-size:17px;letter-spacing:-.6px;font-weight:800}.kds-order .order-place{margin:7px 0 13px;font-size:11px;color:#8f9d95}.kds-line{font-size:12px;font-weight:700;display:flex;gap:10px;margin:12px 0;line-height:1.5}.kds-line b{color:#2c7f77}.kds-note{font-size:10px;color:#a16f3e;background:#fff6e8;padding:10px 11px;border-radius:9px;margin:13px 0}.kds-order .btn{width:100%;margin-top:9px}.kds-time{font-size:10px;color:#90a69b;display:flex;align-items:center;gap:5px}.kds-time.late{color:#bd5a49}.kds-empty{padding:45px 10px;color:#9bab9f;text-align:center;font-size:11px}.board-full{background:#071f2b;min-height:calc(100vh - 41px);color:white;padding:32px clamp(20px,3vw,56px)}.board-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px}.board-top .brand-logo .logo-copy strong{color:white}.board-top .logo-icon{background:#163940;color:#e7bd87;border-color:#375e63}.board-top .date-time{color:#94b1b4;font-size:12px}.board-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px;min-height:65vh}.board-column{background:#123540;border-radius:24px;padding:28px 35px;border:1px solid #29515b}.board-column.ready{background:#174942;border-color:#276458}.board-title{font-size:18px;font-weight:800;display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid #ffffff20}.board-number-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:32px}.board-number{background:#ffffff0b;padding:21px 9px;border-radius:16px;text-align:center;font-weight:800;font-size:clamp(24px,3.5vw,44px);letter-spacing:-1px}.board-column.ready .board-number{background:#50c3a32b;color:#baf6d8}.board-foot{color:#9bb9b5;text-align:center;font-size:11px;padding-top:25px}
/* actions, editor */
.editor-layout{display:grid;grid-template-columns:235px 1fr;gap:22px}.editor-photo{height:215px;width:100%;border-radius:14px;background:#e7f0eb;object-fit:cover}.photo-drop{display:block;margin-top:12px;border:1px dashed #bacac4;text-align:center;padding:14px;border-radius:10px;color:#66857d;cursor:pointer;font-size:11px;font-weight:800}.photo-drop input{display:none}.form-section{margin:14px 0 18px}.form-section h3{font-size:12px;margin-bottom:12px;color:#264a4a}.modal-info{font-size:10px;color:#99aaa0;line-height:1.6;margin-top:7px}.admin-actions{display:flex;flex-wrap:wrap;gap:10px}.modal-medium{width:min(660px,100%)}.modal-small{width:min(520px,100%)}.order-detail-top{display:flex;align-items:center;gap:10px;margin:13px 0 21px}.order-detail-list{padding:8px 0}.order-detail-line{display:flex;align-items:center;gap:11px;margin:12px 0}.order-detail-line img{width:49px;height:49px;border-radius:10px}.order-detail-line strong{font-size:11px}.order-detail-line span{display:block;color:#99aaa0;font-size:10px;margin-top:3px}.order-detail-line b{margin-left:auto;font-size:12px}.order-history{display:flex;align-items:center;gap:9px;padding:9px 0;color:#7f958a;font-size:11px}.order-history .dot{background:#3d9481}.utility-menu{display:flex;align-items:center;gap:9px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:120;color:white;background:#113c40;border:1px solid #427f78;padding:14px 19px;display:flex;align-items:center;gap:10px;border-radius:13px;box-shadow:0 14px 50px #0a252852;font-size:12px;max-width:calc(100vw - 28px);animation:rise .2s}.toast.error{background:#8d443b;border-color:#c9816f}
@keyframes slidein{from{transform:translateX(70px);opacity:.65}to{transform:translateX(0);opacity:1}}@keyframes rise{from{transform:translateY(14px);opacity:.5}to{transform:translateY(0);opacity:1}}
@media(max-width:1250px){.dishes{grid-template-columns:repeat(3,minmax(0,1fr))}.guest-links{margin-left:10px}.staff-content{padding:26px 24px 50px}.dash-grid{grid-template-columns:1fr 350px}.guest-hero{min-height:347px}}
@media(max-width:1050px){.guest-links{display:none}.dishes{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-side{width:214px;flex-basis:214px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.report-split{grid-template-columns:1fr}.kds-board{grid-template-columns:1fr 1fr}.kds-col:last-child{grid-column:span 2}.guest-hero{grid-template-columns:1fr .87fr}.hero-left{padding:35px}.hero-left h1{font-size:35px}}
@media(max-width:760px){.demo-bar{padding:0 14px}.demo-meta{font-size:9px}.demo-meta>span{display:none}.role-buttons{display:none}.demo-mobile-role{display:block}.guest-header{height:69px}.guest-nav-wrap{padding:0 16px}.logo-icon{width:40px;height:40px}.logo-copy strong{font-size:16px}.logo-copy small{font-size:7px;letter-spacing:2px}.guest-context{display:none}.cart-trigger{height:40px;padding:0 11px}.cart-trigger>span:not(.cart-bubble){display:none}.guest-wrap{padding:19px 15px 100px}.guest-breadcrumb{margin-bottom:16px}.guest-hero{grid-template-columns:1fr;min-height:unset}.hero-left{padding:35px 27px}.hero-left h1{font-size:39px;letter-spacing:-1.2px}.hero-left p{font-size:11px}.hero-photo{height:210px;min-height:210px}.hero-card{bottom:16px}.hero-card strong{font-size:13px}.guest-benefits{grid-template-columns:1fr 1fr;margin:17px 0 35px}.guest-benefits .benefit:last-child{grid-column:span 2}.benefit{padding:12px}.guest-section-header{display:block}.dish-filter{margin-top:18px}.dish-filter .search-input{flex:1}.dish-filter .select{width:120px}.dishes{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.dish-cover{height:150px}.dish-info{padding:13px}.dish-name{font-size:13px}.dish-desc{font-size:10px;min-height:48px}.dish-price{font-size:14px}.dish-add{width:34px;height:34px}.dish-cat{font-size:8px}.category-chip{padding:11px 13px}.mobile-cart{position:fixed;bottom:0;left:0;right:0;z-index:34;display:block;padding:10px 15px 15px;background:#fffffff0;border-top:1px solid #e8ece7;backdrop-filter:blur(12px)}.mobile-cart button{width:100%;display:flex;justify-content:space-between}.guest-footer{padding-bottom:30px}.staff-side{display:none}.staff-top{height:65px;padding:0 15px}.staff-content{padding:20px 15px 60px}.staff-top h3{font-size:13px}.staff-user{display:none}.staff-top-right .btn{display:none}.page-header{align-items:flex-start;flex-wrap:wrap}.page-header h1{font-size:24px}.page-header-actions{width:100%;justify-content:flex-start}.dashboard-hero{padding:23px 21px}.dashboard-hero h2{font-size:23px}.stat-grid{gap:10px}.stat-card{padding:17px;min-height:115px}.stat-value{font-size:23px}.stat-top{font-size:10px}.content-panel{padding:18px}.toolbar .search-input{width:100%}.toolbar .select{flex:1}.kds-board{grid-template-columns:1fr}.kds-col:last-child{grid-column:span 1}.kds-col{min-height:150px}.cat-admin-grid{grid-template-columns:1fr}.board-full{padding:20px 13px}.board-columns{gap:9px}.board-column{padding:14px;border-radius:14px}.board-title{font-size:12px}.board-number-grid{grid-template-columns:repeat(2,1fr);gap:8px}.board-number{padding:15px 6px;font-size:26px}.board-top .logo-copy strong{font-size:14px}.track-card{padding:24px 13px}.track-step strong{font-size:9px}.track-steps{margin:30px 0}.tracking{padding:18px 0}.tracking-items{padding:14px}.product-detail{display:flex;flex-direction:column;max-height:95vh}.detail-photo{min-height:200px;max-height:220px}.detail-content{padding:21px 22px;overflow:auto}.detail-content h2{font-size:23px}.backdrop{padding:12px}.drawer-bg{padding:0}.modal-body{padding:18px}.modal-head{padding:17px 18px}.modal-foot{padding:15px 18px}.editor-layout,.field-grid{grid-template-columns:1fr}.editor-photo{height:150px}.editor-layout{gap:12px}.guest-benefits .benefit strong{font-size:10px}.guest-benefits .benefit span{font-size:9px}}
@media(max-width:400px){.hero-left h1{font-size:33px}.dish-cover{height:124px}.dish-desc{min-height:49px}.dish-price{font-size:13px}.dish-info{padding:11px}.benefit-ico{width:32px;height:32px;flex:none}.benefit{gap:7px}}
/* V3.1 product-first refinements: reduce brochure-like hero and surface the menu earlier. */
@media(min-width:761px){.guest-wrap{padding-top:22px}.guest-breadcrumb{margin-bottom:14px}.guest-hero{min-height:306px}.hero-left{padding-top:34px;padding-bottom:34px}.hero-eyebrow{margin-bottom:14px}.hero-left h1{font-size:clamp(32px,3.3vw,46px);margin-bottom:11px}.hero-left p{margin-bottom:16px}.guest-benefits{margin:13px 0 28px}.guest-section-header{margin-bottom:18px}.guest-section-header h2{margin:7px 0 6px}.category-rail{margin-bottom:18px}}
@media(max-width:760px){.guest-wrap{padding-top:12px}.guest-breadcrumb{display:none}.guest-hero{border-radius:17px}.hero-left{padding:23px 24px}.hero-eyebrow{margin-bottom:11px;font-size:8px}.hero-left h1{font-size:30px;margin-bottom:10px;line-height:1.16}.hero-left p{font-size:10px;line-height:1.55;margin-bottom:15px;max-width:340px}.hero-left .btn{padding:11px 13px;font-size:11px}.hero-photo{min-height:118px;height:118px}.hero-card{bottom:10px;left:15px;right:12px}.hero-card strong{font-size:11px}.hero-card span{font-size:9px}.hero-card small{font-size:7px;margin-bottom:3px}.hero-rating{display:none}.guest-benefits{display:none}.guest-section-header{margin-top:25px;margin-bottom:13px}.guest-section-header h2{font-size:25px;margin:7px 0 5px}.guest-section-header p{font-size:10px}.dish-filter{margin-top:13px;gap:8px}.dish-filter .search-input{min-width:0}.dish-filter .select{width:113px}.category-rail{margin-bottom:12px}.dish-cover{height:145px}.guest-footer{margin-top:26px}}
/* Produto integrado: navegacao publica, acesso autenticado e login */
.role-buttons .product-nav-link{display:inline-flex;align-items:center;justify-content:center;color:#cce0dc;font-size:11px;font-weight:800;text-decoration:none;padding:8px 13px;border-radius:8px;white-space:nowrap;transition:background .15s,color .15s}
.role-buttons .product-nav-link:hover{background:#21474d;color:#fff}
.role-buttons .product-nav-link.active{background:#f7faf6;color:#14363b}
.staff-nav-link{display:inline-flex;align-items:center;gap:7px;color:#b5d6ce;font-size:11px;text-decoration:none;margin-top:13px}
.staff-nav-link:hover{color:#fff}
.startup-error{min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;color:#23454a;gap:15px}
.startup-error h1{font:600 34px var(--serif);margin:0}
.startup-error p{color:#81938e;max-width:530px}
.login-screen{display:grid;grid-template-columns:1.04fr 1fr;min-height:calc(100vh - 41px);background:#f7f8f5}
.login-visual{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(6,36,43,.60),rgba(6,36,43,.97)),url('/assets/pargo.jpg') center/cover;color:#fff;padding:clamp(28px,4vw,65px);display:flex;flex-direction:column;justify-content:space-between}
.login-visual .brand-logo{color:#fff}.login-visual .logo-copy strong{color:white}.login-visual .logo-copy small{color:#c8e6de}
.login-visual-copy{max-width:560px;padding-bottom:clamp(40px,7vh,110px)}
.login-visual-copy>span{font-size:10px;letter-spacing:3px;color:#dfc59f;font-weight:800}
.login-visual-copy h1{font:500 clamp(36px,3.7vw,60px)/1.16 var(--serif);margin:26px 0}
.login-visual-copy h1 em{color:#d6b583;font-style:normal}
.login-visual-copy p{font-size:14px;line-height:1.8;color:#c7dad7}
.login-form-panel{display:flex;align-items:center;justify-content:center;padding:38px clamp(24px,5vw,80px)}
.login-form-container{width:min(100%,415px)}
.login-ill{height:56px;width:56px;background:#e2eeea;color:#0e6567;border-radius:17px;display:grid;place-items:center;margin-bottom:26px}
.login-form-container h2{font:600 38px var(--serif);margin:11px 0;color:#14363b}
.login-form-container>p{font-size:12px;color:#869894;margin-bottom:32px;line-height:1.7}
.login-form-container form{display:grid;gap:18px}.login-form-container form .btn{margin-top:7px}
.login-helper{border-top:1px solid #e4ebe7;margin:30px 0 16px;padding-top:22px;color:#8da19d;font-size:11px}
.login-back{color:#11636a;text-decoration:none;font-weight:800;font-size:11px;display:inline-flex;align-items:center;gap:7px}
.readiness-list{display:grid;gap:17px;padding:24px 0}.readiness-item{display:flex;gap:12px;align-items:flex-start;font-size:12px;color:#57756e}.readiness-item svg{flex:none;color:#16836d}
@media(max-width:900px){.login-screen{grid-template-columns:1fr}.login-visual{min-height:270px}.login-visual-copy{padding-bottom:0}.login-visual-copy h1{font-size:31px;margin:18px 0}.login-form-panel{padding:40px 20px 80px}}
@media(max-width:760px){.role-buttons{display:flex!important;gap:3px}.role-buttons .product-nav-link{padding:8px 8px;font-size:10px}.role-buttons button{padding:7px;font-size:10px}.demo-meta{gap:5px}.demo-meta strong{font-size:9px}.login-visual{min-height:195px}.login-visual-copy h1{font-size:25px}.login-visual-copy p{display:none}.login-form-container h2{font-size:29px}.login-form-panel{padding-top:32px}}
@media(max-width:410px){.role-buttons .product-nav-link{padding:6px 5px;font-size:9px}.demo-meta strong{font-size:8px}}
.staff-mobile-nav{display:none}
@media(max-width:760px){.staff-mobile-nav{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:9px 13px;background:#f7f8f6;border-bottom:1px solid #e2e8e4;scrollbar-width:none}.staff-mobile-nav button{border:1px solid #e2eae6;white-space:nowrap;background:white;color:#416961;padding:10px 11px;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;border-radius:9px;flex:none}.staff-mobile-nav button .ico{width:14px;height:14px}.staff-mobile-nav button.active{background:#0e444a;color:#fff;border-color:#0e444a}}
.qr-preview{text-align:center;max-width:330px;margin:auto}.qr-preview>img{max-width:260px;width:100%;height:auto;image-rendering:pixelated;border:1px solid #e5eee9;padding:12px;border-radius:18px;background:white}.qr-preview>p{font:600 24px var(--serif);color:#15464d;margin:12px auto 22px}.qr-preview .field{text-align:left}

/* =========================================================
   CORAL DINING V4: entrada, conta de hospede e acesso por perfil
   ========================================================= */
.guest-shell{min-height:100vh}.guest-header{top:0}.customer-login-screen{min-height:100vh}
.access-shell{min-height:100vh;background:#f9faf7;color:#13383d}
.access-brand{max-width:1440px;padding:24px clamp(20px,4vw,66px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.access-team-link{font-size:11px;display:inline-flex;align-items:center;gap:8px;color:#466d68;font-weight:800;text-decoration:none;border:1px solid #dfebe5;border-radius:30px;padding:10px 16px;background:white}
.access-team-link:hover{background:#eaf3ee}
.access-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(32px,5vw,85px);padding:18px clamp(20px,4vw,66px) 54px;align-items:center;min-height:calc(100vh - 106px)}
.access-visual{border-radius:28px;min-height:650px;height:min(79vh,830px);position:relative;overflow:hidden;color:white;box-shadow:0 26px 75px rgba(5,41,46,.14);background:#143d40}
.access-photo{position:absolute;inset:0}.access-photo img{height:100%;width:100%;object-fit:cover;object-position:53% 43%}
.access-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,32,36,.04) 15%,rgba(10,36,40,.4) 47%,rgba(3,29,35,.94) 100%)}
.access-copy{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:clamp(30px,4.5vw,62px)}
.access-tag{letter-spacing:2.7px;color:#edcc99;font-size:10px;font-weight:800}
.access-copy h1{font:500 clamp(39px,4.4vw,66px)/1.12 var(--serif);margin:18px 0;max-width:640px;letter-spacing:-1.4px}
.access-copy h1 em{color:#e8c48d;font-style:italic}
.access-copy p{max-width:480px;color:#e0ebe7;font-size:13px;line-height:1.9}
.access-highlights{display:flex;flex-wrap:wrap;gap:20px;margin-top:26px;padding-top:22px;border-top:1px solid #ffffff36}
.access-highlights span{display:inline-flex;align-items:center;gap:7px;color:#f6f8f0;font-size:11px;font-weight:700}
.access-actions{max-width:520px;width:100%;margin:0 auto}
.access-actions h2{font:600 clamp(36px,3.3vw,51px)/1.18 var(--serif);letter-spacing:-.6px;margin:15px 0 13px}
.access-actions>p{font-size:13px;line-height:1.8;color:#829691;margin-bottom:33px}
.access-option{width:100%;text-align:left;background:white;display:flex;align-items:center;gap:16px;padding:21px 20px;border:1px solid #e2eae6;border-radius:18px;margin-bottom:13px;box-shadow:0 5px 14px #17494908;color:#19444a;transition:transform .2s,border-color .2s,box-shadow .2s}
.access-option:hover{transform:translateY(-2px);border-color:#b4cfc6;box-shadow:0 18px 32px #113c4514}
.access-option.primary{border-color:#1c6267;background:#0c3c43;color:white;box-shadow:0 15px 27px #0d3e4327}
.access-option.primary:hover{background:#124a4e}
.access-option-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex:none;background:#edf6f1;color:#246c68}
.access-option.primary .access-option-icon{background:#ffffff1d;color:#f7d4a1}
.access-option>span:nth-child(2){flex:1;display:grid;gap:5px}
.access-option strong{font-size:14px}
.access-option small{font-size:11px;color:#8a9e99;line-height:1.5}
.access-option.primary small{color:#c2dcd4}
.access-help{color:#82958e;display:flex;align-items:flex-start;gap:8px;line-height:1.7;font-size:11px;margin:20px 5px}
.access-help .ico{flex:none;margin-top:2px}
.as-link{background:transparent;border:0;padding:0;color:#0f6568;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:inherit}
.customer-auth-links{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:17px;padding-top:5px;font-size:11px}
.customer-auth-links>.as-link{display:inline-flex;gap:7px;align-items:center}
.guest-account{border:1px solid #dae8e0;background:#f3f7f3;display:inline-flex;align-items:center;gap:8px;padding:11px 13px;border-radius:11px;font-size:11px;font-weight:800;color:#285854;white-space:nowrap}
.guest-account:hover{background:#e9f3ed}
.guest-signout{display:grid;place-items:center;width:39px;height:40px;border:1px solid #dfe8e1;background:#fff;border-radius:11px;color:#50726b}
.history-view{max-width:940px;margin:20px auto 90px}
.history-view h1{font:600 clamp(34px,4vw,48px) var(--serif);margin:14px 0 9px}
.history-view>p{color:#81958e;line-height:1.8;font-size:13px}
.history-actions{display:flex;gap:10px;margin:24px 0 8px;flex-wrap:wrap}
.history-list{display:grid;gap:13px;margin:28px 0}
.history-card{padding:23px;background:#fff;border:1px solid #e2eae5;border-radius:17px;box-shadow:0 5px 20px #1137400a;display:grid;gap:20px}
.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.history-row h3{font:600 19px var(--serif);margin:7px 0 5px}
.history-row small{color:#82978f;font-size:11px}
.history-row strong{font-size:17px}
.account-panel{display:grid;max-width:550px;gap:22px;padding:28px;margin-top:25px}
.account-value{padding:13px 16px;border-radius:12px;background:#f2f6f3;font-size:13px;color:#335954;font-weight:750}
.account-panel .btn{justify-self:start}
.guest-shell .guest-nav-right{gap:9px}
@media(max-width:950px){.access-grid{grid-template-columns:1fr;gap:27px}.access-visual{min-height:390px;height:430px}.access-copy h1{font-size:41px}.access-actions{max-width:720px}.access-actions>p{margin-bottom:22px}}
@media(max-width:760px){.access-brand{padding:17px 16px}.access-brand .logo-icon{width:36px;height:36px}.access-brand .logo-copy strong{font-size:15px}.access-brand .logo-copy small{font-size:7px;letter-spacing:1.5px}.access-team-link{font-size:9px;padding:9px}.access-grid{padding:0 14px 38px;min-height:0;gap:22px}.access-visual{height:270px;min-height:270px;border-radius:18px}.access-copy{padding:25px}.access-tag{font-size:8px;letter-spacing:1.5px}.access-copy h1{font-size:31px;max-width:370px;margin:12px 0}.access-copy p{font-size:10px;line-height:1.55}.access-highlights{display:none}.access-actions{padding:0 4px}.access-actions h2{font-size:29px;margin:10px 0}.access-actions>p{font-size:11px;margin-bottom:20px}.access-option{padding:15px 13px;margin-bottom:9px;gap:12px;border-radius:14px}.access-option-icon{width:39px;height:39px;border-radius:11px}.access-option-icon .ico{width:20px;height:20px}.access-option strong{font-size:12px}.access-option small{font-size:10px}.guest-account{width:38px;height:39px;justify-content:center;padding:0}.guest-account span{display:none}.guest-signout{width:36px;height:39px}.history-view{margin:6px auto 80px}.history-row h3{font-size:16px}.history-card{padding:17px}.history-row{gap:8px}}
