.member-layout{background-color:var(--color-gray-100,#f5f5f5);min-height:100vh}.member-login-container{min-height:100vh;padding:var(--spacing-lg,1.5rem);background:linear-gradient(135deg,#f8faf9 0%,#e8f5ec 100%);justify-content:center;align-items:center;display:flex}.member-login-card{border-radius:var(--radius-xl,16px);width:100%;max-width:420px;padding:var(--spacing-2xl,3rem);background:#fff;box-shadow:0 4px 24px #00000014}.member-login-logo{text-align:center;margin-bottom:var(--spacing-xl,2rem)}.member-login-title{color:var(--color-black,#141414);text-align:center;margin-bottom:var(--spacing-sm,.5rem);font-family:Satoshi,sans-serif;font-size:1.75rem;font-weight:700}.member-login-subtitle{color:var(--color-gray-500,#6b7280);text-align:center;margin-bottom:var(--spacing-lg,1.5rem);font-size:.95rem;line-height:1.5}.member-login-error{align-items:center;gap:var(--spacing-sm,.5rem);padding:var(--spacing-md,1rem);border-radius:var(--radius-md,8px);color:#dc2626;margin-bottom:var(--spacing-lg,1.5rem);background:#fef2f2;border:1px solid #fecaca;font-size:.875rem;display:flex}.member-login-message{align-items:center;gap:var(--spacing-sm,.5rem);padding:var(--spacing-md,1rem);border-radius:var(--radius-md,8px);color:var(--color-green,#0d9f3e);margin-bottom:var(--spacing-lg,1.5rem);background:#f0fdf4;border:1px solid #bbf7d0;font-size:.875rem;display:flex}.member-login-form{gap:var(--spacing-lg,1.5rem);flex-direction:column;display:flex}.member-form-group{gap:var(--spacing-xs,.25rem);flex-direction:column;display:flex}.member-form-label{color:var(--color-gray-700,#374151);margin-bottom:var(--spacing-xs,.25rem);font-size:.875rem;font-weight:500}.member-form-input{width:100%;height:48px;padding:0 var(--spacing-md,1rem);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-lg,12px);color:var(--color-black,#141414);transition:border-color var(--transition-fast,.15s ease),box-shadow var(--transition-fast,.15s ease);background:#fff;font-size:1rem}.member-form-input:focus{border-color:var(--color-green,#0d9f3e);outline:none;box-shadow:0 0 0 3px #0d9f3e26}.member-form-input:disabled{background:var(--color-gray-100,#f5f5f5);cursor:not-allowed}.member-form-input::placeholder{color:var(--color-gray-500,#6b7280)}.member-code-input{letter-spacing:.25em;text-align:center;font-family:monospace;font-size:1.5rem;font-weight:600}.member-form-hint{color:var(--color-gray-500,#6b7280);margin-top:var(--spacing-xs,.25rem);font-size:.8125rem}.member-form-hint strong{color:var(--color-black,#141414)}.member-form-button{justify-content:center;align-items:center;gap:var(--spacing-sm,.5rem);width:100%;height:48px;font-family:var(--text,Inter,Arial,sans-serif);color:#fff;background:var(--color-green,#0d9f3e);border-radius:var(--radius-lg,12px);cursor:pointer;transition:all var(--transition-fast,.15s ease);border:none;font-size:14px;font-weight:400;display:flex}.member-form-button:hover:not(:disabled){background:var(--hover-green,#0b8a35)}.member-form-button:active:not(:disabled){transform:scale(.98)}.member-form-button:disabled{opacity:.6;cursor:not-allowed}.member-button-loading{align-items:center;gap:var(--spacing-sm,.5rem);display:flex}.member-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite member-spin}.member-spinner.small{width:14px;height:14px}.member-spinner.large{border-width:3px;border-color:#0d9f3e33;border-top-color:var(--color-green,#0d9f3e);width:32px;height:32px}@keyframes member-spin{to{transform:rotate(360deg)}}.member-form-actions{justify-content:space-between;gap:var(--spacing-md,1rem);display:flex}.member-link-button{color:var(--color-green,#0d9f3e);cursor:pointer;transition:color var(--transition-fast,.15s ease);background:0 0;border:none;padding:0;font-size:.875rem;text-decoration:none}.member-link-button:hover:not(:disabled){color:#0b8a35;text-decoration:underline}.member-link-button:disabled{color:var(--color-gray-500,#6b7280);cursor:not-allowed}.member-login-footer{margin-top:var(--spacing-xl,2rem);padding-top:var(--spacing-lg,1.5rem);border-top:1px solid var(--color-gray-200,#e5e7eb);text-align:center}.member-dashboard{background:var(--color-gray-100,#f5f5f5);flex-direction:column;min-height:100vh;display:flex}.member-dashboard-loading{justify-content:center;align-items:center;gap:var(--spacing-md,1rem);min-height:100vh;color:var(--color-gray-500,#6b7280);flex-direction:column;display:flex}.member-dashboard-header{border-bottom:1px solid var(--color-gray-200,#e5e7eb);padding:var(--spacing-md,1rem)var(--spacing-lg,1.5rem);z-index:100;background:#fff;position:sticky;top:0}.member-dashboard-header-content{justify-content:space-between;align-items:center;gap:var(--spacing-md,1rem);max-width:1200px;margin:0 auto;display:flex}.member-dashboard-logo{align-items:center;display:flex}.member-dashboard-user{align-items:center;gap:var(--spacing-md,1rem);display:flex}.member-dashboard-email{color:var(--color-gray-500,#6b7280);font-size:.875rem}.member-logout-button{padding:0 var(--spacing-md,1rem);height:36px;color:var(--color-gray-700,#374151);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-md,8px);cursor:pointer;transition:all var(--transition-fast,.15s ease);background:#fff;font-size:.8125rem;font-weight:500}.member-logout-button:hover:not(:disabled){background:var(--color-gray-100,#f5f5f5);border-color:var(--color-gray-500,#6b7280)}.member-logout-button:disabled{opacity:.6;cursor:not-allowed}.member-dashboard-main{padding:var(--spacing-xl,2rem)var(--spacing-lg,1.5rem);flex:1}.member-dashboard-container{max-width:1200px;margin:0 auto}.member-dashboard-title{color:var(--color-black,#141414);margin-bottom:var(--spacing-lg,1.5rem);font-family:Satoshi,sans-serif;font-size:1.75rem;font-weight:700}.member-dashboard-error{align-items:center;gap:var(--spacing-md,1rem);padding:var(--spacing-md,1rem);border-radius:var(--radius-md,8px);color:#dc2626;margin-bottom:var(--spacing-lg,1.5rem);background:#fef2f2;border:1px solid #fecaca;display:flex}.member-dashboard-tabs{gap:var(--spacing-sm,.5rem);margin-bottom:var(--spacing-xl,2rem);padding:var(--spacing-xs,.25rem);border-radius:var(--radius-lg,12px);background:#fff;display:flex;box-shadow:0 1px 3px #0000000d}.member-tab{justify-content:center;align-items:center;gap:var(--spacing-sm,.5rem);padding:var(--spacing-md,1rem);color:var(--color-gray-500,#6b7280);border-radius:var(--radius-md,8px);cursor:pointer;transition:all var(--transition-fast,.15s ease);background:0 0;border:none;flex:1;font-family:Satoshi,sans-serif;font-size:.9375rem;font-weight:500;display:flex}.member-tab:hover:not(.active){color:var(--color-gray-700,#374151);background:var(--color-gray-100,#f5f5f5)}.member-tab.active{color:var(--color-green,#0d9f3e);background:#0d9f3e1a}.member-tab-badge{color:#fff;background:var(--color-green,#0d9f3e);border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.75rem;font-weight:600;display:inline-flex}.member-section{border-radius:var(--radius-xl,16px);padding:var(--spacing-lg,1.5rem);background:#fff;box-shadow:0 1px 3px #0000000d}.member-empty-state{padding:var(--spacing-3xl,4rem)var(--spacing-lg,1.5rem);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.member-empty-state svg{margin-bottom:var(--spacing-lg,1.5rem)}.member-empty-state h3{color:var(--color-black,#141414);margin-bottom:var(--spacing-sm,.5rem);font-family:Satoshi,sans-serif;font-size:1.125rem;font-weight:600}.member-empty-state p{color:var(--color-gray-500,#6b7280);margin-bottom:var(--spacing-lg,1.5rem);font-size:.9375rem}.member-cta-button{height:48px;padding:0 var(--spacing-xl,2rem);font-family:var(--text,Inter,Arial,sans-serif);color:#fff;background:var(--color-green,#0d9f3e);border-radius:var(--radius-lg,12px);transition:background var(--transition-fast,.15s ease);justify-content:center;align-items:center;font-size:14px;font-weight:400;text-decoration:none;display:inline-flex}.member-cta-button:hover{background:#0b8a35}.member-boxes-grid{gap:var(--spacing-lg,1.5rem);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.member-box-card{border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-lg,12px);opacity:0;transition:border-color var(--transition-normal,.3s ease),box-shadow var(--transition-normal,.3s ease),transform var(--transition-normal,.3s ease);animation:.45s cubic-bezier(.22,1,.36,1) forwards member-card-enter;animation-delay:calc(var(--member-card-index,0)*70ms);background:#fff;overflow:hidden;transform:translateY(10px);box-shadow:0 1px 3px #0000000d}.member-box-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0f172a1a}.member-box-card.expired{opacity:.7}.member-box-card.ending-soon{border-color:#f59e0b}.member-box-card-header{padding:var(--spacing-md,1rem);background:var(--color-gray-100,#f5f5f5);border-bottom:1px solid var(--color-gray-200,#e5e7eb);justify-content:space-between;align-items:center;display:flex}.member-box-card-size{align-items:center;gap:var(--spacing-sm,.5rem);display:flex}.member-box-size-badge{width:36px;height:36px;color:var(--color-green,#0d9f3e);border-radius:var(--radius-md,8px);background:#0d9f3e26;justify-content:center;align-items:center;font-family:Satoshi,sans-serif;font-size:.875rem;font-weight:700;display:inline-flex}.member-box-id{color:var(--color-black,#141414);font-family:Satoshi,sans-serif;font-size:1rem;font-weight:600}.member-box-status{padding:var(--spacing-xs,.25rem)var(--spacing-sm,.5rem);border-radius:var(--radius-sm,4px);font-size:.75rem;font-weight:600}.member-box-status.active{color:#166534;background:#dcfce7}.member-box-status.inactive{color:var(--color-gray-700,#374151);background:var(--color-gray-200,#e5e7eb)}.member-box-card-body{padding:var(--spacing-md,1rem)}.member-box-info-row{padding:var(--spacing-sm,.5rem)0;border-bottom:1px solid var(--color-gray-100,#f5f5f5);justify-content:space-between;align-items:center;display:flex}.member-box-info-row:last-child{border-bottom:none}.member-box-label{color:var(--color-gray-500,#6b7280);font-size:.875rem}.member-box-value{color:var(--color-black,#141414);text-align:right;font-size:.875rem}.member-box-price{color:var(--color-green,#0d9f3e);font-weight:600}.member-box-card-footer{padding:var(--spacing-md,1rem);border-top:1px solid var(--color-gray-200,#e5e7eb)}.member-box-warning{align-items:center;gap:var(--spacing-sm,.5rem);color:#92400e;background:#fef3c7;border-bottom:1px solid #fde68a;padding:10px 16px;font-size:13px;font-weight:500;display:flex}.member-box-extend-button{letter-spacing:.01em;background:var(--color-green,#0d9f3e);color:#fff;cursor:pointer;width:100%;transition:transform var(--transition-fast,.15s ease),background var(--transition-fast,.15s ease),box-shadow var(--transition-fast,.15s ease);border:none;border-radius:10px;padding:12px 14px;font-family:Satoshi,sans-serif;font-size:14px;font-weight:600}.member-box-extend-button:hover{background:var(--hover-green,#0b8a35);transform:translateY(-1px);box-shadow:0 8px 18px #0d9f3e40}.member-box-extend-button:active{transform:translateY(0);box-shadow:0 2px 8px #0d9f3e2e}.member-box-extend-button:focus-visible{outline:none;box-shadow:0 0 0 3px #0d9f3e40}.rental-modal-overlay{z-index:1000;opacity:1;background:#0000008c;justify-content:center;align-items:center;padding:20px;animation:.18s ease-out rental-fade-in;display:flex;position:fixed;inset:0}.rental-modal-overlay.is-closing{animation:.18s ease-in forwards rental-fade-out}.rental-modal{background:#fff;border:1px solid #f1f5f9;border-radius:14px;width:100%;max-width:500px;padding:32px;animation:.24s cubic-bezier(.22,1,.36,1) rental-modal-in;position:relative;transform:translateY(0)scale(1);box-shadow:0 22px 40px #02061740}.rental-modal.is-closing{animation:.18s ease-in forwards rental-modal-out}.rental-modal-close{cursor:pointer;color:#6b7280;transition:color var(--transition-fast,.15s ease),background var(--transition-fast,.15s ease);background:0 0;border:none;border-radius:8px;padding:4px;position:absolute;top:16px;right:16px}.rental-modal-close:hover{color:#141414;background:#f1f5f9}.rental-modal-title{color:#1a1a1a;margin:0 0 20px;font-family:Satoshi,sans-serif;font-size:20px;font-weight:700}.rental-modal-box-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:12px;margin-bottom:24px;padding:16px;display:flex}.rental-modal-box-badge{color:#fff;background:#141414;border-radius:6px;padding:5px 10px;font-size:14px;font-weight:700}.rental-modal-box-id{color:#1a1a1a;font-weight:600}.rental-modal-box-location{color:#64748b;font-size:14px}.rental-modal-field{margin-bottom:24px}.rental-modal-label{color:#1a1a1a;margin-bottom:12px;font-size:14px;font-weight:600;display:block}.rental-modal-periods{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.rental-period-btn{cursor:pointer;transition:transform var(--transition-fast,.15s ease),border-color var(--transition-fast,.15s ease),background var(--transition-fast,.15s ease),color var(--transition-fast,.15s ease);background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:12px 8px;font-size:13px;font-weight:500}.rental-period-btn:hover{border-color:var(--color-green,#0d9f3e);transform:translateY(-1px)}.rental-period-btn.active{border-color:var(--color-green,#0d9f3e);background:var(--color-green,#0d9f3e);color:#fff}.rental-period-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #0d9f3e33}.rental-modal-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:24px;padding:16px}.rental-summary-row{color:#64748b;justify-content:space-between;gap:12px;padding:8px 0;font-size:14px;display:flex}.rental-summary-row:not(:last-child){border-bottom:1px solid #e2e8f0}.rental-summary-highlight{color:#141414;font-weight:600}.rental-summary-total{margin-top:6px;padding-top:12px;font-size:15px}.rental-summary-price{color:#141414;font-size:18px;font-weight:700}.rental-modal-error{color:#991b1b;background:#fee2e2;border-radius:10px;margin-bottom:24px;padding:12px 16px;font-size:14px}.rental-modal-actions{gap:12px;display:flex}.rental-modal-btn{cursor:pointer;transition:transform var(--transition-fast,.15s ease),background var(--transition-fast,.15s ease),border-color var(--transition-fast,.15s ease),box-shadow var(--transition-fast,.15s ease);border-radius:10px;flex:1;padding:14px 18px;font-family:Satoshi,sans-serif;font-size:14px;font-weight:600}.rental-modal-btn.primary{background:var(--color-green,#0d9f3e);color:#fff;border:1px solid var(--color-green,#0d9f3e)}.rental-modal-btn.primary:hover:not(:disabled){background:var(--hover-green,#0b8a35);border-color:var(--hover-green,#0b8a35);transform:translateY(-1px)}.rental-modal-btn.secondary{color:#141414;background:#fff;border:1px solid #d1d5db}.rental-modal-btn.secondary:hover:not(:disabled){border-color:#334155;transform:translateY(-1px)}.rental-modal-btn:disabled{opacity:.65;cursor:not-allowed}.rental-modal-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #0d9f3e33}.rental-modal-success{text-align:center;padding:40px 20px}.rental-modal-success h2{color:#1a1a1a;margin:20px 0 8px;font-size:20px}.rental-modal-success p{color:#64748b}@keyframes member-card-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes rental-fade-in{0%{opacity:0}to{opacity:1}}@keyframes rental-fade-out{0%{opacity:1}to{opacity:0}}@keyframes rental-modal-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rental-modal-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.member-box-card,.rental-modal-overlay,.rental-modal,.member-box-extend-button,.rental-period-btn,.rental-modal-btn{transition:none!important;animation:none!important;transform:none!important}.member-box-card{opacity:1}}.member-invoices-table{flex-direction:column;display:flex}.member-invoices-header{gap:var(--spacing-md,1rem);padding:var(--spacing-sm,.5rem)var(--spacing-md,1rem);color:var(--color-gray-500,#6b7280);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-gray-200,#e5e7eb);grid-template-columns:100px 1fr 120px 120px 100px;font-size:.75rem;font-weight:600;display:grid}.member-invoice-row{gap:var(--spacing-md,1rem);padding:var(--spacing-md,1rem);border-bottom:1px solid var(--color-gray-100,#f5f5f5);transition:background var(--transition-fast,.15s ease);grid-template-columns:100px 1fr 120px 120px 100px;align-items:center;display:grid}.member-invoice-row:hover{background:var(--color-gray-100,#f5f5f5)}.member-invoice-row:last-child{border-bottom:none}.member-invoice-type-badge{padding:var(--spacing-xs,.25rem)var(--spacing-sm,.5rem);border-radius:var(--radius-sm,4px);font-size:.75rem;font-weight:600;display:inline-flex}.member-invoice-type-badge.invoice{color:#166534;background:#dcfce7}.member-invoice-amount{color:var(--color-black,#141414);font-weight:600}.member-invoice-date{color:var(--color-gray-500,#6b7280);flex-direction:column;gap:.125rem;font-size:.875rem;display:flex}.member-invoice-number{color:var(--color-gray-400,#94a3b8);font-size:.75rem}.member-invoice-paid{align-items:center;gap:var(--spacing-xs,.25rem);color:var(--color-green,#0d9f3e);font-size:.8125rem;display:flex}.member-invoice-unpaid{color:var(--color-gray-500,#6b7280);font-size:.8125rem}.member-invoice-actions{align-items:center;gap:var(--spacing-sm,.5rem);display:flex}.member-invoice-download{align-items:center;gap:var(--spacing-xs,.25rem);padding:var(--spacing-sm,.5rem);color:var(--color-green,#0d9f3e);border:1px solid var(--color-green,#0d9f3e);border-radius:var(--radius-md,8px);cursor:pointer;transition:all var(--transition-fast,.15s ease);background:0 0;font-size:.8125rem;font-weight:500;display:flex}.member-invoice-download:hover:not(:disabled){background:#0d9f3e1a}.member-invoice-download:disabled{opacity:.6;cursor:not-allowed}.member-invoice-download-text{display:none}.member-invoice-error{color:#fff;cursor:help;background:#dc2626;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;display:flex}.member-dashboard-footer{padding:var(--spacing-lg,1.5rem);text-align:center;border-top:1px solid var(--color-gray-200,#e5e7eb);background:#fff}.member-dashboard-footer p{color:var(--color-gray-500,#6b7280);font-size:.875rem}.member-dashboard-footer a{color:var(--color-green,#0d9f3e);text-decoration:none}.member-dashboard-footer a:hover{text-decoration:underline}@media screen and (max-width:767px){.member-login-card{padding:var(--spacing-lg,1.5rem)}.member-dashboard-header-content{flex-direction:column;align-items:flex-start}.member-dashboard-user{justify-content:space-between;width:100%}.member-dashboard-tabs{flex-direction:column}.member-tab{justify-content:flex-start}.member-boxes-grid{grid-template-columns:1fr}.rental-modal{padding:24px}.rental-modal-periods{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-modal-actions{flex-direction:column}.member-invoices-header{display:none}.member-invoice-row{gap:var(--spacing-sm,.5rem);padding:var(--spacing-md,1rem);background:var(--color-gray-100,#f5f5f5);border-radius:var(--radius-md,8px);margin-bottom:var(--spacing-sm,.5rem);grid-template-columns:1fr}.member-invoice-row:hover{background:var(--color-gray-200,#e5e7eb)}.member-invoice-type{order:1}.member-invoice-amount{order:2;font-size:1.125rem}.member-invoice-date{order:3}.member-invoice-status{order:4}.member-invoice-actions{margin-top:var(--spacing-sm,.5rem);order:5}.member-invoice-download{width:100%;padding:var(--spacing-md,1rem);justify-content:center}.member-invoice-download-text{display:inline}}@media screen and (min-width:768px) and (max-width:991px){.member-boxes-grid{grid-template-columns:repeat(2,1fr)}.member-invoices-header,.member-invoice-row{grid-template-columns:90px 1fr 100px 100px 90px}}
