:root{--blue:#1467d9;--navy:#102b56;--muted:#66768d;--line:#dce5f1}*{box-sizing:border-box}body{margin:0;background:#f4f7fc;color:var(--navy);font-family:Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #edae35;outline-offset:3px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.top{background:#0b2347;color:white;padding:10px 0;font-size:11px}.top .wrap,header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.top a{text-decoration:none}header{background:white;border-bottom:1px solid var(--line);padding:12px 0}header img{width:230px;height:auto;display:block}nav{display:flex;gap:22px;font-size:12px;align-items:center}nav a{text-decoration:none}nav .active{color:var(--blue);font-weight:bold}.lead{padding:45px 0 30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;color:var(--blue)}h1{font-size:40px;letter-spacing:-1.5px;margin:12px 0 16px}h2{font-size:23px;letter-spacing:-.6px;margin:0 0 20px}h3{font-size:17px;line-height:1.4}p{line-height:1.7}.muted{color:var(--muted);font-size:13px}.lead p{max-width:650px;font-size:14px;color:var(--muted)}.pill{font-size:11px;background:#e8f1ff;padding:8px 11px;border-radius:20px;display:inline-block;color:var(--blue)}.toolbar{display:flex;gap:15px;margin-bottom:28px;flex-wrap:wrap;align-items:center}.toolbar input{max-width:290px;margin:0}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{background:white;color:var(--muted);border-color:var(--line);padding:10px 12px;font-size:11px}.filters button[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:8px;padding:12px 17px;font-size:12px;cursor:pointer;font-weight:bold;text-decoration:none}button.secondary,.button.secondary{background:white;color:var(--navy);border-color:var(--line)}button:disabled{opacity:.45;cursor:not-allowed}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-bottom:50px}.product{border:1px solid var(--line);border-radius:16px;background:white;overflow:hidden;display:flex;flex-direction:column}.product-image{height:215px;display:grid;place-items:center;background:#f9fbff;border-bottom:1px solid #edf1f7;padding:20px}.product-image img{display:block;width:100%;height:100%;object-fit:contain}.product-image span{font-size:46px;color:#a9bed9}.product-copy{padding:22px;display:flex;flex-direction:column;flex:1}.category{font-size:10px;letter-spacing:.7px;color:var(--muted);text-transform:uppercase}.product h3{margin:10px 0}.description{font-size:12px;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.product .description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 18px}.price{font-size:22px;font-weight:bold;margin:auto 0 10px}.availability{font-size:10px;color:#23704b;margin-bottom:18px}.availability.out{color:#8c6770}.product button{width:100%}.empty{border:1px dashed #bfd0e8;border-radius:16px;padding:50px 25px;background:white;text-align:center;grid-column:1/-1}.empty h2{font-size:23px}.empty p{max-width:500px;margin:14px auto 22px;color:var(--muted);font-size:13px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding:35px 0 45px;font-size:13px}.process span{color:var(--blue);font-weight:bold;margin-right:10px}.process p{color:var(--muted);font-size:12px;margin-left:26px}.panel{background:white;border:1px solid var(--line);padding:27px;border-radius:15px}.admin-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:start;padding-bottom:30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}label{display:block;font-size:11px;font-weight:bold}input,select,textarea{width:100%;padding:12px;margin-top:7px;border:1px solid #cfdaea;border-radius:7px;background:#f9fbfe;color:var(--navy);min-width:0;font-size:13px}textarea{resize:vertical;min-height:90px}.check{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:normal}.check input{width:auto;margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.hint{font-size:10px;color:var(--muted);line-height:1.6}.message{padding:12px 15px;background:#e9f4ef;color:#216747;font-size:12px;border-radius:8px;line-height:1.7;margin:16px 0}.message.error{color:#a82b38;background:#fff0f0}.admin-product{display:flex;gap:15px;align-items:center;border-top:1px solid var(--line);padding:16px 0}.admin-product img{width:55px;height:55px;object-fit:contain}.admin-product div{flex:1;min-width:0}.admin-product b{font-size:13px;overflow-wrap:anywhere}.admin-product small{display:block;color:var(--muted);font-size:11px;margin-top:7px}.admin-product button{font-size:10px;padding:9px 12px}.reservations{margin-bottom:45px}.reservation{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:20px;align-items:start;font-size:12px}.reservation p{margin:5px 0;overflow-wrap:anywhere}.reservation select{margin:0;font-size:11px}.reservation a{color:var(--blue)}.image-preview{display:block;width:100%;height:120px;object-fit:contain;border:1px solid var(--line);border-radius:8px}.status-label{font-size:10px;letter-spacing:.5px;color:var(--blue)}dialog{border:0;border-radius:17px;padding:27px;width:min(540px,calc(100% - 30px));max-height:90vh;overflow:auto;color:var(--navy);box-shadow:0 25px 100px #05173755}dialog::backdrop{background:#081b3e99}dialog .dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:center}dialog .close{background:#eff3fa;color:var(--navy);border:0;padding:8px 12px}dialog h2{font-size:22px;margin:0}dialog .summary{padding:15px;background:#edf4fe;border-radius:9px;font-size:13px;margin:20px 0}dialog .summary p{margin:0}.summary strong{color:var(--blue)}dialog form{display:grid;gap:15px}.success-box{text-align:center;padding:20px 0}.success-box p{font-size:13px;line-height:1.8;color:var(--muted)}.no-display,[hidden]{display:none!important}footer{background:#0b2347;color:#b5c3d9;padding:26px 0;font-size:11px}footer .wrap{display:flex;justify-content:space-between;gap:20px}.admin-link{font-size:11px;color:var(--blue);text-decoration:none}.loading{padding:25px;color:var(--muted)}@media(max-width:850px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}.reservation{grid-template-columns:1fr 1fr}.reservation>div:last-child{grid-column:1/-1}.reservation select{max-width:240px}}@media(max-width:560px){.wrap{width:calc(100% - 30px)}header img{width:185px}nav{gap:12px;font-size:11px}nav a:last-child{display:none}h1{font-size:32px}.lead{padding-top:32px}.products{gap:13px}.product-image{height:155px;padding:15px}.product-copy{padding:15px}.product h3{font-size:14px}.product .description{font-size:11px}.price{font-size:19px}.product button{font-size:10px;padding:11px 8px}.category{font-size:8px}.filters{gap:7px}.filters button{font-size:10px;padding:9px}.toolbar input{max-width:none}.process{grid-template-columns:1fr;gap:8px}.process p{margin-top:7px}.panel{padding:20px}.reservation{grid-template-columns:1fr;gap:8px}.reservation>div:last-child{grid-column:auto}footer .wrap{flex-direction:column;gap:10px}.top{font-size:9px}.empty{padding:35px 20px}dialog{padding:22px}.product .availability{font-size:9px}}
