*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#18202a;font:15px system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1220px;margin:auto;padding:0 22px}.narrow{max-width:600px;padding-top:60px}header{background:#202a35;color:white;position:sticky;top:0;z-index:10}.nav{min-height:68px;display:flex;align-items:center;gap:24px}.brand{font-size:22px;letter-spacing:.5px;white-space:nowrap}.brand b{color:#f5b800}.search{flex:1}.search input{width:100%;background:#303c49;border:1px solid #45515e;color:white}.nav nav{display:flex;align-items:center;gap:15px;white-space:nowrap}.inline{display:inline}.link{background:none;padding:0;color:white}.btn,button{background:#f0a500;color:#111;border:0;border-radius:7px;padding:11px 17px;font-weight:700;cursor:pointer}.secondary{background:#e9edf1}.hero{margin:28px 0 18px;background:linear-gradient(110deg,#263747,#18232e);color:white;border-radius:15px;padding:42px}.hero h1{font-size:36px;margin:0 0 10px}.catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.catgrid a,.card{background:white;border:1px solid #e2e5e9;border-radius:12px;padding:20px;box-shadow:0 2px 10px #00000008}.catgrid strong{font-size:20px;display:block}.catgrid span{color:#697583}.sectiontitle{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.listing{background:white;border:1px solid #e2e5e9;border-radius:11px;overflow:hidden}.pic{height:180px;background:#e8ebee;display:grid;place-items:center;color:#7a8490}.pic img{width:100%;height:100%;object-fit:cover}.pad{padding:14px}.pad h3{height:42px;margin:0 0 10px;font-size:15px}.pad b{font-size:18px;display:block}.pad small{color:#75808c}.detail{display:grid;grid-template-columns:1fr 360px;gap:20px;margin-top:25px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:15px}.gallery img{width:100%;max-height:420px;object-fit:cover;border-radius:9px}.sticky{position:sticky;top:90px;height:max-content}.price{font-size:30px;font-weight:800}.safe{background:#e8f8ee;color:#16733a;padding:12px;border-radius:8px;margin:15px 0}.desc{line-height:1.65}.auth{max-width:480px;margin:55px auto}.formwide{max-width:800px;margin:30px auto}label{display:block;font-weight:600;margin:13px 0}input,select,textarea{width:100%;padding:11px;border:1px solid #cfd5dc;border-radius:7px;margin-top:6px;font:inherit;background:white}.cols{display:grid;grid-template-columns:1fr 1fr;gap:15px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;margin:0}.alert{margin-top:18px;background:#fff4ce;border:1px solid #f0d46d;padding:13px;border-radius:8px}.table{overflow:auto;margin:18px 0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #e7eaed}.table form{display:flex;gap:5px}.table select{margin:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stats div{background:#202a35;color:white;padding:22px;border-radius:12px}.stats b{font-size:30px;display:block}.admincols{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.msg{padding:14px 0;border-bottom:1px solid #eee}code{background:#eef1f4;padding:3px 6px;border-radius:4px}footer{margin-top:60px;background:#202a35;color:#ccd3da;padding:28px 0}footer .wrap{display:flex;justify-content:space-between}@media(max-width:850px){.search{display:none}.nav{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.nav nav{overflow:auto;width:100%}.grid{grid-template-columns:repeat(2,1fr)}.catgrid,.detail,.admincols{grid-template-columns:1fr}.sticky{position:static}.hero{padding:28px}.hero h1{font-size:28px}}@media(max-width:520px){.wrap{padding:0 12px}.grid{grid-template-columns:1fr}.cols,.stats{grid-template-columns:1fr}.hero{border-radius:0;margin-left:-12px;margin-right:-12px}.pic{height:220px}footer .wrap{display:block}}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto auto;gap:10px;background:#fff;padding:14px;border:1px solid #e5e7eb;border-radius:14px;margin:18px 0}.filters input{min-width:0}.notice{padding:14px;background:#fff3cd;border:1px solid #ffe69c;border-radius:10px;margin:12px 0}@media(max-width:800px){.filters{grid-template-columns:1fr 1fr}.filters>*:first-child{grid-column:1/-1}}
