@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Sarabun:wght@400;500;600;700&display=swap";@font-face{font-family:THSarabunNew;src:url(/fonts/THSarabunNew.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:THSarabunNew;src:url(/fonts/THSarabunNew-Bold.ttf) format("truetype");font-weight:700;font-style:normal}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;--bg-primary: #0f0f1a;--bg-secondary: #1a1a2e;--bg-tertiary: #16213e;--text-primary: rgba(255, 255, 255, .87);--text-secondary: rgba(255, 255, 255, .6);--text-muted: rgba(255, 255, 255, .5);--accent-color: #6366f1;--accent-hover: #4f46e5;--accent-light: #818cf8;--accent-dark: #3730a3;--border-color: rgba(255, 255, 255, .1);--card-bg: rgba(255, 255, 255, .05);--input-bg: rgba(0, 0, 0, .2);--input-text: rgba(255, 255, 255, .87);--input-border: rgba(255, 255, 255, .1);--placeholder-color: rgba(255, 255, 255, .4);--page-bg: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);--table-bg: rgba(20, 20, 35, .6);--table-header-bg: rgba(255, 255, 255, .03);--table-header-text: rgba(255, 255, 255, .9);--table-row-hover: rgba(255, 255, 255, .05);--table-border: rgba(255, 255, 255, .1);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background-color:var(--bg-primary)}[data-theme=light]{--bg-primary: #FFFFFF;--bg-secondary: #F8FAFC;--bg-tertiary: #F1F5F9;--text-primary: #0F172A;--text-secondary: #334155;--text-muted: #64748B;--accent-color: #4F46E5;--accent-hover: #4338CA;--accent-light: #818CF8;--accent-dark: #312E81;--border-color: #E2E8F0;--card-bg: #FFFFFF;--input-bg: #FFFFFF;--input-text: #0F172A;--input-border: #CBD5E1;--placeholder-color: #94A3B8;--page-bg: linear-gradient(135deg, #F8FAFC 0%, #F1F5F9 100%);--table-bg: #FFFFFF;--table-header-bg: #F8FAFC;--table-header-text: #334155;--table-row-hover: #F1F5F9;--table-border: #E2E8F0}body{margin:0;min-height:100vh}#root{min-height:100vh}input,select,textarea{color:var(--input-text)!important;background:var(--input-bg)!important;border-color:var(--input-border)!important}@media(max-width:768px){input,select,textarea,option{font-size:1.2rem!important;padding:14px!important;min-height:54px}input::placeholder,textarea::placeholder{font-size:1.1rem!important}}input::placeholder,textarea::placeholder{color:var(--placeholder-color)!important}label{color:var(--text-primary)!important}h1,h2,h3,h4,h5,h6{color:var(--text-primary)}p{color:var(--text-secondary)}[data-theme=light] .login-card,[data-theme=light] .contract-form-card,[data-theme=light] .inventory-section,[data-theme=light] .meter-card,[data-theme=light] .signature-card,[data-theme=light] .modal-content,[data-theme=light] .form-section,[data-theme=light] .signature-box{background:var(--card-bg);border-color:var(--border-color)}[data-theme=light] .login-container,[data-theme=light] .form-container,[data-theme=light] .contract-form-container{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-primary) 100%)}[data-theme=light] .nav-icon svg,[data-theme=light] .back-btn svg{stroke:var(--text-primary)}[data-theme=light] .back-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=light] .main-content{background:var(--bg-primary)}[data-theme=light] .contract-list-container,[data-theme=light] .dashboard-container{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-primary) 100%)}[data-theme=light] .contract-card,[data-theme=light] .dashboard-card,[data-theme=light] .inventory-card,[data-theme=light] .condo-card,[data-theme=light] .furniture-card{background:var(--card-bg);border-color:var(--border-color);box-shadow:0 4px 15px #00000014}[data-theme=light] .contract-card:hover,[data-theme=light] .dashboard-card:hover{box-shadow:0 8px 30px #0000001f;border-color:var(--accent-color)}[data-theme=light] .project-info h3,[data-theme=light] .card-header h3{color:var(--text-primary)}[data-theme=light] .unit-number{color:var(--text-primary)!important;font-weight:600}[data-theme=light] .info-row .label{color:var(--text-secondary)!important}[data-theme=light] .info-row .value{color:var(--text-primary)}[data-theme=light] .info-row,[data-theme=light] .card-actions{border-color:var(--border-color)}[data-theme=light] .dashboard-header h1,[data-theme=light] .page-header h1,[data-theme=light] .contract-list-header h1{color:var(--text-primary)!important}[data-theme=light] .subtitle,[data-theme=light] .dashboard-subtitle{color:var(--text-secondary)!important}[data-theme=light] .stat-card,[data-theme=light] .info-card{background:var(--card-bg);border-color:var(--border-color)}[data-theme=light] .empty-state p,[data-theme=light] .loading-state p{color:var(--text-secondary)}[data-theme=light] .empty-state h3{color:var(--text-primary)}[data-theme=light] table th,[data-theme=light] table td{color:var(--text-primary);border-color:var(--border-color)}[data-theme=light] table tr:hover{background:var(--card-bg)}[data-theme=light] .section-title h2{color:var(--text-primary)}[data-theme=light] .section-title p{color:var(--text-secondary)}[data-theme=light] .furniture-list-container,[data-theme=light] .condo-list-container,[data-theme=light] .dashboard-container,[data-theme=light] .contract-list-container,[data-theme=light] .form-container,[data-theme=light] .contract-form-container{background:var(--page-bg)!important}[data-theme=light] .furniture-list-header,[data-theme=light] .condo-list-header,[data-theme=light] .dashboard-header,[data-theme=light] .contract-list-header,[data-theme=light] .form-header,[data-theme=light] .profile-header,[data-theme=light] .report-header,[data-theme=light] .contract-form-header,[data-theme=light] .settings-header,[data-theme=light] .bill-payment-header{background:transparent!important;border-color:transparent!important;box-shadow:none!important}[data-theme=light] .furniture-list-header h1,[data-theme=light] .condo-list-header h1,[data-theme=light] .dashboard-header h1,[data-theme=light] .contract-list-header h1,[data-theme=light] .form-header h1,[data-theme=light] .dashboard-actions h2{color:var(--text-primary)!important}[data-theme=light] .header-title svg{color:var(--accent-color)!important}[data-theme=light] .item-card,[data-theme=light] .contract-card,[data-theme=light] .dashboard-card,[data-theme=light] .inventory-card{background:#fffffff2!important;border-color:var(--border-color)!important;box-shadow:0 4px 15px #00000014}[data-theme=light] .item-card:hover,[data-theme=light] .contract-card:hover{box-shadow:0 8px 25px #0000001f;border-color:var(--accent-color)!important}[data-theme=light] .item-th,[data-theme=light] .item-info h3,[data-theme=light] .project-info h3,[data-theme=light] .condo-name{color:var(--text-primary)!important}[data-theme=light] .item-en{color:var(--text-secondary)!important}[data-theme=light] .unit-number{color:var(--text-primary)!important}[data-theme=light] .category-group h2{color:var(--text-primary)!important;border-color:var(--border-color)!important}[data-theme=light] .condo-table-wrapper,[data-theme=light] .table-container{background:#fffffff2!important;border-color:var(--border-color)!important;box-shadow:0 4px 15px #0000000d}[data-theme=light] .condo-table th,[data-theme=light] .inventory-table th{background:#4f46e51a!important;color:var(--accent-color)!important}[data-theme=light] .condo-table td,[data-theme=light] .inventory-table td{color:var(--text-primary)!important;border-color:var(--border-color)!important}[data-theme=light] .condo-table tbody tr:hover,[data-theme=light] .inventory-table tbody tr:hover{background:#4f46e50d!important}[data-theme=light] .info-row .label{color:var(--text-muted)!important}[data-theme=light] .info-row .value{color:var(--text-primary)!important}[data-theme=light] .info-row .value.highlight{color:var(--accent-color)!important}[data-theme=light] .info-row{border-color:var(--border-color)!important}[data-theme=light] .amount-summary{background:#4f46e514!important;border-color:#4f46e533!important}[data-theme=light] .amount-label,[data-theme=light] .amount-value{color:var(--text-primary)!important}[data-theme=light] .amount-row:last-child .amount-label,[data-theme=light] .amount-row:last-child .amount-value{color:var(--accent-color)!important}[data-theme=light] .amount-thai-text{color:var(--accent-color)!important}[data-theme=light] .section-title{color:var(--accent-color)!important;border-color:#4f46e54d!important}[data-theme=light] .thai-text-display{background:#4f46e514!important;border-color:#4f46e533!important;color:var(--accent-color)!important}[data-theme=light] .back-btn,[data-theme=light] .condo-btn{background:#ffffffe6!important;border-color:var(--border-color)!important;color:var(--text-primary)!important;box-shadow:0 2px 8px #00000014}[data-theme=light] .back-btn:hover,[data-theme=light] .condo-btn:hover{background:#fff!important;box-shadow:0 4px 12px #0000001f}[data-theme=light] .edit-btn,[data-theme=light] .delete-btn{background:#ffffffe6!important;border-color:var(--border-color)!important}[data-theme=light] .empty-state h3,[data-theme=light] .loading-state p{color:var(--text-primary)!important}[data-theme=light] .empty-state p{color:var(--text-secondary)!important}[data-theme=light] .modal-content,[data-theme=light] .condo-modal,[data-theme=light] .furniture-modal{background:#fffffffa!important;border-color:var(--border-color)!important;box-shadow:0 25px 50px #00000026}[data-theme=light] .modal-content h3,[data-theme=light] .condo-modal h3,[data-theme=light] .furniture-modal h3{color:var(--text-primary)!important}[data-theme=light] .modal-content p{color:var(--text-secondary)!important}[data-theme=light] .btn-cancel{background:#0000000d!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}[data-theme=light] .btn-cancel:hover{background:#0000001a!important}[data-theme=light] .card-actions{border-color:var(--border-color)!important}[data-theme=light] .user-email{color:var(--text-muted)!important}[data-theme=light] .form-section{background:#ffffffb3!important;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}[data-theme=light] .inventory-section{background:#fffc!important;border-color:var(--border-color)!important}[data-theme=light] .inventory-section label{color:var(--text-primary)!important}[data-theme=light] .meter-card{background:#ffffffe6!important;border-color:var(--border-color)!important}[data-theme=light] .meter-card label{color:var(--text-primary)!important}[data-theme=light] .signature-card,[data-theme=light] .signature-box{background:#ffffffe6!important;border-color:var(--border-color)!important}[data-theme=light] .signature-header label,[data-theme=light] .signature-label{color:var(--text-primary)!important}.btn-page-action{background:transparent;color:var(--text-primary);border:1.5px solid var(--border-color);border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:background .2s,border-color .2s,box-shadow .2s}.sidebar{width:280px;height:100vh;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;left:0;top:0;z-index:100;transition:transform .3s ease}.sidebar-header{padding:24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--border-color)}.sidebar-logo{width:40px;height:40px;background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.sidebar-logo svg{width:24px;height:24px}.sidebar-brand h1{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0;line-height:1.2}.sidebar-brand p{color:var(--text-muted);font-size:.8rem;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.trial-progress-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:10px 14px;cursor:pointer;transition:all .2s ease}.trial-progress-container:hover{border-color:var(--text-muted);background:var(--bg-hover, rgba(0, 0, 0, .02))}.trial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.8rem;font-weight:600;white-space:nowrap;gap:8px}.trial-badge{color:var(--accent-color, #3b82f6)}.trial-days{color:var(--text-secondary)}.trial-days.warning-text{color:#ef4444}.trial-bar-bg{width:100%;height:6px;background-color:var(--border-color);border-radius:4px;overflow:hidden}.trial-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:4px;transition:width .3s ease}.trial-bar-fill.warning{background:linear-gradient(90deg,#ef4444,#f87171)}.sidebar-nav{flex:1;padding:24px 16px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;width:100%;background:transparent;border:none;border-radius:12px;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left}.nav-item:hover{background:var(--card-bg);color:var(--text-primary);box-shadow:0 4px 12px #00000026;transform:translate(4px)}.nav-item.active{background:var(--accent-color);color:#fff;box-shadow:0 4px 15px #6366f166}.nav-item.sub-item{padding-left:48px;font-size:.9rem}.nav-icon{display:flex;align-items:center;justify-content:center}.nav-icon svg{width:20px;height:20px}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:4px 0 20px #00000080}.mobile-close-btn{display:flex!important}.sidebar.open{display:flex;flex-direction:column}}.mobile-close-btn{display:none;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;margin-left:auto}.mobile-close-btn:hover{background:var(--card-bg);color:var(--text-primary)}.mobile-close-btn svg{width:24px;height:24px}[data-theme=light] .logout-btn{background:#3741511a;border-color:#37415133;color:#374151}[data-theme=light] .logout-btn:hover{background:#37415133;color:#1f2937}.disabled-menu{opacity:.5;cursor:not-allowed;background:transparent!important;color:var(--text-muted)!important}.disabled-menu:hover{transform:none!important;box-shadow:none!important}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--page-bg);padding:20px}.login-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:24px;padding:40px;width:100%;max-width:420px;box-shadow:0 25px 50px -12px #00000080}.login-header{text-align:center;margin-bottom:32px}.login-logo{width:120px;height:auto;margin:0 auto 16px;background:transparent;box-shadow:none;display:flex;justify-content:center}.login-logo img{width:100%;height:auto;object-fit:contain}.login-logo svg{display:none}.login-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0 0 8px}.login-header p{color:var(--text-muted);font-size:.9rem;margin:0}.login-tabs{display:flex;gap:8px;margin-bottom:24px;background:var(--input-bg);padding:4px;border-radius:12px}.login-tabs .tab{flex:1;padding:12px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:.9rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .3s ease}.login-tabs .tab.active{background:var(--accent-color);color:#fff;box-shadow:0 4px 15px -3px #6366f166}.login-tabs .tab:hover:not(.active){color:var(--text-primary)}.login-form{display:flex;flex-direction:column;gap:20px}.form-group input::placeholder{color:var(--placeholder-color)}.form-group input:focus{outline:none;border-color:var(--accent-color);background:#6366f10d;box-shadow:0 0 0 4px #6366f11a}.submit-btn{padding:16px 48px;background:var(--accent-color);border:none;width:auto;min-width:200px;margin:24px auto 0;display:block;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.forgot-password-link{display:flex;justify-content:flex-end;margin-top:16px;margin-bottom:8px}.forgot-password-link button{background:none;border:none;color:var(--accent-color);font-size:.85rem;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s ease}.forgot-password-link button:hover{background:#8b5cf61a;color:#a78bfa}.back-btn-login{width:100%;padding:12px;background:transparent;border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:12px}.back-btn-login:hover{background:var(--card-bg);color:var(--text-primary);border-color:var(--text-secondary)}.success-message{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#4ade80;padding:12px 16px;border-radius:12px;font-size:.9rem;text-align:center}@media(max-width:480px){.login-card{padding:24px;margin-top:40px}.login-header h1{font-size:1.5rem}}.back-to-home-btn{position:absolute;top:20px;left:20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:9999px;padding:8px 16px;display:flex;align-items:center;gap:8px;color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;font-weight:600;font-size:14px;transition:all .2s ease;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.back-to-home-btn:hover{background:var(--border-color);transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.theme-toggle-btn-login{position:absolute;top:20px;right:20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:all .2s ease;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.theme-toggle-btn-login:hover{background:var(--border-color);transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}@media(max-width:768px){.back-to-home-btn{top:16px;left:16px;padding:8px 12px}.back-to-home-btn .btn-text{display:none}.theme-toggle-btn-login{top:16px;right:16px}}.social-login-section{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:1rem;width:100%;padding:.875rem;border-radius:12px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;border:none}.social-btn:disabled{opacity:.7;cursor:not-allowed}.social-btn.google{background:#fff;color:#3c4043;border:1px solid #dadce0}.social-btn.google:hover:not(:disabled){background:#f8f9fa;border-color:#d2e3fc;box-shadow:0 1px 3px #0000001a}.login-divider{display:flex;align-items:center;justify-content:center;width:100%;margin:1.5rem 0;color:var(--text-muted);font-size:.9rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background-color:var(--border-color);opacity:.6}.login-divider span{padding:0 1.5rem;background:transparent;flex-shrink:0}.dashboard-container{padding:24px;background:var(--page-bg);min-height:100vh}.dashboard-header{margin-bottom:8px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.dashboard-header h1{font-size:1.8rem;font-weight:700;color:var(--text-primary);margin:0}.dashboard-header p{color:var(--text-muted);font-size:.95rem}.reset-layout-btn{display:flex;align-items:center;gap:6px;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-muted);font-size:.8rem;padding:7px 14px;border-radius:20px;cursor:pointer;transition:all .2s;white-space:nowrap}.reset-layout-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.drag-hint{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-muted);margin-bottom:16px;padding:6px 10px;background:var(--card-bg);border-radius:8px;border:1px dashed var(--border-color);width:fit-content}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px}.dashboard-card{background:var(--card-bg);border-radius:16px;padding:20px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;gap:12px;transition:box-shadow .2s,transform .15s}.draggable-card{cursor:grab;-webkit-user-select:none;user-select:none}.draggable-card.dragging{opacity:.55;cursor:grabbing;box-shadow:0 12px 32px #0000002e}.draggable-card.drag-over{border:2px dashed var(--accent-color);transform:scale(1.01)}.card-header-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-title{font-size:1rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px;flex:1}.card-title svg{width:18px;height:18px;color:var(--accent-color);flex-shrink:0}.card-subtitle{font-size:.78rem;color:var(--text-muted);margin-top:-6px}.drag-handle{font-size:1.4rem;color:var(--text-muted);cursor:grab;line-height:1;opacity:.55;padding:10px 8px;transition:opacity .2s,background .2s;flex-shrink:0;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px}.drag-handle:hover,.drag-handle:active{opacity:1;background:var(--border-color)}.card-filter-group{display:flex;gap:6px;flex-shrink:0}.filter-chip{font-size:.75rem;padding:4px 10px;border-radius:12px;border:1.5px solid var(--border-color);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .18s;white-space:nowrap}.filter-chip.active{background:var(--accent-color);border-color:var(--accent-color);color:#fff;font-weight:600}.filter-chip:hover:not(.active){border-color:var(--accent-color);color:var(--accent-color)}.due-month-nav{display:flex;align-items:center;justify-content:space-between;padding:4px 0 8px;gap:8px}.due-month-label{font-size:.95rem;font-weight:700;color:var(--text-primary);flex:1;text-align:center}.due-month-btn{width:30px;height:30px;border-radius:8px;border:1.5px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.due-month-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 8%,transparent)}.due-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:4px}.cal-day-header{text-align:center;font-size:.7rem;font-weight:600;color:var(--text-muted);padding:4px 0}.cal-day-empty{min-height:30px}.cal-day-btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s;padding:0;gap:1px;min-height:30px}.cal-day-btn:hover{background:color-mix(in srgb,var(--accent-color) 10%,transparent);color:var(--accent-color)}.cal-day-btn.today{color:var(--accent-color);font-weight:700;border:1.5px solid var(--accent-color)}.cal-day-btn.selected{background:var(--accent-color);color:#fff!important;font-weight:700;border:none}.cal-dot{display:block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.7;margin-top:1px}.cal-day-btn.selected .cal-dot{background:#fff;opacity:.9}.cal-day-btn.has-due{color:var(--text-primary);font-weight:600}.income-card{background:linear-gradient(135deg,var(--card-bg) 0%,color-mix(in srgb,var(--accent-color) 5%,var(--card-bg)) 100%)}.income-stats{display:flex;flex-direction:column;gap:8px}.income-main{display:flex;align-items:baseline;gap:6px;padding:12px 0 4px}.income-amount{font-size:2.2rem;font-weight:800;color:var(--accent-color);line-height:1}.income-unit{font-size:.95rem;color:var(--text-muted)}.income-row{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:color-mix(in srgb,var(--card-bg) 80%,transparent);border-radius:8px;border:1px solid var(--border-color)}.income-label{font-size:.85rem;color:var(--text-muted)}.income-value{font-weight:600;font-size:.9rem}.income-value.paid{color:#22c55e}.income-value.waiting{color:#f59e0b}.income-value.expected{color:var(--text-primary)}.income-progress-wrap{display:flex;align-items:center;gap:10px;margin-top:4px}.income-progress-bar{flex:1;height:8px;background:var(--border-color);border-radius:99px;overflow:hidden}.income-progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);border-radius:99px;transition:width .6s ease}.income-pct{font-size:.8rem;font-weight:700;color:#22c55e;min-width:36px;text-align:right}.income-coagent-section{margin-top:10px;padding-top:10px;border-top:1.5px dashed rgba(245,158,11,.4);display:flex;flex-direction:column;gap:6px}.income-coagent-title{font-size:.82rem;font-weight:700;color:#f59e0b;margin-bottom:2px}.income-value.co-agent{color:#f59e0b}.coagent-total-row{border-top:1px solid rgba(245,158,11,.25);margin-top:2px;padding-top:6px!important}.income-goal-section{background:color-mix(in srgb,var(--accent-color) 5%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent-color) 20%,transparent);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.income-goal-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.income-goal-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);white-space:nowrap}.income-goal-value{font-size:.85rem;font-weight:700;color:var(--accent-color);background:none;border:1px dashed var(--accent-color);border-radius:8px;padding:3px 10px;cursor:pointer;transition:background .2s;white-space:nowrap}.income-goal-value:hover{background:color-mix(in srgb,var(--accent-color) 10%,transparent)}.income-goal-edit{display:flex;gap:6px;align-items:center}.income-goal-input{width:110px;padding:4px 8px;border:1.5px solid var(--accent-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:.85rem;font-weight:600;text-align:right}.income-goal-input:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color) 20%,transparent)}.goal-save-btn{width:30px;height:30px;border-radius:8px;background:var(--accent-color);color:#fff;border:none;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.goal-save-btn:hover{opacity:.85}.income-goal-bar-wrap{display:flex;align-items:center;gap:8px}.income-goal-bar{flex:1;height:10px;background:var(--border-color);border-radius:99px;overflow:hidden;position:relative}.income-goal-fill{height:100%;border-radius:99px;transition:width .6s cubic-bezier(.34,1.56,.64,1),background .4s}.goal-overflow-marker{position:absolute;right:0;top:0;bottom:0;width:3px;background:#fff9;border-radius:99px}.income-goal-pct{font-size:.85rem;font-weight:800;min-width:42px;text-align:right;transition:color .4s}.income-goal-status{font-size:.75rem;color:var(--text-secondary);text-align:center}.stats-container{display:flex;align-items:center;justify-content:center;gap:32px;padding:20px 0}.pie-chart{width:140px;height:140px;border-radius:50%;position:relative;flex-shrink:0}.pie-chart:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;background:var(--card-bg);border-radius:50%}.chart-legend{display:flex;flex-direction:column;gap:12px}.legend-item{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--text-primary)}.color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.list-container{display:flex;flex-direction:column;gap:10px;max-height:280px;overflow-y:auto}.list-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--page-bg);border-radius:10px;border:1px solid var(--border-color);gap:8px}.item-info h4{margin:0;font-size:.9rem;color:var(--text-primary)}.item-info p{margin:3px 0 0;font-size:.82rem;color:var(--text-muted)}.item-status{font-size:.78rem;padding:4px 10px;border-radius:12px;font-weight:600;white-space:nowrap}.status-expiring-soon{background:#fff7ed;color:#c2410c}.status-expiring-soon.warning{background:#fef3c7;color:#b45309}.status-expiring-soon.urgent{background:#fee2e2;color:#b91c1c;animation:pulse-status 1.8s ease-in-out infinite}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.65}}.status-paid{background:#dcfce7;color:#15803d}.status-unpaid{background:#fee2e2;color:#b91c1c}.empty-message{text-align:center;color:var(--text-muted);font-size:.88rem;padding:20px}.loading-state{text-align:center;padding:60px;color:var(--text-muted)}.card-move-arrows{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.move-arrow-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1.5px solid var(--border-color);background:var(--page-bg);color:var(--text-primary);cursor:pointer;transition:all .15s;padding:0}.move-arrow-btn:hover:not(:disabled){border-color:var(--accent-color);color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 8%,transparent)}.move-arrow-btn:active:not(:disabled){transform:scale(.92)}.move-arrow-btn:disabled{opacity:.25;cursor:not-allowed}.status-waiting{background:#fef9c3;color:#a16207}@media(max-width:768px){.dashboard-container{padding:12px 12px 80px}.dashboard-grid{grid-template-columns:1fr;gap:12px}.dashboard-header{margin-bottom:4px}.dashboard-header h1{font-size:1.2rem}.dashboard-header p{font-size:.82rem}.drag-hint{font-size:.72rem;padding:4px 8px;margin-bottom:10px}.dashboard-card{padding:14px 14px 16px;border-radius:14px;gap:8px}.card-title{font-size:.9rem}.card-title svg{width:16px;height:16px}.card-subtitle{font-size:.73rem;margin-top:-4px}.list-container{max-height:200px;gap:7px}.list-item{padding:8px 10px}.item-info h4{font-size:.82rem}.item-info p{font-size:.75rem}.item-status{font-size:.72rem;padding:3px 8px}.due-month-nav{padding:0 0 6px}.due-month-label{font-size:.85rem}.due-month-btn{width:26px;height:26px}.due-calendar{gap:2px}.cal-day-header{font-size:.62rem;padding:2px 0}.cal-day-btn{font-size:.7rem;min-height:26px;border-radius:6px}.cal-day-empty{min-height:26px}.cal-dot{width:3px;height:3px}.income-amount{font-size:1.7rem}.income-main{padding:6px 0 2px}.income-row{padding:5px 8px}.income-label{font-size:.78rem}.income-value{font-size:.82rem}.stats-container{flex-direction:column;gap:14px;padding:10px 0}.pie-chart{width:110px;height:110px}.pie-chart:after{width:76px;height:76px}.legend-item{font-size:.82rem}.move-arrow-btn{width:24px;height:24px}}.form-container{min-height:100vh;background:var(--page-bg)}.form-header{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:var(--card-bg);border-bottom:1px solid var(--border-color)}.back-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#ffffff0d;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .3s ease}.back-btn svg{width:18px;height:18px}.back-btn:hover{background:#ffffff1a}.form-header h1{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.header-actions{display:flex;gap:12px}.pdf-btn,.save-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.pdf-btn{background:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.pdf-btn:hover{background:#22c55e33}.save-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:var(--text-primary)}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px -5px #6366f180}.save-btn:disabled,.pdf-btn:disabled{opacity:.6;cursor:not-allowed}.pdf-btn svg,.save-btn svg{width:18px;height:18px}.form-tabs{display:flex;gap:8px;padding:16px 32px;background:#ffffff05;overflow-x:auto}.form-tabs .tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.form-tabs .tab:hover{background:#ffffff14;color:#fff}.form-tabs .tab.active{background:var(--accent-color);border-color:transparent;color:#fff}.tab-icon{font-size:1.1rem}.form-content{padding:32px;max-width:1000px;margin:0 auto}.tab-content{animation:fadeIn .3s ease}.section-title{margin-bottom:24px}.section-title h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 8px}.section-title p{color:var(--text-secondary);margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group input,.form-group textarea{padding:14px 16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;color:var(--input-text);font-size:.95rem;transition:all .3s ease;resize:vertical}.form-group input::placeholder,.form-group textarea::placeholder{color:#ffffff4d}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;background:#6366f11a}.inventory-sections{display:flex;flex-direction:column;gap:20px}.inventory-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:20px}.inventory-section label{display:flex;align-items:center;gap:10px;color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:12px}.section-icon{font-size:1.2rem}.inventory-section textarea{width:100%;padding:14px 16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;color:var(--input-text);font-size:.95rem;resize:vertical}.inventory-section textarea:focus{outline:none;border-color:#6366f1}.meters-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.meter-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;padding:32px;text-align:center}.meter-icon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 16px}.meter-icon.electric{background:#fbbf241a}.meter-icon.water{background:#3b82f61a}.meter-card label{display:block;color:var(--text-primary);font-weight:600;margin-bottom:16px}.meter-card input{width:100%;padding:16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;color:var(--input-text);font-size:1.25rem;text-align:center}.meter-card input:focus{outline:none;border-color:#6366f1}.signatures-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.signature-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:20px}.signature-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.signature-header label{color:var(--text-primary);font-weight:600}.clear-sig-btn{padding:6px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#f87171;font-size:.8rem;cursor:pointer;transition:all .2s ease}.clear-sig-btn:hover{background:#ef444433}.name-input{width:100%;padding:12px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:.9rem;margin-bottom:12px}.name-input:focus{outline:none;border-color:#6366f1}.signature-canvas-wrapper{border:1px dashed rgba(255,255,255,.2);border-radius:12px;overflow:hidden}.signature-canvas{width:100%!important;height:120px!important;cursor:crosshair}.images-section{display:flex;flex-direction:column;gap:24px}.upload-area{border:2px dashed rgba(255,255,255,.2);border-radius:20px;padding:48px;text-align:center;cursor:pointer;transition:all .3s ease}.upload-area:hover{border-color:#6366f1;background:#6366f10d}.upload-icon{font-size:3rem;margin-bottom:16px}.upload-area p{color:var(--text-primary);font-size:1rem;margin:0 0 8px}.upload-area span{color:#ffffff80;font-size:.85rem}.images-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.image-item{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden}.image-item img{width:100%;height:100%;object-fit:cover}.remove-image-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#0009;border:none;border-radius:50%;color:#fff;font-size:.9rem;cursor:pointer;transition:all .2s ease}.remove-image-btn:hover{background:#ef4444}.image-count{text-align:center;color:#ffffff80;font-size:.9rem}.pdf-modal{max-width:360px}.pdf-modal h3{color:var(--text-primary);margin:0 0 8px}.pdf-modal p{color:var(--text-secondary);margin:0 0 24px}.language-options{display:flex;gap:12px;margin-bottom:24px}.lang-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;color:var(--text-secondary);font-size:.95rem;cursor:pointer;transition:all .3s ease}.lang-option:hover{border-color:#6366f180}.lang-option.active{background:#6366f11a;border-color:#6366f1;color:var(--text-primary)}.lang-option .flag{font-size:2rem}.btn-generate{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;color:#fff}.btn-generate:hover{box-shadow:0 5px 20px #6366f166}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;padding:32px;text-align:center;animation:slideUp .3s ease}.modal-actions{display:flex;gap:12px}.modal-actions button{flex:1;padding:12px 20px;border-radius:10px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-cancel{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fffc}.btn-cancel:hover{background:#ffffff1a}.loading-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.form-header{padding:12px 16px;flex-wrap:wrap;gap:12px}.form-header h1{order:-1;width:100%;text-align:center}.form-tabs{padding:12px 16px}.tab-label{display:none}.form-content{padding:16px}.form-grid,.meters-grid,.signatures-grid{grid-template-columns:1fr}.images-grid{grid-template-columns:repeat(2,1fr)}.form-group input,.form-group select,.form-group textarea,.meter-card input{font-size:16px!important;padding:12px}}.item-selector{display:flex;flex-direction:column;gap:12px}.selected-items{display:flex;flex-direction:column;gap:8px}.item-row{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;transition:all .2s ease}.item-row:hover{background:#ffffff14;border-color:#fff3}.item-qty{width:70px!important;text-align:center;padding:10px!important;font-weight:600}.item-names{flex:1;display:flex;flex-direction:column;gap:2px}.item-names .name-th{color:var(--text-primary);font-weight:500;font-size:1rem}.item-names .name-en{color:#ffffff80;font-size:.85rem}.btn-remove{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#f87171;cursor:pointer;font-size:1.25rem;transition:all .2s;padding:0}.btn-remove:hover{background:#ef444433;transform:scale(1.05)}.add-item-wrapper{margin-top:8px;position:relative}.add-item-select{width:100%;padding:16px;background:var(--input-bg);border:2px dashed rgba(255,255,255,.2);border-radius:14px;color:var(--input-text);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;appearance:none;-webkit-appearance:none;text-align:center}.add-item-select:hover{background:#ffffff1f;border-color:#6366f1;color:#fff}.add-item-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}.add-item-wrapper:after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);color:#ffffff80;font-size:1.5rem;pointer-events:none}.add-item-select option{background:var(--bg-secondary);color:var(--text-primary);padding:12px;font-size:1rem}.btn-convert{background:#6366f133!important;color:#22d3ee!important;border:1px solid rgba(99,102,241,.3)!important;padding:6px 12px!important;border-radius:8px!important;font-size:.85rem!important;transition:all .2s}.condo-select{width:100%;padding:16px;background:var(--input-bg);border:2px dashed rgba(255,255,255,.2);border-radius:14px;color:var(--input-text);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;appearance:none;-webkit-appearance:none}.condo-select:hover{background:#ffffff1f;border-color:#6366f1}.condo-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}.condo-select option{background:#1a1a2e;color:#fff;padding:12px}.contract-list-container{min-height:100vh;background:var(--page-bg);padding:2rem}.contract-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;max-width:1400px;margin-left:auto;margin-right:auto;flex-wrap:wrap;gap:1rem;position:sticky;top:0;z-index:100;background:var(--page-bg);padding:1rem 0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header-left{display:flex;align-items:center;gap:1.5rem}.back-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-size:.9rem}.contract-list-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0}.subtitle{color:var(--text-secondary);font-size:.9rem;margin:.25rem 0 0}.header-text .subtitle{margin:.25rem 0 0}.create-btn{display:flex;align-items:center;gap:.5rem;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.create-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4fd1c566}.create-btn svg{width:20px;height:20px}.contract-list-main{max-width:1400px;margin:0 auto}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-spinner.large{width:48px;height:48px;border:3px solid rgba(79,209,197,.2);border-top-color:#4fd1c5;border-radius:50%;animation:spin .8s linear infinite}.loading-state p,.empty-state p{color:var(--text-secondary);margin-top:1rem}.empty-icon{width:80px;height:80px;margin-bottom:1rem}.empty-icon svg{width:100%;height:100%;stroke:var(--text-muted)}.empty-state h3{color:var(--text-primary);font-size:1.25rem;margin:0 0 .5rem}.contracts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}@media(max-width:768px){.contracts-grid{grid-template-columns:1fr;gap:.85rem}}@media(max-width:400px){.contracts-grid{grid-template-columns:1fr}}.contract-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;transition:all .3s ease}.contract-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d;border-color:#4fd1c54d}.card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.25rem 0}.project-info h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.unit-number{color:var(--text-secondary);font-size:.85rem}.status-badge{padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.status-badge.active{background:#48bb7833;color:#48bb78}.status-badge.expiring{background:#ed893633;color:#ed8936}.status-badge.expired{background:#f5656533;color:#f56565}.card-body{padding:1rem 1.25rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none}.info-row .label{color:var(--text-secondary);font-size:.85rem}.info-row .value{color:var(--text-primary);font-size:.9rem;text-align:right}.info-row .value.highlight{color:#4fd1c5;font-weight:600}.card-actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem 1.25rem 1.25rem;border-top:1px solid var(--border-color)}.action-btn{flex:1 1 calc(33.333% - .5rem);min-width:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:.75rem .5rem;border:none;border-radius:10px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-align:center;line-height:1.2}.action-btn svg{width:18px;height:18px}.action-btn.edit{background:#63b3ed26;color:#63b3ed;border:1px solid rgba(99,179,237,.3)}.action-btn.edit:hover{background:#63b3ed40}.action-btn.delete{background:#f5656526;color:#f56565;border:1px solid rgba(245,101,101,.3)}.action-btn.delete:hover{background:#f5656540}.filters-row{display:flex;gap:1rem;flex-wrap:wrap;padding-bottom:0;border-bottom:none;align-items:center;padding-top:0}.search-wrapper{position:relative;flex:1;min-width:200px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--text-muted)}.clear-search{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s;display:flex;align-items:center;justify-content:center}.search-input{width:100%;padding:.6rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:.9rem;transition:all .2s;box-sizing:border-box}.search-input:focus{outline:none;border-color:#6366f1;background:var(--input-bg)}.status-tabs-group{display:flex;background:var(--card-bg);padding:4px;border-radius:10px;border:1px solid var(--border-color)}.status-tab{padding:.5rem 1rem;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-weight:500;text-transform:capitalize;transition:all .2s;font-size:.9rem}.status-tab.active{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;box-shadow:0 2px 10px #6366f133}.filter-select{height:40px;padding:0 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:.9rem;cursor:pointer;outline:none}.filter-select option{background:#1a1a2e;color:#fff}.modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2rem;max-width:400px;width:100%;text-align:center;box-shadow:0 20px 50px #00000080;animation:modalPop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalPop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-icon{width:60px;height:60px;margin:0 auto 1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}@media(max-width:768px){.contract-list-container{padding:1rem 1rem 5rem}.contract-list-header{flex-direction:column;align-items:stretch;gap:6px}.contract-list-header>div:first-child{flex-direction:row;align-items:center;gap:.5rem}.header-title{flex:1}.create-btn{width:auto;padding:6px 12px;font-size:.75rem;border-radius:8px;height:32px}.create-btn svg{width:14px;height:14px}.filters-row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}.search-wrapper{flex:1;min-width:120px}.search-input{padding:6px 10px;font-size:.8rem;border-radius:8px}.status-tabs-group{width:100%;overflow-x:auto;justify-content:space-between;padding:2px;border-radius:8px}.status-tab{flex:1;text-align:center;white-space:nowrap;padding:4px 6px;font-size:.7rem;border-radius:6px}.filter-select{min-width:0;width:auto;flex:0 1 auto;height:32px;font-size:.8rem;padding:0 8px;border-radius:8px}}.modal-icon.delete{background:#f5656533}.modal-icon svg{width:32px;height:32px;stroke:#f56565}.modal-content h3{color:#fff;font-size:1.25rem;margin:0 0 .5rem}.modal-content p{color:#ffffffb3;margin:0 0 1.5rem}.modal-actions{display:flex;gap:1rem}.btn-cancel,.btn-delete{flex:1;padding:.875rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancel{background:#ffffff1a;color:#fff}.btn-cancel:hover{background:#fff3}.btn-delete{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.btn-delete:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f5656566}.status-badge.active.signed{background:#4299e133;color:#63b3ed}.status-badge.warning{background:#ecc94b26;color:#ecc94b}.filter-select{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;color:var(--input-text);cursor:pointer;font-size:.95rem;outline:none;transition:all .3s}.filter-select:hover,.filter-select:focus{background:#ffffff1a;border-color:#4fd1c580}.filter-select option{background:var(--bg-secondary);color:var(--text-primary)}.header-actions{display:flex;gap:1rem;flex-wrap:wrap}.action-btn.upload{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.action-btn.upload:hover{background:#10b98140}.action-btn.upload.view{background:#4299e126;color:#63b3ed;border:1px solid rgba(66,153,225,.3)}.action-btn.upload.view:hover{background:#4299e140}.action-btn.pdf{background:#805ad526;color:#b794f4;border:1px solid rgba(128,90,213,.3)}.action-btn.pdf:hover{background:#805ad540}.action-btn:disabled{opacity:.5;cursor:not-allowed;background:#ffffff0d}.loading-spinner.small{width:16px;height:16px;border-width:2px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.close-btn{background:transparent;border:none;color:#ffffff80;font-size:1.5rem;cursor:pointer}.modal-body{text-align:left}.modal-body p{margin-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:.5rem}.upload-section{margin-top:1.5rem}.upload-label{display:block;width:100%;padding:1rem;background:#4fd1c51a;border:2px dashed rgba(79,209,197,.3);border-radius:12px;color:#4fd1c5;text-align:center;cursor:pointer;transition:all .3s;font-weight:500}.upload-label:hover{background:#4fd1c533;border-color:#4fd1c5}.current-file{margin:1rem 0;padding:.75rem;background:#0003;border-radius:8px}.file-link{color:#63b3ed;text-decoration:none;display:block;margin-top:.25rem;font-size:.95rem}.file-link:hover{text-decoration:underline}.condo-list-container{min-height:100vh;background:var(--page-bg)}.condo-list-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--card-bg);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.condo-search-row{padding:.75rem 2rem;background:var(--page-bg);position:sticky;top:65px;z-index:99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color)}.condo-search-row .search-wrapper{position:relative;max-width:1200px;margin:0 auto}.condo-search-row .search-input{width:100%;padding:.6rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:.9rem;transition:all .2s;box-sizing:border-box}.condo-search-row .search-input:focus{outline:none;border-color:#6366f1}.condo-search-row .clear-search{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.condo-search-row .clear-search:hover{color:var(--text-primary)}.condo-list-header h1{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.condo-list-header .back-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0a0a0;font-size:.875rem;cursor:pointer;transition:all .2s}.condo-list-header .back-btn:hover{background:#ffffff1a;color:#fff}.condo-list-header .back-btn svg{width:18px;height:18px}.condo-list-header .add-btn{display:flex;align-items:center;gap:.5rem;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.condo-list-header .add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.condo-list-header .add-btn svg{width:18px;height:18px}.condo-list-content{padding:2rem}.empty-state h3{color:#fff;font-size:1.25rem;margin-bottom:.5rem}.empty-state p{color:#a0a0a0;margin-bottom:1.5rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#a0a0a0}.condo-table-wrapper{overflow-x:auto;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.1)}.condo-table{width:100%;border-collapse:collapse}.condo-table th{padding:1rem;text-align:left;background:#6366f11a;color:#8b8bf5;font-size:.875rem;font-weight:600;white-space:nowrap}.condo-table td{padding:1rem;color:#e0e0e0;font-size:.875rem;border-bottom:1px solid rgba(255,255,255,.05)}.condo-table tbody tr:hover{background:#ffffff05}.address-cell{max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions-cell{display:flex;gap:.5rem}.edit-btn,.delete-btn{padding:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s}.condo-modal{max-width:800px;width:90%;background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2.5rem;box-shadow:0 10px 40px #00000080}.condo-modal h3{color:#fff;font-size:1.5rem;margin-bottom:2rem;text-align:center}.condo-modal .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.condo-modal .form-group{display:flex;flex-direction:column;gap:.5rem}.condo-modal .form-group.full-width{grid-column:1 / -1}.condo-modal label{color:#a0a0a0;font-size:.875rem}.condo-modal input,.condo-modal textarea{width:100%;box-sizing:border-box;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;resize:none}.condo-modal input:focus,.condo-modal textarea:focus{outline:none;border-color:#6366f1}.condo-modal input::placeholder,.condo-modal textarea::placeholder{color:#666}.condo-modal .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.btn-cancel{padding:.75rem 1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0a0a0;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#ffffff1a;color:#fff}.btn-save{padding:.75rem 1.5rem;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.btn-save:disabled{opacity:.5;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;color:#a0a0a0;margin-top:8px}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6366f1}.help-text{margin-left:26px;font-size:.8rem;color:#a0a0a0}@media(max-width:768px){.condo-list-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.condo-search-row{padding:.75rem 1rem;top:56px}.header-title{width:100%}.condo-list-header h1{font-size:1.25rem}.condo-list-header .add-btn{width:100%;justify-content:center}.condo-list-content{padding:1rem}.modal-overlay{padding:0;align-items:flex-end}.condo-modal{max-width:100%;width:100%;max-height:90vh;border-radius:20px 20px 0 0;padding:1.5rem;display:flex;flex-direction:column;animation:slideUp .3s ease}.condo-modal h3{font-size:1.1rem;margin-bottom:1rem;text-align:center}.condo-modal .form-grid{grid-template-columns:1fr;gap:.75rem;overflow-y:auto;max-height:calc(90vh - 180px);padding-right:.5rem}.condo-modal input,.condo-modal textarea{font-size:16px!important;padding:1rem}.condo-modal .modal-actions{flex-direction:column-reverse;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.btn-cancel,.btn-save{width:100%;padding:1rem;font-size:1rem;justify-content:center}.condo-table-wrapper{border:none;background:transparent}.condo-table,.condo-table tbody,.condo-table tr,.condo-table td{display:block;width:100%}.condo-table thead{display:none}.condo-table tbody tr{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:1rem;padding:1rem}.condo-table td{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.condo-table td:last-child{border-bottom:none;padding-top:1rem;justify-content:flex-end}.condo-table td:before{content:attr(data-label);color:#ffffff80;font-weight:500;text-align:left}.address-cell{max-width:100%;white-space:normal;text-align:right}.actions-cell{gap:1rem}.edit-btn,.delete-btn{padding:.75rem;font-size:1.25rem}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.furniture-list-container{min-height:100vh;background:var(--page-bg)}.furniture-list-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--card-bg);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.furniture-search-row{padding:.75rem 2rem;background:var(--page-bg);position:sticky;top:65px;z-index:99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color)}.furniture-search-row .search-wrapper{position:relative;max-width:1200px;margin:0 auto}.furniture-search-row .search-input{width:100%;padding:.6rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:.9rem;transition:all .2s;box-sizing:border-box}.furniture-search-row .search-input:focus{outline:none;border-color:#6366f1}.furniture-search-row .clear-search{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.furniture-search-row .clear-search:hover{color:var(--text-primary)}.furniture-list-header h1{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.header-icon svg{width:32px;height:32px;color:var(--accent-color)}.header-text h1{margin:0}.header-text .subtitle{margin:.25rem 0 0;color:var(--text-secondary);font-size:.9rem}.furniture-list-header .back-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0a0a0;font-size:.875rem;cursor:pointer;transition:all .2s}.furniture-list-header .back-btn:hover{background:#ffffff1a;color:#fff}.furniture-list-header .back-btn svg{width:18px;height:18px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 25px #0003}.modal-content h3{margin-top:0;margin-bottom:1.5rem;color:#1f2937;font-size:1.25rem;border-bottom:2px solid #f3f4f6;padding-bottom:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-actions{margin-top:1.5rem;display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid #f3f4f6}.btn-cancel{padding:.5rem 1rem;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-cancel:hover{background:#f3f4f6;border-color:#9ca3af}.btn-save{padding:.5rem 1.5rem;border:none;background:#2563eb;color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.btn-save:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 2px 4px #2563eb33}.btn-save:disabled{background:#93c5fd;cursor:not-allowed;transform:none;box-shadow:none}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;color:#374151;margin-top:8px}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2563eb}.help-text{margin-left:26px;font-size:.8rem;color:#6b7280}.furniture-list-header .add-btn{display:flex;align-items:center;gap:.5rem;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.furniture-list-header .add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.furniture-list-header .add-btn svg{width:18px;height:18px}.furniture-list-content{padding:2rem;max-width:1200px;margin:0 auto}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:var(--text-primary);font-size:1.25rem;margin-bottom:.5rem}.empty-state p{color:var(--text-muted);margin-bottom:1.5rem}.add-btn-large{padding:1rem 2rem;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.add-btn-large:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-muted)}.items-grid{display:flex;flex-direction:column;gap:2rem}.category-group h2{color:var(--text-secondary);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.items-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.item-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.item-card:hover{background:#ffffff0d;border-color:#6366f14d;transform:translateY(-2px)}.item-info{flex:1}.item-th{color:var(--text-primary);font-weight:500;margin-bottom:.25rem}.item-en{color:var(--text-muted);font-size:.875rem}.item-actions{display:flex;gap:.5rem;margin-left:1rem}.edit-btn,.delete-btn{padding:.5rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s}.edit-btn:hover{background:#6366f133;border-color:#6366f180}.delete-btn:hover{background:#ef444433;border-color:#ef444480}.furniture-modal{max-width:500px;width:90%}.furniture-modal h3{color:var(--text-primary);font-size:1.25rem;margin-bottom:1.5rem}.furniture-modal .form-grid{display:flex;flex-direction:column;gap:1rem}.furniture-modal .form-group{display:flex;flex-direction:column;gap:.5rem}.furniture-modal label{color:var(--text-secondary);font-size:.875rem}.furniture-modal input,.furniture-modal select{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--input-text);font-size:.875rem}.furniture-modal input:focus,.furniture-modal select:focus{outline:none;border-color:#6366f1}.furniture-modal option{background:var(--bg-secondary);color:var(--text-primary)}.furniture-modal .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}@media(max-width:768px){.furniture-list-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.furniture-search-row{padding:.75rem 1rem;top:56px}.header-title{width:100%}.furniture-list-header h1{font-size:1.25rem}.furniture-list-header .add-btn{width:100%;justify-content:center}.items-list{grid-template-columns:1fr}}.contract-form-container{min-height:100vh;background:var(--page-bg);padding:2rem}.contract-form-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;max-width:1200px;margin-left:auto;margin-right:auto;position:sticky;top:0;z-index:100;background:var(--page-bg);padding:1rem 0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.back-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;cursor:pointer;transition:all .3s ease;font-size:.9rem}.back-btn:hover{background:#fff3;transform:translate(-3px)}.back-btn svg{width:20px;height:20px}.contract-form-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0}.contract-form-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:20px;padding:2rem;max-width:1200px;margin:0 auto}.form-section{margin-bottom:2.5rem}.form-section:last-child{margin-bottom:0}.section-title{color:#4fd1c5;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid rgba(79,209,197,.3);display:flex;align-items:center;gap:.5rem}.section-title svg{width:24px;height:24px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media(max-width:768px){.contract-form-container{padding:.75rem}.contract-form-header{gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap;position:sticky;top:0;z-index:100;background:var(--page-bg);padding:.5rem .75rem;margin-left:-.75rem;margin-right:-.75rem;border-bottom:1px solid var(--border-color);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.contract-form-header h1{font-size:1.1rem}.back-btn{padding:.5rem .75rem;font-size:.8rem;border-radius:8px}.back-btn svg{width:16px;height:16px}.contract-form-card{padding:.75rem;border-radius:12px;max-width:100%}.form-section{margin-bottom:1.25rem}.section-title{font-size:1rem;margin-bottom:.75rem;padding-bottom:.5rem;gap:.35rem}.section-title svg{width:18px;height:18px}.form-grid,.form-grid-2,.form-grid-3{grid-template-columns:1fr;gap:.75rem}.form-group{gap:.3rem}.form-group label{font-size:.8rem}.form-group input,.form-group select,.form-group textarea{font-size:16px!important;padding:10px;border-radius:8px}.highlight-select{font-size:16px!important}.thai-text-display{font-size:.85rem;padding:.5rem .75rem;min-height:38px}.amount-summary{padding:.75rem;border-radius:10px}.amount-label{font-size:.85rem}.amount-value{font-size:.95rem}.amount-row:last-child .amount-label,.amount-row:last-child .amount-value{font-size:1rem}.signatures-grid{grid-template-columns:1fr;gap:1rem}.signature-box{padding:.75rem;border-radius:10px}.form-actions{flex-direction:column;gap:.5rem;margin-top:1.25rem;padding-top:1rem}.btn-save,.btn-pdf,.btn-cancel{width:100%;justify-content:center;padding:.75rem 1rem;font-size:.9rem;border-radius:10px}.form-info-box{padding:.75rem}.form-info-box p{font-size:.8rem}.file-upload-btn{padding:.75rem;font-size:.85rem}}.form-group label{color:#fffc;font-size:.9rem;font-weight:500}.form-group label.required:after{content:" *";color:#f56565}.form-group input,.form-group select,.form-group textarea{padding:.875rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:10px;color:var(--input-text);font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4fd1c5;box-shadow:0 0 0 3px #4fd1c533;background:#ffffff1f}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group select{cursor:pointer}.form-group select option{background:var(--bg-secondary);color:var(--text-primary)}.form-group textarea{min-height:100px;resize:vertical}.thai-text-display{padding:.75rem 1rem;background:#4fd1c51a;border:1px solid rgba(79,209,197,.3);border-radius:10px;color:#4fd1c5;font-size:.95rem;min-height:45px;display:flex;align-items:center}.amount-summary{background:linear-gradient(135deg,#4fd1c526,#63b3ed26);border:1px solid rgba(79,209,197,.3);border-radius:15px;padding:1.5rem;margin-top:1rem}.amount-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.amount-row:last-child{border-bottom:none;padding-top:1rem;margin-top:.5rem;border-top:2px solid rgba(79,209,197,.5)}.amount-label{color:#fffc;font-size:1rem}.amount-value{color:#fff;font-size:1.1rem;font-weight:600}.amount-row:last-child .amount-label,.amount-row:last-child .amount-value{color:#4fd1c5;font-size:1.2rem}.amount-thai-text{color:#4fd1c5e6;font-size:.9rem;text-align:right;margin-top:.25rem}.file-upload-container{display:flex;flex-direction:column;gap:.75rem}.file-upload-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:#ffffff14;border:2px dashed rgba(255,255,255,.2);border-radius:10px;color:#ffffffb3;cursor:pointer;transition:all .3s ease}.file-upload-btn:hover{border-color:#4fd1c5;background:#4fd1c51a;color:#4fd1c5}.file-upload-btn svg{width:24px;height:24px}.file-upload-btn input[type=file]{display:none}.uploaded-image-preview{position:relative;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.uploaded-image-preview img{width:100%;max-height:200px;object-fit:cover}.remove-image-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ef4444e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.remove-image-btn:hover{background:#ef4444;transform:scale(1.1)}.remove-image-btn svg{width:16px;height:16px}.signature-section{margin-top:2rem}.signatures-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.signature-box{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:15px;padding:1.5rem}.signature-label{color:#ffffffe6;font-size:1rem;font-weight:500;margin-bottom:1rem;display:block}.signature-canvas-wrapper{background:#fff;border-radius:10px;overflow:hidden;margin-bottom:.75rem}.signature-canvas-wrapper canvas{width:100%!important;height:150px!important}.clear-signature-btn{padding:.5rem 1rem;background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:8px;color:#f56565;font-size:.85rem;cursor:pointer;transition:all .3s ease}.clear-signature-btn:hover{background:#ef44444d}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.btn-save,.btn-pdf,.btn-cancel{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:140px}.btn-cancel{background:#fff;color:#ef4444;border:1px solid #ef4444}.btn-cancel:hover{background:#fef2f2;transform:translateY(-2px);box-shadow:0 4px 12px #ef444426}.btn-save{background:linear-gradient(135deg,#4fd1c5,#38b2ac);color:#fff}.btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4fd1c566}.btn-save:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-pdf{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-pdf:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-save svg,.btn-pdf svg,.btn-cancel svg{width:20px;height:20px}.loading-spinner{width:20px;height:20px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;border-radius:12px;color:#fff;font-weight:500;box-shadow:0 10px 40px #0000004d;z-index:1000;animation:slideIn .3s ease}.toast.success{background:linear-gradient(135deg,#48bb78,#38a169)}.toast.error{background:linear-gradient(135deg,#f56565,#e53e3e)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.form-info-box{background:#63b3ed1a;border:1px solid rgba(99,179,237,.3);border-radius:10px;padding:1rem;margin-bottom:1rem}.form-info-box p{color:#fffc;margin:0;font-size:.9rem;line-height:1.6}.form-info-box strong{color:#63b3ed}.highlight-select{border:2px solid #6366f1!important;background:#6366f11a!important;color:#fff!important;font-weight:500}.highlight-select:focus{box-shadow:0 0 0 3px #6366f14d!important}.form-group select option{font-size:16px;padding:10px}.form-group select{font-size:16px!important}[data-theme=light] .contract-form-container{background:var(--page-bg)}[data-theme=light] .contract-form-card{background:var(--card-bg);border-color:var(--border-color)}[data-theme=light] .contract-form-header h1,[data-theme=light] .section-title,[data-theme=light] .amount-value,[data-theme=light] .signature-label,[data-theme=light] .form-group label{color:var(--text-primary)}[data-theme=light] .form-group input,[data-theme=light] .form-group select,[data-theme=light] .form-group textarea{background:#fff;border-color:#cbd5e1;color:#1e293b}[data-theme=light] .form-group input:focus,[data-theme=light] .form-group select:focus,[data-theme=light] .form-group textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #6366f126;background:#fff}[data-theme=light] .form-group input::placeholder,[data-theme=light] .form-group textarea::placeholder{color:#94a3b8}[data-theme=light] .form-group select option{background:#fff;color:#1e293b}[data-theme=light] .highlight-select{background:#6366f11a!important;border-color:var(--accent-color)!important;color:var(--accent-color)!important}[data-theme=light] .amount-summary{background:#6366f10d;border-color:#6366f133}[data-theme=light] .amount-label,[data-theme=light] .form-info-box p{color:var(--text-secondary)}[data-theme=light] .amount-row{border-bottom-color:#0000001a}[data-theme=light] .amount-row:last-child{border-top-color:#6366f14d}[data-theme=light] .amount-row:last-child .amount-label,[data-theme=light] .amount-row:last-child .amount-value{color:var(--accent-color)}[data-theme=light] .file-upload-btn{background:#00000005;border-color:#0000001a;color:var(--text-secondary)}[data-theme=light] .file-upload-btn:hover{background:#6366f10d;border-color:var(--accent-color);color:var(--accent-color)}[data-theme=light] .back-btn{background:#fff;border-color:#e2e8f0;color:#1e293b;box-shadow:0 2px 5px #0000000d}[data-theme=light] .back-btn:hover{background:#f8fafc;border-color:#cbd5e1}[data-theme=light] .signature-box{background:#00000005;border-color:#0000001a}[data-theme=light] .signature-canvas-wrapper{border:1px solid #e2e8f0}[data-theme=light] .btn-cancel{background:#fff;border-color:#ef4444;color:#ef4444;box-shadow:0 2px 5px #ef44441a}[data-theme=light] .btn-cancel:hover{background:#fef2f2}.co-agent-toggle-row{padding:14px 16px;background:#f59e0b14;border:1.5px solid rgba(245,158,11,.3);border-radius:12px}.toggle-label{display:flex!important;align-items:center;gap:12px;cursor:pointer;font-weight:600!important;font-size:1rem!important}.toggle-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;background:var(--border-color);border-radius:99px;flex-shrink:0;transition:background .25s}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .25s;box-shadow:0 1px 4px #0003}.toggle-label input[type=checkbox]:checked~.toggle-switch{background:#f59e0b}.toggle-label input[type=checkbox]:checked~.toggle-switch:after{transform:translate(20px)}.toggle-text{color:var(--text-primary)!important}.co-agent-fee-row{padding:0 4px}.co-agent-badge{display:inline-flex;align-items:center;gap:4px;background:#f59e0b26;border:1px solid rgba(245,158,11,.4);color:#b45309;font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:99px}[data-theme=dark] .co-agent-badge{color:#fbbf24}[data-theme=light] .co-agent-toggle-row{background:#f59e0b0f}.report-page-container{min-height:100vh;background:var(--page-bg);padding:2rem}.report-header{margin-bottom:2rem;max-width:1400px;margin-left:auto;margin-right:auto;position:relative;background:transparent}.report-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0}.report-header .subtitle{color:var(--text-secondary);font-size:.9rem;margin:.25rem 0 0}.report-controls{max-width:1400px;margin:0 auto 2rem;background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;display:flex;flex-wrap:wrap;gap:2rem;align-items:flex-end}.search-group{flex:1;min-width:280px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;width:18px;height:18px;color:var(--text-muted);pointer-events:none}.search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--input-text);font-size:.95rem;transition:all .2s}.search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #6366f11a}.search-input::placeholder{color:var(--placeholder-color)}.clear-search{position:absolute;right:.75rem;background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.clear-search:hover{color:var(--text-primary)}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-group label{color:var(--text-primary);font-size:.9rem;font-weight:500}.control-select{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--input-text);font-size:.95rem;min-width:250px;cursor:pointer}.control-select option{background-color:var(--bg-secondary);color:var(--text-primary)}.control-select:focus{outline:none;border-color:var(--accent-color)}.report-content{max-width:1400px;margin:0 auto}.table-container{background:var(--table-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;overflow-x:auto;box-shadow:0 4px 20px #0000001a}.report-table{width:100%;border-collapse:collapse}.report-table th{background:var(--table-header-bg);padding:1.25rem 1.5rem;text-align:left;color:var(--table-header-text);font-weight:600;font-size:.95rem;white-space:nowrap;border-bottom:1px solid var(--table-border)}.report-table td{padding:1.25rem 1.5rem;color:var(--text-primary);border-bottom:1px solid var(--table-border);font-size:.95rem}.report-table tr:last-child td{border-bottom:none}.report-table tr:hover{background:var(--table-row-hover)}@media(max-width:768px){.report-controls{flex-direction:column;align-items:stretch;gap:1.5rem;padding:1rem}.control-select{width:100%;min-width:0}.toggle-group{width:100%}.toggle-btn{flex:1;white-space:nowrap;font-size:.85rem;padding:.6rem .5rem}.report-table,.report-table thead,.report-table tbody,.report-table th,.report-table td,.report-table tr{display:block}.report-table thead tr{position:absolute;top:-9999px;left:-9999px}.report-table td{border:none;border-bottom:1px solid var(--table-border);position:relative;padding-left:50%;padding-top:.75rem;padding-bottom:.75rem;text-align:right}.report-table td:before{position:absolute;top:.75rem;left:1rem;width:45%;padding-right:10px;white-space:nowrap;text-align:left;font-weight:700;color:var(--text-muted);content:attr(data-label)}.report-table tr{border-bottom:1px solid var(--border-color);padding:1rem 0;background:var(--card-bg);border-radius:12px;margin-bottom:1rem;box-shadow:0 4px 6px -1px #0000000d}.report-table td:last-child{padding-left:1rem;padding-right:1rem;text-align:center;display:flex;justify-content:center;border-bottom:none}.report-table td:last-child:before{display:none}}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.85rem;font-weight:500;text-transform:capitalize}.status-badge.active{background:#10b9811a;color:#10b981}.status-badge.expired{background:#ef44441a;color:#ef4444}.status-badge.pending{background:#f59e0b1a;color:#f59e0b}@media(max-width:640px){.dashboard-stats{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal-content.large-modal{width:90%;max-width:800px;background:var(--card-bg);border-radius:16px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:85vh;animation:slideUp .3s ease-out;border:1px solid var(--border-color)}.modal-header{background:var(--table-header-bg);padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start;border-radius:16px 16px 0 0}.modal-header h3{margin:0;color:var(--text-primary);font-size:1.25rem}.close-btn{background:none;border:none;color:var(--text-muted);font-size:1.75rem;cursor:pointer;line-height:1;padding:0;margin-left:1rem;transition:color .2s}.close-btn:hover{color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto;color:var(--text-primary)}.history-summary{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.summary-card{padding:1rem;border-radius:12px;display:flex;flex-direction:column;gap:.5rem}.summary-card.paid{background:#10b9811a;border:1px solid rgba(16,185,129,.2)}.summary-card.pending{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2)}.summary-card .label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.summary-card .value{font-size:1.5rem;font-weight:700}.summary-card.paid .value{color:#10b981}.summary-card.pending .value{color:#f59e0b}.history-table-wrapper{border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.history-table{width:100%;border-collapse:collapse;font-size:.95rem}.history-table th{background:var(--table-header-bg);padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.history-table td{padding:1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.history-table tr:last-child td{border-bottom:none}.view-slip-link{display:inline-flex;align-items:center;gap:.25rem;color:var(--accent-color);text-decoration:none;font-size:.9rem;font-weight:500;padding:.25rem .5rem;background:#6366f11a;border-radius:6px;transition:all .2s}.view-slip-link:hover{background:#6366f133}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.clickable-row{transition:background-color .2s}.clickable-row:hover{background-color:var(--table-row-hover)}.view-history-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .8rem;background:#6366f11a;color:var(--accent-color);border:1px solid rgba(99,102,241,.2);border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.view-history-btn:hover{background:var(--accent-color);color:#fff}.status-badge.status-waiting{background:#3b82f61a;color:#3b82f6}@media(max-width:640px){.modal-content.large-modal{width:95%;max-height:90vh;border-radius:12px;margin:1rem}.modal-header{padding:1rem;align-items:flex-start}.modal-header h3{font-size:1.1rem;line-height:1.4}.modal-header p{font-size:.85rem;margin-top:.25rem}.close-btn{font-size:1.5rem;padding:4px;margin-left:8px}.modal-body{padding:1rem}.history-summary{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.summary-card{padding:.75rem}.summary-card .label{font-size:.75rem;white-space:nowrap}.summary-card .value{font-size:1.25rem;margin-top:.25rem}.history-table thead{display:none}.history-table,.history-table tbody,.history-table tr,.history-table td{display:block;width:100%}.history-table tr{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:1rem;padding:1rem;position:relative;box-shadow:0 1px 3px #0000000d}.history-table tr:last-child td{border-bottom:1px solid var(--border-color)}.history-table td{padding:.5rem 0;border:none;border-bottom:1px dashed var(--border-color);display:flex;justify-content:space-between;align-items:center;text-align:right;font-size:.9rem}.history-table td:last-child{border-bottom:none;padding-top:.75rem;margin-top:.25rem;justify-content:center}.history-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);margin-right:1rem;text-align:left}.history-table td:last-child:before{display:none}.view-slip-link{width:100%;justify-content:center;padding:.5rem;background:#6366f126}.history-table-wrapper{border:none;overflow:visible}}.receipt-form-container{padding:20px;max-width:1000px;margin:0 auto}.receipt-form-header{display:flex;align-items:center;margin-bottom:24px;gap:16px}.receipt-form-header h1{margin:0;font-size:1.5rem;color:var(--text-color)}.receipt-form-card{background:var(--card-bg);border-radius:12px;padding:24px;box-shadow:0 4px 6px -1px #0000001a}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:500;color:var(--text-muted);font-size:.9rem}.form-group label.required:after{content:" *";color:#ef4444}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid var(--border-color);border-radius:6px;font-size:.95rem;background:var(--input-bg);color:var(--text-color);transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a}.section-title{font-size:1.1rem;font-weight:600;margin:24px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--border-color);color:var(--primary-color);display:flex;align-items:center;gap:8px}.section-title svg{width:20px;height:20px}.thai-text-display{font-size:.9em;color:var(--text-muted);background:var(--bg-secondary);padding:8px;border-radius:4px;margin-top:4px;font-style:italic}.signature-pad-container{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:#fff;position:relative;height:160px}.signature-canvas{width:100%;height:100%}.signature-actions{position:absolute;top:8px;right:8px}.clear-sig-btn{background:#ffffffe6;border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:.8rem;cursor:pointer;color:#666}.clear-sig-btn:hover{background:#f3f4f6;color:#ef4444}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:20px;border-top:1px solid var(--border-color)}.save-btn,.generate-btn{display:flex;align-items:center;gap:8px;padding:10px 24px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.save-btn{background:var(--primary-color);color:#fff}.save-btn:hover{filter:brightness(110%)}.generate-btn{background:#10b981;color:#fff}.generate-btn:hover{background:#059669}@media(max-width:768px){.receipt-form-container{padding:16px}.receipt-form-header h1{font-size:1.25rem}.form-group input,.form-group select,.form-group textarea{font-size:1.2rem;padding:14px;height:54px}.form-group textarea{height:auto}.receipt-form-card{padding:16px}.form-actions{flex-direction:column}.save-btn,.generate-btn{width:100%;justify-content:center;height:48px}}.update-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--page-bg);padding:20px}.update-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:24px;padding:40px;width:100%;max-width:420px;box-shadow:0 25px 50px -12px #00000080}.update-header{text-align:center;margin-bottom:32px}.update-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0 0 8px}.update-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.update-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-primary);font-size:.9rem;font-weight:500}.form-group input{padding:14px 16px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;color:var(--input-text);font-size:1rem;transition:all .3s ease}.form-group input::placeholder{color:#ffffff4d}.form-group input:focus{outline:none;border-color:#6366f1;background:#6366f11a;box-shadow:0 0 0 4px #6366f11a}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:12px;font-size:.9rem;text-align:center}.submit-btn{padding:16px 24px;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px -5px #6366f180}.submit-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:480px){.update-card{padding:24px}}.profile-container{min-height:100vh;background:var(--page-bg);padding-bottom:2rem}.profile-header{padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.header-title{display:flex;align-items:center;gap:1rem}.header-icon{display:flex;align-items:center;justify-content:center}.header-icon svg{width:32px;height:32px;color:#6366f1}.header-text h1{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.header-text .subtitle{margin:.25rem 0 0;color:var(--text-muted);font-size:.9rem}.profile-content{max-width:800px;margin:2rem auto;padding:0 1rem}.profile-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.avatar-circle{width:100px;height:100px;background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;font-weight:600;margin-bottom:1rem;box-shadow:0 4px 15px #6366f166}.profile-email{color:var(--text-muted);font-size:.95rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group.full-width{grid-column:span 2}.form-group input,.form-group textarea{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-actions{margin-top:2rem;display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.save-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #6366f166}.save-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.profile-content{padding:1rem;margin:1rem auto}.profile-card{padding:1.5rem}}.settings-container{padding:2rem;width:100%;margin:0;background:var(--page-bg);min-height:100vh}.settings-header,.settings-card{max-width:800px;margin-left:auto;margin-right:auto}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:1.8rem;margin-bottom:.5rem;color:var(--text-primary)}.settings-header p{color:var(--text-secondary)}.settings-card{background:var(--bg-card);padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;border:1px solid var(--border-color)}.divider{border:0;border-top:1px solid var(--border-color);margin:2rem 0}h3{margin-bottom:1.5rem;color:var(--text-primary)}.row-group{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.switch-label{font-size:1.1rem;font-weight:500}.switch{position:relative;display:inline-block;width:60px;height:34px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--accent-color)}input:focus+.slider{box-shadow:0 0 1px var(--accent-color)}input:checked+.slider:before{transform:translate(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.help-text{display:block;margin-top:.5rem;color:var(--text-secondary);font-size:.9rem}input[type=time],input[type=number],input[type=text]{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--input-bg);color:var(--input-text);font-size:1rem;margin-top:.5rem}input:disabled{opacity:.6;cursor:not-allowed}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;gap:1rem}.test-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #f59e0b4d;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.test-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66;filter:brightness(1.1)}.test-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.save-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:.8rem 2rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #6366f14d;transition:all .3s ease}.save-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166;filter:brightness(1.1)}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media(max-width:640px){.form-actions{flex-direction:column-reverse;gap:1rem}.test-btn,.save-btn{width:100%;justify-content:center}}.bill-payment-container{padding:2rem;width:100%;margin:0;background:var(--page-bg);min-height:100vh}.bill-payment-header,.bill-tabs,.bills-grid,.loading-spinner,.empty-state{max-width:1200px;margin-left:auto;margin-right:auto}.bill-payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.btn-page-action{background:transparent;color:var(--text-primary);border:1.5px solid var(--border-color);border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.4rem;transition:background .2s,border-color .2s,box-shadow .2s}.btn-page-action:hover{background:var(--border-color);border-color:var(--accent-color);box-shadow:0 2px 8px #0000001a}.btn-page-action:disabled{opacity:.5;cursor:not-allowed}.bill-payment-header h1{font-size:1.8rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.75rem}.bill-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:1px}.bill-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s}.bill-tab:hover{color:var(--primary-color)}.bill-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.bill-filter-bar{max-width:1200px;margin:-1rem auto 1.25rem;display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:.6rem 1rem}.bill-filter-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:var(--text-primary);-webkit-user-select:none;user-select:none}.bill-filter-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-color);cursor:pointer}.bill-filter-count{font-size:.85rem;color:var(--text-secondary)}.bills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.bill-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.bill-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.bill-card-header{padding:1.25rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:rgba(var(--primary-rgb),.05)}.bill-status{padding:.25rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600}.status-pending{background:#fef3c7;color:#d97706}.status-waiting{background:#dbeafe;color:#2563eb}.status-paid{background:#d1fae5;color:#059669}.status-overdue{background:#fee2e2;color:#dc2626}.bill-card-body{padding:1.25rem}.bill-info-row{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem}.bill-label{color:var(--text-secondary)}.bill-value{color:var(--text-primary);font-weight:500}.slip-preview{margin-top:1rem;border-radius:8px;overflow:hidden;border:1px solid var(--border-color);position:relative;cursor:pointer}.slip-preview img{width:100%;height:200px;object-fit:cover;display:block}.slip-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}.slip-preview:hover .slip-overlay{opacity:1}.view-slip-btn{color:#fff;background:#fff3;padding:.5rem 1rem;border-radius:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.9rem}.bill-card-footer{padding:1rem 1.25rem;border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:center}.btn-approve{flex:1;background:var(--primary-color);color:#fff;border:none;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-reject{flex:1;background:transparent;border:1px solid #dc2626;color:#dc2626;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer}.btn-reject:hover{background:#fee2e2}.btn-mark-paid{flex:1;background:#059669;color:#fff;border:none;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-mark-paid:hover{background:#047857}.btn-mark-paid:disabled{opacity:.6;cursor:not-allowed}.btn-delete-bill{flex:1;background:transparent;border:1px solid #dc2626;color:#dc2626;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-delete-bill:hover{background:#fee2e2}.btn-delete-bill:disabled{opacity:.6;cursor:not-allowed}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.slip-modal{position:fixed;inset:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem}.slip-modal-content img{max-width:100%;max-height:90vh;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.close-modal{position:absolute;top:-40px;right:-40px;color:#fff;background:none;border:none;font-size:2rem;cursor:pointer}.mark-paid-modal{background:var(--card-bg, #fff);border-radius:16px;width:100%;max-width:440px;box-shadow:0 20px 50px #0006;animation:popIn .2s ease;overflow:hidden}@keyframes popIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.mark-paid-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.mark-paid-modal-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #1e293b)}.close-modal-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary, #64748b);line-height:1;padding:0}.mark-paid-modal-body{padding:1.25rem 1.5rem}.mark-paid-info{background:var(--page-bg, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;padding:1rem;margin-bottom:1.25rem}.mark-paid-info-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;font-size:.9rem;color:var(--text-secondary, #64748b);border-bottom:1px solid var(--border-color, #e2e8f0)}.mark-paid-info-row:last-child{border-bottom:none}.mark-paid-info-row strong{color:var(--text-primary, #1e293b);text-align:right;max-width:60%}.mark-paid-slip-section{margin-top:.25rem}.mark-paid-slip-label{font-size:.9rem;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:.5rem}.mark-paid-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.25rem;border:2px dashed var(--border-color, #e2e8f0);border-radius:10px;cursor:pointer;color:var(--text-secondary, #64748b);font-size:.9rem;transition:border-color .2s,background .2s}.mark-paid-upload-label:hover{border-color:#059669;background:#f0fdf4;color:#059669}.mark-paid-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--border-color, #e2e8f0)}.btn-cancel-modal{flex:1;padding:.75rem;background:transparent;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;color:var(--text-secondary, #64748b);transition:background .2s}.btn-cancel-modal:hover{background:var(--page-bg, #f8fafc)}.btn-confirm-paid{flex:2;padding:.75rem;background:#059669;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-confirm-paid:hover{background:#047857}.btn-confirm-paid:disabled,.btn-cancel-modal:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.bill-payment-container{padding:.75rem}.bill-payment-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1rem;position:sticky;top:0;z-index:50;background:var(--page-bg);margin-left:-.75rem;margin-right:-.75rem;padding:.75rem;border-bottom:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.bill-payment-header h1{font-size:1.1rem;gap:.5rem}.bill-payment-header h1 svg{width:22px;height:22px}.btn-page-action{font-size:.8rem;padding:.45rem .85rem;width:100%;justify-content:center}.bill-tabs{display:flex;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:0;margin-left:-.75rem;margin-right:-.75rem;padding-left:.75rem;padding-right:.75rem}.bill-tabs::-webkit-scrollbar{display:none}.bill-tab{flex-shrink:0;padding:.6rem .85rem;font-size:.8rem;white-space:nowrap}.bill-filter-bar{margin:-.5rem 0 1rem;padding:.5rem .75rem;font-size:.82rem}.bill-filter-toggle{font-size:.82rem}.bill-filter-count{font-size:.78rem}.bills-grid{grid-template-columns:1fr;gap:.85rem}.bill-card{border-radius:10px}.bill-card-header{padding:.55rem .85rem;flex-wrap:nowrap;gap:6px;align-items:center}.bill-card-header span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bill-status{font-size:.72rem;padding:.15rem .5rem;flex-shrink:0}.bill-card-header span:last-child{font-size:.72rem;color:var(--text-muted)}.bill-card-body{padding:.6rem .85rem}.bill-info-row{font-size:.78rem;margin-bottom:.3rem;padding:0}.bill-label{font-size:.75rem;color:var(--text-muted)}.bill-value{font-size:.8rem}.bill-info-row .bill-value[style]{font-size:.95rem!important}.bill-card-body div[style*=italic]{font-size:.72rem!important;margin-top:.25rem!important}.slip-preview{margin-top:.5rem;border-radius:6px}.slip-preview img{height:80px;object-fit:cover}.bill-card-footer{padding:.55rem .85rem;gap:.4rem;flex-wrap:wrap;justify-content:center}.btn-approve,.btn-reject,.btn-mark-paid,.btn-delete-bill{flex:0 1 calc(50% - .2rem);min-width:100px;max-width:160px;padding:.55rem .35rem;font-size:.75rem;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;justify-content:center}.bill-card-footer .btn-approve:only-child,.bill-card-footer .btn-mark-paid:only-child{flex:0 1 80%}.slip-modal{padding:1rem}.close-modal{top:-32px;right:0;font-size:1.75rem}.mark-paid-modal{max-width:100%;border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;max-height:90vh;overflow-y:auto}.slip-modal:has(.mark-paid-modal){align-items:flex-end;padding:0}.mark-paid-modal-header{padding:.85rem 1.1rem}.mark-paid-modal-header h3{font-size:.95rem}.mark-paid-modal-body{padding:.85rem 1.1rem}.mark-paid-info-row{font-size:.8rem}.mark-paid-modal-footer{padding:.65rem 1.1rem 1.25rem}.btn-cancel-modal,.btn-confirm-paid{padding:.65rem;font-size:.85rem}.empty-state{padding:2rem 1rem;font-size:.88rem}}.moving-out-container{max-width:1200px;margin:0 auto;padding:2rem;color:var(--text-primary)}.moving-out-header{margin-bottom:2rem;text-align:center}.moving-out-header h1{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:10px}.moving-out-header p{color:var(--text-secondary)}.expense-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.section-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.section-title svg{color:var(--accent-color);width:24px;height:24px}.section-subtitle{font-size:.9rem;color:var(--text-secondary);margin-top:-1rem;margin-bottom:1.5rem;margin-left:2rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.form-input{padding:.75rem;border-radius:8px;border:1px solid var(--border-color);background:var(--input-bg);color:var(--text-primary);font-family:inherit;transition:all .2s}.form-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #6366f11a}.item-list{display:flex;flex-direction:column;gap:1rem}.expense-item{display:grid;grid-template-columns:2fr 1fr auto;gap:1rem;align-items:flex-end;margin-bottom:.5rem}.delete-btn{padding:.75rem;border-radius:8px;border:1px solid rgba(239,68,68,.2);background:#ef44441a;color:#ef4444;cursor:pointer;transition:all .2s;height:42px;display:flex;align-items:center;justify-content:center}.delete-btn:hover{background:#ef444433}.add-btn{width:100%;padding:.75rem;border-radius:8px;border:1px dashed var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s;margin-top:1rem}.add-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background:#6366f10d}.summary-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.summary-row:last-child{border-bottom:none;margin-top:.5rem;padding-top:1rem}.summary-label{color:var(--text-secondary)}.summary-value{font-weight:600;color:var(--text-primary)}.summary-value.highlight{font-size:1.1rem;color:var(--accent-color)}.summary-value.total{font-size:1.25rem;color:#10b981}.summary-value.pay{color:#ef4444}.signatures-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.image-upload-area{border:1px dashed var(--border-color);border-radius:12px;padding:2rem;text-align:center;cursor:pointer;background:#00000005;margin-top:1rem}.action-bar{position:sticky;bottom:2rem;background:var(--card-bg);border:1px solid var(--border-color);padding:1rem 2rem;border-radius:16px;display:flex;justify-content:flex-end;gap:1rem;box-shadow:0 10px 15px -3px #0000001a;z-index:10}.primary-btn{background:var(--accent-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:background-color .2s}.primary-btn:hover{background:var(--accent-hover)}@media(max-width:768px){.signatures-grid{grid-template-columns:1fr}.expense-item{grid-template-columns:1fr;gap:.5rem}.delete-btn{margin-top:.5rem}}.cph-container{padding:1.5rem 2rem 3rem;max-width:860px;margin:0 auto;min-height:100vh}.cph-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;color:var(--text-secondary);font-size:.875rem}.cph-back-btn{font-size:.875rem!important;padding:.35rem .85rem!important}.cph-breadcrumb-current{color:var(--text-primary);font-weight:600}.cph-page-header{margin-bottom:1.75rem}.cph-page-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;letter-spacing:-.02em}.cph-page-subtitle{display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.cph-tag{display:inline-flex;align-items:center;background:var(--border-color);color:var(--text-secondary);border-radius:6px;padding:.2rem .6rem;font-size:.8rem;font-weight:500}.cph-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.cph-stat-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.1rem 1.25rem;display:flex;align-items:center;gap:.9rem;border-left:4px solid transparent;transition:transform .2s,box-shadow .2s}.cph-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.cph-stat-card.paid{border-left-color:#10b981}.cph-stat-card.pending{border-left-color:#f59e0b}.cph-stat-card.overdue{border-left-color:#ef4444}.cph-stat-card.total{border-left-color:var(--accent-color)}.cph-stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.paid-icon{background:#10b9811f;color:#10b981}.pending-icon{background:#f59e0b1f;color:#f59e0b}.overdue-icon{background:#ef44441f;color:#ef4444}.total-icon{background:#6366f11f;color:var(--accent-color)}.cph-stat-label{font-size:.75rem;color:var(--text-secondary);font-weight:500;margin:0 0 .2rem}.cph-stat-value{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.01em}.cph-tabs{display:flex;gap:.25rem;flex-wrap:wrap;margin-bottom:1.25rem;border-bottom:1px solid var(--border-color);padding-bottom:0}.cph-tab{padding:.65rem 1.1rem;font-size:.875rem;font-weight:500;background:none;border:none;border-bottom:2.5px solid transparent;color:var(--text-secondary);cursor:pointer;transition:color .2s,border-color .2s;margin-bottom:-1px}.cph-tab:hover{color:var(--text-primary)}.cph-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);font-weight:600}.cph-list{display:flex;flex-direction:column;gap:.6rem}.cph-row{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;overflow:hidden;display:flex;transition:box-shadow .2s,transform .15s}.cph-row:hover{box-shadow:0 6px 20px #0000001a;transform:translateY(-1px)}.cph-row-bar{width:4px;flex-shrink:0}.st-paid-bar{background:#10b981}.st-waiting-bar{background:#3b82f6}.st-pending-bar{background:#f59e0b}.st-overdue-bar{background:#ef4444}.cph-row-body{padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;flex:1;flex-wrap:wrap;min-width:0}.cph-row-left{display:flex;align-items:flex-start;gap:.85rem;flex:1;min-width:0}.cph-row-right{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.cph-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap;flex-shrink:0}.st-paid{background:#10b9811f;color:#10b981}.st-waiting{background:#3b82f61f;color:#3b82f6}.st-pending{background:#f59e0b1f;color:#d97706}.st-overdue{background:#ef44441f;color:#ef4444}.cph-dates{display:flex;flex-direction:column;gap:.2rem;min-width:0}.cph-due{display:flex;align-items:center;gap:.3rem;font-size:.875rem;color:var(--text-primary);font-weight:500}.cph-paid-date{display:flex;align-items:center;gap:.3rem;font-size:.78rem;color:#10b981}.cph-remark{font-size:.75rem;color:var(--text-secondary);font-style:italic;margin-top:.1rem}.cph-amount{font-size:1.2rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.cph-slip-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:7px;padding:.28rem .65rem;font-size:.78rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.3rem;transition:color .2s,border-color .2s,background .2s}.cph-slip-btn:hover{color:var(--accent-color);border-color:var(--accent-color);background:#6366f10f}.cph-no-slip{font-size:.75rem;color:var(--text-secondary);opacity:.5}.cph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-secondary);gap:1rem;text-align:center}.cph-empty-icon{width:72px;height:72px;border-radius:50%;background:var(--border-color);display:flex;align-items:center;justify-content:center;opacity:.5}.cph-empty p{font-size:.95rem;color:var(--text-secondary)}.slip-modal{position:fixed;inset:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.slip-modal-content{max-width:90%;max-height:90vh;position:relative}.slip-modal-content img{max-width:100%;max-height:90vh;border-radius:12px;box-shadow:0 25px 50px #00000080}.close-modal{position:absolute;top:-44px;right:-44px;color:#fff;background:none;border:none;font-size:2rem;cursor:pointer;opacity:.8;transition:opacity .2s}.close-modal:hover{opacity:1}@media(max-width:768px){.cph-container{padding:.75rem .75rem 80px}.cph-page-header{margin-bottom:1rem;gap:.5rem}.cph-page-title{font-size:1.15rem}.cph-add-btn{padding:.45rem .85rem;font-size:.78rem;border-radius:8px}.cph-summary{grid-template-columns:repeat(2,1fr);gap:.6rem}.cph-stat-card{padding:.75rem .85rem;border-radius:12px}.cph-stat-value{font-size:1rem}.cph-stat-label{font-size:.7rem}.cph-stat-icon{width:34px;height:34px}.cph-tabs{gap:0;overflow-x:auto;scrollbar-width:none}.cph-tabs::-webkit-scrollbar{display:none}.cph-tab{padding:.45rem .65rem;font-size:.75rem;white-space:nowrap;flex-shrink:0}.cph-row-body{padding:.75rem .85rem;gap:.75rem}.cph-amount{font-size:1rem}.cph-due{font-size:.8rem}.cph-paid-date,.cph-remark{font-size:.72rem}.cph-badge{font-size:.7rem;padding:.22rem .55rem}.cph-slip-btn{font-size:.72rem;padding:.22rem .5rem}.close-modal{top:-36px;right:0}}.cph-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}.cph-add-btn{display:inline-flex;align-items:center;gap:6px;padding:.55rem 1.1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;white-space:nowrap;flex-shrink:0}.cph-add-btn:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 6px 16px #10b98159}.manual-payment-modal{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 60px #0006;animation:modalIn .25s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.manual-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.manual-modal-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.manual-contract-info{padding:.85rem 1.5rem;background:#10b98112;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:2px;font-size:.875rem;font-weight:600;color:var(--text-primary)}.manual-tenant{font-size:.8rem;font-weight:400;color:var(--text-secondary)}.manual-form{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.manual-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.manual-field{display:flex;flex-direction:column;gap:5px}.manual-label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.manual-label.required:after{content:" *";color:#ef4444}.manual-input{padding:.7rem .9rem;background:var(--input-bg, rgba(255, 255, 255, .07));border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:.9rem;transition:border-color .2s,box-shadow .2s}.manual-input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b98126}.manual-upload-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:.85rem;border:2px dashed var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;transition:border-color .2s,color .2s,background .2s}.manual-upload-btn:hover{border-color:#10b981;color:#10b981;background:#10b9810d}.manual-slip-preview{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--border-color)}.manual-slip-preview img{width:100%;max-height:200px;object-fit:cover;display:block}.manual-remove-slip{position:absolute;top:8px;right:8px;background:#ef4444e6;color:#fff;border:none;border-radius:6px;padding:3px 8px;font-size:.78rem;font-weight:600;cursor:pointer}.manual-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:8px;padding:.6rem .9rem;font-size:.85rem;margin:0}.manual-actions{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--border-color)}.manual-btn-cancel{flex:1;padding:.75rem;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.manual-btn-cancel:hover{background:var(--border-color)}.manual-btn-save{flex:2;display:flex;align-items:center;justify-content:center;gap:7px;padding:.75rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:opacity .2s,box-shadow .2s}.manual-btn-save:hover:not(:disabled){opacity:.9;box-shadow:0 6px 16px #10b98159}.manual-btn-save:disabled{opacity:.6;cursor:not-allowed}@media(max-width:520px){.manual-payment-modal{border-radius:16px 16px 0 0;max-height:95vh}.manual-form-row{grid-template-columns:1fr}}.bottom-tab-bar{display:none}@media(max-width:768px){.bottom-tab-bar{display:flex;position:fixed;bottom:16px;left:12px;right:12px;z-index:1000;background:#1a1a2ed9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:28px;padding:8px 6px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));align-items:flex-end;justify-content:space-around;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff14}}[data-theme=light] .bottom-tab-bar{background:#ffffffe6;box-shadow:0 8px 32px #0000001f,0 0 0 1px #0000000f}.tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 4px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:all .25s ease;min-width:56px;-webkit-tap-highlight-color:transparent;position:relative}.tab-item .tab-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;transition:all .25s ease}.tab-item .tab-icon svg{width:22px;height:22px}.tab-item .tab-label{font-size:.65rem;font-weight:500;white-space:nowrap;transition:color .25s ease;letter-spacing:.01em}.tab-item.active{color:var(--accent-color)}.tab-item.active .tab-icon{background:#6366f126}[data-theme=light] .tab-item.active .tab-icon{background:#4f46e51f}.tab-item.center-tab{margin-top:-28px;position:relative}.center-btn-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.center-btn-ring{position:absolute;width:62px;height:62px;border-radius:50%;background:#1a1a2ed9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 0 0 1px #ffffff14}[data-theme=light] .center-btn-ring{background:#ffffffe6;box-shadow:0 0 0 1px #0000000f}.center-btn{width:52px;height:52px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent-light) 0%,var(--accent-color) 100%);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:2;box-shadow:0 4px 15px #6366f166,0 0 20px #6366f126;transition:all .3s ease;-webkit-tap-highlight-color:transparent}.center-btn:active{transform:scale(.92)}.center-btn svg{width:26px;height:26px;transition:transform .3s ease}.center-btn.popup-open svg{transform:rotate(45deg)}.tab-item.center-tab .tab-label{margin-top:4px;color:var(--text-muted);font-size:.65rem}.popup-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:fadeInOverlay .2s ease}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.create-popup{position:fixed;bottom:110px;left:50%;transform:translate(-50%);z-index:1001;display:flex;flex-direction:column;gap:10px;animation:popupSlideUpCenter .3s cubic-bezier(.34,1.56,.64,1)}.create-popup.contract-popup-position{left:16px;transform:none;animation:popupSlideUpLeft .3s cubic-bezier(.34,1.56,.64,1)}@keyframes popupSlideUpCenter{0%{opacity:0;transform:translate(-50%) translateY(20px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes popupSlideUpLeft{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.create-popup-item{display:flex;align-items:center;gap:12px;padding:14px 24px;background:#1a1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;color:var(--text-primary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 8px 25px #0000004d;white-space:nowrap;-webkit-tap-highlight-color:transparent}.create-popup-item:active{transform:scale(.96)}[data-theme=light] .create-popup-item{background:#fffffffa;border-color:#00000014;box-shadow:0 8px 25px #0000001f}.create-popup-item .popup-item-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#6366f126;color:var(--accent-color)}.create-popup-item .popup-item-icon svg{width:20px;height:20px}.more-popup{position:fixed;bottom:100px;right:16px;z-index:1001;background:#1a1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:8px;min-width:220px;box-shadow:0 12px 40px #0006;animation:morePopupSlideUp .3s cubic-bezier(.34,1.56,.64,1)}@keyframes morePopupSlideUp{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}[data-theme=light] .more-popup{background:#fffffffa;border-color:#00000014;box-shadow:0 12px 40px #00000026}.more-popup-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;background:transparent;color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;border-radius:12px;width:100%;text-align:left;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.more-popup-item:active{background:#6366f11a}.more-popup-item.active{color:var(--accent-color);background:#6366f11a}.more-popup-item .more-item-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff0d;color:var(--text-muted);flex-shrink:0}[data-theme=light] .more-popup-item .more-item-icon{background:#0000000a}.more-popup-item.active .more-item-icon{background:#6366f126;color:var(--accent-color)}.more-popup-item .more-item-icon svg{width:18px;height:18px}.more-popup-divider{height:1px;background:var(--border-color);margin:4px 12px}.more-popup-item.logout-item{color:#ef4444}.more-popup-item.logout-item .more-item-icon{color:#ef4444;background:#ef44441a}.more-popup-item.disabled-menu{opacity:.5;cursor:not-allowed;color:var(--text-muted)!important}.more-popup-item.disabled-menu:active{background:transparent}.landing-container{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-color, #f8fafc);color:var(--text-color, #0f172a);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:clip}[data-theme=dark] .landing-container{--bg-color: #0f172a;--text-color: #f8fafc;--text-muted: #94a3b8;--card-bg: rgba(30, 41, 59, .7);--border-color: rgba(255, 255, 255, .1)}[data-theme=light] .landing-container{--bg-color: #f8fafc;--text-color: #0f172a;--text-muted: #64748b;--card-bg: rgba(255, 255, 255, .8);--border-color: rgba(0, 0, 0, .05)}.landing-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 5%;background:var(--card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.landing-logo{display:flex;align-items:center;gap:.75rem}.landing-logo img{height:36px;border-radius:8px}.landing-logo .logo-text{font-size:1.25rem;font-weight:700;color:var(--text-color);letter-spacing:-.5px}.landing-nav{display:flex;align-items:center;gap:1rem}.theme-toggle-btn{background:transparent;border:1px solid var(--border-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-color);cursor:pointer;transition:all .2s ease}.theme-toggle-btn:hover{background:var(--border-color)}.login-nav-btn{background-color:transparent;color:var(--text-color);border:1px solid var(--border-color);padding:.5rem 1.25rem;border-radius:9999px;font-weight:600;cursor:pointer;transition:all .2s ease}.login-nav-btn:hover{background-color:var(--text-color);color:var(--bg-color)}.signup-nav-btn{background-color:#3b82f6;color:#fff;border:none;padding:.5rem 1.25rem;border-radius:9999px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 6px -1px #3b82f64d}.signup-nav-btn:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 6px 8px -1px #3b82f666}.landing-hero{display:flex;align-items:center;justify-content:space-between;padding:6rem 5%;max-width:1400px;margin:0 auto;gap:4rem;flex:1}.hero-content{flex:1;max-width:600px}.hero-badge{display:inline-block;padding:.5rem 1rem;background:#3b82f61a;color:#3b82f6;border-radius:9999px;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;border:1px solid rgba(59,130,246,.2)}.hero-content h1{font-size:3.5rem;line-height:1.2;font-weight:800;margin-bottom:1.5rem;color:var(--text-color)}.text-gradient{background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-content p{font-size:1.125rem;line-height:1.6;color:var(--text-muted);margin-bottom:2.5rem}.hero-actions{display:flex;flex-direction:column;gap:2rem}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:1rem 2rem;font-size:1.125rem;font-weight:600;border-radius:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;width:fit-content;box-shadow:0 4px 14px #2563eb63}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb3b}.hero-stats{display:flex;gap:3rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-item strong{font-size:1.5rem;font-weight:700;color:var(--text-color)}.stat-item span{font-size:.875rem;color:var(--text-muted)}.hero-visual{flex:1;position:relative;display:flex;justify-content:center;align-items:center;min-height:500px}.hero-visual:before{content:"";position:absolute;width:600px;height:600px;background:radial-gradient(circle,#3b82f626,#fff0 70%);border-radius:50%;z-index:0}.glass-card{background:var(--card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:20px;box-shadow:0 20px 40px #00000014;position:relative;z-index:1;overflow:hidden}.property-card{width:320px;padding:1rem;transform:rotate(2deg);transition:transform .3s ease}.property-card:hover{transform:rotate(0) scale(1.02)}.property-image{height:200px;border-radius:12px;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);margin-bottom:1rem;background-image:url(https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?ixlib=rb-4.0.3&auto=format&fit=crop&w=600&q=80);background-size:cover;background-position:center}.property-details{padding:.5rem}.property-tag{display:inline-block;padding:.25rem .5rem;background:#f1f5f9;color:#475569;border-radius:4px;font-size:.75rem;font-weight:600;margin-bottom:.5rem;border:1px solid #e2e8f0}[data-theme=dark] .property-tag{background:#334155;color:#e2e8f0;border-color:#475569}.property-details h4{font-size:1.125rem;margin:0 0 .25rem;color:var(--text-color)}.property-details p{font-size:.875rem;color:var(--text-muted);margin:0 0 1rem}.property-price{font-size:1.25rem;font-weight:700;color:#3b82f6}.property-price span{font-size:.875rem;color:var(--text-muted);font-weight:400}.floating-stat{position:absolute;bottom:20px;left:-40px;padding:1rem 1.5rem;display:flex;align-items:center;gap:1rem;transform:translateY(0);animation:float 6s ease-in-out infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}.stat-icon{font-size:2rem}.stat-info{display:flex;flex-direction:column}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-value{font-size:1.25rem;font-weight:700;color:var(--text-color)}.landing-features{padding:6rem 5%;background:var(--card-bg);border-top:1px solid var(--border-color)}.section-header{text-align:center;max-width:600px;margin:0 auto 4rem}.section-header h2{font-size:2.5rem;color:var(--text-color);margin-bottom:1rem}.section-header p{font-size:1.125rem;color:var(--text-muted)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:var(--bg-color);padding:2.5rem;border-radius:20px;border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.feature-icon-wrapper{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.feature-icon-wrapper.blue{background:#3b82f61a;color:#3b82f6}.feature-icon-wrapper.purple{background:#8b5cf61a;color:#8b5cf6}.feature-icon-wrapper.green{background:#10b9811a;color:#10b981}.feature-card h3{font-size:1.25rem;color:var(--text-color);margin-bottom:.75rem}.feature-card p{color:var(--text-muted);line-height:1.6}.landing-pricing{padding:6rem 5%;background:var(--bg-color)}.pricing-toggle{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:3rem}.pricing-toggle span{font-size:1rem;font-weight:500;color:var(--text-color);transition:color .3s ease}.pricing-toggle span.active{color:#3b82f6}.pricing-toggle-switch{position:relative;width:60px;height:32px;background:#e2e8f0;border-radius:9999px;cursor:pointer;transition:background .3s ease}[data-theme=dark] .pricing-toggle-switch{background:#334155}.pricing-toggle-switch.yearly{background:#3b82f6}.pricing-toggle-slider{position:absolute;top:4px;left:4px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a}.pricing-toggle-switch.yearly .pricing-toggle-slider{transform:translate(28px)}.save-badge{background:#10b9811a;color:#10b981;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;margin-left:.5rem}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.pricing-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;padding:2rem 1.5rem;text-align:center;position:relative;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014}.pricing-card.popular{border-color:#3b82f6;box-shadow:0 20px 40px #3b82f61a}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:.5rem 1rem;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.5px}.pricing-header h3{font-size:1.5rem;color:var(--text-color);margin-bottom:.5rem}.pricing-header p{color:var(--text-muted);font-size:.875rem;margin-bottom:2rem}.pricing-price{margin-bottom:2rem;display:flex;justify-content:center;align-items:baseline;white-space:nowrap}.pricing-price .currency{font-size:1.5rem;font-weight:600;color:var(--text-color);vertical-align:top;margin-right:.25rem}.pricing-price .amount{font-size:3.5rem;font-weight:800;color:var(--text-color);line-height:1}.pricing-price .period{color:var(--text-muted);font-size:1rem;font-weight:500}.pricing-features{list-style:none;padding:0;margin:0 0 2.5rem;text-align:left;flex-grow:1}.pricing-features li{display:flex;align-items:flex-start;gap:.75rem;color:var(--text-color);margin-bottom:1rem;font-size:.95rem}.pricing-features li svg{flex-shrink:0;color:#10b981;margin-top:2px}.pricing-features li.disabled{color:var(--text-muted);opacity:.6}.pricing-features li.disabled svg{color:var(--text-muted)}.pricing-btn{width:100%;padding:1rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;background:transparent;border:2px solid #e2e8f0;color:var(--text-color)}[data-theme=dark] .pricing-btn{border-color:#334155}.pricing-btn:hover{border-color:#3b82f6;color:#3b82f6}.pricing-card.popular .pricing-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff}.pricing-card.popular .pricing-btn:hover{box-shadow:0 8px 20px #3b82f64d;transform:translateY(-2px)}.landing-footer{padding:4rem 5% 2rem;background:var(--bg-color);border-top:1px solid var(--border-color)}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;margin-bottom:3rem}.footer-logo{display:flex;align-items:center;gap:1rem;max-width:400px}.footer-logo img{width:60px;height:60px;object-fit:contain}.footer-logo-text{display:flex;flex-direction:column}.footer-logo .logo-text{font-size:1.5rem;font-weight:700;color:var(--text-color);display:block;margin-bottom:.25rem;line-height:1.2}.footer-logo p{color:var(--text-muted);line-height:1.4;margin:0}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.875rem}@media(max-width:992px){.landing-hero{flex-direction:column;text-align:center;padding:4rem 5%}.hero-content{max-width:100%}.hero-content h1{font-size:2.5rem}.hero-actions{align-items:center}.hero-stats{justify-content:center}.floating-stat{left:unset;right:-20px;bottom:0}.pricing-price .amount{font-size:2.75rem}.pricing-price .currency{font-size:1.25rem}.pricing-price .period{font-size:.9rem}}@media(max-width:768px){.landing-header{padding:1rem}.landing-logo .logo-text{font-size:1.1rem}.landing-nav{gap:.5rem}.signup-nav-btn,.login-nav-btn{padding:.4rem .8rem;font-size:.85rem}.theme-toggle-btn{width:32px;height:32px}.theme-toggle-btn svg{width:16px;height:16px}.hero-content h1{font-size:2.25rem;margin-bottom:1rem}.hero-content p{font-size:1rem;margin-bottom:2rem;padding:0 1rem}.hero-stats{flex-direction:column;gap:1.5rem;align-items:center}.hero-visual{min-height:400px}.property-card{width:280px}.property-image{height:160px}.floating-stat{right:-10px;bottom:-20px;padding:.75rem 1rem}.stat-icon{font-size:1.5rem}.stat-value{font-size:1rem}.landing-features,.landing-pricing{padding:4rem 1rem}.section-header h2{font-size:1.75rem;margin-bottom:.75rem}.section-header p{font-size:1rem;padding:0 1rem}.feature-card{padding:1.5rem}.pricing-price .amount{font-size:2.5rem}.primary-btn{padding:.875rem 1.75rem;font-size:1rem;width:100%;max-width:280px}.stat-item strong{font-size:1.25rem}.footer-content{flex-direction:column;align-items:center;text-align:center;gap:2rem}.footer-logo{flex-direction:column;justify-content:center;gap:.5rem}.footer-logo-text{align-items:center;text-align:center}}.subscription-page{padding:1rem;max-width:1000px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:1.75rem;color:var(--text-primary);margin-bottom:.5rem}.page-header p{color:var(--text-muted)}.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.plan-selection-card,.payment-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.plan-selection-card h2,.payment-card h2{font-size:1.25rem;color:var(--text-primary);margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.billing-toggle-container{display:flex;background:var(--input-bg);border-radius:8px;padding:4px;margin-bottom:1.5rem;border:1px solid var(--border-color)}.billing-toggle{flex:1;padding:.75rem;border:none;background:transparent;border-radius:6px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.billing-toggle.active{background:var(--accent-light, rgba(59, 130, 246, .1));color:var(--accent-color, #3b82f6);box-shadow:0 1px 3px #0000001a}.plan-options{display:flex;flex-direction:column;gap:1rem}.plan-option{border:2px solid var(--border-color);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease}.plan-option:hover{border-color:var(--text-muted)}.plan-option.selected{border-color:var(--accent-color, #3b82f6);background:var(--accent-light, rgba(59, 130, 246, .05))}.plan-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.plan-option-header h3{font-size:1.125rem;color:var(--text-primary);margin:0}.radio-circle{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-color);position:relative}.plan-option.selected .radio-circle{border-color:var(--accent-color, #3b82f6)}.plan-option.selected .radio-circle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:var(--accent-color, #3b82f6)}.plan-option-price{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.plan-option-price span{font-size:.875rem;font-weight:400;color:var(--text-muted)}.yearly-total{margin-top:.5rem;font-size:.875rem;color:var(--text-muted);background:var(--bg-color);padding:.5rem;border-radius:6px;display:inline-block}.plan-feature-list{list-style:none;padding:0;margin:.75rem 0 .5rem;display:flex;flex-direction:column;gap:.3rem}.plan-feature-list li{font-size:.825rem;color:var(--text-secondary)}.plan-feature-list li.plan-feature-disabled{color:var(--text-muted);opacity:.6}.popular-tag{font-size:.65rem;font-weight:600;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:2px 7px;border-radius:9999px;vertical-align:middle;margin-left:6px}.bank-details{display:flex;align-items:center;gap:1.25rem;padding:1.25rem;background:var(--bg-color);border-radius:12px;border:1px solid var(--border-color);margin-bottom:1.5rem}.bank-logo .scb-icon{width:50px;height:50px;background:#4e2a84;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;text-align:center}.bank-info{display:flex;flex-direction:column;gap:.25rem}.bank-name{font-weight:600;color:var(--text-primary)}.account-name{font-size:.875rem;color:var(--text-secondary)}.account-number{font-size:1.25rem;font-weight:700;color:var(--accent-color, #3b82f6);letter-spacing:1px}.payment-summary{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-top:1px dashed var(--border-color);border-bottom:1px dashed var(--border-color);margin-bottom:1.5rem}.payment-summary span{font-size:1.125rem;color:var(--text-primary)}.payment-summary .total-amount{font-size:1.5rem;font-weight:700;color:#10b981}.upload-section h3{font-size:1rem;color:var(--text-primary);margin-bottom:1rem}.file-upload-wrapper{margin-bottom:1.5rem}.file-upload-wrapper input[type=file]{display:none}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;border:2px dashed var(--border-color);border-radius:12px;cursor:pointer;background:var(--bg-color);color:var(--text-secondary);transition:all .2s ease;text-align:center}.file-upload-label:hover{border-color:var(--accent-color, #3b82f6);color:var(--accent-color, #3b82f6);background:var(--accent-light, rgba(59, 130, 246, .05))}.submit-slip-btn{width:100%;padding:1rem;font-size:1rem;display:flex;align-items:center;justify-content:center}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.error-alert{background:#ef44441a;color:#ef4444;padding:.75rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem;border:1px solid rgba(239,68,68,.2)}.success-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:3rem;text-align:center;max-width:500px;margin:4rem auto;box-shadow:0 4px 6px -1px #0000001a}.success-icon{color:#10b981;margin-bottom:1.5rem}.success-card h2{color:var(--text-primary);margin-bottom:1rem}.success-card p{color:var(--text-secondary);margin-bottom:2rem;line-height:1.5}@media(max-width:768px){.checkout-grid{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;margin-left:280px;min-height:100vh;background:var(--bg-primary);transition:margin-left .3s ease}@media(max-width:768px){.main-content{margin-left:0;padding-top:60px;padding-bottom:100px}}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%)}.loading-screen .loading-spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}.loading-screen p{margin-top:16px;color:var(--text-muted)}.config-error-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f0f1a,#1a1a2e,#16213e);padding:20px}.error-card{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:40px;max-width:600px;width:100%}.error-icon{font-size:4rem;text-align:center;margin-bottom:20px}.error-card h1{color:#fff;font-size:1.5rem;text-align:center;margin-bottom:12px}.error-card>p{color:#fff9;text-align:center;margin-bottom:24px}.steps{background:var(--card-bg);border-radius:16px;padding:24px;margin-bottom:20px}.steps h3{color:var(--accent-color);margin-bottom:16px}.steps ol{padding-left:20px;color:var(--text-primary)}.steps li{margin-bottom:12px}.steps a{color:var(--accent-color);text-decoration:none}.steps a:hover{text-decoration:underline}.steps code{background:#6366f133;padding:2px 8px;border-radius:4px;color:#a5b4fc}.steps pre{background:var(--bg-tertiary);padding:16px;border-radius:12px;overflow-x:auto;font-size:.85rem;color:#4ade80;margin:12px 0}details{background:var(--card-bg);border-radius:12px;padding:16px}details summary{cursor:pointer;color:var(--accent-color);font-weight:500}details pre{margin-top:16px;background:var(--bg-primary);padding:16px;border-radius:12px;font-size:.75rem;color:#60a5fa;overflow-x:auto;white-space:pre-wrap}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.mobile-menu-btn{display:none;position:fixed;top:16px;left:16px;z-index:50;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);padding:10px;border-radius:12px;color:var(--text-primary);cursor:pointer;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000001a;transition:all .3s ease}.mobile-menu-btn:hover{background:#fff3;transform:scale(1.05)}[data-theme=light] .mobile-menu-btn{background:#fffc;border-color:#0000001a;color:var(--text-primary);box-shadow:0 4px 12px #0000000d}@media(max-width:768px){.dashboard-header,.contract-list-header,.report-header,.furniture-list-header,.condo-list-header,.form-header,.contract-form-header,.profile-header{position:sticky;top:0;z-index:40;background:var(--bg-primary);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);margin-bottom:0;padding-top:.4rem;padding-bottom:.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px!important}.header-icon{display:none!important}.header-title,.header-left,.contract-list-header>div:first-child{align-items:center!important;justify-content:center!important;width:100%;margin-top:.6rem}.header-text h1,.dashboard-header h1{font-size:1.1rem;margin-bottom:0}.header-text .subtitle{font-size:.7rem;margin-top:0;line-height:1}}select{font-size:16px!important;min-height:44px}option{font-size:16px;background-color:#1a1a2e;color:#fff}.mobile-menu-btn svg{width:24px;height:24px}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:90;animation:fadeIn .3s ease}@media(max-width:768px){.mobile-menu-btn{display:flex}.sidebar-overlay{display:block}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.trial-warning-modal{text-align:center;padding:30px;max-width:400px}.trial-warning-icon{font-size:3rem;margin-bottom:15px;line-height:1}.trial-warning-modal h2{color:var(--text-primary);margin-bottom:12px;font-size:1.3rem}.trial-warning-modal p{color:var(--text-secondary);margin-bottom:24px;font-size:.95rem;line-height:1.6}.upgrade-btn-primary{width:100%;padding:12px 20px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #3b82f64d;transition:all .2s ease}.upgrade-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}
