@import"https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,600&family=Inter:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,600&display=swap";:root{--font-family: "Sarabun", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-base: 14px;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-card: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--border-color: #e2e8f0;--accent-color: #2563eb;--accent-hover: #1d4ed8;--sidebar-bg: #0f172a;--sidebar-text: #f8fafc;--sidebar-hover: #1e293b;--card-shadow: 0 10px 25px -5px rgba(15, 23, 42, .04), 0 8px 10px -6px rgba(15, 23, 42, .02);--border-radius-lg: 12px;--border-radius-md: 8px}[data-theme="Dark Mode"]{--bg-primary: #0b0f19;--bg-secondary: #111827;--bg-card: #1f2937;--text-primary: #f9fafb;--text-secondary: #9ca3af;--border-color: #374151;--accent-color: #3b82f6;--accent-hover: #60a5fa;--sidebar-bg: #0b0f19;--sidebar-text: #e5e7eb;--sidebar-hover: #1f2937;--card-shadow: 0 10px 30px -5px rgba(0, 0, 0, .5)}[data-theme="Emerald Green"]{--accent-color: #059669;--accent-hover: #047857}[data-theme="Indigo Purple"]{--accent-color: #4f46e5;--accent-hover: #4338ca}[data-theme="Rose Red"]{--accent-color: #e11d48;--accent-hover: #be123c}[data-theme="Amber Gold"]{--accent-color: #d97706;--accent-hover: #b45309}[data-theme="Ocean Teal"]{--accent-color: #0d9488;--accent-hover: #0f766e}[data-theme="Slate Professional"]{--accent-color: #475569;--accent-hover: #334155}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-base);background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .25s ease,color .25s ease;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-container{display:flex;height:100vh;overflow:hidden}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:var(--bg-primary)}.page-content{padding:24px;overflow-y:auto;flex:1}.card{background-color:var(--bg-card);border-radius:8px;box-shadow:var(--card-shadow);border:1px solid var(--border-color);padding:20px}.btn-primary{background-color:var(--accent-color);color:#fff;border:none;border-radius:6px;padding:10px 16px;font-weight:500;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;gap:8px}.btn-primary:hover{background-color:var(--accent-hover)}.input-field{width:100%;padding:10px 12px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);outline:none;font-size:inherit;transition:border-color .2s}.input-field:focus{border-color:var(--accent-color)}.autocomplete-dropdown,.datepicker-popover,.timepicker-popover,.filter-popover,.custom-picker-popover{background:#1e1e2dbf!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 8px 32px #0000005e!important;border-radius:12px!important}.autocomplete-dropdown .dropdown-item:hover,.timepicker-item:hover,.filter-label:hover{background:#ffffff1a!important}.datepicker-cell:hover:not(.selected):not(.disabled-date):not(.muted){background:#ffffff1a!important}.filter-list{max-height:200px;overflow-y:auto}*{font-family:Sarabun,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}:root,.theme-dark{--sidebar-bg: #0f172a;--header-bg: #1e293b;--bg-primary: #0b0f19;--bg-card: #1e293b;--border-color: #334155;--text-primary: #f8fafc;--text-secondary: #94a3b8;--accent-color: #3b82f6}.theme-default{--sidebar-bg: #0f172a;--header-bg: #ffffff;--bg-primary: #f8fafc;--bg-card: #ffffff;--border-color: #e2e8f0;--text-primary: #0f172a;--text-secondary: #475569;--accent-color: #2563eb}.theme-pastel-pink{--sidebar-bg: #4b2c3a;--header-bg: #ffffff;--bg-primary: #fff1f2;--bg-card: #ffffff;--border-color: #ffe4e6;--text-primary: #831843;--text-secondary: #be185d;--accent-color: #f472b6}.theme-pastel-mint{--sidebar-bg: #2d3c35;--header-bg: #ffffff;--bg-primary: #f0fdf4;--bg-card: #ffffff;--border-color: #dcfce7;--text-primary: #064e3b;--text-secondary: #15803d;--accent-color: #34d399}.theme-pastel-blue{--sidebar-bg: #102c54;--header-bg: #ffffff;--bg-primary: #eff6ff;--bg-card: #ffffff;--border-color: #dbeafe;--text-primary: #1e3a8a;--text-secondary: #2563eb;--accent-color: #60a5fa}.theme-pastel-peach{--sidebar-bg: #4a3728;--header-bg: #ffffff;--bg-primary: #fff7ed;--bg-card: #ffffff;--border-color: #ffedd5;--text-primary: #7c2d12;--text-secondary: #c2410c;--accent-color: #fb923c}.theme-emerald{--sidebar-bg: #064e3b;--header-bg: #ffffff;--bg-primary: #ecfdf5;--bg-card: #ffffff;--border-color: #a7f3d0;--text-primary: #064e3b;--text-secondary: #059669;--accent-color: #10b981}.theme-indigo{--sidebar-bg: #312e81;--header-bg: #ffffff;--bg-primary: #e0e7ff;--bg-card: #ffffff;--border-color: #c7d2fe;--text-primary: #312e81;--text-secondary: #4f46e5;--accent-color: #6366f1}.theme-rose{--sidebar-bg: #881337;--header-bg: #ffffff;--bg-primary: #fff1f2;--bg-card: #ffffff;--border-color: #fecdd3;--text-primary: #881337;--text-secondary: #e11d48;--accent-color: #f43f5e}.theme-amber{--sidebar-bg: #451a03;--header-bg: #ffffff;--bg-primary: #fffbeb;--bg-card: #ffffff;--border-color: #fde68a;--text-primary: #451a03;--text-secondary: #d97706;--accent-color: #f59e0b}.theme-teal{--sidebar-bg: #134e4a;--header-bg: #ffffff;--bg-primary: #ccfbf1;--bg-card: #ffffff;--border-color: #99f6e4;--text-primary: #134e4a;--text-secondary: #0d9488;--accent-color: #14b8a6}.theme-slate{--sidebar-bg: #1e293b;--header-bg: #ffffff;--bg-primary: #f1f5f9;--bg-card: #ffffff;--border-color: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--accent-color: #64748b}html{font-size:var(--font-size-base, 14px);transition:font-size .2s ease}body,#root{background-color:var(--bg-primary)!important;color:var(--text-primary)!important;transition:background-color .3s ease;margin:0;min-height:100vh}.sidebar{background-color:var(--sidebar-bg)!important;transition:background-color .3s ease}.sidebar .menu-text,.sidebar .menu-icon,.sidebar .submenu-item,.sidebar .logo-text,.sidebar h2{color:#f8fafc!important}.sidebar .menu-item:hover,.sidebar .menu-item.active{background-color:var(--sidebar-active, rgba(255, 255, 255, .15))!important}.main-header{background-color:var(--header-bg)!important;border-bottom:1px solid var(--border-color)!important;color:var(--text-primary)!important;transition:background-color .3s ease}.dash-card,.chart-card,.list-card,.form-section,.data-table-container{background-color:var(--bg-card)!important;border-color:var(--border-color)!important}.glass-select{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-primary);border-radius:8px;padding:8px 12px;font-size:.9em;outline:none;transition:all .3s ease;cursor:pointer}.glass-select:hover,.glass-select:focus{background:#ffffff1a;border-color:#fff3;box-shadow:0 4px 12px #00000026}.glass-select option{background-color:var(--bg-card);color:var(--text-primary)}.data-table th,.matrix-table th,.detail-jobs-table th,table.data-table th,.table th,th{background-color:#e2e8f0!important;color:#0f172a!important;font-weight:700!important;border-bottom:2px solid #cbd5e1!important}.accordion-header,.section-header,.group-header,.card-header,.grid-title{background:#e2e8f0!important;color:#0f172a!important;padding:6px 12px!important;margin-bottom:4px!important;border-radius:6px 6px 0 0!important;border-bottom:2px solid var(--accent-color, #2563eb)!important;min-height:32px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;box-shadow:0 1px 2px #0000000d!important}@media (max-width: 1024px){.data-table th,.data-table td{font-size:.8em!important;padding:4px!important}}@media (max-width: 768px){.data-table th,.data-table td{font-size:.65em!important;padding:2px!important}}html:not(.theme-dark) .accordion-header,html:not(.theme-dark) .section-header,html:not(.theme-dark) .group-header,html:not(.theme-dark) .card-header{background-color:#e2e8f0!important}html:not(.theme-dark) .accordion-header:hover,html:not(.theme-dark) .section-header:hover{background-color:#cbd5e1!important}html:not(.theme-dark) .accordion-title,html:not(.theme-dark) .section-header h3,html:not(.theme-dark) .group-header h3,html:not(.theme-dark) .group-title,html:not(.theme-dark) .card-header h3,html:not(.theme-dark) .card-header h4{color:#0f172a!important}html.theme-dark .data-table th,html.theme-dark .matrix-table th,html.theme-dark .detail-jobs-table th,html.theme-dark table.data-table th,html.theme-dark th{background-color:#334155!important;color:#f8fafc!important;border-bottom:2px solid #475569!important}html.theme-dark .accordion-header,html.theme-dark .section-header,html.theme-dark .group-header,html.theme-dark .card-header{background:#1e293b!important;color:#f8fafc!important}html.theme-dark .accordion-title,html.theme-dark .section-header h3,html.theme-dark .group-header h3,html.theme-dark .group-title{color:#f8fafc!important}.accordion-title,.section-header h3,.group-header h3,.group-title{font-size:.86rem!important;font-weight:700!important;color:#0f172a!important;margin:0!important;display:flex!important;align-items:center!important;gap:6px!important;letter-spacing:.2px!important}.accordion-header .accordion-icon,.section-header svg,.accordion-title svg{color:var(--accent-color, #2563eb)!important}.input-field,.custom-input,.form-control,input[type=text],input[type=number],input[type=date],input[type=time],input[type=datetime-local],input[type=email],input[type=password]{padding:0 10px!important;min-height:36px!important;height:36px!important;line-height:36px!important;font-size:.88rem!important;border-radius:6px!important;box-sizing:border-box!important;vertical-align:middle!important}select,.custom-select,.glass-select{padding:0 28px 0 10px!important;min-height:36px!important;height:36px!important;line-height:normal!important;font-size:.88rem!important;border-radius:6px!important;box-sizing:border-box!important;vertical-align:middle!important;cursor:pointer!important}textarea.input-field,textarea.custom-input,textarea{padding:8px 10px!important;font-size:.88rem!important;min-height:60px!important;line-height:1.4!important;border-radius:6px!important}.input-group,.form-group{margin-bottom:3px!important;gap:1px!important}.input-group label,.form-group label{font-size:.76rem!important;font-weight:600!important;color:var(--text-secondary)!important;margin-bottom:1px!important;line-height:1.15!important}.row-1-2,.row-2,.row-3,.row-4,.form-row,.form-grid,.form-row-grid{gap:4px 8px!important;margin-bottom:3px!important}.accordion-panel,.form-section,.add-user-container .form-section,.card.form-container,.edit-form-card{margin-bottom:6px!important;padding:6px 10px!important;border-radius:6px!important;border:1px solid var(--border-color)!important}.accordion-content{padding:6px 8px!important;gap:4px 8px!important}.matrix-table th,.matrix-table td,.detail-jobs-table th,.detail-jobs-table td,.data-table th,.data-table td{padding:4px 6px!important;font-size:.8rem!important}.app-container{display:flex;height:100vh;overflow:hidden;background-color:var(--bg-primary, #151521)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.page-content{flex:1;overflow-y:auto;padding:20px}.sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);transition:width .3s ease;display:flex;flex-direction:column;height:100vh;overflow-y:auto;overflow-x:hidden}.sidebar.open{width:260px}.sidebar.closed{width:72px}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:999}@media (max-width: 768px){.sidebar{position:fixed;z-index:1000;transform:translate(-100%);width:260px}.sidebar.open{transform:translate(0)}.sidebar.closed{transform:translate(-100%);width:260px}.sidebar-overlay.open{display:block}.main-header{padding:0 12px}.header-right .branch-info,.header-right .welcome-section{display:none}}.sidebar-logo-container{display:flex;flex-direction:column;padding:14px 12px 10px;position:relative;background:linear-gradient(180deg,#ffffff0d,#ffffff03);border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo-expanded{display:flex;justify-content:center;align-items:center;padding:6px 0 2px;width:100%}.logo-expanded-img{max-width:140px;height:auto;max-height:100px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.4));transition:transform .3s ease}.logo-expanded-img:hover{transform:scale(1.03)}.sidebar-logo-collapsed{display:flex;justify-content:center;align-items:center;width:100%;padding:4px 0}.logo-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;padding:4px;background:#0f172ab3;border-radius:12px;border:1px solid rgba(255,255,255,.14);box-shadow:0 4px 12px #0000004d,0 0 15px #22c55e26;transition:all .3s ease;flex-shrink:0}.logo-icon-wrapper:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 6px 18px #0006,0 0 22px #22c55e59;border-color:#22c55e80}.logo-icon{width:38px;height:38px;object-fit:contain;border-radius:8px}.online-indicator-dot{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;background-color:#22c55e;border:2px solid #0f172a;border-radius:50%;box-shadow:0 0 8px #22c55e;animation:pulse-online 2s infinite}@keyframes pulse-online{0%{box-shadow:0 0 #22c55eb3}70%{box-shadow:0 0 0 6px #22c55e00}to{box-shadow:0 0 #22c55e00}}.logo-brand-info{display:flex;flex-direction:column;justify-content:center;gap:3px;overflow:hidden}.logo-text-img{height:38px;max-width:155px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.system-status-tag{display:inline-flex;align-items:center;gap:5px;background:#22c55e1f;border:1px solid rgba(34,197,94,.25);padding:2px 8px;border-radius:12px;width:fit-content}.system-status-tag .status-dot{width:6px;height:6px;background-color:#22c55e;border-radius:50%}.system-status-tag .status-text{font-size:.68rem;font-weight:700;color:#4ade80;letter-spacing:.5px;text-transform:uppercase}.sidebar-logo-divider{height:1px;margin-top:10px;background:linear-gradient(90deg,transparent,rgba(34,197,94,.4),transparent)}.sidebar-menu{padding:12px 8px}.menu-item{display:flex;align-items:center;padding:12px 16px;color:var(--sidebar-text);text-decoration:none;border-radius:8px;margin-bottom:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.menu-item:hover{background-color:var(--sidebar-hover)}.menu-item.active{background-color:var(--accent-color);color:#fff}.menu-icon{margin-right:16px;display:flex;align-items:center}.sidebar.closed .menu-icon{margin-right:0;margin-left:4px}.menu-text{flex:1;font-size:.95em}.submenu{background-color:#0000001a;border-radius:8px;margin:4px 0 8px;padding:4px 0}.submenu-item{display:block;padding:10px 16px 10px 48px;color:#9ca3af;text-decoration:none;font-size:.9em;transition:color .2s}.submenu-item:hover,.submenu-item.active{color:#fff}.main-header{height:70px;background-color:var(--bg-card);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.header-left,.header-right{display:flex;align-items:center;gap:16px}.hamburger-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px}.hamburger-btn:hover{background-color:var(--bg-primary)}.welcome-text{font-weight:600;color:var(--text-primary)}.current-date{font-size:.85em;color:var(--text-secondary)}.icon-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;display:flex;align-items:center}.icon-btn:hover{background-color:var(--bg-primary)}.custom-img-btn img{width:20px;height:20px;filter:brightness(.8)}.custom-img-btn:hover img{filter:brightness(1)}.btn-label{margin-left:6px;font-weight:600;color:var(--text-primary)}.branch-info{display:flex;flex-direction:column;font-size:.85em;margin:0 16px;color:var(--text-secondary)}.profile-btn{background-color:#374151;border:none;border-radius:50%;width:36px;height:36px;cursor:pointer;display:flex;justify-content:center;align-items:center;padding:8px}.profile-btn img{width:100%;height:100%;object-fit:contain}.header-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s;position:relative;gap:6px}.header-btn:hover{background:#8080801a}.dropdown-container{position:relative}.dropdown-menu{position:absolute;top:120%;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 15px 35px #0003;z-index:1000;min-width:280px;overflow:hidden;font-size:14px!important}.dropdown-header{padding:16px;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;justify-content:space-between;align-items:center}.dropdown-header span.title{font-weight:600;font-size:1.1em}.theme-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;max-height:450px;overflow-y:auto}.theme-btn{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px;border-radius:10px;background:var(--header-bg);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;position:relative;transition:all .2s;width:100%;font-size:14px!important}.theme-btn:hover{border-color:var(--accent-color);color:var(--text-primary);transform:translateY(-2px)}.theme-btn.active{border-color:var(--accent-color);background:#8080800d;color:var(--text-primary);border-width:2px}.theme-palette{display:flex;gap:4px}.theme-color-box{width:16px;height:16px;border-radius:4px;display:inline-block;box-shadow:inset 0 0 0 1px #0000001a}.theme-name{font-size:.85em;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:left}.theme-badge{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);background:var(--accent-color);color:#fff;font-size:.7em;padding:2px 10px;border-radius:10px;font-weight:700}.font-menu{width:340px}.font-controls{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color)}.font-ctrl-btn{background:var(--header-bg);border:1px solid var(--border-color);color:var(--text-primary);width:38px;height:38px;border-radius:8px;cursor:pointer;font-size:1.2em;font-weight:700;transition:all .2s}.font-ctrl-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.font-ctrl-val{color:var(--accent-color);font-weight:700;font-size:1.4em}.font-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:16px}.font-btn{padding:12px 5px;border-radius:8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:1em;transition:all .2s}.font-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.font-btn.active{background:var(--accent-color);color:#fff;font-weight:700}.font-preview{text-align:center;padding:30px 20px;border-top:1px solid var(--border-color);color:var(--text-primary);background:#00000005;min-height:120px;display:flex;align-items:center;justify-content:center;word-break:break-all;overflow:hidden;line-height:1.2}.noti-menu{width:380px;max-height:500px;overflow-y:auto}.noti-badge-icon{background:#ef4444;color:#fff;font-size:.75em;padding:2px 6px;border-radius:10px;font-weight:700}.noti-section{padding:12px 16px;border-bottom:1px solid var(--border-color)}.noti-section:last-child{border-bottom:none}.noti-title{font-weight:600;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:8px;font-size:.95em}.noti-title span.count{background:#80808033;padding:2px 8px;border-radius:12px;font-size:.8em}.noti-table{width:100%;border-collapse:collapse;font-size:.85em}.noti-table th{text-align:left;padding:6px;color:var(--text-secondary);font-weight:500;border-bottom:1px solid var(--border-color)}.noti-table td{padding:8px 6px;color:var(--text-primary);border-bottom:1px dashed rgba(128,128,128,.1)}.noti-table tr:last-child td{border-bottom:none}.noti-empty{text-align:center;color:var(--text-secondary);padding:10px;font-size:.9em;font-style:italic}.text-danger{color:#ef4444;font-weight:600}.logout-btn{display:flex;align-items:center;gap:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444;cursor:pointer;padding:8px 16px;border-radius:20px;transition:all .2s;margin-left:10px;font-weight:600;font-size:.9em}.logout-btn:hover{background:#ef4444;color:#fff}.hello-world-123{color:red}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-primary, #151521)}.login-container .login-card{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:32px 30px;width:100%;max-width:380px;box-shadow:0 10px 25px #0000004d;color:var(--text-primary, #ffffff)}.login-container .login-logo{text-align:center;margin-bottom:24px}.login-container .login-logo img{max-width:140px;height:auto}.login-container .login-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:24px;font-size:.85em}.login-container .form-group{margin-bottom:20px}.login-container .form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:.9em}.login-container .login-card .input-field{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 12px;font-size:.95em;border-radius:6px;width:100%;outline:none;box-sizing:border-box}.login-container .login-card .input-field:focus{border-color:var(--accent-color)}.login-container .password-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.login-container .password-input-wrapper .input-field{padding-right:40px}.login-container .password-toggle-btn{position:absolute;right:10px;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:color .2s}.login-container .password-toggle-btn:hover{color:var(--text-primary)}.login-container .login-btn{width:100%;padding:12px;background-color:var(--accent-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:1em;font-weight:500;cursor:pointer;margin-top:10px;transition:all .2s}.login-container .login-btn:hover{filter:brightness(1.1)}.login-container .login-btn:disabled{opacity:.7;cursor:not-allowed}.login-container .login-error{color:#ef4444;margin-bottom:16px;font-size:.9em;text-align:center;background-color:#ef44441a;padding:10px;border-radius:6px;border:1px solid rgba(239,68,68,.2)}.dashboard-container{color:var(--text-primary, #ffffff);background-color:var(--bg-primary, #151521);padding:20px;min-height:100vh;font-family:sans-serif}.dashboard-container .page-title{display:flex;align-items:center;gap:12px;margin-bottom:20px;font-size:1.4em;color:var(--text-primary, #ffffff)}.dashboard-container .title-icon{background-color:var(--accent-color, #3b82f6);color:#fff;width:36px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:8px}.dashboard-container .dash-grid-top{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:8px;margin-bottom:20px;width:100%;overflow:hidden}.dashboard-container .dash-card{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:10px;padding:12px 6px;border-top-width:4px;box-shadow:0 4px 6px -1px #0000001a;transition:transform .2s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;flex:1 1 0;min-width:0}.dashboard-container .dash-card:hover{transform:translateY(-2px)}.dashboard-container .border-blue{border-top-color:#3b82f6}.dashboard-container .border-orange{border-top-color:#f97316}.dashboard-container .border-slate{border-top-color:#64748b}.dashboard-container .border-teal{border-top-color:#14b8a6}.dashboard-container .dash-card.border-blue .dash-main-val{color:#3b82f6}.dashboard-container .dash-card.border-orange .dash-main-val{color:#f97316}.dashboard-container .dash-card.border-slate .dash-main-val{color:#64748b}.dashboard-container .dash-card.border-teal .dash-main-val{color:#14b8a6}.dashboard-container .dash-icon{width:28px;height:28px;background-color:var(--bg-primary, #151521);display:flex;align-items:center;justify-content:center;border-radius:6px;margin-bottom:8px;color:var(--text-secondary, #9ca3af)}.dashboard-container .dash-icon svg{width:14px;height:14px}.dashboard-container .dash-title{color:var(--text-secondary, #9ca3af);font-size:clamp(.65rem,.9vw,.85rem);font-weight:600;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.dashboard-container .dash-value{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.dashboard-container .dash-main-val{font-size:clamp(1.1rem,1.4vw,1.5rem);font-weight:700;line-height:1}.dashboard-container .dash-sub-text{font-size:clamp(.55rem,.75vw,.65rem);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}.dashboard-container .dash-sub-badge{background-color:#ef444426;color:#ef4444;padding:1px 6px;border-radius:4px;font-weight:700}.dashboard-container .calendar-section{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}@media (max-width: 1024px){.dashboard-container .calendar-section{grid-template-columns:1fr}}.dashboard-container .cal-card{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:20px;box-shadow:0 4px 6px -1px #0000001a;display:flex;flex-direction:column;min-height:280px}.dashboard-container .cal-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;color:var(--text-primary, #ffffff)}.dashboard-container .cal-title{font-weight:600;font-size:1.1em;display:flex;align-items:center;gap:8px}.dashboard-container .cal-nav-btn{background:transparent;border:1px solid var(--border-color, #2b2b40);color:var(--text-primary, #ffffff);border-radius:6px;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.dashboard-container .cal-nav-btn:hover{background:var(--bg-primary, #151521)}.dashboard-container .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}.dashboard-container .cal-day-name{font-size:.85em;color:var(--text-secondary, #9ca3af);font-weight:600;padding-bottom:8px}.dashboard-container .cal-cell{padding:8px 0;font-size:.9em;color:var(--text-primary, #ffffff);border-radius:8px;cursor:pointer;position:relative;font-weight:500;transition:all .2s}.dashboard-container .cal-cell:hover:not(.empty){background:var(--bg-primary, #151521)}.dashboard-container .cal-cell.selected{background:var(--accent-color, #3b82f6);color:#fff;font-weight:700;box-shadow:0 4px 10px #3b82f64d}.dashboard-container .cal-cell.today{border:1px solid var(--accent-color, #3b82f6)}.dashboard-container .cal-dots-container{display:flex;gap:3px;justify-content:center;position:absolute;bottom:3px;left:0;right:0}.dashboard-container .cal-dot{width:5px;height:5px;border-radius:50%;display:inline-block}.dashboard-container .dot-checkup{background-color:#3b82f6}.dashboard-container .dot-repair{background-color:#ef4444}.dashboard-container .dot-delivery{background-color:#22c55e}.dashboard-container .agenda-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed var(--border-color, #2b2b40)}.dashboard-container .agenda-date{font-size:1.05em;font-weight:600;color:var(--text-primary, #ffffff)}.dashboard-container .agenda-count{font-size:.85em;color:var(--text-secondary, #9ca3af);background:var(--bg-primary, #151521);padding:2px 8px;border-radius:12px}.dashboard-container .agenda-list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;flex-grow:1;padding-right:4px}.dashboard-container .agenda-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-primary, #151521);border-radius:8px;border-left:4px solid var(--border-color, #2b2b40);transition:transform .2s}.dashboard-container .agenda-item:hover{transform:translate(2px)}.dashboard-container .agenda-item.checkup{border-left-color:#3b82f6}.dashboard-container .agenda-item.repair{border-left-color:#ef4444}.dashboard-container .agenda-item.delivery{border-left-color:#22c55e}.dashboard-container .agenda-time{font-weight:700;color:var(--text-primary, #ffffff);font-size:.9em;min-width:50px;display:flex;flex-direction:column;align-items:center;gap:2px}.dashboard-container .agenda-time-icon{color:var(--text-secondary, #9ca3af)}.dashboard-container .agenda-detail{flex:1}.dashboard-container .agenda-title{color:var(--text-primary, #ffffff);font-weight:600;font-size:.9em;margin-bottom:6px}.dashboard-container .agenda-meta{color:var(--text-secondary, #9ca3af);font-size:.8em;display:flex;align-items:center;gap:4px}.dashboard-container .agenda-empty{text-align:center;color:var(--text-secondary, #9ca3af);padding:40px 20px;font-style:italic;font-size:.95em;display:flex;flex-direction:column;align-items:center;gap:8px}.dashboard-container .dash-grid-tables{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}.dashboard-container .dash-grid-charts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}@media (max-width: 1200px){.dashboard-container .dash-grid-charts{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard-container .dash-grid-charts{grid-template-columns:1fr}}.dashboard-container .chart-card,.dashboard-container .list-card{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:20px;min-height:280px;box-shadow:0 4px 6px -1px #0000001a;display:flex;flex-direction:column}.dashboard-container .chart-card h3,.dashboard-container .list-card h3{font-size:1.05em;margin-bottom:16px;color:var(--text-primary, #ffffff);margin-top:0}.dashboard-container .chart-wrapper{flex-grow:1;width:100%;height:220px}.dashboard-container .dash-table{width:100%;border-collapse:collapse;text-align:left}.dashboard-container .dash-table th{padding:10px 8px;color:var(--text-secondary, #9ca3af);font-weight:600;font-size:.85em;border-bottom:1px dashed var(--border-color, #2b2b40)}.dashboard-container .dash-table td{padding:10px 8px;color:var(--text-primary, #ffffff);font-size:.85em;border-bottom:1px dashed var(--border-color, #2b2b40)}.dashboard-container .status-badge{padding:4px 8px;border-radius:6px;font-size:.8em;font-weight:600}.dashboard-container .status-blue{background-color:#3b82f61a;color:#3b82f6}.dashboard-container .status-orange{background-color:#f973161a;color:#f97316}.dashboard-container .status-slate{background-color:#64748b1a;color:#64748b}.dashboard-container .status-teal{background-color:#14b8a61a;color:#14b8a6}.dashboard-container .status-purple{background-color:#8b5cf61a;color:#8b5cf6}.dashboard-container .status-green{background-color:#22c55e1a;color:#22c55e}.dashboard-container .status-red{background-color:#ef44441a;color:#ef4444}.dashboard-container .table-responsive{overflow-x:auto;width:100%}.pagination-table-wrapper{display:flex;flex-direction:column;gap:15px;width:100%;max-width:100%;overflow:hidden}.data-table-container{width:100%;min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table-container::-webkit-scrollbar{height:10px}.data-table-container::-webkit-scrollbar-track{background:#e2e8f0;border-radius:4px}.data-table-container::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:4px}.data-table-container::-webkit-scrollbar-thumb:hover{background:#64748b}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:var(--bg-card);border-radius:8px;border:1px solid var(--border-color);font-size:14px;color:var(--text-color)}.pagination-page-size{display:flex;align-items:center;gap:8px}.page-size-select{padding:4px 8px;border-radius:4px;border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-color);outline:none}.pagination-info{color:var(--text-muted)}.pagination-buttons{display:flex;align-items:center;gap:4px}.page-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-color);border-radius:6px;cursor:pointer;transition:all .2s}.page-btn:hover:not(:disabled){background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-indicator{margin:0 10px;font-weight:500}@media (max-width: 768px){.pagination-controls{flex-direction:column;gap:12px}}.quotation-container{color:var(--text-primary);font-size:.9em;padding:12px 16px}.quotation-container .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.quotation-container .page-title{font-size:1.5em;font-weight:600;margin:0;display:flex;align-items:center;gap:12px}.quotation-container .btn-primary{background-color:var(--accent-color);color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:filter .2s}.quotation-container .btn-primary:hover{filter:brightness(1.1)}.quotation-container .btn-primary:disabled{opacity:.6;cursor:not-allowed}.quotation-container .btn-secondary{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:background .2s}.quotation-container .btn-secondary:hover:not(:disabled){background-color:var(--bg-primary)}.quotation-container .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.quotation-container .status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.quotation-container .status-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;border-left:5px solid;box-shadow:0 4px 6px -1px #0000001a;transition:transform .2s;cursor:pointer}.quotation-container .status-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.quotation-container .status-card.active-filter{border-width:2px;border-left-width:8px;box-shadow:0 0 15px #0003}.quotation-container .status-card.green{border-color:#22c55e}.quotation-container .status-card.orange{border-color:#f59e0b}.quotation-container .status-card.red{border-color:#ef4444}.quotation-container .status-label{font-size:.9em;color:var(--text-secondary);margin-bottom:4px;font-weight:600}.quotation-container .status-value{font-size:1.8em;font-weight:700}.quotation-container .status-card.green .status-value{color:#22c55e}.quotation-container .status-card.orange .status-value{color:#f59e0b}.quotation-container .status-card.red .status-value{color:#ef4444}.quotation-container .table-container{min-height:350px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;box-shadow:0 4px 6px -1px #0000001a;padding-bottom:50px}.quotation-container .data-table{width:100%;border-collapse:collapse;table-layout:auto}.quotation-container .data-table th:nth-child(4),.quotation-container .data-table td:nth-child(4){max-width:150px;white-space:normal}.quotation-container .data-table th{background-color:#0003;padding:8px 12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;position:relative;white-space:nowrap}.quotation-container .data-table td{padding:8px 12px;border-bottom:1px dashed var(--border-color);font-size:.9em;cursor:pointer;white-space:nowrap}.quotation-container .data-table tbody tr:hover{background-color:var(--bg-primary)}.quotation-container .badge{padding:4px 10px;border-radius:12px;font-size:.8em;font-weight:600}.quotation-container .badge-green{background-color:#22c55e26;color:#22c55e}.quotation-container .badge-orange{background-color:#f59e0b26;color:#f59e0b}.quotation-container .badge-red{background-color:#ef444426;color:#ef4444}.quotation-container .form-panel{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin-bottom:24px}.quotation-container .accordion-header{display:flex;justify-content:space-between;align-items:center;padding:5px 12px;background-color:#0f172a;border-bottom:2px solid var(--accent-color);border-radius:6px 6px 0 0;cursor:pointer;transition:background-color .2s ease;margin-bottom:4px;min-height:30px}.quotation-container .accordion-header:hover{background-color:#1e293b}.quotation-container .accordion-content{margin-bottom:6px;padding:6px 8px;animation:qoSlideDown .3s ease-out}.quotation-container .section-title{font-size:.82rem;font-weight:600;color:#fff;background:#0f172a;padding:4px 10px;margin:6px 0 4px;display:flex;align-items:center;gap:6px;border-bottom:2px solid var(--accent-color);border-radius:4px}.quotation-container .section-title:first-child{margin-top:0}.quotation-container .row-1-2{display:grid;grid-template-columns:1fr 2fr;gap:4px 8px;margin-bottom:3px}.quotation-container .row-2{display:grid;grid-template-columns:repeat(2,1fr);gap:4px 8px;margin-bottom:3px}.quotation-container .row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 8px;margin-bottom:3px}.quotation-container .row-4{display:grid;grid-template-columns:repeat(4,1fr);gap:4px 8px;margin-bottom:3px}.quotation-container .input-group{display:flex;flex-direction:column;gap:1px;margin-bottom:3px;position:relative}.quotation-container .input-group label{font-size:.76rem;font-weight:600;color:var(--text-secondary);margin-bottom:1px}.quotation-container .custom-input{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:0 10px;min-height:36px;height:36px;font-size:.88rem;border-radius:6px;outline:none;width:100%;box-sizing:border-box;line-height:36px}.quotation-container select.custom-input,.quotation-container select,.quotation-container .custom-select{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:0 28px 0 10px;min-height:36px;height:36px;font-size:.88rem;border-radius:6px;outline:none;width:100%;box-sizing:border-box;line-height:normal;cursor:pointer}.quotation-container .search-padding{padding-left:32px!important}.quotation-container .custom-input:focus{border-color:var(--accent-color)}.quotation-container .custom-input:read-only{background-color:#0000001a;color:var(--text-secondary);cursor:not-allowed}.quotation-container .autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;margin-top:4px;box-shadow:0 4px 12px #0000004d;z-index:100;max-height:200px;overflow-y:auto}.quotation-container .dropdown-item{padding:10px 12px;border-bottom:1px solid var(--border-color);cursor:pointer;font-size:.9em;display:flex;align-items:center;gap:8px}.quotation-container .dropdown-item:hover{background:var(--bg-primary)}.quotation-container .matrix-table{width:100%;border-collapse:collapse}.quotation-container .matrix-table th,.quotation-container .matrix-table td{border:1px solid var(--border-color);padding:10px}.quotation-container .matrix-table th{background-color:#0003}.quotation-container .col-header-input{background:transparent;border:1px dashed var(--text-secondary);color:var(--text-primary);text-align:center;font-weight:700;padding:4px;width:90%;border-radius:4px}.quotation-container .col-header-input:focus{border-color:var(--accent-color);background:var(--bg-primary)}.quotation-container .price-input{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:6px;width:100px;text-align:right;border-radius:4px}.quotation-container .custom-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:9999}.quotation-container .custom-modal{background:var(--bg-card);padding:30px 40px;border-radius:16px;text-align:center;box-shadow:0 20px 40px #0000004d;border:1px solid var(--border-color);max-width:400px;width:90%;animation:qoSlideDown .3s ease-out;max-height:90vh;overflow-y:auto}@keyframes qoSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.quotation-container .filter-icon-btn{cursor:pointer;padding:4px;border-radius:4px;display:inline-flex;transition:all .2s;margin-left:6px}.quotation-container .filter-icon-btn:hover{background:var(--bg-primary)}.quotation-container .filter-icon-btn.active{color:var(--accent-color)}.quotation-container .filter-popover{position:absolute;top:100%;left:0;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 8px 24px #0006;border-radius:8px;padding:12px;z-index:1000;min-width:220px;font-weight:400;color:var(--text-primary)}.quotation-container .filter-search{width:100%;padding:8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);margin-bottom:10px;outline:none;box-sizing:border-box}.quotation-container .filter-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.quotation-container .filter-label{display:flex;align-items:center;gap:8px;font-size:.9em;cursor:pointer;-webkit-user-select:none;user-select:none}.quotation-container .filter-btn-group{display:flex;gap:8px;margin-top:12px;border-top:1px dashed var(--border-color);padding-top:12px}.quotation-container .history-panel{margin-top:24px;padding:20px;background:#0000001a;border-radius:12px;border:1px dashed var(--border-color)}.quotation-container .history-item{padding:12px 10px;border-bottom:1px dashed var(--border-color);font-size:.85em;display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary);cursor:pointer;transition:background .2s;border-radius:6px}.quotation-container .history-item:hover{background:var(--bg-primary)}.quotation-container .history-item:last-child{border-bottom:none}.quotation-container .history-item strong{color:var(--text-primary)}.quotation-container .print-document{display:none}@media print{@page{margin:1cm 1.5cm;size:A4 portrait}body *{visibility:hidden}html,body,#root,.app-container,.main-content,.page-content,.quotation-container{display:block!important;height:auto!important;min-height:auto!important;overflow:visible!important;position:static!important;margin:0!important;padding:0!important;background:#fff!important}.quotation-container .print-document,.quotation-container .print-document *{visibility:visible}.quotation-container.is-printing>:not(.print-document){display:none!important}.quotation-container .print-document{position:absolute;left:0;top:0;width:100%;display:block!important;font-family:Sarabun,Segoe UI,Tahoma,Geneva,Verdana,sans-serif!important;color:#333!important;font-size:13px!important;line-height:1.4!important;box-sizing:border-box}.quotation-container .print-header{display:flex;justify-content:space-between;margin-bottom:20px;align-items:flex-start}.quotation-container .print-header-left h1{font-size:18px;color:#1d4ed8;margin:0 0 5px;font-weight:700}.quotation-container .print-header-left p{margin:2px 0;font-size:12px;color:#555}.quotation-container .print-header-right{text-align:right}.quotation-container .print-header-right h2{font-size:18px;color:#1d4ed8;margin:0 0 10px;font-weight:700;text-transform:uppercase}.quotation-container .doc-meta-box{background-color:#f1f5f9!important;border:1px solid #e2e8f0;padding:10px;border-radius:6px;text-align:left;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;min-width:220px}.quotation-container .doc-meta-box p{margin:3px 0;font-weight:600;font-size:12px}.quotation-container .original-text{color:#dc2626;font-weight:700;font-size:14px;margin-top:8px;text-align:center}.quotation-container .info-boxes{display:flex;gap:20px;margin-bottom:20px}.quotation-container .info-box{flex:1;border:1px solid #cbd5e1;border-radius:6px;padding:12px;min-height:90px}.quotation-container .info-box h4{color:#1d4ed8;margin:0 0 8px;font-size:13px;font-weight:700;border-bottom:1px solid #e2e8f0;padding-bottom:4px}.quotation-container .info-box p{margin:4px 0;font-size:12px}.quotation-container .print-table{width:100%;border-collapse:collapse;margin-bottom:20px;border:1px solid #cbd5e1}.quotation-container .print-table th{background-color:#1d4ed8!important;color:#fff!important;font-weight:600;padding:10px 8px;text-align:left;border:1px solid #cbd5e1;font-size:13px;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.quotation-container .print-table td{padding:8px;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;font-size:12px;color:#333}.quotation-container .print-table th.center,.quotation-container .print-table td.center{text-align:center}.quotation-container .print-table th.right,.quotation-container .print-table td.right{text-align:right}.quotation-container .doc-summary{display:block;margin-bottom:40px;page-break-inside:avoid}.quotation-container .remark-box{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:12px;min-height:80px}.quotation-container .remark-box h4{color:#1d4ed8;margin:0 0 6px;font-size:12px;font-weight:700}.quotation-container .remark-box p{margin:2px 0;font-size:12px;color:#555;white-space:pre-wrap}.quotation-container .signatures{display:flex;justify-content:space-between;margin-top:50px;padding:0 40px;page-break-inside:avoid}.quotation-container .sign-box{text-align:center;width:220px;font-size:12px}.quotation-container .sign-line{border-bottom:1px solid #000;margin-bottom:8px;height:30px}.quotation-container .sign-box p{margin:3px 0;color:#555}.quotation-container .sign-box p:first-of-type{color:#000;font-size:13px;margin-bottom:6px}.quotation-container .print-footer{position:fixed;bottom:0;left:0;right:0;display:flex!important;justify-content:space-between!important;font-size:10px;color:#888;border-top:1px dashed #ccc;padding-top:5px;padding-bottom:5px;background:#fff}}@media (max-width: 768px){.quotation-container .row-1-2,.quotation-container .row-2,.quotation-container .row-3,.quotation-container .row-4{grid-template-columns:1fr}}.filter-icon-btn{padding:2px 4px;border-radius:4px;cursor:pointer;margin-left:4px;color:var(--text-secondary);transition:all .2s}.filter-icon-btn:hover{background-color:#ffffff1a}.filter-icon-btn.active{color:var(--accent-color)}.filter-popover{position:absolute;top:100%;left:0;margin-top:5px;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:10px;box-shadow:0 4px 12px #00000080;z-index:1000;min-width:200px;color:var(--text-primary);text-align:left;font-weight:400}.filter-search{width:100%;padding:8px;margin-bottom:10px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-primary);color:var(--text-primary);box-sizing:border-box}.filter-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.filter-label{display:flex;align-items:center;gap:8px;font-size:.9em;cursor:pointer}.filter-label input[type=checkbox]{accent-color:var(--accent-color)}.filter-btn-group{display:flex;justify-content:flex-end}.booking-container{color:var(--text-primary, #ffffff);padding:20px;min-height:100vh;font-family:sans-serif}.booking-container .status-badge{padding:4px 8px;border-radius:4px;font-size:.85em}.booking-container .status-badge.pending{background:#fef3c7;color:#92400e}.booking-container .page-title{display:flex;align-items:center;gap:12px;margin-top:0;margin-bottom:24px;font-size:1.5em;font-weight:600}.booking-container .title-icon{background-color:var(--accent-color, #3b82f6);color:#fff;width:36px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:8px}.booking-container .main-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px}.booking-container .g-cal-container{background-color:var(--bg-card, #1e1e2d);border-radius:12px;padding:16px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:550px}.booking-container .g-cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.booking-container .g-cal-title{font-size:1.3em;font-weight:600;display:flex;align-items:center;gap:10px}.booking-container .g-cal-nav button{background:transparent;border:1px solid var(--border-color, #2b2b40);color:var(--text-primary);border-radius:6px;padding:6px;margin-left:8px;cursor:pointer;transition:.2s}.booking-container .g-cal-nav button:hover{background:var(--bg-primary, #151521)}.booking-container .g-cal-header-row{display:grid;grid-template-columns:repeat(7,1fr);background-color:var(--border-color, #2b2b40);gap:1px;border:1px solid var(--border-color, #2b2b40);border-bottom:none;border-radius:8px 8px 0 0}.booking-container .g-cal-day-header{background-color:var(--bg-primary, #151521);text-align:center;padding:8px 0;font-weight:600;font-size:.85em;color:var(--text-secondary, #9ca3af)}.booking-container .g-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(0,1fr);gap:1px;background-color:var(--border-color, #2b2b40);border:1px solid var(--border-color, #2b2b40);border-top:none;border-radius:0 0 8px 8px;overflow:hidden;flex:1}.booking-container .g-cal-cell{background-color:var(--bg-card, #1e1e2d);padding:4px;cursor:pointer;transition:background .2s;display:flex;flex-direction:column;border:1px solid transparent;overflow:hidden}.booking-container .g-cal-cell:hover:not(.empty){background-color:#ffffff08;border:1px dashed var(--accent-color)}.booking-container .g-cal-cell.empty{background-color:#0000001a;cursor:default}.booking-container .g-cal-cell.selected-day{background-color:#3b82f61a!important;border:1px solid var(--accent-color)!important}.booking-container .g-cal-cell.today .g-cal-day-num{background-color:var(--accent-color, #3b82f6);color:#fff}.booking-container .g-cal-day-num{font-size:.85em;font-weight:600;margin-bottom:2px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%}.booking-container .g-cal-events{display:flex;flex-direction:column;gap:2px;overflow-y:auto;flex:1}.booking-container .g-cal-events::-webkit-scrollbar{width:4px}.booking-container .g-cal-events::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.booking-container .g-cal-event{font-size:.7em;padding:2px 4px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block;color:#fff;font-weight:500}.booking-container .g-cal-event[draggable=true]{cursor:grab}.booking-container .g-cal-event[draggable=true]:active{cursor:grabbing;opacity:.7}.booking-container .bg-checkup{background-color:#3b82f6}.booking-container .bg-repair{background-color:#ef4444}.booking-container .bg-delivery{background-color:#22c55e}.booking-container .agenda-container{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:550px}.booking-container .agenda-list{margin-top:16px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:12px;padding-right:4px}.booking-container .agenda-item{background:var(--bg-primary, #151521);border-radius:8px;padding:14px;border-left:5px solid;display:flex;align-items:flex-start;gap:12px}.booking-container .agenda-item.checkup{border-left-color:#3b82f6}.booking-container .agenda-item.repair{border-left-color:#ef4444}.booking-container .agenda-item.delivery{border-left-color:#22c55e}.booking-container .a-time{font-weight:700;font-size:1.1em;color:var(--text-primary);min-width:55px}.booking-container .a-details h4{margin:0 0 6px;font-size:1em;color:var(--text-primary)}.booking-container .a-meta{display:flex;align-items:center;gap:6px;font-size:.85em;color:var(--text-secondary);margin-bottom:4px}.booking-container .agenda-empty{text-align:center;color:var(--text-secondary);padding:60px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;height:100%;justify-content:center}.booking-container .table-container{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a;padding-bottom:20px}.booking-container .table-header-toolbar{padding:16px;border-bottom:1px dashed var(--border-color);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.booking-container .data-table{width:100%;border-collapse:collapse;table-layout:auto}.booking-container .data-table th{background-color:#0003;padding:8px 12px;text-align:left;font-size:.85em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;position:relative;white-space:normal;word-break:break-word}.booking-container .data-table td{padding:8px 12px;border-bottom:1px dashed var(--border-color);font-size:.9em;cursor:default;white-space:normal;word-break:break-word}.booking-container .data-table tbody tr:hover{background-color:var(--bg-primary)}.booking-container .badge{padding:4px 10px;border-radius:12px;font-size:.8em;font-weight:600;white-space:nowrap}.booking-container .badge-checkup{background-color:#3b82f626;color:#3b82f6}.booking-container .badge-repair{background-color:#ef444426;color:#ef4444}.booking-container .badge-delivery{background-color:#22c55e26;color:#22c55e}.booking-container .filter-icon-btn{cursor:pointer;padding:4px;border-radius:4px;display:inline-flex;transition:all .2s;margin-left:6px}.booking-container .filter-icon-btn:hover{background:var(--bg-primary)}.booking-container .filter-icon-btn.active{color:var(--accent-color)}.booking-container .filter-popover{position:absolute;top:100%;left:0;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 8px 24px #0006;border-radius:8px;padding:12px;z-index:1000;min-width:220px;font-weight:400;color:var(--text-primary)}.booking-container .filter-search{width:100%;padding:8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);margin-bottom:10px;outline:none;box-sizing:border-box}.booking-container .filter-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.booking-container .filter-label{display:flex;align-items:center;gap:8px;font-size:.9em;cursor:pointer;-webkit-user-select:none;user-select:none}.booking-container .filter-btn-group{display:flex;gap:8px;margin-top:12px;border-top:1px dashed var(--border-color);padding-top:12px}.booking-container .booking-custom-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:9999}.booking-container .booking-custom-modal{background:var(--bg-card, #1e1e2d);padding:0;border-radius:16px;box-shadow:0 20px 40px #0000004d;border:1px solid var(--border-color, #2b2b40);width:95%;max-width:800px;animation:slideDown .3s ease-out;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.booking-container .modal-header{padding:20px 24px;border-bottom:1px dashed var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.booking-container .modal-header h3{margin:0;font-size:1.2em;display:flex;align-items:center;gap:8px}.booking-container .modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.booking-container .modal-footer{padding:16px 24px;border-top:1px dashed var(--border-color, #2b2b40);display:flex;justify-content:space-between;align-items:center;background:#0000001a;border-bottom-left-radius:16px;border-bottom-right-radius:16px;flex-shrink:0}.booking-container .accordion-panel{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;margin-bottom:0;overflow:visible}.booking-container .accordion-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:#0000001a;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.booking-container .accordion-header:hover{background-color:var(--bg-primary, #151521)}.booking-container .accordion-title{font-size:1.05em;font-weight:600;color:var(--accent-color, #3b82f6);display:flex;align-items:center;gap:8px;margin:0}.booking-container .accordion-icon{transition:transform .3s ease;color:var(--text-secondary, #9ca3af)}.booking-container .accordion-icon.open{transform:rotate(180deg)}.booking-container .accordion-content{padding:20px;border-top:1px dashed var(--border-color, #2b2b40);background:var(--bg-primary, #151521);display:flex;flex-direction:column}.booking-container .input-group{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;position:relative}.booking-container .input-group label{font-size:.85em;color:var(--text-secondary);white-space:nowrap}.booking-container .custom-input,.booking-container .custom-select,.booking-container textarea.custom-input{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);color:var(--text-primary);padding:10px 12px;border-radius:6px;outline:none;width:100%;box-sizing:border-box;font-family:inherit;transition:border-color .2s,box-shadow .2s}.booking-container .custom-input:focus,.booking-container .custom-select:focus{border-color:var(--accent-color, #3b82f6);box-shadow:0 0 0 2px #3b82f61a}.booking-container .custom-input:disabled,.booking-container .custom-select:disabled{background-color:#0003;cursor:not-allowed;opacity:.6}.booking-container .row-1-2{display:grid;grid-template-columns:1fr 2fr;gap:16px}.booking-container .row-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.booking-container .row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.booking-container .row-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.booking-container .btn-primary{background-color:var(--accent-color, #3b82f6);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600;transition:.2s;display:flex;align-items:center;gap:8px;justify-content:center}.booking-container .btn-primary:hover{filter:brightness(1.1)}.booking-container .btn-secondary{background-color:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600;transition:.2s;display:flex;align-items:center;gap:8px;justify-content:center}.booking-container .btn-secondary:hover:not(:disabled){background-color:#ffffff0d}.booking-container .btn-secondary:disabled{cursor:not-allowed;opacity:.5}.booking-container .autocomplete-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#1e1e2df2;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 10px 30px #0009;z-index:1000;max-height:250px;overflow-y:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.booking-container .autocomplete-dropdown::-webkit-scrollbar{width:6px}.booking-container .autocomplete-dropdown::-webkit-scrollbar-thumb{background-color:#fff3;border-radius:4px}.booking-container .dropdown-item{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:background .2s}.booking-container .dropdown-item:last-child{border-bottom:none}.booking-container .dropdown-item:hover{background:#3b82f626}.booking-container .dropdown-item-content{display:flex;flex-direction:column;width:100%}.booking-container .dropdown-item-title{font-weight:600;color:#fff;display:flex;align-items:center;justify-content:space-between}.booking-container .dropdown-item-subtitle{font-size:.8em;color:var(--text-secondary);margin-top:4px;display:flex;align-items:center}.booking-container .badge-own-car{background:#10b98126;color:#10b981;padding:2px 8px;border-radius:12px;font-size:.75em;font-weight:500}.booking-container .badge-other-car{background:#f59e0b26;color:#f59e0b;padding:2px 8px;border-radius:12px;font-size:.75em;font-weight:500}.booking-container .history-panel{background:#00000026;border:1px solid var(--border-color);border-radius:8px;padding:12px}.booking-container .history-list{overflow-y:auto}.booking-container .history-table{width:100%;border-collapse:collapse;font-size:.8em}.booking-container .history-table th{background:#0003;padding:6px;text-align:left;color:var(--text-secondary);font-weight:600}.booking-container .history-table td{padding:6px;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.booking-container .custom-picker-trigger{background-color:var(--bg-primary, #151521);border:1px solid var(--border-color, #2b2b40);color:var(--text-primary, #ffffff);padding:10px 12px;border-radius:6px;outline:none;width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9em;transition:border-color .2s}.booking-container .custom-picker-trigger:hover:not(:disabled){border-color:var(--accent-color, #3b82f6)}.booking-container .custom-picker-trigger:disabled{background-color:#0003;cursor:not-allowed;opacity:.6}.booking-container .datepicker-popover{position:absolute;top:100%;left:0;background:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:16px;width:280px;box-shadow:0 10px 25px #0000004d;z-index:10002;margin-top:4px}.booking-container .datepicker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;color:var(--text-primary, #ffffff)}.booking-container .picker-nav-btn{background:transparent;border:1px solid var(--border-color, #2b2b40);color:var(--text-primary, #ffffff);padding:4px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.booking-container .picker-nav-btn:hover{background-color:var(--bg-primary, #151521)}.booking-container .datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.booking-container .datepicker-day-name{font-size:.8em;color:var(--text-secondary, #9ca3af);font-weight:600;padding-bottom:6px}.booking-container .datepicker-cell{padding:6px 0;font-size:.85em;color:var(--text-primary, #ffffff);border-radius:50%;cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none}.booking-container .datepicker-cell:hover:not(.selected):not(.disabled-date){background-color:#ffffff0d}.booking-container .datepicker-cell.muted{color:var(--text-secondary, #9ca3af);opacity:.35}.booking-container .datepicker-cell.selected{background-color:var(--accent-color, #3b82f6)!important;color:#fff!important;font-weight:700}.booking-container .datepicker-cell.disabled-date{opacity:.2;cursor:not-allowed;text-decoration:line-through}.booking-container .timepicker-popover{position:absolute;top:100%;left:0;background:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;width:100%;max-height:200px;overflow-y:auto;box-shadow:0 10px 25px #0000004d;z-index:10002;margin-top:4px}.booking-container .timepicker-popover::-webkit-scrollbar{width:6px}.booking-container .timepicker-popover::-webkit-scrollbar-thumb{background-color:var(--border-color, #2b2b40);border-radius:4px}.booking-container .timepicker-item{padding:10px 14px;font-size:.9em;color:var(--text-primary, #ffffff);cursor:pointer;transition:background .2s;text-align:left}.booking-container .timepicker-item:hover{background-color:var(--bg-primary, #151521)}.booking-container .timepicker-item.selected{background-color:#3b82f626;color:var(--accent-color, #3b82f6);font-weight:700}.booking-container .g-cal-event.is-inactive.bg-checkup{background-color:#3b82f626!important;color:#9ca3af!important;border:1px solid rgba(59,130,246,.3)}.booking-container .g-cal-event.is-inactive.bg-repair{background-color:#ef444426!important;color:#9ca3af!important;border:1px solid rgba(239,68,68,.3)}.booking-container .g-cal-event.is-inactive.bg-delivery{background-color:#15803d26!important;color:#9ca3af!important;border:1px solid rgba(21,128,61,.3)}.booking-container .g-cal-event.is-overdue{border:1px dashed #f59e0b!important}.booking-container .agenda-item.is-overdue{background:linear-gradient(90deg,rgba(245,158,11,.08) 0%,var(--bg-primary) 100%)}.booking-container .agenda-item.is-inactive{opacity:.5;filter:grayscale(60%);border-left-color:#4b5563!important}.booking-container .agenda-item.is-inactive .a-time,.booking-container .agenda-item.is-inactive .a-details h4{color:#9ca3af!important}.booking-container .data-table tr.is-inactive td{color:#6b7280!important}.booking-container .data-table tr.is-inactive .badge{background-color:#ffffff0d!important;color:#6b7280!important}@media (max-width: 1024px){.booking-container .main-layout{grid-template-columns:1fr}.booking-container .g-cal-container{height:60vh;min-height:400px}.booking-container .agenda-container{height:40vh;min-height:300px}}@media (max-width: 768px){.booking-container .page-title{font-size:1.2em}.booking-container .g-cal-grid{grid-auto-rows:minmax(55px,1fr)}.booking-container .g-cal-day-header{font-size:.7em;padding:6px 0}.booking-container .g-cal-event{font-size:.65em;padding:2px}.booking-container .row-1-2,.booking-container .row-2,.booking-container .row-3,.booking-container .row-4{grid-template-columns:1fr}.booking-container .booking-custom-modal{width:100%;max-width:100%;border-radius:0;height:100vh;max-height:100vh;overflow:hidden}.booking-container .modal-body{padding:16px}.booking-container .table-header-toolbar{flex-direction:row;align-items:center;justify-content:flex-start}.booking-container .modal-footer{flex-direction:column;align-items:stretch;justify-content:space-between}.booking-container .modal-footer>div{justify-content:center;width:100%}.booking-container .modal-footer button{flex:1}.booking-container .page-header{flex-direction:column;align-items:flex-start;gap:10px}.booking-container .page-header>div{width:100%;display:flex;flex-wrap:wrap}.booking-container .page-header button{flex:1;justify-content:center}.booking-container .form-header-grid{grid-template-columns:1fr}.booking-container .table-container{padding:10px;margin-left:-10px;margin-right:-10px;width:calc(100% + 20px);border-radius:0;border-left:none;border-right:none}.booking-container .data-table th,.booking-container .data-table td{white-space:normal;word-break:break-word;padding:6px}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;color:var(--accent-color);opacity:.7;pointer-events:none}.custom-input{width:100%;padding:10px 12px 10px 36px!important;background:#ffffff0d!important;border:1px solid var(--text-secondary);border-radius:8px;color:var(--text-primary);transition:all .3s ease}.custom-input:focus{background:#ffffff1a!important;border-color:var(--accent-color)!important;box-shadow:0 0 0 3px #3b82f633;outline:none}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;margin-top:4px;z-index:1050;max-height:200px;overflow-y:auto;box-shadow:0 10px 15px -3px #0000004d}.dropdown-item{padding:10px 12px;cursor:pointer;display:flex;align-items:flex-start;gap:8px;border-bottom:1px solid var(--border-color);transition:background-color .2s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#ffffff0d}.dropdown-item-content{display:flex;flex-direction:column}.repair-container{color:var(--text-primary);padding:12px 16px;font-size:.9em}.repair-container .matrix-table{width:100%;border-collapse:collapse;margin-top:10px}.repair-container .matrix-table th,.repair-container .matrix-table td{border:1px solid var(--border-color);padding:6px 8px}.repair-container .custom-input{background-color:var(--bg-card);border:1px solid var(--text-secondary);color:var(--text-primary);padding:5px 10px;border-radius:6px;outline:none;width:100%;box-sizing:border-box;font-size:.86rem;min-height:32px}.repair-container .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.repair-container .page-title{font-size:1.5em;font-weight:600;margin:0;display:flex;align-items:center;gap:12px}.repair-container .btn-primary{background-color:var(--accent-color);color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:filter .2s}.repair-container .btn-primary:hover{filter:brightness(1.1)}.repair-container .btn-primary:disabled{opacity:.6;cursor:not-allowed}.repair-container .btn-secondary{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:background .2s}.repair-container .btn-secondary:hover:not(:disabled){background-color:var(--bg-primary)}.repair-container .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.repair-container .dash-grid-top{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;margin-bottom:24px;width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:4px}.repair-container .dash-card{background-color:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:8px;padding:8px 4px;border-top-width:3px;box-shadow:0 4px 6px -1px #0000001a;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;flex:1 1 0;min-width:0}.repair-container .dash-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.repair-container .dash-card.active-filter{background-color:#ffffff0d;box-shadow:0 0 0 2px var(--accent-color)}.repair-container .dash-icon{width:20px;height:20px;background-color:var(--bg-primary, #151521);display:flex;align-items:center;justify-content:center;border-radius:4px;margin-bottom:6px;color:var(--text-secondary, #9ca3af)}.repair-container .dash-icon svg{width:12px;height:12px}.repair-container .dash-title{color:var(--text-secondary, #9ca3af);font-size:clamp(.55rem,.8vw,.75rem);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;width:100%}.repair-container .dash-value{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%}.repair-container .dash-main-val{font-size:clamp(.9rem,1.2vw,1.2rem);font-weight:700;line-height:1}.repair-container .dash-sub-text{font-size:clamp(.45rem,.6vw,.55rem);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}.repair-container .dash-sub-badge{background-color:#ef444426;color:#ef4444;padding:1px 4px;border-radius:4px;font-weight:700}.repair-container .border-slate{border-top-color:#64748b}.repair-container .border-slate .dash-main-val{color:#64748b}.repair-container .border-blue{border-top-color:#3b82f6}.repair-container .border-blue .dash-main-val{color:#3b82f6}.repair-container .border-orange{border-top-color:#f97316}.repair-container .border-orange .dash-main-val{color:#f97316}.repair-container .border-green{border-top-color:#22c55e}.repair-container .border-green .dash-main-val{color:#22c55e}.repair-container .border-purple{border-top-color:#8b5cf6}.repair-container .border-purple .dash-main-val{color:#8b5cf6}.repair-container .border-red{border-top-color:#ef4444}.repair-container .border-red .dash-main-val{color:#ef4444}.repair-container .border-cyan{border-top-color:#06b6d4}.repair-container .border-cyan .dash-main-val{color:#06b6d4}.repair-container .border-teal{border-top-color:#14b8a6}.repair-container .border-teal .dash-main-val{color:#14b8a6}.repair-container .table-container{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;box-shadow:0 4px 6px -1px #0000001a;padding-bottom:50px}.repair-container .data-table{width:100%;border-collapse:collapse;table-layout:auto}.repair-container .data-table th:nth-child(2),.repair-container .data-table td:nth-child(2),.repair-container .data-table th:nth-child(3),.repair-container .data-table td:nth-child(3){padding:4px;white-space:nowrap}.repair-container .data-table th{background-color:#0003;padding:4px 6px;text-align:left;font-size:.85em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;position:relative;white-space:nowrap}.repair-container .data-table td{padding:4px 6px;border-bottom:1px dashed var(--border-color);font-size:.9em;cursor:pointer;white-space:nowrap}.repair-container .data-table tbody tr:hover{background-color:var(--bg-primary)}.repair-container .status-badge{padding:4px 10px;border-radius:12px;font-size:.8em;font-weight:600;display:inline-block}.repair-container .status-blue{background-color:#3b82f61a;color:#3b82f6}.repair-container .status-orange{background-color:#f973161a;color:#f97316}.repair-container .status-slate{background-color:#64748b1a;color:#64748b}.repair-container .status-teal{background-color:#14b8a61a;color:#14b8a6}.repair-container .status-green{background-color:#22c55e1a;color:#22c55e}.repair-container .status-red{background-color:#ef44441a;color:#ef4444}.repair-container .accordion-panel{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;margin-bottom:6px;overflow:visible}.repair-container .accordion-header{display:flex;justify-content:space-between;align-items:center;padding:5px 12px;background-color:#0f172a;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s;border-radius:6px 6px 0 0;border-bottom:2px solid var(--accent-color);min-height:30px}.repair-container .accordion-header:hover{background-color:#1e293b}.repair-container .accordion-header.open{border-radius:6px 6px 0 0}.repair-container .accordion-title{font-size:.82rem;font-weight:600;color:#fff!important;display:flex;align-items:center;gap:6px;margin:0}.repair-container .accordion-icon{transition:transform .3s ease;color:#94a3b8}.repair-container .accordion-icon.open{transform:rotate(180deg)}.repair-container .accordion-content{padding:6px 10px;border-top:1px dashed var(--border-color);display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;background:var(--bg-primary);border-radius:0 0 6px 6px;overflow:visible}.repair-container .accordion-content.single-col{grid-template-columns:1fr}.repair-container .accordion-content.collapsed{display:none}.repair-container .accordion-content.expanded{display:grid}.repair-container .accordion-content.single-col.expanded{display:block}.repair-container .input-group{display:flex;flex-direction:column;gap:1px;margin-bottom:3px;position:relative}.repair-container .input-group.row-direction{flex-direction:row;align-items:center;justify-content:space-between}.repair-container .input-group label{font-size:.76rem;font-weight:600;color:var(--text-secondary);margin-bottom:1px}.repair-container .custom-input{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);padding:2px 7px;min-height:26px;height:26px;border-radius:4px;outline:none;width:100%;box-sizing:border-box;font-size:.81rem;line-height:1.2}.repair-container .custom-input:focus{border-color:var(--accent-color)}.repair-container .custom-input:disabled,.repair-container .custom-input:read-only{background-color:#0000001a;color:var(--text-secondary);cursor:not-allowed}.repair-container .search-padding{padding-left:32px!important}.repair-container .autocomplete-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:#1e1e2df2;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 10px 30px #0009;z-index:9999;max-height:250px;overflow-y:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.repair-container .autocomplete-dropdown::-webkit-scrollbar{width:6px}.repair-container .autocomplete-dropdown::-webkit-scrollbar-thumb{background-color:#fff3;border-radius:4px}.repair-container .dropdown-item{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:background .2s}.repair-container .dropdown-item:last-child{border-bottom:none}.repair-container .dropdown-item:hover{background:#3b82f626}.repair-container .dropdown-item-content{display:flex;flex-direction:column;width:100%}.repair-container .dropdown-item-title{font-weight:600;color:#fff;display:flex;align-items:center;justify-content:space-between}.repair-container .dropdown-item-subtitle{font-size:.8em;color:var(--text-secondary, #9ca3af);margin-top:4px;display:flex;align-items:center}.repair-container .qt-matrix-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:.9em;position:relative;z-index:1}.repair-container .qt-matrix-table th,.repair-container .qt-matrix-table td{border:1px solid var(--border-color);padding:10px;text-align:center}.repair-container .qt-matrix-table th{background-color:#0003;color:var(--text-secondary)}.repair-container .qt-matrix-table td.item-name{text-align:left;color:var(--text-primary)}.repair-container .qt-matrix-table .custom-input{width:100%;box-sizing:border-box}.repair-container .radio-custom{cursor:pointer;width:16px;height:16px;margin-right:6px;vertical-align:middle}.repair-container .custom-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:9999}.repair-container .custom-modal{background:var(--bg-card);padding:30px 40px;border-radius:16px;text-align:center;box-shadow:0 20px 40px #0000004d;border:1px solid var(--border-color);max-width:400px;width:90%;animation:roSlideDown .3s ease-out;max-height:90vh;overflow-y:auto}.repair-container .filter-icon-btn{cursor:pointer;padding:4px;border-radius:4px;display:inline-flex;transition:all .2s;margin-left:6px}.repair-container .filter-icon-btn:hover{background:var(--bg-primary)}.repair-container .filter-icon-btn.active{color:var(--accent-color)}.repair-container .filter-popover{position:absolute;top:100%;left:0;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 8px 24px #0006;border-radius:8px;padding:12px;z-index:1000;min-width:220px;font-weight:400;color:var(--text-primary)}.repair-container .filter-search{width:100%;padding:8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);margin-bottom:10px;outline:none;box-sizing:border-box}.repair-container .filter-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.repair-container .filter-label{display:flex;align-items:center;gap:8px;font-size:.9em;cursor:pointer;-webkit-user-select:none;user-select:none}.repair-container .filter-btn-group{display:flex;gap:8px;margin-top:12px;border-top:1px dashed var(--border-color);padding-top:12px}.repair-container .custom-picker-trigger{background-color:var(--bg-primary, #151521);border:1px solid var(--border-color, #2b2b40);color:var(--text-primary, #ffffff);padding:10px 12px;border-radius:6px;outline:none;width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9em;transition:border-color .2s}.repair-container .custom-picker-trigger:hover:not(:disabled){border-color:var(--accent-color, #3b82f6)}.repair-container .custom-picker-trigger:disabled{background-color:#0003;cursor:not-allowed;opacity:.6}.repair-container .datepicker-popover{position:absolute;top:100%;left:0;background:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;padding:16px;width:280px;box-shadow:0 10px 25px #0000004d;z-index:10002;margin-top:4px}.repair-container .datepicker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;color:var(--text-primary, #ffffff)}.repair-container .picker-nav-btn{background:transparent;border:1px solid var(--border-color, #2b2b40);color:var(--text-primary);padding:4px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.repair-container .picker-nav-btn:hover{background-color:var(--bg-primary, #151521)}.repair-container .datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.repair-container .datepicker-day-name{font-size:.8em;color:var(--text-secondary, #9ca3af);font-weight:600;padding-bottom:6px}.repair-container .datepicker-cell{padding:6px 0;font-size:.85em;color:var(--text-primary, #ffffff);border-radius:50%;cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none}.repair-container .datepicker-cell:hover:not(.selected):not(.disabled-date){background-color:#ffffff0d}.repair-container .datepicker-cell.muted{color:var(--text-secondary, #9ca3af);opacity:.35}.repair-container .datepicker-cell.selected{background-color:var(--accent-color, #3b82f6)!important;color:#fff!important;font-weight:700}.repair-container .timepicker-popover{position:absolute;top:100%;left:0;background:var(--bg-card, #1e1e2d);border:1px solid var(--border-color, #2b2b40);border-radius:12px;width:100%;max-height:200px;overflow-y:auto;box-shadow:0 10px 25px #0000004d;z-index:10002;margin-top:4px}.repair-container .timepicker-popover::-webkit-scrollbar{width:6px}.repair-container .timepicker-popover::-webkit-scrollbar-thumb{background-color:var(--border-color, #2b2b40);border-radius:4px}.repair-container .timepicker-item{padding:10px 14px;font-size:.9em;color:var(--text-primary, #ffffff);cursor:pointer;transition:background .2s;text-align:left}.repair-container .timepicker-item:hover{background-color:var(--bg-primary, #151521)}.repair-container .timepicker-item.selected{background-color:#3b82f626;color:var(--accent-color, #3b82f6);font-weight:700}.repair-container .print-document{display:none}@media print{@page{margin:1cm 1.5cm;size:A4 portrait}body *{visibility:hidden}html,body,#root,.app-container,.main-content,.page-content,.repair-container{display:block!important;height:auto!important;min-height:auto!important;overflow:visible!important;position:static!important;margin:0!important;padding:0!important;background:#fff!important}.repair-container .print-document,.repair-container .print-document *{visibility:visible}.repair-container.is-printing>:not(.print-document){display:none!important}.repair-container .print-document{position:absolute;left:0;top:0;width:100%;display:block!important;font-family:Sarabun,Segoe UI,Tahoma,Geneva,Verdana,sans-serif!important;color:#333!important;font-size:13px!important;line-height:1.4!important;box-sizing:border-box}.repair-container .print-header{display:flex;justify-content:space-between;margin-bottom:20px;align-items:flex-start}.repair-container .print-header-left h1{font-size:18px;color:#1d4ed8;margin:0 0 5px;font-weight:700}.repair-container .print-header-left p{margin:2px 0;font-size:12px;color:#555}.repair-container .print-header-right{text-align:right}.repair-container .print-header-right h2{font-size:18px;color:#1d4ed8;margin:0 0 10px;font-weight:700;text-transform:uppercase}.repair-container .doc-meta-box{background-color:#f1f5f9!important;border:1px solid #e2e8f0;padding:10px;border-radius:6px;text-align:left;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;min-width:220px}.repair-container .doc-meta-box p{margin:3px 0;font-weight:600;font-size:12px}.repair-container .original-text{color:#dc2626;font-weight:700;font-size:14px;margin-top:8px;text-align:center}.repair-container .info-boxes{display:flex;gap:20px;margin-bottom:20px}.repair-container .info-box{flex:1;border:1px solid #cbd5e1;border-radius:6px;padding:12px;min-height:90px}.repair-container .info-box h4{color:#1d4ed8;margin:0 0 8px;font-size:13px;font-weight:700;border-bottom:1px solid #e2e8f0;padding-bottom:4px}.repair-container .info-box p{margin:4px 0;font-size:12px}.repair-container .print-table{width:100%;border-collapse:collapse;margin-bottom:20px;border:1px solid #cbd5e1}.repair-container .print-table th{background-color:#1d4ed8!important;color:#fff!important;font-weight:600;padding:10px 8px;text-align:left;border:1px solid #cbd5e1;font-size:13px;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.repair-container .print-table td{padding:8px;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;font-size:12px;color:#333}.repair-container .print-table th.center,.repair-container .print-table td.center{text-align:center}.repair-container .print-table th.right,.repair-container .print-table td.right{text-align:right}.repair-container .doc-summary{display:block;margin-bottom:40px;page-break-inside:avoid}.repair-container .remark-box{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:12px;min-height:80px}.repair-container .remark-box h4{color:#1d4ed8;margin:0 0 6px;font-size:12px;font-weight:700}.repair-container .remark-box p{margin:2px 0;font-size:12px;color:#555;white-space:pre-wrap}.repair-container .signatures{display:flex;justify-content:space-between;margin-top:50px;padding:0 40px;page-break-inside:avoid}.repair-container .sign-box{text-align:center;width:220px;font-size:12px}.repair-container .sign-line{border-bottom:1px solid #000;margin-bottom:8px;height:30px}.repair-container .sign-box p{margin:3px 0;color:#555}.repair-container .sign-box p:first-of-type{color:#000;font-size:13px;margin-bottom:6px}.repair-container .print-footer{position:fixed;bottom:0;left:0;right:0;display:flex!important;justify-content:space-between!important;font-size:10px;color:#888;border-top:1px dashed #ccc;padding-top:5px;padding-bottom:5px;background:#fff}}@keyframes roSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.kanban-container{display:flex;flex-direction:column;height:calc(100vh - 85px);padding:16px 24px;background-color:var(--bg-primary);overflow:hidden}.kanban-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.kanban-title{display:flex;align-items:center;gap:12px}.kanban-title h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0}.kanban-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0}.kanban-actions{display:flex;align-items:center;gap:10px}.kanban-board{display:flex;gap:14px;overflow-x:auto;flex:1;padding-bottom:14px;align-items:stretch}.kanban-board::-webkit-scrollbar{height:8px}.kanban-board::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.kanban-board::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.kanban-column{flex:1 1 250px;min-width:230px;max-width:340px;background-color:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);display:flex;flex-direction:column;max-height:100%;box-shadow:var(--card-shadow);transition:all .2s ease}@media (min-width: 1920px){.kanban-column{flex:1 1 0;min-width:180px;max-width:none}.column-title{font-size:.88rem}}@media (min-width: 1440px) and (max-width: 1919px){.kanban-column{flex:1 1 220px;min-width:210px}}@media (min-width: 1024px) and (max-width: 1439px){.kanban-column{flex:0 0 240px;min-width:240px}}@media (max-width: 1023px){.kanban-column{flex:0 0 270px;min-width:270px}}.kanban-column-header{padding:12px 14px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;border-top-left-radius:12px;border-top-right-radius:12px}.column-title-group{display:flex;align-items:center;gap:8px}.status-dot{width:10px;height:10px;border-radius:50%}.column-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.column-count{background:#0000000f;color:var(--text-secondary);font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:12px}.kanban-cards-container{padding:12px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:12px}.kanban-cards-container::-webkit-scrollbar{width:6px}.kanban-cards-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.kanban-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:14px;cursor:grab;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 2px 5px #00000008;position:relative}.kanban-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px -2px #00000014;border-color:var(--accent-color)}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{opacity:.4;transform:scale(.95)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ro-badge{background-color:#2563eb1a;color:var(--accent-color);font-size:.8rem;font-weight:700;padding:3px 8px;border-radius:6px}.plate-badge{background-color:#1e293b;color:#fff;font-size:.75rem;font-weight:600;padding:2px 6px;border-radius:4px;letter-spacing:.5px}.card-customer{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.card-vehicle{font-size:.8rem;color:var(--text-secondary);margin-bottom:8px;display:flex;align-items:center;gap:4px}.card-symptoms{font-size:.78rem;color:var(--text-secondary);background:#00000005;border-radius:6px;padding:6px 8px;margin-bottom:10px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--text-secondary);border-top:1px solid var(--border-color);padding-top:8px;margin-top:4px}.card-staff{display:flex;align-items:center;gap:4px}.btn-history-log{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:3px 6px;border-radius:4px;display:flex;align-items:center;gap:4px;font-size:.75rem;transition:background .15s}.btn-history-log:hover{background:#2563eb1a;color:var(--accent-color)}.modal-content.wide-modal{max-width:850px}.detail-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}@media (max-width: 768px){.detail-section-grid{grid-template-columns:1fr}}.detail-info-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:14px}.detail-info-box h4{margin:0 0 10px;font-size:.92rem;color:var(--accent-color);display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--border-color);padding-bottom:6px}.info-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:6px}.info-row:last-child{margin-bottom:0}.info-label{color:var(--text-secondary)}.info-val{font-weight:600;color:var(--text-primary)}.detail-jobs-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:.83rem}.detail-jobs-table th{background:#2563eb14;color:var(--text-primary);text-align:left;padding:8px 10px;border-bottom:2px solid var(--border-color)}.detail-jobs-table td{padding:8px 10px;border-bottom:1px solid var(--border-color)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--bg-card);border-radius:14px;width:90%;max-width:650px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000040;border:1px solid var(--border-color)}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.1rem;font-weight:700}.modal-body{padding:20px;overflow-y:auto}.timeline{position:relative;padding-left:20px;border-left:2px solid var(--border-color)}.timeline-item{position:relative;margin-bottom:20px}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:-26px;top:2px;width:10px;height:10px;border-radius:50%;background:var(--accent-color);border:2px solid var(--bg-card)}.timeline-content{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:10px 14px}.timeline-title{font-size:.88rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.timeline-meta{font-size:.75rem;color:var(--text-secondary);margin-top:4px}.timeline-remark{font-size:.8rem;color:var(--text-secondary);margin-top:6px;font-style:italic}.kanban-board.fit-width{overflow-x:hidden;gap:8px}.kanban-board.fit-width .kanban-column{flex:1 1 0;min-width:120px;max-width:none}.kanban-board.fit-width .column-title{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-board.fit-width .kanban-card{padding:8px 10px}.kanban-board.fit-width .card-customer{font-size:.8rem}.kanban-board.fit-width .card-vehicle{font-size:.73rem}.kanban-board.fit-width .card-symptoms{font-size:.72rem;padding:4px 6px;-webkit-line-clamp:1}.gr-page{display:flex;flex-direction:column;gap:16px}.gr-page .gr-header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.gr-page .gr-actions{display:flex;gap:10px}.gr-page .gr-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.gr-page .form-group{display:flex;flex-direction:column;gap:6px}.gr-page .form-group label{font-size:.9em;color:var(--text-secondary);font-weight:500}.gr-page .lookup-input{display:flex;position:relative}.gr-page .lookup-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;padding:4px 8px;cursor:pointer;color:var(--text-primary)}.gr-page .detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.gr-page .table-responsive{overflow-x:auto}.gr-page .gr-table{width:100%;min-width:800px;border-collapse:collapse}.gr-page .gr-table th,.gr-page .gr-table td{padding:10px;border-bottom:1px solid var(--border-color);text-align:left}.gr-page .gr-table th{background-color:#8080800d;color:var(--text-secondary);font-weight:600}.gr-page .input-field.small{padding:6px 8px}.gr-page .text-right{text-align:right}.gr-page .text-center{text-align:center}.gr-page .font-bold{font-weight:700}.gr-page .btn-icon.danger{background:transparent;border:none;color:#ef4444;cursor:pointer;padding:6px;border-radius:4px}.gr-page .btn-icon.danger:hover{background:#ef44441a}.gr-page .gr-footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.gr-page .remark-group{flex:1;min-width:300px}.gr-page .summary-section{width:300px;background:#80808005;padding:16px;border-radius:8px;border:1px solid var(--border-color)}.gr-page .summary-row{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--text-secondary)}.gr-page .summary-row.grand-total{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color);color:var(--text-primary);font-weight:700;font-size:1.1em}.gr-page .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.gr-page .modal-content{background:var(--bg-card);width:90%;max-width:500px;border-radius:8px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:80vh}.gr-page .modal-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.gr-page .close-btn{background:transparent;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary)}.gr-page .modal-body{padding:16px;overflow-y:auto}.gr-page .lookup-list{list-style:none;padding:0;margin:0}.gr-page .lookup-list li{padding:12px;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;align-items:center;gap:10px}.gr-page .lookup-list li:hover{background:var(--bg-primary)}.gr-page .lookup-list .code{font-weight:700;color:var(--accent-color)}.gr-page .lookup-list .price{margin-left:auto;color:var(--text-secondary)}.so-page{display:flex;flex-direction:column;gap:16px}.so-page .so-header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.so-page .so-actions{display:flex;gap:10px}.so-page .btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:10px 16px;font-weight:500;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;gap:8px}.so-page .btn-secondary:hover{background-color:var(--bg-primary)}.so-page .so-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.so-page .so-table{width:100%;min-width:700px;border-collapse:collapse}.so-page .so-table th,.so-page .so-table td{padding:10px;border-bottom:1px solid var(--border-color);text-align:left}.so-page .so-table th{background-color:#8080800d;color:var(--text-secondary);font-weight:600}.so-page .so-footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.so-page .text-danger{color:#ef4444!important}.sr-page{display:flex;flex-direction:column;gap:16px}.sr-page .sr-header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.sr-page .sr-actions{display:flex;gap:10px}.sr-page .sr-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.sr-page .pull-so-group .lookup-input{display:flex;gap:8px}.sr-page .pull-btn{border-radius:4px;padding:8px 12px;display:flex;align-items:center;justify-content:center}.sr-page .sr-table{width:100%;min-width:700px;border-collapse:collapse}.sr-page .sr-table th,.sr-page .sr-table td{padding:10px;border-bottom:1px solid var(--border-color);text-align:left}.sr-page .sr-table th{background-color:#8080800d;color:var(--text-secondary);font-weight:600}.sr-page .sr-footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.sr-page .payment-section{flex:1;min-width:300px;background:#10b9810d;padding:16px;border-radius:8px;border:1px solid rgba(16,185,129,.2)}.sr-page .payment-section h4{margin-bottom:10px;color:var(--text-primary)}.sr-page .text-success{color:#10b981!important}.user-management-container .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.user-management-container .page-title-group{display:flex;align-items:center;gap:16px}.user-management-container .breadcrumb{font-size:.85em;color:var(--text-secondary);margin-top:4px}.user-management-container .page-actions{display:flex;gap:12px}.user-management-container .btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:10px 16px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px}.user-management-container .summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.user-management-container .summary-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;display:flex;justify-content:space-between;align-items:center}.user-management-container .summary-title{color:var(--text-secondary);font-size:.9em}.user-management-container .summary-value{font-size:2em;font-weight:700;color:var(--text-primary)}.user-management-container .data-table-container{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.user-management-container .data-table{width:100%;border-collapse:collapse}.user-management-container .data-table th{background-color:var(--bg-primary);color:var(--text-secondary);padding:16px;text-align:left;font-size:.85em;border-bottom:1px solid var(--border-color)}.user-management-container .data-table td{padding:16px;border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.95em}.user-management-container .data-table tbody tr:hover{background-color:var(--bg-primary)}.user-management-container .badge{padding:4px 10px;border-radius:12px;font-size:.85em;font-weight:500}.user-management-container .badge-purple{background-color:#8b5cf626;color:#a78bfa}.user-management-container .badge-green{background-color:#22c55e26;color:#4ade80}.add-user-container .page-title-group{gap:16px}.add-user-container .back-btn{color:var(--text-secondary);padding:8px;background-color:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center}.add-user-container .back-btn:hover{background-color:var(--bg-primary);color:var(--text-primary)}.add-user-container .btn-primary{background-color:var(--accent-color);color:#fff;border:none;border-radius:6px;padding:10px 20px;cursor:pointer}.add-user-container .form-section{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;padding:6px 10px;margin-bottom:6px}.add-user-container .section-header{display:flex;align-items:center;gap:6px;margin-bottom:4px;background-color:#0f172a;border-bottom:2px solid var(--accent-color);padding:4px 10px;border-radius:4px;min-height:28px}.add-user-container .section-header h3{color:#fff!important;font-size:.82rem;font-weight:600;margin:0}.add-user-container .form-row{display:flex;gap:8px;margin-bottom:3px}.add-user-container .form-group.half{flex:1}.add-user-container .form-group.full{width:100%}.add-user-container .form-group label{color:var(--text-secondary);font-size:.76rem;font-weight:600;margin-bottom:1px;display:block}.add-user-container .input-field{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:2px 7px;min-height:26px;height:26px;font-size:.81rem;line-height:1.2;border-radius:4px;width:100%;outline:none}.add-user-container .input-field:focus{border-color:var(--accent-color)}
