.hvp{max-width:1100px;margin:20px auto;font-family:system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#222}.hvp-hero,.hvp-selector,.hvp-location{border:1px solid #ddd;border-radius:14px;padding:18px;margin-bottom:18px;background:#fff}.hvp-hero h2{margin:0 0 8px}.hvp-location{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.hvp-location label{display:block;font-weight:700;font-size:14px;margin-bottom:5px}.hvp-location input,.hvp-location select,.hvp-date,.hvp-year{width:100%;padding:10px;border:1px solid #bbb;border-radius:8px;box-sizing:border-box}.hvp-location button,.hvp-load,.hvp-print{padding:10px 15px;border:0;border-radius:8px;cursor:pointer;font-weight:700}.hvp-geo,.hvp-load{background:#222;color:#fff}.hvp-print{background:#eee;color:#111;margin-top:16px}.hvp-location-msg{margin:8px 0 14px;font-size:14px}.hvp-date-row{display:flex;gap:10px;align-items:center}.hvp-date{max-width:220px}.hvp-year{max-width:130px}.hvp-today,.hvp-custom{min-height:40px}.hvp-output{border:1px solid #ddd;border-radius:14px;padding:20px;background:#fff}.hvp-output h2{text-align:center;margin-top:0}.hvp-location-line{text-align:center;font-size:13px;color:#666;margin-bottom:18px}.hvp-output section{margin:20px 0}.hvp-output h3{margin-bottom:10px}.hvp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.hvp-grid>div{border:1px solid #ddd;border-radius:10px;padding:12px;background:#fafafa}.hvp-grid b,.hvp-grid span{display:block}.hvp-grid span{margin-top:6px}.hvp-output table{width:100%;border-collapse:collapse}.hvp-output th,.hvp-output td{border:1px solid #ddd;padding:9px;text-align:left}.hvp-good{color:#087f23;font-weight:700}.hvp-bad{color:#b00020;font-weight:700}.hvp-neutral{color:#7a4a00;font-weight:700}.hvp-loading,.hvp-error{padding:18px;border:1px dashed #bbb;border-radius:10px}.hvp-output footer{font-size:12px;color:#666;margin-top:22px}@media(max-width:800px){.hvp-location{grid-template-columns:1fr}.hvp-grid{grid-template-columns:repeat(2,1fr)}.hvp-date-row{flex-wrap:wrap}}@media print{body *{visibility:hidden!important}.hvp-output,.hvp-output *{visibility:visible!important}.hvp-output{position:absolute;left:0;top:0;width:100%;border:0}}
