*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:#172337;font-family:Arial,"Malgun Gothic",sans-serif;line-height:1.6}header{background:#2563eb;color:white;padding:28px 24px}header>div,main{max-width:1100px;margin:auto}h1{margin:0;font-size:27px}header p{margin:6px 0 0;color:#e1ebff}main{padding:24px}.search-panel{background:white;border-radius:12px;padding:24px;margin-bottom:24px}.search-panel label{display:block;font-size:20px;font-weight:bold;margin-bottom:12px}form{display:flex;gap:8px;margin-bottom:12px}input{flex:1;min-width:0;border:1px solid #c4cedd;border-radius:7px;padding:12px;font-size:16px}button{border:0;border-radius:7px;background:#2563eb;color:white;padding:11px 17px;cursor:pointer;font-size:15px}.secondary{background:#e9effa;color:#234e91}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}.parking-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.parking-card{background:white;padding:22px;border-radius:12px;border:1px solid #e3e8f0}.card-top{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}h2{font-size:19px;margin:0;overflow-wrap:anywhere}.badge{font-size:12px;border-radius:5px;padding:3px 7px;white-space:nowrap}.live{color:#11623d;background:#dcfce7}.muted{color:#536178;background:#edf0f5}.address{color:#536178;min-height:26px}.availability{font-size:20px;font-weight:bold;color:#15803d;background:#effcf4;padding:12px;border-radius:8px}.full{color:#b91c1c;background:#fff1f2}.capacity{font-weight:bold}.updated,small{font-size:12px;color:#637187}details{border-top:1px solid #e6eaf0;padding-top:12px;margin-top:16px}summary{cursor:pointer;color:#245bc0}dl{display:grid;grid-template-columns:100px 1fr;gap:8px;font-size:14px}dt{color:#637187}dd{margin:0;overflow-wrap:anywhere}.warning{color:#9a4c00}.warning:empty{display:none}#more-button{display:block;margin:24px auto}#more-button[hidden]{display:none}.empty{grid-column:1/-1;text-align:center;padding:30px;background:white;border-radius:12px}@media(max-width:700px){main{padding:16px}.parking-list{grid-template-columns:1fr}.search-panel{padding:18px}form{flex-wrap:wrap}input{flex-basis:100%}.card-top{flex-wrap:wrap}header{padding:22px 18px}}
