:root{font-family:Segoe UI,Tahoma,sans-serif;line-height:1.4;color:#151f35;background:linear-gradient(130deg,#eff5ff,#f4fdf6);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}.page{display:grid;padding:24px}.panel{max-width:1200px;width:100%;margin:0 auto;background:#ffffffd9;border:1px solid #d5deee;border-radius:14px;padding:20px;box-shadow:0 18px 60px -45px #0f3d8a}.panel-header h1{margin:0;font-size:28px}.panel-header p{margin:8px 0 0;color:#43506d}.toolbar{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.toolbar input,.toolbar select,.toolbar button,.actions button,.auth-form input,.auth-form button,.modal-form input,.modal-form button{border-radius:8px;border:1px solid #b8c5dc;padding:9px 12px;font-size:14px}.toolbar input{flex:1;min-width:clamp(220px,28vw,340px)}.toolbar button,.actions button{background:#e6efff;cursor:pointer;transition:background .2s ease}.toolbar button:hover,.actions button:hover{background:#d3e3ff}.actions .action-btn-unfreeze:hover:not(:disabled){background:#def5e6;border-color:#8dce9e;color:#1f6a35}.actions .action-btn-refund:hover:not(:disabled){background:#e8f1ff;border-color:#a9c6ef;color:#1d4f88}.actions .action-btn-partial:hover:not(:disabled){background:#fff2da;border-color:#e6be74;color:#7a5409}.actions .action-btn-capture:hover:not(:disabled){background:#ffe8e8;border-color:#e0a1aa;color:#8f2f3e}.toolbar button:disabled,.actions button:disabled{opacity:.55;cursor:not-allowed}.table-wrap{margin-top:14px;overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff}.payments-table{table-layout:auto}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #e4ebf7;font-size:14px}.guest-input-edit{width:95px;min-width:0;border:1px solid #b8c5dc;border-radius:8px;padding:7px 10px;font-size:14px}.guest-cell{display:flex;align-items:center;gap:8px;min-width:0}.guest-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal}.guest-edit-btn{border:1px solid #b8c5dc;border-radius:8px;background:#eef4ff;padding:4px 8px;font-size:12px;cursor:pointer}.guest-edit-btn:hover{background:#dbe8ff}.icon-pencil:before{content:"✎";font-size:12px;line-height:1}.table-icon-btn{border:1px solid #b8c5dc;border-radius:8px;background:#eef4ff;padding:4px 8px;font-size:12px;cursor:pointer}.table-icon-btn:hover{background:#dbe8ff}.icon-copy:before{content:"📋";font-size:12px;line-height:1}.payment-id-cell{display:flex;align-items:center;gap:8px;min-width:0;position:relative}.payment-id-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-toast{position:absolute;left:0;top:calc(100% + 6px);z-index:10;background:#eef4ff;border:1px solid #b8c5dc;border-radius:8px;padding:2px 8px;font-size:11px;line-height:1.4;color:#1a2740;white-space:nowrap}.refund-cell{display:inline-flex;align-items:center;gap:8px}.reason-info-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid #b8c5dc;border-radius:8px;background:#eef4ff;padding:2px 6px;line-height:0;cursor:default;outline:none}.reason-info-wrap img{width:14px;height:14px}.reason-info-wrap:hover{background:#dbe8ff}.reason-tooltip{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);width:260px;max-width:min(70vw,320px);padding:10px 12px;border:1px solid #d5deee;border-radius:10px;background:#f7faff;color:#2f3b57;font-size:13px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;box-shadow:0 10px 24px -18px #0f3d8a;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:30}.reason-info-wrap:hover .reason-tooltip,.reason-info-wrap:focus .reason-tooltip{opacity:1}th{color:#4b5a7c;font-weight:600}.status{display:inline-flex;align-items:center;justify-content:center;min-width:96px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#eef2fb;text-align:center}.payments-table th:nth-child(4),.payments-table td:nth-child(4){text-align:center}.payments-table th:nth-child(1),.payments-table td:nth-child(1){width:clamp(96px,8vw,128px)}.payments-table th:nth-child(2),.payments-table td:nth-child(2){width:clamp(220px,24vw,320px)}.payments-table th:nth-child(3),.payments-table td:nth-child(3){width:clamp(96px,8vw,132px);white-space:nowrap}.payments-table th:nth-child(4),.payments-table td:nth-child(4){width:clamp(112px,10vw,148px);white-space:nowrap}.payments-table th:nth-child(5),.payments-table td:nth-child(5){width:clamp(98px,9vw,132px);white-space:nowrap}.payments-table th:nth-child(6),.payments-table td:nth-child(6){width:clamp(106px,10vw,142px);white-space:nowrap}.status-succeeded{background:#e4f9ea;color:#1f6a35}.status-waiting_for_capture{background:#fff4d7;color:#845f0a}.status-partially_refunded{background:#ebebff;color:#2e3c98}.status-refunded{background:#e7f2ff;color:#175287}.status-canceled{background:#ffe8e8;color:#902626}.status-pending{background:#ececec;color:#4e4e4e}.actions{display:grid;grid-template-columns:repeat(2,minmax(118px,1fr));gap:8px;width:min(100%,300px)}.actions button{border:1px solid #b8c5dc;border-radius:8px;white-space:nowrap;background:#e6efff;width:100%}.pagination{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#4b5a7c;font-size:13px}.pagination-actions{display:inline-flex;gap:8px}.pagination-actions button{border-radius:8px;border:1px solid #b8c5dc;background:#e6efff;padding:8px 12px;font-size:13px;cursor:pointer}.pagination-actions button:hover{background:#d3e3ff}.pagination-actions button:disabled{opacity:.55;cursor:not-allowed}.error{margin-top:12px;color:#9f1c1c}.link-box{margin-top:12px;color:#1f2b43;word-break:break-all}.link-box a{color:#1a4ea3}.empty{text-align:center;color:#5a6784}.auth-panel{max-width:460px}.auth-panel p{color:#43506d}.page-login{display:flex;flex-direction:column;min-height:100vh;justify-content:center;align-items:center;padding:0;background-color:#c1c9d4;background-image:linear-gradient(#0f1f351f,#0f1f351f),url(/login-bg.webp);background-size:cover;background-position:center;background-repeat:no-repeat}.login-stack{display:flex;flex-direction:column;align-items:center;gap:18px}.brand-logo-outside{display:block;width:220px;max-width:min(72vw,260px);height:auto;margin:0 auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.25))}.page-landing{padding:0}.brand-logo-hero{width:min(520px,86vw);height:auto;filter:drop-shadow(0 10px 26px rgba(0,0,0,.35))}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:6px;font-size:14px;color:#3b4662}.auth-form button{background:#e6efff;cursor:pointer}.auth-form input.input-error{border-color:#cf3c3c}.field-error{margin-top:2px;color:#9f1c1c}.modal-backdrop{position:fixed;inset:0;background:#0f1f3573;display:grid;place-items:center;padding:16px}.modal-card{width:min(420px,100%);background:#fff;border-radius:12px;border:1px solid #d5deee;padding:16px}.modal-card h2{margin:0}.modal-card p{margin:8px 0 0;color:#4b5a7c}.reason-modal-card h2{margin-bottom:10px}.reason-content{margin-top:4px;padding:12px;border:1px solid #d5deee;border-radius:10px;background:#f7faff;color:#2f3b57;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.modal-form{margin-top:12px;display:grid;gap:10px}.modal-actions{display:flex;gap:8px}.modal-actions button{border-radius:8px;border:1px solid #b8c5dc;background:#e6efff;padding:9px 12px;font-size:14px;cursor:pointer;transition:background .2s ease}.modal-actions button:hover{background:#d3e3ff}.drawer-backdrop{position:fixed;inset:0;background:#0f1f3559;display:flex;justify-content:flex-end;z-index:20}.drawer-panel{width:min(980px,100vw);height:100%;background:#fff;border-left:1px solid #d5deee;box-shadow:-8px 0 40px -25px #0f3d8a;padding:16px;overflow-y:auto}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.drawer-header h2{margin:0}.drawer-header-actions{display:flex;gap:8px}.drawer-header button{border-radius:8px;border:1px solid #b8c5dc;background:#e6efff;padding:8px 12px;cursor:pointer}.drawer-panel .table-wrap{overflow-x:visible}.drawer-panel table{table-layout:fixed}.drawer-panel th,.drawer-panel td{font-size:12px;padding:8px 6px;word-break:break-word;overflow-wrap:anywhere}.logs-table th:nth-child(1),.logs-table td:nth-child(1){width:140px}.logs-table th:nth-child(2),.logs-table td:nth-child(2){width:140px}.logs-table th:nth-child(3),.logs-table td:nth-child(3){width:120px}.logs-table th:nth-child(4),.logs-table td:nth-child(4){width:150px}.logs-table th:nth-child(5),.logs-table td:nth-child(5){width:90px}.users-table th:nth-child(1),.users-table td:nth-child(1){width:130px}.users-table th:nth-child(2),.users-table td:nth-child(2){width:120px}.users-table th:nth-child(3),.users-table td:nth-child(3){width:80px}.users-table th:nth-child(4),.users-table td:nth-child(4){width:110px}.users-table th:nth-child(5),.users-table td:nth-child(5){width:70px}.link-inline-btn,.danger-icon-btn{border-radius:8px;border:1px solid #b8c5dc;background:#eef4ff;cursor:pointer}.link-inline-btn{padding:4px 8px;font-size:12px}.danger-icon-btn{padding:2px 8px;font-size:16px}.user-role-select{border-radius:8px;border:1px solid #b8c5dc;background:#e6efff;color:#151f35;padding:6px 10px;font-size:12px;cursor:pointer;transition:background .2s ease}.user-role-select:hover{background:#d3e3ff}.user-role-select:disabled{opacity:.55;cursor:not-allowed}.user-actions-cell{display:inline-flex;align-items:center;gap:8px}.allowed-apartment-form{margin-top:12px}.allowed-apartment-list{margin-top:14px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.allowed-apartment-item{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #d5deee;border-radius:10px;padding:8px 10px;background:#f7f9ff}@media(max-width:768px){.page{padding:12px}.panel{padding:14px}th,td{font-size:13px}.drawer-panel{width:100vw}.drawer-panel th,.drawer-panel td{font-size:11px;padding:7px 5px}.login-stack{width:100%;padding:0 12px}.pagination{flex-direction:column;align-items:flex-start}}.admin-gateway-panel{max-width:460px;width:100%}.admin-gateway-grid{margin-top:16px;display:grid;grid-template-columns:1fr;gap:10px}.admin-entry-card{border:1px solid #b8c5dc;border-radius:10px;background:#e6efff;text-align:left;padding:12px;cursor:pointer;transition:background .2s ease}.admin-entry-card:hover{background:#d3e3ff}.admin-entry-label{display:block;font-size:16px;font-weight:700;color:#1a2740}.admin-entry-note{margin-top:4px;display:block;color:#4a5b7a;font-size:13px}.ghost-btn{border:1px solid #b8c5dc;background:#f4f7fd}.bar-page{background:radial-gradient(circle at 12% 8%,rgba(16,138,154,.18),transparent 35%),radial-gradient(circle at 88% 16%,rgba(247,147,26,.16),transparent 36%),linear-gradient(160deg,#f4f9ff,#edf8f2)}.bar-panel{max-width:1320px;border-radius:22px;border:1px solid #d6e6f7}.bar-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.bar-header-actions{display:flex;gap:8px}.bar-grid{display:grid;grid-template-columns:320px 1fr;gap:14px;margin-top:16px}.bar-card{border:1px solid #d7e6f7;border-radius:16px;padding:14px;background:linear-gradient(150deg,#fff,#f5fbff)}.bar-card h2{margin:0;font-size:18px}.bar-controls{margin-top:10px;display:grid;gap:10px}.inline-control{display:flex;gap:8px}.inline-control input{flex:1}.bar-form{margin-top:12px;display:grid;gap:10px}.bar-form label{display:grid;gap:6px}.bar-form input,.bar-form select,.bar-form textarea,.bar-controls input,.bar-controls select,.bar-controls button,.bar-form button,.stock-actions button,.product-actions button,.bar-auth-panel button{border:1px solid #b9cae0;border-radius:10px;padding:9px 12px;font:inherit}.bar-form textarea{resize:vertical}.bar-form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checkbox-row{display:inline-flex!important;align-items:center;gap:8px!important}.bar-form-actions{display:flex;gap:8px}.bar-products{margin-top:18px}.bar-products-header{display:flex;align-items:center;justify-content:space-between}.bar-products-header h2{margin:0}.product-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.product-card{border:1px solid #d7e6f7;border-radius:16px;background:#fff;overflow:hidden}.empty-product{padding:18px;color:#4c5f80}.product-image-wrap{height:170px;background:#eff6ff}.product-image{width:100%;height:100%;object-fit:cover}.product-image-placeholder{height:100%;display:grid;place-items:center;color:#678}.product-content{padding:12px}.product-title-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.product-title-row h3{margin:0}.age-badge{border-radius:999px;padding:3px 8px;background:#ffe0da;color:#8e2619;font-size:12px;font-weight:700}.product-price{font-size:20px;font-weight:800;margin:8px 0}.muted{color:#596f91;font-size:13px}.stock-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.stock-actions{display:inline-flex;gap:6px}.product-actions{margin-top:10px;display:flex;gap:8px}.danger-btn{background:#ffe9e7;border-color:#f0b8b2;color:#8d251a}.bar-auth-page{background:radial-gradient(circle at 20% 10%,rgba(46,130,160,.25),transparent 35%),linear-gradient(160deg,#f7f9ff,#edf9f2)}.bar-auth-panel{border-radius:18px}.admin-shell-page{--shell-pad: clamp(14px, 1.25vw, 24px);height:100vh;grid-template-columns:clamp(220px,14vw,280px) minmax(0,1fr);gap:clamp(10px,.95vw,16px);align-items:start;overflow:hidden;padding:var(--shell-pad)}.admin-sidebar{position:sticky;top:var(--shell-pad);height:calc(100vh - (var(--shell-pad) * 2));background:#f3f5f8;border:1px solid #d7deea;border-radius:14px;padding:14px;display:flex;flex-direction:column;justify-content:space-between}.admin-sidebar-logo{width:clamp(114px,8vw,138px);max-width:100%;height:auto;margin-bottom:16px}.admin-sidebar-nav{display:grid;gap:8px}.admin-nav-btn{border:1px solid #d0d8e6;border-radius:10px;background:#fff;text-align:left;padding:10px 12px;cursor:pointer;font:inherit}.admin-nav-btn.active{background:#e2f3f6;border-color:#c6dfe3;font-weight:700}.admin-sidebar-bottom p{margin:0 0 10px;color:#5e6f8d;font-size:13px}.admin-side-action-btn{width:100%;border:1px solid #324663;border-radius:10px;background:#1b2a3f;color:#dbe6fb;padding:10px 12px;cursor:pointer;font:inherit;margin-bottom:8px}.admin-logout-btn{width:100%;border:1px solid #d8b8bc;border-radius:10px;background:#ffeef0;color:#8f2f3e;padding:10px 12px;cursor:pointer;font:inherit}.admin-shell-content{width:100%;height:calc(100vh - (var(--shell-pad) * 2));overflow-y:auto;padding-right:clamp(2px,.5vw,8px)}.bar-draft-panel{max-width:920px}.bar-draft-card{margin-top:14px;border:1px solid #d6e0ee;border-radius:12px;padding:14px;background:#f8fbff}.bar-draft-card h2{margin:0 0 8px}.bar-draft-card p{margin:0;color:#425576}.admin-shell-page{background:linear-gradient(160deg,#0d131f,#111b2a)}.admin-shell-page .panel{background:#151f2f;border-color:#26354f;box-shadow:0 22px 60px -46px #000;max-width:min(1460px,100%);padding:clamp(14px,1.2vw,20px)}.admin-shell-page .panel-header p,.admin-shell-page .muted,.admin-shell-page .empty,.admin-shell-page .pagination,.admin-shell-page .bar-draft-card p{color:#9fb0cc}.admin-shell-page .panel-header h1,.admin-shell-page h2,.admin-shell-page h3,.admin-shell-page th,.admin-shell-page td,.admin-shell-page label,.admin-shell-page .guest-text{color:#e8eefc}.admin-shell-page .toolbar input,.admin-shell-page .toolbar select,.admin-shell-page .toolbar button,.admin-shell-page .actions button,.admin-shell-page .auth-form input,.admin-shell-page .auth-form button,.admin-shell-page .modal-form input,.admin-shell-page .modal-form button,.admin-shell-page .pagination-actions button,.admin-shell-page .drawer-header button,.admin-shell-page .link-inline-btn,.admin-shell-page .table-icon-btn,.admin-shell-page .danger-icon-btn,.admin-shell-page .user-role-select{background:#1c2a40;border-color:#324766;color:#e8eefc}.admin-shell-page .toolbar button:hover,.admin-shell-page .actions button:hover,.admin-shell-page .pagination-actions button:hover,.admin-shell-page .drawer-header button:hover,.admin-shell-page .link-inline-btn:hover,.admin-shell-page .table-icon-btn:hover,.admin-shell-page .danger-icon-btn:hover,.admin-shell-page .user-role-select:hover{background:#253754}.admin-shell-page .actions .action-btn-unfreeze:hover:not(:disabled){background:#1f4f35;border-color:#3f7a56;color:#d9ffe4}.admin-shell-page .actions .action-btn-refund:hover:not(:disabled){background:#194564;border-color:#356a92;color:#d4efff}.admin-shell-page .actions .action-btn-partial:hover:not(:disabled){background:#5a471c;border-color:#866c2d;color:#ffeec5}.admin-shell-page .actions .action-btn-capture:hover:not(:disabled){background:#5f2931;border-color:#8a424d;color:#ffd9de}.admin-shell-page .guest-edit-btn{background:#1c2a40;border-color:#324766;color:#e8eefc}.admin-shell-page .guest-edit-btn:hover{background:#253754}.admin-shell-page table,.admin-shell-page .modal-card,.admin-shell-page .drawer-panel,.admin-shell-page .bar-draft-card{background:#121b2a;border-color:#2a3b56}.admin-shell-page th,.admin-shell-page td{border-bottom-color:#25374f}.admin-shell-page .status{background:#1d2b41;color:#dbe6fb}.admin-shell-page .status-succeeded{background:#1f4f35;color:#d9ffe4}.admin-shell-page .status-waiting_for_capture{background:#5a471c;color:#ffeec5}.admin-shell-page .status-partially_refunded{background:#31396f;color:#e0e5ff}.admin-shell-page .status-refunded{background:#194564;color:#d4efff}.admin-shell-page .status-canceled{background:#5f2931;color:#ffd9de}.admin-shell-page .status-pending{background:#2d3442;color:#d8dfeb}.admin-shell-page .allowed-apartment-item{background:#1b273b;border-color:#30445f;color:#e8eefc}.admin-shell-page .allowed-apartment-item span{color:#e8eefc;font-weight:600}.admin-shell-page .copy-toast{background:#1c2a40;border-color:#324766;color:#e8eefc}.admin-sidebar{background:#121b2a;border-color:#26364e}.admin-nav-btn{background:#1b2a3f;border-color:#324663;color:#dbe6fb}.admin-nav-btn.active{background:#22445a;border-color:#35617d;color:#ecf8ff}.admin-sidebar-bottom p{color:#9fb0cc}.admin-logout-btn{border-color:#72414a;background:#3a2228;color:#ffdce2}.admin-shell-page .admin-side-action-btn{border-color:#3d587c;background:#21344d;color:#e6efff}@media(max-width:768px){.admin-shell-page{height:auto;grid-template-columns:1fr;overflow:visible}.admin-sidebar{position:static;min-height:auto;height:auto;gap:14px}.admin-shell-content{height:auto;overflow:visible;padding-right:0}.bar-header{flex-direction:column}.bar-grid,.bar-form-row{grid-template-columns:1fr}}
