*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Arial,"Malgun Gothic",sans-serif;color:#18212f;background:#f4f7fb}
.bg{background:radial-gradient(circle at top left, rgba(83,143,255,.18), transparent 26%),radial-gradient(circle at top right, rgba(57,208,255,.16), transparent 24%),linear-gradient(180deg,#eef5ff 0%,#f8fbff 48%,#f4f7fb 100%)}
.page{width:100%;max-width:1220px;margin:0 auto;padding:18px 14px 28px}
.hero-card,.form-card,.summary-card,.compare-table-wrap,.admin-card,.empty-card{background:#fff;border-radius:24px;box-shadow:0 10px 30px rgba(20,43,89,.08)}
.hero-card{padding:24px 20px;margin-bottom:16px;border:1px solid rgba(67,120,216,.08)}
.hero-badge{display:inline-block;padding:8px 12px;border-radius:999px;background:#eef4ff;color:#2f63c7;font-size:12px;font-weight:bold;letter-spacing:.06em}
.hero-title{margin:14px 0 8px;font-size:30px;line-height:1.2}.hero-desc{margin:0;color:#607086;font-size:15px;line-height:1.65}
.form-card,.admin-card{padding:20px 16px 22px}.section-head{margin-bottom:12px}.section-head h2{margin:0 0 6px;font-size:22px}.section-head p{margin:0;color:#6e7b8d;font-size:14px;line-height:1.6}
.grid{display:grid;gap:12px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.field span{font-size:14px;font-weight:bold;color:#354156}
.field input,.field select{width:100%;height:52px;border:1px solid #d8e1ef;border-radius:16px;padding:0 14px;font-size:16px;background:#fff;color:#18212f;outline:none}
.field input:focus,.field select:focus{border-color:#5a8df7;box-shadow:0 0 0 4px rgba(90,141,247,.12)}
.help{color:#7c8899;font-size:12px;line-height:1.5}.mt24{margin-top:24px}
.btn-primary,.btn-secondary,.btn-link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:18px;text-decoration:none;font-size:16px;font-weight:bold;border:none;cursor:pointer}
.btn-primary{width:100%;background:linear-gradient(135deg,#2f63c7 0%,#1c9bd8 100%);color:#fff;box-shadow:0 10px 24px rgba(47,99,199,.22)}
.btn-secondary{background:#fff;color:#24437c;border:1px solid #cedbf2}.btn-link{background:#f3f7ff;color:#2456a8;border:1px solid #dbe6f8}
.top-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.top-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.summary-card{padding:18px 16px}.summary-label{color:#778499;font-size:13px;margin-bottom:8px}.summary-value{font-size:24px;font-weight:bold;color:#1c2b43}
.compare-table-wrap{padding:16px 16px 6px;margin-top:16px;overflow-x:auto}.compare-table{width:100%;border-collapse:collapse;min-width:1220px}
.compare-table th,.compare-table td{padding:14px 12px;border-bottom:1px solid #e7edf6;text-align:left;font-size:14px;vertical-align:middle}.compare-table th{color:#5f6f87;background:#f7fbff;font-weight:bold}
.compare-table tr.best-row td{background:#fff5f5}.compare-table tr.popular-row td{background:#f7fbff}
.tag{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:bold;white-space:nowrap}
.tag.best{background:#fff0f0;color:#d94a4a}.tag.popular{background:#eef8ff;color:#1a7fb4}.tag.none{background:#f3f6fa;color:#718198}
.price-strong{font-size:20px;font-weight:bold;color:#13315c}.room-name{font-weight:bold;color:#1d2c43}
.check-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-item{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid #d8e1ef;border-radius:16px;background:#fff}
.check-item input{width:18px;height:18px}.notice{padding:14px 16px;border-radius:16px;margin-bottom:14px;font-size:14px}.notice.ok{background:#eefbf2;color:#2a7b41;border:1px solid #cdeed6}
.admin-table{width:100%;border-collapse:collapse;min-width:1060px}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #e7edf6;text-align:left}.admin-table th{background:#f7fbff;color:#5f6f87}
.admin-table input[type="text"],.admin-table input[type="number"],.admin-table select{width:100%;max-width:120px;height:38px;padding:0 10px;border:1px solid #d8e1ef;border-radius:10px;font-size:14px}
.admin-table .wide-name{max-width:180px}.admin-table .mini{max-width:90px}.admin-table td{white-space:nowrap}
.calc-note,.hint-box{margin-top:12px;padding:12px 14px;border-radius:14px;background:#f7fbff;border:1px solid #d9e9ff;color:#426186;font-size:14px;line-height:1.6}
.result-note{margin-top:12px;color:#6d7d92;font-size:13px;line-height:1.6}
@media (max-width:860px){.top-summary{grid-template-columns:repeat(2,1fr)}.check-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.page{padding:14px 12px 22px}.hero-title{font-size:25px}.grid-4,.grid-3,.grid-2,.top-summary,.check-list{grid-template-columns:1fr}.form-card,.admin-card{padding:18px 14px 20px}.hero-card{padding:20px 16px}.summary-value{font-size:22px}.field input,.field select,.btn-primary,.btn-secondary,.btn-link{min-height:52px;height:52px}}
