:root{--navy:#06344c;--cyan:#08adbd;--cyan-dark:#078b9b;--lime:#bdd51b;--ink:#082d43;--muted:#69808d;--line:#dbe7eb;--soft:#f1f7f8;--white:#fff;--danger:#c74242;--shadow:0 12px 35px rgba(6,52,76,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6fafb;color:var(--ink);font-family:Tahoma,Arial,sans-serif;line-height:1.6}.wrap{width:min(1160px,calc(100% - 32px));margin:auto}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:4}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{width:150px;height:64px;object-fit:contain}.header-badges,.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.brand-label,.region-badge{padding:7px 14px;border-radius:999px;font-weight:700}.brand-label{color:var(--navy);background:var(--soft)}.region-badge{color:#087987;background:#e7f8fa}.region-badge:before{content:"●";font-size:10px;margin-left:7px;color:var(--cyan)}.hero{background:linear-gradient(135deg,var(--navy),#075672);color:#fff;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:320px;height:320px;border:70px solid rgba(189,213,27,.12);border-radius:50%;left:-120px;top:-190px}.hero-inner{min-height:255px;display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:1}.eyebrow,.section-kicker{display:block;color:var(--cyan);font-weight:800;font-size:13px;margin-bottom:5px}.hero .eyebrow{color:var(--lime)}.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.2;margin:6px 0}.hero p{font-size:20px;margin:0;color:#d9f2f5}.duration-card{min-width:205px;padding:20px 24px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);border-radius:20px;backdrop-filter:blur(8px)}.duration-card small{display:block;color:#c9e9ee}.duration-card strong{font-size:27px;color:#fff}.public-main{padding:28px 0 60px}.guide-note{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 18px;margin-bottom:20px;box-shadow:var(--shadow)}.guide-note p{margin:0}.guide-icon,.stat-icon{display:grid;place-items:center;border-radius:12px;background:#dff7f9;color:#078b9b;font-weight:900}.guide-icon{width:32px;height:32px}.category-box,.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}.filters{display:flex;gap:9px;overflow-x:auto;padding:4px 0 7px;scrollbar-width:thin}.filters button{font:inherit;white-space:nowrap;border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 13px;border-radius:12px;cursor:pointer;display:flex;gap:8px;align-items:center;font-weight:700}.filters button.active{background:var(--navy);border-color:var(--navy);color:#fff}.filter-count{min-width:24px;padding:1px 6px;border-radius:999px;background:var(--soft);color:var(--cyan-dark);font-weight:800}.filters button.active .filter-count{background:rgba(255,255,255,.16);color:#fff}.section-title{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:30px 2px 15px}.section-title h2,.panel h2{margin:0}.list-tools{display:flex;align-items:center;gap:10px}.list-tools strong{color:var(--cyan-dark)}.refresh-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;color:var(--navy);cursor:pointer;font-weight:700}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 7px 24px rgba(6,52,76,.06);transition:.2s}.card:hover{transform:translateY(-3px);border-color:#9edee4}.card-top,.request-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.tag,.status,.request-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800}.tag{background:#e8f9fa;color:#057985}.status-available{background:#eef7d5;color:#617200}.status-pending,.status-reserved{background:#fff1cf;color:#9a5e00}.status-sold{background:#eef1f3;color:#5e6970}.num{direction:ltr;text-align:center;font-size:clamp(26px,3vw,35px);font-weight:900;letter-spacing:1px;color:var(--navy);margin:25px 0;white-space:nowrap;font-variant-numeric:tabular-nums}.small-num{font-size:24px;margin:0 0 8px}.card-action{display:flex}.btn{appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);padding:10px 15px;border-radius:11px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;text-align:center}.btn.primary{background:var(--cyan);border-color:var(--cyan);color:#fff}.btn.primary:hover{background:var(--cyan-dark)}.btn.danger{color:var(--danger);border-color:#f0caca}.btn:disabled{opacity:.55;cursor:not-allowed}.wide{width:100%}.card .btn{width:100%}.empty{grid-column:1/-1;background:#fff;border:1px dashed #bcd0d7;border-radius:18px;text-align:center;padding:40px;color:var(--muted)}.site-footer{padding:25px 0;background:var(--navy);color:#bcdce3;text-align:center}dialog{border:0;border-radius:22px;padding:0;width:min(610px,calc(100% - 24px));box-shadow:0 28px 90px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(2,31,45,.66);backdrop-filter:blur(3px)}.dialog-form{padding:28px;position:relative}.dialog-form h2{margin:0}.dialog-close{position:absolute;left:16px;top:14px;border:0;background:var(--soft);font-size:25px;width:36px;height:36px;border-radius:50%;cursor:pointer}.selected-number{font-size:31px;font-weight:900;color:var(--navy);text-align:center;padding:15px;margin:18px 0;background:var(--soft);border-radius:14px;white-space:nowrap}.reserve-fields,.fields,.account-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#294b5d}.field input,.field select,.small-search,.table-input,table select{width:100%;border:1px solid #cddde2;border-radius:10px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit;outline:0}.field input:focus,.field select:focus,.small-search:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(8,173,189,.12)}.full-field{grid-column:1/-1}.reservation-note,.notice{padding:12px 14px;border-radius:11px;background:#edf8fa;color:#176a75}.notice{margin-top:12px}.admin-shell{width:min(1220px,calc(100% - 32px));margin:24px auto 60px}.admin-brand{display:flex;align-items:center;gap:14px}.admin-brand .logo{width:125px}.admin-brand small{color:var(--muted)}.admin-brand h1{font-size:20px;margin:0}.admin-tabs{display:flex;gap:5px;background:#eaf2f4;border-radius:14px;padding:5px;margin-bottom:18px;overflow-x:auto}.admin-tabs button{border:0;background:transparent;padding:10px 18px;border-radius:10px;font:inherit;font-weight:800;color:#56717e;white-space:nowrap;cursor:pointer}.admin-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(6,52,76,.08)}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}.admin-stats article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow)}.stat-icon{width:46px;height:46px;font-size:20px}.pending-dot{background:#fff0d0;color:#a46700}.approved-dot{background:#e5efff;color:#2866b0}.admin-stats small{display:block;color:var(--muted)}.admin-stats strong{font-size:26px}.tab-page{display:grid;gap:18px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.fields{grid-template-columns:repeat(5,1fr);align-items:end}.fields .btn{height:48px}.muted{margin:4px 0;color:var(--muted);font-size:14px}.import-actions,.account-actions{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.compact-field{min-width:190px}.small-search{max-width:260px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:820px}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}th{background:#f1f7f8;color:#55707d;font-size:13px}tbody tr:hover{background:#fbfdfd}.table-input{min-width:110px}.request-list,.account-list{display:grid;gap:13px}.request-card,.account-card{border:1px solid var(--line);border-radius:16px;padding:17px;background:#fff}.request-details{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:14px}.request-details small,.account-card span{display:block;color:var(--muted)}.request-details strong{display:block}.request-actions{display:flex;gap:9px;margin-top:16px}.request-pending{background:#fff1cf;color:#965d00}.request-approved{background:#e5f6d8;color:#477200}.request-rejected,.request-cancelled,.request-expired{background:#f3eded;color:#8d4646}.account-card{display:flex;justify-content:space-between;align-items:center;gap:12px}.account-fields{grid-template-columns:repeat(4,1fr);align-items:end}.login{min-height:100vh;display:none;place-items:center;padding:20px;background:radial-gradient(circle at top right,#dff7f9,#f6fafb 50%)}.login.ready{display:grid}.login-panel{width:min(440px,100%);display:grid;gap:15px;padding:34px}.login-panel .logo{margin:auto}.login-panel h2{text-align:center;margin:0}.login-panel .section-kicker{text-align:center}.file-btn{display:inline-flex}.site-header.admin-header{position:sticky;top:0}.top-actions .btn{padding:8px 12px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.fields{grid-template-columns:repeat(2,1fr)}.request-details{grid-template-columns:repeat(2,1fr)}.account-fields{grid-template-columns:1fr 1fr}.admin-header .header-inner{align-items:flex-start;padding:12px 0}.admin-brand .logo{width:95px}.admin-stats{grid-template-columns:1fr}.panel-heading{align-items:flex-start;flex-direction:column}.small-search{max-width:none;width:100%}}
@media(max-width:600px){.wrap,.admin-shell{width:min(100% - 20px,1160px)}.header-inner{min-height:72px}.logo{width:112px;height:52px}.brand-label{display:none}.hero-inner{min-height:230px;display:block;padding:30px 0}.hero h1{font-size:34px}.hero p{font-size:18px}.duration-card{display:inline-block;min-width:0;margin-top:22px;padding:11px 16px}.duration-card strong{font-size:20px;margin-right:7px}.category-box,.panel{padding:16px;border-radius:16px}.grid{grid-template-columns:1fr}.num{font-size:32px;letter-spacing:.5px}.section-title{align-items:center}.list-tools{align-items:flex-end;flex-direction:column;gap:5px}.reserve-fields,.fields,.account-fields{grid-template-columns:1fr}.full-field{grid-column:auto}.request-details{grid-template-columns:1fr 1fr}.account-card{align-items:flex-start;flex-direction:column}.admin-brand small,.admin-brand h1{display:none}.top-actions{gap:5px}.top-actions .region-badge{display:none}.top-actions .btn{padding:7px 9px;font-size:13px}.admin-tabs{position:sticky;top:76px;z-index:3}.dialog-form{padding:22px}.selected-number{font-size:28px}}
