:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#16202a;background:#f4f6f8;font-synthesis:none}*{box-sizing:border-box}html,body,#root{margin:0;min-width:100%;min-height:100%}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{min-height:100vh}.mobile-header{position:sticky;top:0;z-index:800;height:72px;padding:0 28px;display:flex;align-items:center;gap:16px;background:#ffffffeb;border-bottom:1px solid rgba(28,61,46,.1);box-shadow:0 5px 22px #13302314;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.menu-toggle{width:44px;height:44px;padding:10px;border:0;border-radius:13px;display:grid;align-content:center;gap:5px;background:#173b2d;box-shadow:0 6px 16px #173b2d33}.menu-toggle span{display:block;width:23px;height:2px;border-radius:3px;background:#fff}.mobile-brand{display:flex;align-items:center;gap:10px;color:#173b2d}.mobile-brand>div{min-width:0}.mobile-brand-mark{width:40px;height:40px;padding:3px;object-fit:contain;border-radius:11px;background:#74a84d}.mobile-brand strong,.mobile-brand small{display:block}.mobile-brand strong{letter-spacing:.4px;font-size:18px}.mobile-brand small{margin-top:1px;color:#718078;font-size:11px}.site-picker{position:relative;width:min(360px,38vw);margin-left:auto}.site-picker summary{min-height:54px;padding:7px 42px 7px 7px;position:relative;list-style:none;display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;border:1px solid #ccdad2;border-radius:16px;background:linear-gradient(135deg,#fff,#f0f6f2);color:#173b2d;cursor:pointer;box-shadow:0 5px 16px #173b2d14}.site-picker summary::-webkit-details-marker{display:none}.site-picker summary:after{content:"⌄";position:absolute;right:15px;top:50%;transform:translateY(-55%);font-size:20px;transition:transform .2s}.site-picker[open] summary:after{transform:translateY(-40%) rotate(180deg)}.current-site-code{width:46px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#173b2d,#3e7655);color:#fff;font-size:14px;font-weight:900;white-space:nowrap}.current-site-text{min-width:0}.current-site-text small,.current-site-text strong{display:block}.current-site-text small{color:#7a867f;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:1.2px}.current-site-text strong{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.site-picker-menu{position:absolute;z-index:1200;top:calc(100% + 8px);right:0;width:min(390px,90vw);padding:10px;display:grid;gap:7px;border:1px solid #d7e1db;border-radius:18px;background:#fffffffa;box-shadow:0 22px 55px #10241d38;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-picker-title{padding:5px 5px 8px}.site-picker-title strong,.site-picker-title small{display:block}.site-picker-title strong{color:#18392a;font-size:15px}.site-picker-title small{margin-top:2px;color:#7c8881;font-size:11px}.site-picker-menu button{position:relative;padding:10px;display:grid;grid-template-columns:58px 1fr 24px;gap:11px;align-items:center;border:1px solid transparent;border-radius:13px;background:#f7f9f8;color:#234333;text-align:left}.site-picker-menu button:hover{background:#eff5f1}.site-picker-menu button.active{border-color:#bcd3c5;background:#eaf3e6}.site-picker-menu .site-code{width:58px;height:40px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,#254f39,#3f7957);color:#fff;white-space:nowrap;font-size:17px;font-weight:900;letter-spacing:.5px;box-shadow:inset 0 1px #ffffff24}.site-option-text{min-width:0}.site-option-text strong,.site-option-text small{display:block}.site-option-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.site-option-text small{margin-top:3px;color:#7b8780;font-size:10px}.site-selected{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#315f44;color:#fff;font-size:12px}.sidebar{position:fixed;top:0;left:0;z-index:1000;width:250px;height:100vh;padding:24px 18px;overflow-y:auto;background:radial-gradient(circle at 15% 0,rgba(116,168,77,.17),transparent 30%),linear-gradient(165deg,#102d22,#0a2119 64%,#081b15);color:#fff;display:flex;flex-direction:column;transform:translate(-105%);transition:transform .25s ease,box-shadow .25s ease}.sidebar.open{transform:translate(0);box-shadow:18px 0 50px #03140d47}.sidebar-close{position:absolute;top:17px;right:14px;width:36px;height:36px;border:0;border-radius:11px;background:#ffffff1a;color:#fff;font-size:26px;line-height:1}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;border:0;padding:0;background:#05130d85;opacity:0;pointer-events:none;transition:opacity .25s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-overlay.visible{opacity:1;pointer-events:auto}body.menu-open{overflow:hidden}.brand{min-width:0;display:flex;gap:12px;align-items:center;margin-bottom:24px}.brand-mark{width:48px;height:48px;padding:4px;object-fit:contain;border-radius:14px;background:#74a84d}.brand-copy{min-width:0;display:grid;gap:2px}.brand-kicker{color:#9dcb7c;font-size:9px;font-weight:850;letter-spacing:1.8px}.brand strong{overflow:hidden;display:block;color:#fff;font-size:17px;letter-spacing:.35px;text-overflow:ellipsis;white-space:nowrap}.brand small{color:#9fb2a8;font-size:10px}.sidebar-nav-label{margin:0 9px 7px;color:#718f80;font-size:9px;font-weight:850;letter-spacing:1.6px}.sidebar nav{display:grid;gap:8px}.nav-button{min-width:0;min-height:56px;padding:7px 9px;display:grid;grid-template-columns:38px minmax(0,1fr) 16px;gap:10px;align-items:center;border:1px solid transparent;border-radius:14px;color:#d9e6df;background:transparent;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.nav-button:hover{border-color:#ffffff14;background:#ffffff12}.nav-button.active{border-color:#9dcb7c3d;background:linear-gradient(135deg,#74a84d40,#74a84d1f);color:#fff}.nav-button-icon{position:relative;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#ffffff14;color:#dce9e1}.nav-button.active .nav-button-icon{background:#8dbc64;color:#0d2a1f;box-shadow:0 5px 14px #05181033}.nav-button-icon:before,.nav-button-icon:after{content:"";position:absolute;display:block}.nav-button-icon.home:before{width:14px;height:11px;bottom:9px;border:2px solid currentColor;border-top:0;border-radius:1px 1px 3px 3px}.nav-button-icon.home:after{width:11px;height:11px;top:8px;border-top:2px solid currentColor;border-left:2px solid currentColor;transform:rotate(45deg)}.nav-button-icon.stay:before{width:17px;height:2px;border-radius:2px;background:currentColor}.nav-button-icon.stay:after{width:2px;height:17px;border-radius:2px;background:currentColor}.nav-button-icon.archive:before{width:17px;height:13px;top:11px;border:2px solid currentColor;border-radius:3px}.nav-button-icon.archive:after{width:7px;height:7px;top:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}.nav-button-icon.apartments:before{width:6px;height:6px;border-radius:2px;background:currentColor;box-shadow:9px 0 currentColor,0 9px currentColor,9px 9px currentColor}.nav-button-icon.users:before{width:8px;height:8px;top:8px;border:2px solid currentColor;border-radius:50%}.nav-button-icon.users:after{width:17px;height:9px;bottom:8px;border:2px solid currentColor;border-bottom:0;border-radius:12px 12px 2px 2px}.nav-button-copy{min-width:0;display:grid;gap:2px}.nav-button-copy strong{overflow:hidden;font-size:13px;font-weight:780;text-overflow:ellipsis;white-space:nowrap}.nav-button-copy small{overflow:hidden;color:#8fa59a;font-size:9px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.nav-button.active .nav-button-copy small{color:#c5dacd}.nav-button-arrow{color:#6f8c7d;font-size:21px;line-height:1;transition:transform .16s ease}.nav-button.active .nav-button-arrow{color:#9dcb7c;transform:translate(2px)}.sidebar-user{margin-top:auto;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#fff1}.sidebar-user-head{min-width:0;display:grid;grid-template-columns:39px minmax(0,1fr);gap:10px;align-items:center}.sidebar-avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#8dbc64;color:#102d22;font-size:17px;font-weight:900}.sidebar-user-head>div{min-width:0}.sidebar-user strong{overflow:hidden;display:block;color:#fff;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-head>div>span{display:block;margin-top:2px;color:#9fb2a8;font-size:10px}.sidebar-user>button{width:100%;min-height:38px;margin-top:10px;padding:7px 10px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#ffffff0e;color:#dce9e1;font-size:11px;font-weight:750;text-decoration:none}.main{min-width:0;padding:28px}.page-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.page-header h1{margin:0 0 6px;font-size:29px}.page-header p{margin:0;color:#66737d}.date-badge{padding:11px 14px;background:#fff;border-radius:12px;box-shadow:0 4px 14px #1f2d2612}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:13px;margin-bottom:18px}.summary-card{padding:17px;background:#fff;border:0;border-radius:14px;border-top:5px solid #3485db;box-shadow:0 5px 18px #1f2d2612}.summary-card.filter-card{width:100%;color:inherit;text-align:left;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.summary-card.filter-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #1f2d2621}.summary-card.filter-card:focus-visible{outline:3px solid rgba(31,94,61,.24);outline-offset:2px}.summary-card.filter-card.active{background:#fff;box-shadow:0 0 0 2px #315f44,0 10px 24px #1f483124}.summary-card span{color:#68757e;font-size:13px}.summary-card strong{display:block;margin-top:7px;font-size:29px}.summary-value{display:flex;align-items:baseline;gap:9px}.summary-card .summary-value strong{margin-top:7px}.summary-percentage{padding:4px 8px;border-radius:999px;background:#e6f2e1;color:#39712d;font-size:12px;line-height:1;white-space:nowrap}.summary-card.green{border-top-color:#69a84b}.summary-card.gray{border-top-color:#c7cdd2}.summary-card.red{border-top-color:#dc3e42}.summary-card.orange{border-top-color:#ffd400}.summary-card.tenant{border-top-color:#e5c500}.summary-card.owner{border-top-color:#50c332}.dashboard-summary-grid .summary-card{min-height:105px;padding:16px 17px;border:1px solid #e1e9e4;border-left:5px solid #3485db;display:flex;flex-direction:column;justify-content:center;background:#fff;box-shadow:0 7px 20px #19372713}.dashboard-summary-grid .summary-card span{color:#5f6e66;font-size:12px;font-weight:750;letter-spacing:.25px}.dashboard-summary-grid .summary-card strong{color:#142119;font-size:31px;letter-spacing:-.6px}.dashboard-summary-grid .summary-card.blue{border-left-color:#3485db;background:linear-gradient(135deg,#fbfdff,#e8f3ff)}.dashboard-summary-grid .summary-card.blue span,.dashboard-summary-grid .summary-card.blue strong{color:#142119}.dashboard-summary-grid .summary-card.green{border-left-color:#61a34a;background:linear-gradient(135deg,#fbfff9,#e8f6e2)}.dashboard-summary-grid .summary-card.gray{border-left-color:#aeb9b3;background:linear-gradient(135deg,#fff,#f3f6f4)}.dashboard-summary-grid .summary-card.owner{border-left-color:#50c332;background:linear-gradient(135deg,#fbfff9,#e4f8dc)}.dashboard-summary-grid .summary-card.tenant{border-left-color:#e5c500;background:linear-gradient(135deg,#fffef8,#fff4c2)}.dashboard-summary-grid .summary-card.red{border-left-color:#ee3549;background:linear-gradient(135deg,#fffafb,#ffe2e6)}.dashboard-summary-grid .summary-card.filter-card:hover{box-shadow:0 12px 28px #19372724}.dashboard-summary-grid .summary-card.filter-card.active{box-shadow:0 0 0 2px #183f2e,0 11px 25px #19372721}.legend{display:flex;flex-wrap:wrap;gap:20px;padding:14px 17px;margin-bottom:20px;background:#fff;border-radius:13px;box-shadow:0 4px 15px #1f2d260f}.legend div{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650}.legend-color{width:17px;height:17px;border-radius:6px;border:1px solid #cbd4cf}.legend-color.empty,.apartment-tile.empty{background:#f8faf9;color:#20332a}.legend-color.occupied,.apartment-tile.occupied,.legend-color.tenant,.apartment-tile.tenant{background:#f4d31d;border-color:#d2b500;color:#111}.legend-color.tomorrow,.apartment-tile.tomorrow,.legend-color.overdue,.apartment-tile.overdue{background:#ee3549;border-color:#cf2336;color:#111}.legend-color.owner,.apartment-tile.owner{background:#58d039;border-color:#3cab24;color:#111}.legend-color.long_term,.apartment-tile.long_term{background:#064fc8;border-color:#00378e;color:#111}.apartment-tile.filtered-out,.apartment-tile.filtered-out:hover{transform:none;border-color:#e1e7e3;background:#f0f3f1;color:transparent;box-shadow:none;filter:none;opacity:.45;cursor:default}.section-panel{position:relative;margin-bottom:27px;padding:0 18px 20px;overflow:hidden;border:1px solid #e0e7e3;border-radius:20px;background:#f8faf9;box-shadow:0 10px 30px #1f2d2614}.section-heading{margin:0 -18px 20px;padding:15px 20px;display:flex;align-items:center;justify-content:center;gap:13px;color:#fff;background:linear-gradient(135deg,#10241d,#315f44)}.section-heading span{color:#f1f7f3;font-size:18px;font-weight:850;letter-spacing:1.5px}.section-heading h2{margin:0;font-size:30px;line-height:1;letter-spacing:1px}.section-panel .blocks-grid{margin-top:0}.blocks-grid{display:grid;grid-template-columns:repeat(2,minmax(350px,1fr));gap:24px}.blocks-grid.single{grid-template-columns:minmax(350px,1fr)}.block-panel{padding:14px;border:1px solid #e0e7e3;border-radius:16px;background:#fff;box-shadow:0 4px 14px #1f2d260d}.block-panel h3{margin:0 0 13px;padding-bottom:10px;border-bottom:1px solid #e5ebe7;color:#254936;font-size:16px;letter-spacing:1.2px;text-align:center}.apartments-grid{display:grid;grid-template-columns:repeat(8,minmax(38px,1fr));gap:7px}.apartment-tile{-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;min-height:47px;border:1px solid rgba(36,62,49,.16);border-radius:11px;font-size:16px;font-weight:850;color:#20332a;box-shadow:inset 0 -1px #0000000a;transition:transform .15s,box-shadow .15s,filter .15s}.apartment-tile:hover{transform:translateY(-2px);box-shadow:0 7px 15px #14302329;filter:brightness(1.03);z-index:2}.apartment-tile:focus-visible{outline:3px solid rgba(116,168,77,.35);outline-offset:2px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;padding:20px;background:#081410ad;display:grid;place-items:center}.modal-card{position:relative;width:min(680px,100%);max-height:90vh;overflow-y:auto;padding:25px;background:#fff;border-radius:18px;box-shadow:0 24px 80px #0000004d}.modal-card.large{width:min(760px,100%)}.modal-card h2{margin-top:0;padding-right:42px}.modal-x{position:absolute;top:13px;right:15px;width:34px;height:34px;border:0;border-radius:50%;font-size:24px;background:#edf0f2}.status-pill{display:inline-block;margin-bottom:18px;padding:7px 12px;border-radius:999px;font-weight:750}.status-pill.empty{background:#e9edef}.status-pill.occupied,.status-pill.tenant{background:#f4d31d;color:#111}.status-pill.tomorrow,.status-pill.overdue{background:#ee3549;color:#111}.status-pill.owner{background:#58d039;color:#111}.status-pill.long_term{background:#064fc8;color:#111}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0 20px}.detail-box{padding:12px;border-radius:11px;background:#f5f7f8}.detail-box span,.detail-box strong{display:block}.detail-box span{color:#6c7880;font-size:12px;margin-bottom:4px}.guest-cards{display:grid;gap:10px}.guest-card{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px;border:1px solid #e0e5e3;border-radius:12px}.guest-card strong,.guest-card span{display:block}.guest-card span{margin-top:3px;color:#67737c;font-size:13px}.guest-card a,.archive-guest a,.passport-button{padding:8px 11px;border-radius:8px;background:#265fa3;color:#fff;text-decoration:none;white-space:nowrap}.passport-button{border:0}.passport-button.compact{font-size:13px}.passport-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1800;padding:18px;display:grid;place-items:center;background:#050e0ae0;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.passport-viewer{width:min(920px,100%);max-height:96vh;padding:14px;display:flex;flex-direction:column;border-radius:20px;background:#f7f9f8;box-shadow:0 30px 100px #00000080}.passport-viewer-header{display:grid;grid-template-columns:auto 1fr;gap:13px;align-items:center;padding:2px 2px 12px}.passport-viewer-header strong,.passport-viewer-header small{display:block}.passport-viewer-header small{margin-top:2px;color:#718078}.passport-back{border:0;border-radius:10px;background:#e4ebe7;color:#203a2e;font-weight:750}.passport-back{padding:10px 12px}.passport-image-wrap{min-height:0;flex:1;overflow:auto;display:grid;place-items:center;border-radius:14px;background:#17211c}.passport-image-wrap img{display:block;max-width:100%;max-height:72vh;object-fit:contain}.passport-image-wrap iframe{width:min(100%,1000px);height:76vh;border:0;border-radius:10px;background:#fff}.login-page{min-height:100vh;padding:20px;display:grid;place-items:center;background:radial-gradient(circle at top left,#8bb663 0,#254936 36%,#0e211a)}.login-card{width:min(420px,100%);padding:33px;background:#fff;border-radius:22px;box-shadow:0 30px 90px #00000059}.login-logo{display:flex;align-items:center;justify-content:center;margin-bottom:20px}.login-logo img{width:82px;height:82px;padding:4px;object-fit:contain;border-radius:21px;background:#74a84d;box-shadow:0 10px 24px #315f4438}.login-card h1{margin-bottom:4px}.login-card p{color:#6b7871;margin-top:0;margin-bottom:24px}.remember-login{margin-top:13px;padding:11px 12px;display:grid;grid-template-columns:21px 1fr;gap:0 10px;align-items:center;border:1px solid #dce5df;border-radius:11px;background:#f7faf8;cursor:pointer}.remember-login input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.remember-check{width:21px;height:21px;display:grid;place-items:center;grid-row:1;border:2px solid #aab8b0;border-radius:6px;background:#fff;color:transparent;font-size:14px;font-weight:900;transition:background .15s,border-color .15s,color .15s}.remember-login input:checked+.remember-check{border-color:#315f44;background:#315f44;color:#fff}.remember-login input:focus-visible+.remember-check{outline:3px solid rgba(63,136,223,.25)}.remember-text{min-width:0;display:block}.remember-text strong{display:block}.remember-text strong{color:#263a2f;font-size:13px}label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#46524c}input,select{width:100%;padding:11px 12px;border:1px solid #cfd7d3;border-radius:9px;background:#fff;color:#17231d}.primary-button,.secondary-button,.danger-button{border:0;border-radius:9px;padding:10px 14px;font-weight:750}.primary-button{background:#315f44;color:#fff}.secondary-button{background:#e5ecf5;color:#245486}.danger-button{background:#cf353b;color:#fff}button:disabled{opacity:.55;cursor:not-allowed}.quota-row{display:flex;gap:12px;flex-wrap:wrap;margin:-10px 0 18px}.quota-row span{padding:10px 14px;border-radius:12px;background:#e8f1ec;color:#244a37}.site-checks{margin:16px 0;padding:14px;border:1px solid #d6e1db;border-radius:12px}.site-checks legend{padding:0 7px;font-weight:800;color:#315f44}.site-checks label{display:flex;grid-template-columns:none;align-items:center;gap:9px;margin:8px 0}.site-checks input{width:18px;height:18px}.fixed-site-note{margin:14px 0;color:#526159}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.optional-text{color:#738078;font-size:11px;font-weight:600}.owner-date-note{margin:-4px 0 17px;padding:10px 12px;border-radius:10px;background:#edf4ef;color:#526159;font-size:13px}.login-card .primary-button{width:100%;margin-top:18px;padding:12px}.demo-info{margin-top:17px;font-size:12px;color:#78837d;line-height:1.5}.error-box,.page-message{padding:12px 14px;border-radius:10px;margin:13px 0}.error-box,.page-message.error{background:#ffe2e2;color:#9a2024}.page-message.success{background:#e2f4d8;color:#326b21}.page-message.info{background:#fff;color:#56635c}.tab-row{display:flex;gap:8px;margin-bottom:17px}.tab{border:0;border-radius:9px;padding:10px 14px;background:#dfe5e2}.tab.active{background:#315f44;color:#fff}.form-card,.table-card{margin-bottom:22px;padding:20px;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1f2d2612}.form-card.compact{margin-bottom:18px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:17px}.apartment-picker{position:relative;min-width:0;display:grid;gap:6px}.apartment-picker-label{font-size:13px;font-weight:700;color:#46524c}.apartment-picker-trigger{width:100%;min-height:62px;padding:7px 10px 7px 8px;display:grid;grid-template-columns:51px minmax(0,1fr) auto auto 19px;gap:9px;align-items:center;border:1px solid #c9d6cf;border-radius:13px;background:linear-gradient(135deg,#fbfdfc,#f1f6f3);color:#1b2d23;text-align:left;box-shadow:0 3px 10px #1f3d2e0d;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.apartment-picker-trigger:hover,.apartment-picker.open .apartment-picker-trigger{border-color:#6f9a80;box-shadow:0 7px 18px #224c351f;transform:translateY(-1px)}.apartment-picker-trigger:focus-visible{outline:3px solid rgba(63,136,223,.23);outline-offset:2px}.apartment-picker-code{min-width:51px;height:46px;padding:0 6px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,#173f2e,#397253);color:#fff;font-size:12px;font-weight:900;letter-spacing:.3px;text-align:center;white-space:nowrap;box-shadow:inset 0 1px #ffffff24}.apartment-picker-copy{min-width:0;display:grid;gap:2px}.apartment-picker-copy small{overflow:hidden;color:#77827c;font-size:9px;font-weight:800;letter-spacing:.75px;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap}.apartment-picker-copy strong{overflow:hidden;color:#182b21;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.apartment-picker-type,.apartment-picker-count{padding:6px 8px;border-radius:8px;background:#e5efe9;color:#315f44;font-size:11px;font-weight:850;white-space:nowrap}.apartment-picker-count{background:#fff;border:1px solid #dbe5df;color:#617068}.apartment-picker-chevron{color:#315f44;font-size:22px;font-weight:800;line-height:1;transition:transform .18s ease}.apartment-picker.open .apartment-picker-chevron{transform:rotate(180deg)}.apartment-picker-backdrop{display:none}.apartment-picker-menu{position:absolute;z-index:90;top:calc(100% + 9px);left:0;width:min(690px,calc(100vw - 64px));max-height:440px;padding:15px;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:11px;overflow:hidden;border:1px solid #d4e0d9;border-radius:18px;background:#fff;box-shadow:0 22px 55px #0f2b1d38,0 3px 12px #0f2b1d14}.apartment-picker-menu-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.apartment-picker-menu-header>div{display:grid;gap:2px}.apartment-picker-menu-header small{color:#7c8981;font-size:9px;font-weight:850;letter-spacing:1.25px}.apartment-picker-menu-header strong{color:#153425;font-size:19px}.apartment-picker-menu-header button{width:34px;height:34px;padding:0;border:0;border-radius:10px;background:#edf3ef;color:#315f44;font-size:23px;line-height:1}.apartment-picker-search{min-height:44px;padding:0 11px;display:grid;grid-template-columns:21px minmax(0,1fr);gap:7px;align-items:center;border:1px solid #d2ddd7;border-radius:11px;background:#f7faf8}.apartment-picker-search>span{color:#63746a;font-size:21px;font-weight:500}.apartment-picker-search input{min-height:42px;padding:0;border:0;border-radius:0;outline:0;background:transparent;font-size:14px}.apartment-picker-results{color:#7a867f;font-size:11px;font-weight:650}.apartment-picker-results strong{color:#315f44;font-size:13px}.apartment-option-grid{min-height:0;padding-right:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start;overflow-y:auto;overscroll-behavior:contain}.apartment-option-card{min-width:0;min-height:61px;padding:7px 9px 7px 7px;display:grid;grid-template-columns:49px minmax(0,1fr) 15px;gap:9px;align-items:center;border:1px solid #dde5e0;border-radius:12px;background:#fbfdfc;color:#1c2e24;text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}.apartment-option-card:hover,.apartment-option-card:focus-visible{border-color:#79a088;background:#f0f7f2;transform:translateY(-1px);box-shadow:0 6px 13px #224c3517}.apartment-option-card:focus-visible{outline:3px solid rgba(63,136,223,.2);outline-offset:1px}.apartment-option-card.selected{border-color:#315f44;background:#e8f2eb}.apartment-option-code{height:45px;padding:0 4px;display:grid;place-items:center;border-radius:9px;background:#315f44;color:#fff;font-size:11px;font-weight:900;text-align:center;white-space:nowrap}.apartment-option-copy{min-width:0;display:grid;gap:3px}.apartment-option-copy strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.apartment-option-copy small{overflow:hidden;color:#718078;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.apartment-option-arrow{color:#6e8176;font-size:22px;line-height:1}.apartment-picker-empty{grid-column:1 / -1;min-height:105px;padding:22px;display:grid;place-content:center;gap:5px;border:1px dashed #cdd9d2;border-radius:13px;color:#66766d;text-align:center}.apartment-picker-empty strong{color:#2c4939}.apartment-picker-empty span{font-size:12px}.guest-form-list{margin:18px 0}.bulk-passport-upload{margin-bottom:14px;padding:15px;display:grid;gap:7px;border:1px dashed #6f9a80;border-radius:13px;background:#eef6f1}.bulk-passport-upload strong{color:#174c35;font-size:15px}.bulk-passport-upload span{color:#5f7067;font-size:12px;font-weight:500}.bulk-passport-upload input{background:#fff}.guest-form{margin-bottom:13px;padding:15px;border-radius:12px;background:#f5f7f6}.guest-form h4{margin-top:0}.guest-form-header{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.guest-form-header h4{margin:0}.remove-guest-button{min-height:36px;padding:7px 12px;border:1px solid #e5b8bb;border-radius:9px;background:#fff1f2;color:#a32d34;font-weight:800}.remove-guest-button:hover{background:#ffe5e7}.remove-guest-button:disabled{cursor:not-allowed;opacity:.5}.guest-entry-layout.has-preview{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(500px,1.2fr);gap:20px;align-items:stretch}.guest-entry-fields{min-width:0}.guest-entry-fields .form-grid{grid-template-columns:1fr;margin-bottom:0;align-content:start}.file-label{display:grid;gap:6px;color:#46524c;font-size:13px;font-weight:700}.file-label-title{display:block}.selected-passport-file{min-height:54px;padding:9px 10px 9px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #a9cbb4;border-radius:10px;background:#e3f2e7}.selected-passport-file>span{min-width:0;display:grid;gap:2px}.selected-passport-file strong{color:#24643b}.selected-passport-file small{overflow:hidden;color:#5d7064;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.passport-file-change{min-width:86px;min-height:36px;padding:7px 12px;display:grid;place-items:center;cursor:pointer;border-radius:8px;background:#315f44;color:#fff;font-size:12px;font-weight:800}.passport-file-change input{display:none}.passport-draft-preview{min-width:0;min-height:520px;margin:0;padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;border:1px solid #cbd9d0;border-radius:12px;background:#e8efeb}.passport-draft-preview figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#315f44;font-size:12px;font-weight:800}.passport-rotate-actions{display:flex;gap:7px}.passport-rotate-actions button{min-height:34px;padding:7px 10px;border:1px solid #9fbcaa;border-radius:8px;background:#fff;color:#28543c;cursor:pointer;font-size:11px;font-weight:800}.passport-rotate-actions button:hover{background:#e1eee5}.passport-draft-preview img{width:100%;height:100%;min-height:490px;max-height:650px;display:block;object-fit:contain;border-radius:8px;background:#18241e}.passport-draft-preview iframe{width:100%;height:100%;min-height:560px;border:0;border-radius:8px;background:#fff}.active-edit-modal{width:min(900px,100%)}.edit-guest-list{margin:18px 0}.edit-guest-list>h3{margin-bottom:12px}.edit-guest-card{margin-bottom:12px;padding:15px;border:1px solid #dfe7e2;border-radius:13px;background:#f7f9f8}.edit-guest-card>strong{display:block;margin-bottom:11px;color:#315f44}.edit-passport-actions{display:flex;gap:9px;flex-wrap:wrap}.file-label{grid-column:span 2}.ocr-status{margin-top:2px;padding:10px 11px;display:grid;gap:7px;border-radius:9px;font-size:12px;font-weight:650}.ocr-status.reading{background:#e8f0f8;color:#28567f}.ocr-status.success{background:#e4f3dc;color:#326b21}.ocr-status.error{background:#ffe3e3;color:#96252a}.ocr-status i{display:block;height:5px;overflow:hidden;border-radius:999px;background:#28567f29}.ocr-status b{display:block;height:100%;min-width:3%;border-radius:inherit;background:#3f88df;transition:width .2s ease}.passport-image-wrap .error-text{margin:20px;color:#ffb5b5;text-align:center}.table-card{overflow-x:auto;padding:0}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid #e3e8e5;text-align:left;vertical-align:middle}th{background:#eaf0ed;color:#44534b;font-size:13px}td{font-size:14px}.apartments-table tbody tr{transition:background .15s ease}.apartments-table tbody tr:hover{background:#f7faf8}.apartments-table .owner-column{font-weight:700}.apartments-table .manager-column{color:#52645a}.apartments-table .actions-column{width:92px;text-align:right}.apartments-table thead th{min-width:92px;vertical-align:bottom}.apartments-table thead th>span{display:block;margin-bottom:7px;white-space:nowrap}.apartments-table thead .owner-column,.apartments-table thead .manager-column{min-width:205px}.apartments-table thead .owner-phone-column{min-width:160px}.column-filter{width:100%;min-width:0;min-height:36px;padding:7px 8px;border:1px solid #cbd7d0;border-radius:8px;background:#fff;color:#23372c;font-size:12px;font-weight:650}.table-clear-filter{width:100%;min-height:36px;padding:6px;border:0;border-radius:8px;background:#dfe9e3;color:#315f44;font-size:11px;font-weight:800}.table-clear-filter:disabled{opacity:.45}.toolbar{margin-bottom:15px}.toolbar input{max-width:430px}.apartment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}.apartment-summary-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.apartment-stat-card{min-height:105px;padding:17px 18px;border:1px solid #e1e8e4;border-top:5px solid #3f88df;border-radius:16px;background:#fff;text-align:left;box-shadow:0 6px 20px #1f2d2612;transition:transform .16s ease,box-shadow .16s ease}.apartment-stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #1f2d261c}.apartment-stat-card span{display:block;color:#68756e;font-size:13px}.apartment-stat-card strong{display:block;margin-top:8px;color:#16211b;font-size:29px}.apartment-stat-card.managed{border-top-color:#5f9e43}.apartment-stat-card.unmanaged{border-top-color:#bdc7c1}.apartment-stat-card.phone{border-top-color:#8a5bc2}.realtor-report-card{margin-bottom:16px;border:1px solid #e1e8e4;border-radius:17px;background:#fff;box-shadow:0 6px 20px #1f2d2612}.realtor-report-summary{padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-radius:inherit;cursor:pointer;list-style:none}.realtor-report-summary::-webkit-details-marker{display:none}.realtor-report-summary h2{margin:0;font-size:18px}.realtor-report-summary p{margin:4px 0 0;color:#748078;font-size:13px}.realtor-summary-right{display:flex;align-items:center;gap:10px}.realtor-summary-right strong{padding:7px 10px;border-radius:9px;background:#edf4ef;color:#315f44;font-size:12px;white-space:nowrap}.realtor-summary-right span{color:#315f44;font-size:24px;line-height:1;transition:transform .2s ease}.realtor-report-card[open] .realtor-summary-right span{transform:rotate(180deg)}.realtor-report-content{padding:0 18px 18px;border-top:1px solid #e8edea}.realtor-report-content>p{margin:13px 0 11px;color:#748078;font-size:13px}.realtor-chips{display:flex;flex-wrap:wrap;gap:9px}.realtor-chips button{padding:10px 12px;display:flex;align-items:center;gap:10px;border:1px solid #d8e2dc;border-radius:11px;background:#f8faf9;color:#22342a;text-align:left}.realtor-chips button:hover,.realtor-chips button.active{border-color:#315f44;background:#e7f1e1}.realtor-chips button span{font-weight:750}.realtor-chips button b{padding:4px 7px;border-radius:7px;background:#fff;color:#315f44;font-size:11px;white-space:nowrap}.empty-realtor-message{color:#748078;font-size:13px}.apartment-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(165px,1fr)) auto;gap:12px;align-items:end;margin-bottom:12px;padding:17px;border-radius:16px;background:#fff;box-shadow:0 5px 18px #1f2d2612}.apartment-filters label{min-width:0}.apartment-filters input,.apartment-filters select{width:100%}.apartment-clear-filter{white-space:nowrap}.apartment-clear-filter:disabled{opacity:.45;cursor:default}.apartment-result-count{margin:0 2px 10px;color:#68756e;font-size:13px}.apartment-result-count strong{color:#315f44;font-size:16px}.archive-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:13px;margin-bottom:18px;padding:18px;border-radius:16px;background:#fff;box-shadow:0 5px 18px #1f2d2612}.archive-search{grid-column:span 3}.clear-filter{align-self:end}.archive-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.archive-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.report-card{padding:18px;border-radius:16px;background:#fff;box-shadow:0 5px 18px #1f2d2612}.report-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.report-title h2{margin:0;font-size:18px}.report-title span{color:#718078;font-size:12px;text-align:right}.ranking-row{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #e7ece9}.ranking-number{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:#e7f1e1;color:#315f44;font-weight:850}.ranking-row strong,.ranking-row small{display:block}.ranking-row small{margin-top:2px;color:#748078}.ranking-row b{color:#315f44}.nationality-row{padding:8px 0;border-top:1px solid #e7ece9}.nationality-row>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px;font-size:13px}.nationality-row>span{display:block;height:7px;overflow:hidden;border-radius:999px;background:#edf1ef}.nationality-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#315f44,#79ad50)}.apartment-report{margin-bottom:21px}.apartment-report .table-card{margin-bottom:0;box-shadow:none;border:1px solid #e4e9e6}.archive-list-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:24px 2px 13px}.archive-list-title h2{margin:0;font-size:21px}.archive-list-title span{color:#718078;font-size:13px}.archive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.archive-card{padding:18px;background:#fff;border-radius:15px;box-shadow:0 5px 18px #1f2d2612}.archive-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.archive-head strong{color:#315f44}.archive-guest{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #e4e8e6}.archive-guest strong,.archive-guest small{display:block}.archive-guest small{margin-top:3px;color:#748078}.archive-card small{display:block;margin-top:12px;color:#727e78}.restore-button{width:100%;margin-top:14px;padding:10px 13px;border:1px solid #a8c5b3;border-radius:10px;background:#edf5ef;color:#28543c;font-weight:800}.restore-button:hover{background:#dfeee3}.dashboard-checkout-button{width:100%;margin-top:18px;padding:12px 16px}.muted{color:#6c7771}@media(max-width:1250px){.summary-grid{grid-template-columns:repeat(3,1fr)}.blocks-grid{grid-template-columns:1fr}.apartment-summary-grid{grid-template-columns:repeat(2,1fr)}.apartment-summary-grid.compact{grid-template-columns:repeat(3,1fr)}.apartment-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.apartment-clear-filter{width:100%}.archive-filters{grid-template-columns:repeat(2,1fr)}.archive-search{grid-column:span 1}.guest-entry-layout.has-preview{grid-template-columns:minmax(300px,.85fr) minmax(440px,1.15fr)}}@media(max-width:850px){.mobile-header{height:64px;padding:0 15px}.menu-toggle{width:41px;height:41px;border-radius:12px}.sidebar{width:min(86vw,310px);padding:22px 18px}.sidebar nav{grid-template-columns:1fr}.main{padding:18px 14px 30px}.page-header{align-items:flex-start;flex-direction:column}.summary-grid,.form-grid,.archive-grid,.archive-summary-grid{grid-template-columns:1fr 1fr}.archive-report-grid{grid-template-columns:1fr}.site-picker{width:min(300px,42vw)}.guest-entry-layout.has-preview{grid-template-columns:1fr}.passport-draft-preview{min-height:360px}.passport-draft-preview img{min-height:330px;max-height:520px}}@media(max-width:560px){:root{background:#f1f5f2}.mobile-header{height:auto;min-height:64px;padding:10px 12px;flex-wrap:wrap}.mobile-brand{flex:1;min-width:0}.site-picker{order:3;width:100%;margin:0}.site-picker summary{min-height:56px}.site-picker-menu{position:fixed;top:132px;left:12px;right:12px;width:auto;padding:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.site-picker-title{grid-column:1 / -1}.site-picker-menu button{min-width:0;min-height:105px;padding:10px;display:flex;flex-direction:column;align-items:stretch;gap:8px}.site-picker-menu .site-code{width:100%;height:43px}.site-option-text strong{font-size:12px;white-space:normal;line-height:1.2}.site-option-text small{font-size:9px}.site-selected{position:absolute;top:15px;right:15px;border:2px solid rgba(255,255,255,.8)}.mobile-brand small{display:none}.mobile-brand strong{font-size:13px;line-height:1.2}.main{padding:16px 12px 28px}.page-header{gap:12px;margin-bottom:18px}.page-header h1{font-size:25px;line-height:1.15}.page-header p{font-size:14px;line-height:1.5}.date-badge{padding:9px 12px;font-size:13px;border-radius:10px}.form-grid,.archive-grid,.details-grid{grid-template-columns:1fr}.apartment-picker-trigger{min-height:66px;padding:7px 8px;grid-template-columns:51px minmax(0,1fr) auto 18px;gap:8px;border-radius:14px}.apartment-picker-trigger .apartment-picker-count{display:none}.apartment-picker-code{height:50px;border-radius:11px;font-size:11px}.apartment-picker-copy strong{font-size:16px}.apartment-picker-copy small{font-size:8px}.apartment-picker-type{padding:6px 7px;font-size:10px}.apartment-picker-backdrop{position:fixed;z-index:1590;top:0;right:0;bottom:0;left:0;display:block;background:#0718108c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:apartment-picker-fade .16s ease-out}.apartment-picker-menu{position:fixed;z-index:1600;top:auto;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;width:auto;max-height:min(76vh,650px);padding:15px 13px 13px;gap:10px;border-radius:22px;box-shadow:0 24px 65px #05190f52;animation:apartment-picker-rise .2s ease-out}.apartment-picker-menu-header strong{font-size:20px}.apartment-picker-menu-header button{width:38px;height:38px;border-radius:12px}.apartment-picker-search{min-height:47px;border-radius:12px}.apartment-picker-search input{min-height:45px;font-size:16px}.apartment-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-right:1px}.apartment-option-card{min-height:64px;padding:7px;grid-template-columns:46px minmax(0,1fr) 12px;gap:7px;border-radius:12px}.apartment-option-code{height:48px;border-radius:9px;font-size:10px}.apartment-option-copy strong{font-size:13px}.apartment-option-copy small{font-size:10px}.apartment-option-arrow{font-size:19px}.passport-draft-preview{min-height:300px}.passport-draft-preview img{min-height:270px;max-height:440px}.passport-draft-preview figcaption{align-items:stretch;flex-direction:column}.passport-rotate-actions{display:grid;grid-template-columns:1fr 1fr}.archive-filters,.archive-summary-grid{grid-template-columns:1fr}.apartment-summary-grid{gap:8px}.apartment-summary-grid.compact{grid-template-columns:1fr 1fr}.apartment-summary-grid.compact .apartment-stat-card:first-child{grid-column:1 / -1}.apartment-stat-card{min-height:88px;padding:12px;border-radius:13px;border-top-width:4px}.apartment-stat-card span{font-size:11px;line-height:1.25}.apartment-stat-card strong{margin-top:5px;font-size:23px}.realtor-report-card{border-radius:14px}.realtor-report-summary{padding:14px}.realtor-report-summary p{display:none}.realtor-summary-right strong{font-size:10px}.realtor-report-content{padding:0 14px 14px}.realtor-chips{display:grid;grid-template-columns:1fr}.realtor-chips button{justify-content:space-between}.apartment-filters{grid-template-columns:1fr;padding:14px}.archive-search{grid-column:auto}.archive-list-title,.report-title{align-items:flex-start;flex-direction:column}.report-title span{text-align:left}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.summary-card.blue,.summary-card.red{grid-column:1 / -1}.summary-card{min-height:88px;padding:11px 12px;border-radius:12px;border-top-width:4px}.summary-card span{font-size:12px;line-height:1.25}.summary-card strong{margin-top:5px;font-size:23px}.section-panel,.form-card,.archive-card{border-radius:14px}.legend{gap:11px 16px;padding:13px}.legend div{font-size:12px}.table-card{margin-left:-2px;margin-right:-2px;border-radius:13px}th,td{padding:11px 12px;white-space:nowrap}.apartments-table{display:block;width:100%}.apartments-table-card{width:100%;max-width:100%;overflow:hidden}.apartments-table thead{padding:6px;display:block;background:#e4ece7}.apartments-table tbody{width:100%;padding:5px;display:grid;gap:5px;background:#edf3ef;box-sizing:border-box}.apartments-table tbody tr{width:100%;min-width:0;min-height:54px;padding:5px;display:grid;grid-template-columns:29px 21px 26px 41px minmax(0,1fr) 51px;grid-template-rows:1fr 1fr;gap:2px 3px;align-items:center;box-sizing:border-box;border:1px solid #dce5df;border-radius:10px;background:#fff;box-shadow:0 3px 10px #1f2d260e}.apartments-table tbody tr:hover{background:#fff}.apartments-table td{min-width:0;padding:0;border:0;white-space:normal;font-size:12px}.apartments-table .site-column,.apartments-table .block-column,.apartments-table .number-column,.apartments-table .type-column{min-height:31px;padding:2px;display:grid;place-items:center;align-self:stretch;grid-row:1 / 3;border-radius:7px;background:#f0f4f2;color:#1b2d23;font-size:10px;font-weight:800;text-align:center;line-height:1.05}.apartments-table .site-column{grid-column:1;background:#315f44;color:#fff}.apartments-table .block-column{grid-column:2}.apartments-table .number-column{grid-column:3}.apartments-table .type-column{grid-column:4;font-size:9px}.apartments-table .owner-column{grid-column:5;grid-row:1;overflow:hidden;color:#16211b;font-size:11px;font-weight:800;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.apartments-table .manager-column{grid-column:5;grid-row:2;overflow:hidden;color:#68776f;font-size:9px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.apartments-table .manager-column:before{content:"Yöneten: ";font-weight:750}.apartments-table .owner-phone-column{display:none}.apartments-table .actions-column{grid-column:6;grid-row:1 / 3;width:auto;text-align:right}.apartments-table .actions-column .secondary-button{width:51px;min-height:31px;padding:4px 2px;border-radius:7px;font-size:9px}.apartments-table.single-block tbody tr{grid-template-columns:28px 43px minmax(0,1fr) 53px}.apartments-table.single-block .number-column{grid-column:1}.apartments-table.single-block .type-column{grid-column:2}.apartments-table.single-block .owner-column,.apartments-table.single-block .manager-column{grid-column:3}.apartments-table.single-block .actions-column{grid-column:4}.apartments-table .empty-apartment-row{display:block;min-height:0;padding:18px;text-align:center}.apartments-table .empty-apartment-row td{display:block}.apartments-table thead tr{display:grid;grid-template-columns:1fr 1fr;gap:6px}.apartments-table thead th,.apartments-table thead .site-column,.apartments-table thead .block-column,.apartments-table thead .number-column,.apartments-table thead .type-column,.apartments-table thead .owner-column,.apartments-table thead .owner-phone-column,.apartments-table thead .manager-column,.apartments-table thead .actions-column{width:auto;min-width:0;min-height:0;padding:0;display:block;grid-column:auto;grid-row:auto;align-self:auto;border:0;border-radius:0;background:transparent;color:#33463b;text-align:left;white-space:normal}.apartments-table thead th>span{margin:0 0 3px;font-size:9px;line-height:1.1}.apartments-table thead .manager-column:before{content:none}.apartments-table thead .actions-column{align-self:end}.apartments-table thead .column-filter,.apartments-table thead .table-clear-filter{min-height:34px;padding:5px 7px;font-size:11px}.tab-row{overflow-x:auto;padding-bottom:3px}.tab{white-space:nowrap}input,select{min-height:44px;font-size:16px}.primary-button,.secondary-button,.danger-button{min-height:42px}.section-panel{margin-left:-2px;margin-right:-2px;padding:0 11px 13px;border-radius:17px}.section-heading{margin:0 -11px 13px;padding:13px}.section-heading h2{font-size:26px}.section-heading span{font-size:14px;letter-spacing:1.2px}.block-panel{padding:11px;border-radius:14px}.block-panel h3{margin-bottom:10px;padding-bottom:8px}.apartments-grid{grid-template-columns:repeat(5,1fr);gap:7px}.apartment-tile{min-height:45px;border-radius:10px;font-size:15px}.file-label{grid-column:auto}.guest-card{align-items:flex-start;flex-direction:column}.passport-backdrop{padding:0;align-items:stretch}.passport-viewer{width:100%;max-height:100vh;min-height:100vh;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom));border-radius:0}.passport-viewer-header{gap:8px}.passport-viewer-header strong{max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.passport-image-wrap img{max-height:calc(100vh - 82px)}.modal-backdrop{padding:10px;align-items:end}.modal-card,.modal-card.large{width:100%;max-height:92vh;padding:21px 17px;border-radius:22px 22px 10px 10px}}@keyframes apartment-picker-fade{0%{opacity:0}to{opacity:1}}@keyframes apartment-picker-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:560px){:root{background:#edf3ef}body{background:linear-gradient(180deg,#f7faf8 0,#edf3ef 42%,#f4f7f5)}.mobile-header{min-height:68px;padding:max(9px,env(safe-area-inset-top)) 10px 9px;flex-wrap:nowrap;gap:9px;border-bottom-color:#1a442f17;background:#fbfdfc;box-shadow:0 6px 24px #163a2817;backdrop-filter:none;-webkit-backdrop-filter:none}.menu-toggle{flex:0 0 44px;width:44px;height:44px;padding:10px;border-radius:14px;background:linear-gradient(145deg,#173f2e,#0d2b20);box-shadow:0 7px 18px #0d2b2038}.menu-toggle span{width:24px;height:2px}.mobile-brand{min-width:0;flex:1;gap:8px}.mobile-brand-mark{flex:0 0 40px;width:40px;height:40px;border-radius:13px;box-shadow:0 5px 14px #315f4429}.mobile-brand>div{overflow:hidden}.mobile-brand strong{overflow:hidden;display:block;color:#173b2d;font-size:12px;line-height:1.2;letter-spacing:.25px;text-overflow:ellipsis;white-space:nowrap}.mobile-brand small{display:block;margin-top:3px;color:#819087;font-size:9px;letter-spacing:.2px}.site-picker{order:initial;flex:0 0 47px;width:47px;margin:0}.site-picker summary{width:47px;min-height:44px;padding:3px;display:grid;grid-template-columns:1fr;border-color:#bdd1c5;border-radius:14px;background:linear-gradient(145deg,#f8fbf9,#e9f2ec);box-shadow:0 5px 14px #173b2d14}.site-picker summary:after,.site-picker .current-site-text{display:none}.current-site-code{width:39px;height:36px;border-radius:11px;font-size:11px;letter-spacing:-.25px}.site-picker[open]:before{content:"";position:fixed;z-index:1180;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#07181085;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:apartment-picker-fade .16s ease-out}.site-picker-menu{position:fixed;z-index:1200;top:auto;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;width:auto;max-height:min(70dvh,620px);padding:14px;display:grid;grid-template-columns:1fr;gap:8px;overflow-y:auto;border-radius:22px;box-shadow:0 26px 70px #05190f57;animation:apartment-picker-rise .2s ease-out}.site-picker-title{grid-column:auto;padding:4px 3px 9px}.site-picker-title strong{font-size:18px}.site-picker-title small{font-size:11px}.site-picker-menu button{min-height:62px;padding:8px;display:grid;grid-template-columns:55px minmax(0,1fr) 24px;flex-direction:initial;align-items:center;gap:10px;border-radius:14px}.site-picker-menu .site-code{width:55px;height:46px;border-radius:11px;font-size:15px}.site-option-text strong{font-size:13px;line-height:1.2;white-space:nowrap}.site-option-text small{font-size:9px}.site-selected{position:static;top:auto;right:auto;border:0}.sidebar{width:min(88vw,340px);height:100dvh;padding:max(18px,env(safe-area-inset-top)) 14px max(16px,env(safe-area-inset-bottom));overscroll-behavior:contain}.sidebar-close{top:max(14px,env(safe-area-inset-top));right:13px;width:44px;height:44px;border-radius:14px;font-size:25px}.brand{padding-right:47px;margin:4px 0 22px}.brand-mark{width:48px;height:48px;border-radius:15px}.brand strong{font-size:15px}.brand small{font-size:9px}.sidebar nav{gap:6px}.nav-button{min-height:55px;padding:7px 8px;border-radius:14px}.nav-button-copy strong{font-size:13px}.nav-button-copy small{font-size:9px}.sidebar-user{margin-top:auto;border-radius:17px}.sidebar-user>button{min-height:44px}.main{padding:14px 10px max(30px,env(safe-area-inset-bottom))}.page-header{position:relative;margin-bottom:14px;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:start;overflow:hidden;border:1px solid rgba(35,80,56,.09);border-radius:17px;background:linear-gradient(145deg,#fffffffa,#f0f7f3f7);box-shadow:0 7px 22px #1e422f12}.page-header:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:linear-gradient(#74a84d,#315f44)}.page-header>div:first-child{min-width:0}.page-header h1{margin:0 0 4px;font-size:22px;line-height:1.12;letter-spacing:-.35px}.page-header p{margin:0;display:-webkit-box;overflow:hidden;color:#748078;font-size:11px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.date-badge{padding:7px 9px;border:1px solid #dce6e0;border-radius:10px;background:#ffffffe0;font-size:10px;font-weight:700;white-space:nowrap;box-shadow:none}.tab-row{margin-bottom:13px;padding:4px;display:grid;grid-template-columns:1fr 1fr;gap:4px;overflow:visible;border:1px solid #d7e2dc;border-radius:14px;background:#e5ede8}.tab{width:100%;min-height:44px;padding:8px 7px;border-radius:10px;background:transparent;color:#50635a;font-size:12px;font-weight:800;white-space:nowrap}.tab.active{background:#fff;color:#214d36;box-shadow:0 4px 12px #1e422f1a}.form-card,.report-card,.archive-card{margin-bottom:14px;padding:13px;border:1px solid rgba(37,77,55,.08);border-radius:16px;box-shadow:0 7px 22px #1e422f11}.form-grid{gap:11px;margin-bottom:13px}label,.file-label{gap:5px;color:#43554b;font-size:12px}input,select{min-height:47px;padding:10px 11px;border-color:#cad8d0;border-radius:11px;background:#fcfdfc}input:focus,select:focus{border-color:#5f8f70;outline:3px solid rgba(75,130,92,.13)}input::file-selector-button{min-height:37px;margin:-6px 9px -6px -7px;padding:7px 10px;border:0;border-radius:8px;background:#e5efe9;color:#2d6043;font-weight:800}.form-card>.primary-button{width:100%;min-height:49px;border-radius:12px;font-size:14px}.primary-button{background:linear-gradient(135deg,#315f44,#214c36);box-shadow:0 6px 14px #214c3626}.secondary-button,.danger-button{min-height:44px;border-radius:10px}.bulk-passport-upload{padding:12px;border-radius:13px}.bulk-passport-upload input{max-width:100%;overflow:hidden}.guest-form{margin-bottom:10px;padding:12px;border:1px solid #e0e8e3;border-radius:14px;background:#f8faf9}.guest-form-header{margin-bottom:10px}.remove-guest-button{min-height:42px;padding:8px 12px}.selected-passport-file{min-height:58px;border-radius:11px}.passport-file-change,.passport-rotate-actions button{min-height:44px}.passport-draft-preview{min-height:0;padding:8px;border-radius:13px}.passport-draft-preview img{height:auto;min-height:220px;max-height:360px;aspect-ratio:4 / 3}.passport-draft-preview iframe{height:58dvh;min-height:380px}.summary-grid{gap:7px}.summary-card{position:relative;min-height:78px;padding:10px 11px;overflow:hidden;border:1px solid #e1e8e4;border-top-width:1px;border-left:4px solid #3485db;border-radius:13px;box-shadow:0 6px 18px #1f3e2d11}.summary-card:after{content:none;display:none}.summary-card span{font-size:11px}.summary-card strong{margin-top:5px;font-size:23px;line-height:1}.summary-card .summary-value strong{margin-top:5px}.summary-percentage{padding:4px 6px;font-size:10px}.summary-card.green{border-left-color:#69a84b}.summary-card.tenant{border-left-color:#e5c500}.summary-card.gray{border-left-color:#c7cdd2}.summary-card.red{border-left-color:#ee3549}.summary-card.orange{border-left-color:#e5ad23}.summary-card.owner{border-left-color:#50c332}.dashboard-summary-grid .summary-card.blue,.dashboard-summary-grid .summary-card.red{grid-column:1 / -1}.archive-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.archive-summary-grid .summary-card{grid-column:auto}.legend{margin:0 -2px 15px;padding:2px 2px 7px;flex-wrap:nowrap;gap:7px;overflow-x:auto;border-radius:0;background:transparent;box-shadow:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}.legend::-webkit-scrollbar{display:none}.legend div{flex:0 0 auto;min-height:38px;padding:8px 10px;border:1px solid #dfe7e2;border-radius:11px;background:#fff;font-size:11px;box-shadow:0 4px 12px #1f3e2d0b}.legend-color{width:15px;height:15px;border-radius:5px}.section-panel{margin-bottom:17px;border-color:#dce6e0;background:#fafcfbeb;box-shadow:0 9px 25px #1f3e2d13}.section-heading{background:linear-gradient(120deg,#102e22,#346747)}.block-panel{border-color:#e0e8e3;box-shadow:0 4px 13px #1f3e2d0b}.apartment-tile{border-color:#d4dfd8;box-shadow:0 2px 6px #1a37270d}.archive-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px;border-radius:15px}.archive-search,.clear-filter{grid-column:1 / -1}.archive-report-grid{gap:10px}.report-card{padding:13px}.report-title{margin-bottom:11px}.report-title h2{font-size:16px}.report-title span{font-size:10px}.ranking-row{padding:8px 0}.archive-list-title{margin:18px 2px 10px}.archive-list-title h2{font-size:18px}.archive-card .details-grid{grid-template-columns:1fr 1fr;gap:7px}.detail-box{padding:9px;border:1px solid #e8eeea;border-radius:10px;background:#f8faf9}.archive-guest{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.archive-guest>span{min-width:0;overflow-wrap:anywhere}.passport-button.compact,.restore-button{min-height:44px}.active-stays-table-card,.users-table-card,.archive-apartment-table-card{margin:0;overflow:visible;border-radius:0;background:transparent;box-shadow:none}.active-stays-table,.users-table,.archive-apartment-table{display:block;width:100%}.active-stays-table thead,.users-table thead,.archive-apartment-table thead{display:none}.active-stays-table tbody,.users-table tbody,.archive-apartment-table tbody{display:grid;gap:9px}.active-stays-table tr,.users-table tr,.archive-apartment-table tr{min-width:0;padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 10px;border:1px solid #dce6e0;border-radius:15px;background:#fff;box-shadow:0 6px 18px #1e422f0f}.active-stays-table td,.users-table td,.archive-apartment-table td{min-width:0;padding:0;display:grid;gap:2px;border:0;white-space:normal;overflow-wrap:anywhere;color:#24372d;font-size:12px}.active-stays-table td:before,.users-table td:before,.archive-apartment-table td:before{content:attr(data-label);color:#849088;font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.active-stays-table td:first-child,.users-table td:first-child,.archive-apartment-table td:first-child{grid-column:1 / -1}.active-stays-table td:first-child strong,.users-table td:first-child,.archive-apartment-table td:first-child strong{color:#1f5137;font-size:16px}.active-stays-table td:last-child,.users-table td:last-child{grid-column:1 / -1}.active-stays-table td:last-child{display:grid;grid-template-columns:1fr 1.2fr;gap:7px}.active-stays-table td:last-child:before{grid-column:1 / -1}.active-stays-table td:last-child button{width:100%;min-height:44px;margin:0;font-size:11px}.users-table td:nth-child(4){grid-column:1 / -1}.user-status{width:max-content;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.user-status.active{background:#e3f2df;color:#397128}.user-status.inactive{background:#f3e4e4;color:#97343a}.users-table .row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.users-table .row-actions button{min-height:44px;padding:7px;border:1px solid #d7e2dc;border-radius:10px;background:#edf3ef;color:#315f44;font-size:10px;font-weight:800}.users-table .row-actions button:last-child{color:#9a2e34;background:#f8e9e9;border-color:#eed2d3}.archive-apartment-table td:nth-child(4),.archive-apartment-table td:nth-child(5){grid-column:1 / -1}.apartments-table tbody tr{min-height:66px;padding:7px;grid-template-columns:34px 24px 30px 46px minmax(0,1fr) 56px;gap:3px 4px;border-radius:12px}.apartments-table .site-column,.apartments-table .block-column,.apartments-table .number-column,.apartments-table .type-column{min-height:44px;font-size:11px}.apartments-table .type-column{font-size:10px}.apartments-table .owner-column{font-size:12px}.apartments-table .manager-column{font-size:10px}.apartments-table .actions-column .secondary-button{width:56px;min-height:44px;font-size:10px}.apartments-table.single-block tbody tr{grid-template-columns:35px 48px minmax(0,1fr) 58px}.apartments-table thead .column-filter,.apartments-table thead .table-clear-filter{min-height:44px;font-size:12px}.quota-row{margin:-2px 0 13px;gap:7px}.quota-row span{padding:8px 10px;border:1px solid #d6e2db;border-radius:10px;background:#fffc;font-size:11px}.site-checks{padding:11px;border-radius:12px}.site-checks label{min-height:44px;margin:3px 0}.modal-backdrop{padding:0;align-items:end}.modal-card,.modal-card.large{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));padding:26px 14px max(18px,env(safe-area-inset-bottom));border-radius:24px 24px 0 0;overscroll-behavior:contain}.modal-card:before{content:"";position:absolute;top:8px;left:50%;width:42px;height:4px;border-radius:999px;background:#ccd7d1;transform:translate(-50%)}.modal-card h2{margin-bottom:13px;font-size:20px}.modal-x{top:14px;right:13px;width:44px;height:44px;background:#edf3ef;color:#315f44}.passport-viewer{min-height:100dvh;max-height:100dvh}.passport-viewer-header{position:sticky;top:0;z-index:2;background:#f7f9f8}.login-page{min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 15px max(18px,env(safe-area-inset-bottom))}.login-card{padding:25px 20px;border-radius:25px}.login-logo img{width:72px;height:72px;border-radius:20px}.login-card h1{font-size:27px}.remember-login{min-height:48px;border-radius:12px}}@media(max-width:380px){.page-header{grid-template-columns:1fr}.date-badge{width:max-content}.archive-card .details-grid{grid-template-columns:1fr}.selected-passport-file{align-items:stretch;flex-direction:column}.passport-file-change{width:100%}.active-stays-table td:last-child{grid-template-columns:1fr}}:where(button,a,input,select,summary):focus-visible{outline:3px solid rgba(63,136,223,.32);outline-offset:2px}@media(hover:none){.apartment-tile:hover,.apartment-stat-card:hover,.apartment-option-card:hover{transform:none;box-shadow:inherit;filter:none}button:active{transform:scale(.985)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
