:root{font-family:Inter,system-ui,Arial,sans-serif;color:#20364f;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.app{display:flex;min-height:100vh}aside{width:255px;min-width:255px;background:#13385f;color:#fff;padding:34px 17px;display:flex;flex-direction:column}.logo{font-size:27px;font-weight:800;letter-spacing:3px;padding:5px 13px 60px}.logo span{color:#d9b36e;font-size:15px}.logo small{font-size:10px;display:block;letter-spacing:2px;font-weight:500;opacity:.8}nav{display:grid;gap:8px}nav button{display:flex;align-items:center;gap:14px;width:100%;color:#cbd8e4;border:0;background:none;padding:14px;border-radius:10px;text-align:left}nav button.active,nav button:hover{background:#2b547e;color:#fff}aside footer{margin-top:auto;color:#9db4cc;font-size:12px;padding:14px}main{flex:1;min-width:0}header{height:76px;background:#fff;border-bottom:1px solid #edf0f4;display:flex;align-items:center;justify-content:space-between;padding:0 38px;color:#8091a2;font-size:14px}header b{color:#28405d}.lang{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e1e8ef;padding:10px 14px;border-radius:9px;color:#254565}.page{max-width:1300px;margin:auto;padding:43px}.overline{font-size:11px;color:#c5a05d;font-weight:800;letter-spacing:2px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}h1{font-size:32px;margin:5px 0}h2{font-size:21px}.muted{color:#8797a8;font-size:14px}.notice{background:#fff6e7;border:1px solid #f2dfbd;color:#86652c;padding:16px;border-radius:11px;font-size:13px;margin:20px 0 27px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.tile,.tableCard{background:#fff;border:1px solid #ecf0f5;border-radius:14px;padding:25px;box-shadow:0 3px 16px #153b5910}.tile svg{color:#bd9758}.tile p{font-size:13px;color:#8193a5}.tile strong{font-size:29px;color:#153b61;overflow-wrap:anywhere}.primary{display:flex;align-items:center;justify-content:center;gap:8px;background:#174677;color:#fff;border:0;padding:12px 18px;border-radius:9px}.primary:disabled{opacity:.45}.tableTitle{font-weight:700;padding-bottom:20px;border-bottom:1px solid #edf0f5}.record{display:flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid #edf0f5}.record div{flex:1}.record small{display:block;color:#8997a8;margin-top:6px}.delete{border:0;background:#fff;color:#a1aeba}.empty{text-align:center;padding:60px 20px;color:#a1aebb}.foot{margin-top:35px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#122c4b88;display:grid;place-items:center;padding:20px}.modal{background:#fff;border-radius:16px;padding:30px;width:min(500px,100%);max-height:90vh;overflow:auto}.modal label{display:grid;gap:7px;margin:15px 0;color:#56718a;font-size:13px}.modal input,.modal select{padding:11px;border:1px solid #d9e3ec;border-radius:8px;color:#20384f;width:100%}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.actions button:not(.primary){border:0;background:#eef2f7;color:#345;padding:12px 18px;border-radius:9px}@media(max-width:950px){.grid{grid-template-columns:repeat(2,1fr)}.page{padding:24px}aside{width:210px;min-width:210px}}@media(max-width:620px){.app{display:block}aside{width:100%;min-width:0;padding:14px}.logo{padding:5px 0 12px;font-size:20px}nav{display:flex;overflow:auto}nav button{font-size:12px;padding:9px;white-space:nowrap}aside footer{display:none}header{height:60px;padding:0 16px}.page{padding:17px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tile{padding:16px}.tile strong{font-size:22px}.heading{align-items:start}h1{font-size:24px}}.headerActions{display:flex;align-items:center;gap:10px}.headerActions>button:not(.lang){border:1px solid #e3e9f0;border-radius:8px;background:#fff;padding:9px 12px;display:flex;gap:6px;align-items:center;color:#275071}.role{font-size:11px;color:#52708c;background:#eaf2f8;padding:6px 9px;border-radius:20px}.notice{display:flex;align-items:center;gap:9px}.searchInput{float:right;border:1px solid #e0e8ef;padding:8px 11px;border-radius:8px;max-width:180px}.error{background:#ffecec;color:#9f2938;padding:13px;border-radius:9px;margin:15px 0;font-size:13px}.login{background:linear-gradient(120deg,#102f53,#315984);min-height:100vh;display:grid;place-items:center;padding:20px}.loginCard{background:#fff;border-radius:17px;padding:36px;width:min(440px,100%);box-shadow:0 20px 80px #081d3444}.loginCard .logo{padding:0 0 20px;color:#163e67}.loginCard .logo small{color:#66809c}.loginCard h1{font-size:24px;margin:12px 0}.loginCard form label{display:grid;gap:7px;margin:17px 0;font-size:13px;color:#516c83}.loginCard input{border:1px solid #d9e2ea;padding:12px;border-radius:9px;width:100%}.loginCard .primary{width:100%}.loginCard .lang{margin-top:18px}.plain{margin-top:15px;background:none;border:none;color:#1d527e;text-decoration:underline}@media(max-width:700px){.headerActions{gap:4px}.headerActions .role{display:none}.headerActions>button:not(.lang){font-size:0;padding:9px}.searchInput{float:none;display:block;max-width:100%;width:100%;margin-top:10px}}.mobileMenuToggle,.compactLang{display:none}.brandBar,.breadcrumb{min-width:0}.headerActions{flex-shrink:0}.record>div{min-width:0}.record b,.record small{overflow-wrap:anywhere}@media(max-width:620px){.app{min-width:0}aside{padding:12px 16px}.brandBar{display:flex;align-items:center;justify-content:space-between;gap:14px}aside .logo{padding:4px 0;font-size:23px}aside .logo small{font-size:9px}.mobileMenuToggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;border:1px solid #ffffff55;border-radius:10px;background:#ffffff19;color:#fff}aside nav{display:none;overflow:visible;margin-top:12px}aside nav.navOpen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}aside nav button{width:100%;min-width:0;min-height:45px;padding:10px 8px;gap:8px;font-size:12px;white-space:normal}aside nav button svg{flex:0 0 auto}header{gap:10px;padding:0 14px;height:62px}header .breadcrumb{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.headerActions{gap:5px}.headerActions .lang{min-height:42px;min-width:62px;padding:8px 9px;gap:5px;font-size:12px}.headerActions .lang svg{flex:0 0 auto}.headerActions .langLabel{display:none}.headerActions .compactLang{display:inline;font-weight:700}.headerActions>button:not(.lang){width:42px;min-width:42px;min-height:42px;padding:9px;justify-content:center}.headerActions .actionLabel{display:none}.page{padding:20px 16px 30px}.heading{gap:10px;flex-wrap:wrap}.heading>div{min-width:0}.heading .primary{min-height:44px}.tile{min-width:0;padding:16px}.tableCard{padding:16px}.record{gap:10px;flex-wrap:wrap}.record>div{flex:1 1 120px}.record>strong{flex:0 0 auto;max-width:100%;overflow-wrap:anywhere}.record .delete{min-width:42px;min-height:42px}.login{min-height:100svh;padding:16px}.loginCard{padding:27px 22px}.loginCard .lang{min-height:44px}.modal{padding:23px 18px}}@media(max-width:360px){.grid{grid-template-columns:1fr}.headerActions>button:not(.lang){width:38px;min-width:38px}.headerActions .lang{min-width:54px}}.propertyModal{width:min(760px,100%);max-height:min(92svh,900px);overflow-y:auto}.propertyFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.propertyFormGrid>label{min-width:0}.propertyModal textarea{display:block;width:100%;padding:12px;margin-top:7px;color:#20384f;border:1px solid #d9e3ec;border-radius:8px;resize:vertical;font:inherit}.amenityOptions{border:1px solid #e0e8ef;border-radius:10px;margin:14px 0;padding:12px 15px}.amenityOptions legend{padding:0 6px;color:#56718a;font-size:13px;font-weight:700}.amenityGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}.amenityGrid .amenityCheck{display:flex;align-items:center;gap:9px;margin:0;padding:5px 0;color:#20384f;cursor:pointer}.amenityCheck input{width:18px;min-width:18px;height:18px;margin:0;accent-color:#174677}.descriptionField{display:block;margin:15px 0;color:#56718a;font-size:13px}.photoLater{font-size:12px;line-height:1.5}.recordButtons{display:flex;flex:0 0 auto;gap:5px;align-items:center}.recordButtons>button{display:flex;align-items:center;justify-content:center;min-height:42px;min-width:42px;border-radius:8px}.editRecord{border:0;background:#eef5fb;color:#24577f}.editRecord:hover{background:#dcecf8}.delete:hover{background:#fff0f0;color:#ad4a52}@media(max-width:620px){.propertyModal{padding:20px 17px}.propertyModal h2{font-size:19px}.propertyFormGrid{grid-template-columns:1fr;gap:0}.amenityGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}.amenityGrid .amenityCheck{font-size:12px;min-height:32px}.recordButtons{gap:3px}}@media(max-width:380px){.amenityGrid{grid-template-columns:1fr}}.propertyDetailsModal{width:min(920px,100%);max-height:min(92svh,920px);overflow-y:auto}.galleryHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}.galleryHeading h2,.galleryHeading h3{margin:0}.galleryHeading h3{font-size:18px}.galleryClose,.galleryRefresh{display:flex;align-items:center;justify-content:center;min-width:43px;height:43px;background:#f1f5f9;border:0;border-radius:10px;color:#20384f}.detailGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:22px}.detailItem{background:#f7f9fc;border:1px solid #e8eff6;padding:12px;border-radius:9px;min-width:0}.detailItem small{display:block;color:#8193a5;font-size:12px;margin-bottom:7px}.detailItem strong{display:block;overflow-wrap:anywhere;font-size:14px}.detailDescription{margin:14px 0;white-space:pre-wrap;overflow-wrap:anywhere}.detailDescription>b{font-size:13px;color:#496c88}.detailDescription p{line-height:1.6;font-size:14px}.featureTags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.featureTags span{background:#e9f0f7;color:#25557d;border-radius:20px;padding:5px 10px;font-size:12px}.photoGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:12px 0}.photoCard{position:relative;min-width:0;overflow:hidden;border-radius:12px;border:1px solid #e4eaf1;background:#f3f7fb}.photoCard img{display:block;width:100%;height:172px;object-fit:cover}.coverBadge{position:absolute;top:8px;left:8px;background:#173e68e8;color:#fff;padding:5px 7px;display:flex;align-items:center;gap:4px;border-radius:7px;font-size:11px}.photoActions{display:flex;justify-content:flex-end;gap:5px;padding:5px}.photoActions button{display:grid;place-items:center;border:0;border-radius:7px;background:#fff;min-width:42px;min-height:42px;color:#315673}.photoActions button:disabled{opacity:.5}.photoNote{font-size:12px;line-height:1.6}.galleryFooter{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px}.galleryEdit,.uploadControl{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:9px;font:inherit;cursor:pointer}.galleryEdit{background:#eef3f8;color:#184a78;border:1px solid #dae4ef}.uploadControl{background:#174677;color:#fff;border:1px solid #174677}.uploadControl input{display:none}.uploadDisabled{opacity:.5;cursor:not-allowed}@media(max-width:620px){.propertyDetailsModal{padding:20px 15px}.detailGrid,.photoGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.photoCard img{height:125px}.photoActions button{min-width:42px;min-height:42px}.galleryFooter{flex-direction:column;align-items:stretch}.galleryFooter>*{width:100%}}@media(max-width:350px){.detailGrid,.photoGrid{grid-template-columns:1fr}}
