body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:768px){*{-webkit-tap-highlight-color:rgba(0,0,0,.1)}a,button,input,select,textarea{touch-action:manipulation}input,select,textarea{font-size:16px!important}}.sidebar{background-color:#1a2541;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100vh;max-width:220px;min-width:220px;padding:20px 0;position:relative;transition:width .3s ease,min-width .3s ease,max-width .3s ease;width:220px}.sidebar.collapsed{max-width:60px;min-width:60px;width:60px}.sidebar-logo{line-height:0;margin-bottom:30px;padding:0;text-align:center}.sidebar-logo img{display:block;height:auto;margin:0 auto;padding:13px 0;transition:opacity .3s ease;width:140px}.sidebar.collapsed .sidebar-logo img{height:0;opacity:0;overflow:hidden;width:0}.logo-icon{align-items:center;background-color:#253363;border-radius:50%;display:flex;font-size:16px;font-weight:700;height:30px;justify-content:center;margin:0 auto;opacity:0;transition:opacity .3s ease;width:30px}.sidebar.collapsed .logo-icon{opacity:1}.sidebar nav{min-height:0;overflow:hidden}.sidebar nav,.sidebar ul{display:flex;flex:1 1;flex-direction:column}.sidebar ul{justify-content:flex-start;list-style:none;margin:0;overflow-x:hidden;overflow-y:auto;padding:0 0 60px;scroll-behavior:smooth;scrollbar-color:#ffffff4d #0000;scrollbar-width:thin}.sidebar ul::-webkit-scrollbar{width:6px}.sidebar ul::-webkit-scrollbar-track{background:#0000}.sidebar ul::-webkit-scrollbar-thumb{background-color:#ffffff4d;border-radius:3px}.sidebar ul::-webkit-scrollbar-thumb:hover{background-color:#ffffff80}.sidebar li{margin:20px 0 0}.sidebar a{align-items:center;border-radius:6px;box-sizing:border-box;color:#fff;display:flex;font-size:1rem;font-weight:500;padding:8px 20px;text-decoration:none;transition:background .18s,color .18s,padding .3s ease;width:100%}.sidebar.collapsed a{justify-content:center;padding:8px 12px}.sidebar a:hover{background-color:#ffffff21;color:#eee}.sidebar a.active{background-color:#253363;color:#fff;font-weight:600}.nav-icon{font-size:1.2rem;margin-right:12px;transition:margin .3s ease}.sidebar.collapsed .nav-icon{margin-right:0}.nav-icon.defect-icon{display:inline-block;filter:hue-rotate(-30deg) saturate(2) brightness(1.1)}.nav-icon.truck-icon{display:inline-block;filter:hue-rotate(180deg) saturate(1.3)}.nav-text{transition:opacity .3s ease}.sidebar.collapsed .nav-text{opacity:0;overflow:hidden;width:0}.sidebar-toggle{align-items:center;background-color:#0f1a2e;border:none;border-radius:0;border-top:1px solid #ffffff14;bottom:0;cursor:pointer;display:flex;height:40px;justify-content:center;left:0;position:absolute;right:0;transition:background-color .3s ease;width:100%}.sidebar-toggle:hover{background-color:#1a2541}.toggle-arrow{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center}.arrow-line,.toggle-arrow{transition:transform .3s ease}.arrow-line{background-color:#fff;border-radius:1px;height:2px;width:8px}.toggle-arrow.collapsed .arrow-line:first-child{transform:rotate(45deg) translate(1px,-1px)}.toggle-arrow.collapsed .arrow-line:last-child,.toggle-arrow:not(.collapsed) .arrow-line:first-child{transform:rotate(-45deg) translate(1px,1px)}.toggle-arrow:not(.collapsed) .arrow-line:last-child{transform:rotate(45deg) translate(1px,-1px)}@media (max-width:768px){.sidebar{box-shadow:2px 0 8px #0003;height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;z-index:10000}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed{max-width:220px;min-width:220px;width:220px}.sidebar.collapsed .sidebar-logo img{height:auto;opacity:1;width:140px}.sidebar.collapsed .logo-icon{opacity:0}.sidebar.collapsed .nav-text{opacity:1;overflow:visible;width:auto}.sidebar.collapsed a{justify-content:flex-start;padding:8px 20px}.sidebar.collapsed .nav-icon{margin-right:12px}}@media (max-width:480px){.sidebar{max-width:280px;width:100%}}body,html{background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100%;margin:0;padding:0}.top-header{align-items:center;background-color:#f4f6fa;box-shadow:0 1px 4px #0000001a;display:flex;height:60px;justify-content:space-between;padding:0 20px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.top-header>*{margin-bottom:0!important;margin-top:0!important}.header-center{font-size:1rem;font-weight:700;line-height:60px;margin:0;white-space:nowrap}.header-right{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;line-height:60px;margin:0;padding:6px 10px;transition:background .2s ease}.header-right:hover{background-color:#e6ebf5}.profile-icon{font-size:1.5rem}.profile-panel{background:#fff;border-left:1px solid #ccc;box-shadow:-2px 0 4px #0000001a;height:calc(100vh - 60px);overflow-y:auto;position:fixed;right:0;top:60px;width:250px;z-index:999}.profile-panel-content{display:flex;flex-direction:column;gap:12px;padding:20px}.profile-panel-title{border-bottom:1px solid #e5e7eb;color:#111827;font-size:14px;font-weight:800;margin:0;padding-bottom:10px;text-align:center}.profile-panel-btn{border:1px solid #0000;border-radius:10px;cursor:pointer;font-weight:700;padding:10px 12px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;width:100%}.profile-panel-btn.primary{background:linear-gradient(135deg,#6366f1,#4338ca);box-shadow:0 10px 20px #6366f12e;color:#fff}.profile-panel-btn.primary:hover{box-shadow:0 14px 24px #6366f147;transform:translateY(-1px)}.profile-panel-btn.danger{background:#fff;border-color:#b91c1c40;color:#b91c1c}.profile-panel-btn.danger:hover{background:#b91c1c0f}.main-content{background-color:#f5f7fa;flex-grow:1;margin-top:0!important;min-height:calc(100vh - 60px);overflow-y:auto;padding-top:0!important}@media (max-width:768px){.top-header{height:56px;padding:0 12px}.header-center{font-size:.9rem;line-height:56px}.header-right{gap:6px;padding:4px 8px}.profile-icon{font-size:1.3rem}.profile-panel{max-width:320px;top:56px;width:100%}}@media (max-width:480px){.top-header{height:52px;padding:0 8px}.header-center{font-size:.85rem;line-height:52px}.profile-panel{top:52px;width:100%}}.mobile-menu-btn,.mobile-menu-overlay{display:none}@media (max-width:768px){.mobile-menu-btn{display:flex!important}.mobile-menu-overlay{display:block!important}.main-content-wrapper{margin-left:0!important}}.login-container{align-items:center;background:linear-gradient(to bottom right,#c0f0f0,#f7d5e8);color:#000;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100vh;justify-content:center}.login-box{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff6;border-radius:15px;box-shadow:0 8px 20px #00000026;padding:2rem;text-align:center;width:360px}.login-method-toggle{background:#ffffffb3;border:1px solid #1118271f;border-radius:10px;box-shadow:inset 0 1px 0 #fff9;display:flex;gap:4px;padding:4px;width:100%}.login-method-toggle button{background:#0000;border:0;border-radius:8px;color:#374151;cursor:pointer;flex:1 1;font-weight:700;padding:10px 12px;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.login-method-toggle button.is-active{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 8px 18px #10b98147;color:#fff}.login-method-toggle button:not(.is-active){opacity:.75}.login-method-toggle button:not(.is-active):hover{background:#1118270f;opacity:1}.login-box h2{color:#000;font-size:1.4rem;margin-bottom:1.5rem}.login-box input{background-color:#fff;border:1px solid #aaa;border-radius:6px;box-sizing:border-box;color:#000;font-size:.9rem;margin-bottom:1rem;padding:.625rem;width:100%}.login-box input:focus{border-color:#666;box-shadow:0 0 0 2px #0000001a;outline:none}.login-box button{background-color:#333;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1.125rem;transition:background .2s ease}.login-box button:hover{background-color:#555}.secondary-link-button{background:#0000;border:1px solid #37415140;border-radius:6px;color:#374151;cursor:pointer;font-weight:600;margin-top:10px;padding:8px 10px;width:100%}.secondary-link-button:hover:not(:disabled){background:#1118270f}.secondary-link-button:disabled{cursor:not-allowed;opacity:.6}.forgot-link{all:unset;color:#2563eb;cursor:pointer;display:inline;font-size:13px;font-weight:500;line-height:1.3;text-decoration:underline}.forgot-link[aria-disabled=true]{cursor:not-allowed;opacity:.6}.forgot-link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.login-box button:focus{box-shadow:0 0 0 2px #0003;outline:none}.error-message{color:red;font-size:.8rem;margin-top:.625rem}.login-note{color:#374151;font-size:.75rem;line-height:1.4;margin-top:.75rem}.phone-input-container{width:100%}.phone-input-wrapper{align-items:stretch;display:flex;gap:8px;width:100%}.country-code-dropdown-wrapper{flex:0 0 auto;max-width:220px;min-width:180px;position:relative}.country-code-display-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;gap:8px;justify-content:space-between;min-height:44px;padding:10px 14px;transition:border-color .2s;width:100%}.country-code-display-trigger:hover{border-color:#3b82f6}.country-code-display-trigger.disabled{background:#f9fafb;cursor:not-allowed}.country-code-display-trigger.disabled:hover{border-color:#d1d5db}.country-code-value{color:#374151;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{color:#6b7280}.country-code-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.country-code-dropdown-item{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 14px;transition:background .15s}.country-code-dropdown-item:hover{background:#f3f4f6}.country-code-dropdown-item.selected{background:#eff6ff;color:#3b82f6}.country-dial-code{color:#374151;font-weight:500;min-width:45px}.country-name{color:#6b7280;flex:1 1}.phone-number-input{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-family:monospace;font-size:14px;letter-spacing:1px;min-width:0;padding:10px 12px}.phone-number-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.phone-number-input:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.6}.phone-number-input::placeholder{color:#9ca3af;letter-spacing:normal}@media (max-width:640px){.phone-input-wrapper{flex-direction:column}.country-code-dropdown-wrapper{max-width:100%;min-width:0;min-width:auto;width:100%}}.si-container{background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:28px 32px}.si-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:300px}.si-spinner{animation:si-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#1a2541;height:36px;width:36px}@keyframes si-spin{to{transform:rotate(1turn)}}.si-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.si-title{color:#111827;font-size:26px;font-weight:700;margin:0}.si-header-right{gap:10px}.si-header-right,.si-month-nav{align-items:center;display:flex}.si-month-nav{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:6px;padding:6px 10px}.si-month-btn{background:none;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:18px;line-height:1;padding:0 4px;transition:background .15s}.si-month-btn:hover{background:#f3f4f6}.si-month-label{color:#111827;font-size:14px;font-weight:600;min-width:120px;text-align:center;white-space:nowrap}.si-export-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 14px;transition:background .15s,border-color .15s}.si-export-btn:hover{background:#f9fafb;border-color:#d1d5db}.si-icon-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;padding:8px;transition:background .15s}.si-icon-btn:hover{background:#f3f4f6}.si-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:0;margin-bottom:24px}.si-tab{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:10px 20px;transition:color .15s,border-color .15s}.si-tab:hover{color:#374151}.si-tab-active{border-bottom-color:#1a2541;color:#1a2541;font-weight:600}.si-stat-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.si-stat-card{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;display:flex;gap:14px;padding:20px}.si-stat-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.si-stat-icon-blue{background:#eff6ff;color:#2563eb}.si-stat-icon-green{background:#f0fdf4;color:#16a34a}.si-stat-icon-orange{background:#fff7ed;color:#ea580c}.si-stat-content{flex:1 1;min-width:0}.si-stat-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.04em;margin:0 0 4px;text-transform:uppercase}.si-stat-value{color:#111827;font-size:22px;font-weight:700;line-height:1.2;margin:0 0 6px}.si-stat-sub{align-items:center;color:#9ca3af;display:flex;flex-wrap:wrap;font-size:12px;gap:6px;margin:0}.si-stat-progress-bar{background:#f3f4f6;border-radius:3px;height:6px;margin:6px 0 4px;overflow:hidden}.si-stat-progress-fill{background:linear-gradient(90deg,#10b981,#3b82f6);border-radius:3px;height:100%;transition:width .4s ease}.si-badge-count{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;padding:2px 8px}.si-badge-count-blue{background:#eff6ff;color:#2563eb}.si-badge-count-red{background:#fef2f2;color:#dc2626}.si-filter-bar{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:14px 16px}.si-filter-bar,.si-search-wrap{align-items:center;display:flex}.si-search-wrap{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 260px;gap:8px;padding:8px 12px}.si-search{background:none;border:none;color:#111827;font-size:14px;outline:none;width:100%}.si-search::placeholder{color:#9ca3af}.si-filters{display:flex;flex:1 1;flex-wrap:wrap;gap:10px}.si-filter-group{display:flex;flex-direction:column;gap:2px;min-width:130px}.si-filter-group label{color:#6b7280;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.si-filter-group select{background:#f9fafb;border:1px solid #e5e7eb;border-radius:7px;color:#374151;cursor:pointer;font-size:13px;outline:none;padding:7px 10px;transition:border-color .15s}.si-filter-group select:focus{border-color:#1a2541}.si-new-btn{background:#1a2541;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-left:auto;padding:10px 18px;transition:background .15s;white-space:nowrap}.si-new-btn:hover{background:#243156}.si-cards-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}@media (max-width:1200px){.si-cards-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.si-cards-grid,.si-stat-cards{grid-template-columns:1fr}}.si-project-card{background:#fff;border-radius:14px;box-shadow:0 1px 4px #00000012;display:flex;flex-direction:column;gap:14px;padding:20px;transition:box-shadow .2s,transform .2s}.si-project-card:hover{box-shadow:0 6px 24px #00000021;transform:translateY(-3px)}.si-card-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.si-card-title{color:#111827;font-size:15px;font-weight:700;line-height:1.3;margin:0}.si-badge{align-items:center;border-radius:12px;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:600;padding:3px 10px;white-space:nowrap}.si-badge-fully{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.si-badge-partial{background:#fffbeb;border:1px solid #fde68a;color:#b45309}.si-badge-overdue{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.si-badge-none{background:#f3f4f6;border:1px solid #e5e7eb;color:#6b7280}.si-card-meta{display:flex;flex-wrap:wrap;gap:12px}.si-card-meta-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:5px}.si-card-contracts{grid-gap:12px;align-items:start;border-top:1px solid #f3f4f6;display:grid;gap:12px;grid-template-columns:1fr auto 1fr;padding-top:14px}.si-contract-col{display:flex;flex-direction:column;gap:6px}.si-contract-header{color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.04em;margin-bottom:2px;text-transform:uppercase}.si-contract-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.si-contract-label{color:#9ca3af;font-size:12px}.si-contract-val{color:#111827;font-size:13px;font-weight:600}.si-val-claimed{color:#10b981}.si-val-balance{color:#ef4444}.si-progress-ring{align-items:center;display:flex;flex-shrink:0;justify-content:center;position:relative}.si-ring-pct{color:#374151;font-size:11px;font-weight:700;position:absolute}.si-card-dates{border-top:1px solid #f3f4f6;display:flex;flex-direction:column;gap:6px;padding-top:12px}.si-date-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:6px}.si-date-label{flex:1 1}.si-date-val{color:#374151;font-weight:600}.si-card-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;padding-top:12px}.si-action-btn{border:none;border-radius:7px;cursor:pointer;flex:1 1;font-size:12px;font-weight:600;padding:8px 4px;transition:background .15s,color .15s}.si-btn-view{background:#f3f4f6;color:#374151}.si-btn-view:hover{background:#e5e7eb}.si-btn-invoice{background:#eff6ff;color:#2563eb}.si-btn-invoice:hover{background:#dbeafe}.si-btn-followup{background:#f0fdf4;color:#16a34a}.si-btn-followup:hover{background:#dcfce7}.si-empty{color:#9ca3af;padding:60px 20px;text-align:center}.si-empty-icon{font-size:48px;margin-bottom:16px}.si-empty h3{color:#374151;font-size:18px;margin:0 0 8px}.si-empty p{font-size:14px;margin:0}.si-coming-soon{color:#9ca3af;padding:80px 20px;text-align:center}.si-coming-soon-icon{font-size:48px;margin-bottom:16px}.si-coming-soon h3{color:#374151;font-size:18px;margin:0 0 8px}.si-coming-soon p{font-size:14px;margin:0}.si-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.si-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:640px;overflow:hidden;width:100%}.si-modal-header{border-bottom:1px solid #f3f4f6;padding:22px 24px 16px;position:relative}.si-modal-header h2{color:#111827;font-size:18px;font-weight:700;margin:0 0 2px}.si-modal-subtitle{color:#6b7280;font-size:13px;margin:0}.si-modal-close{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#374151;cursor:pointer;display:flex;font-size:18px;height:30px;justify-content:center;position:absolute;right:20px;top:18px;transition:background .15s;width:30px}.si-modal-close:hover{background:#e5e7eb}.si-modal-body{flex:1 1;gap:14px;overflow-y:auto;padding:20px 24px}.si-form-group,.si-modal-body{display:flex;flex-direction:column}.si-form-group{gap:5px}.si-form-group label{color:#374151;font-size:13px;font-weight:600}.si-form-group input,.si-form-group select{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:14px;outline:none;padding:9px 12px;transition:border-color .15s,box-shadow .15s;width:100%}.si-form-group input:focus,.si-form-group select:focus{border-color:#1a2541;box-shadow:0 0 0 3px #1a254114}.si-form-group-inline{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px 14px}.si-form-group-inline label{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.si-form-group-inline input[type=checkbox]{border-width:2px;flex-shrink:0;height:16px;width:16px}.si-form-hint{color:#0284c7;font-size:12px;margin:4px 0 0}.si-form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.si-input-prefix{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;display:flex;overflow:hidden;transition:border-color .15s,box-shadow .15s}.si-input-prefix:focus-within{border-color:#1a2541;box-shadow:0 0 0 3px #1a254114}.si-input-prefix>span{background:#f9fafb;border-right:1px solid #d1d5db;color:#6b7280;flex-shrink:0;font-size:14px;font-weight:500;padding:9px 10px}.si-input-prefix input{flex:1 1;min-width:0;padding:9px 10px}.si-input-prefix input,.si-input-prefix input:focus{border:none;box-shadow:none}.si-input-readonly{background:#f9fafb}.si-input-readonly input{background:#f9fafb;color:#6b7280;cursor:not-allowed}.si-form-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.si-form-section-title{color:#374151;font-size:13px;font-weight:700;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.si-claims-grid{display:flex;flex-direction:column;gap:8px}.si-claims-header{border-bottom:1px solid #e5e7eb;color:#9ca3af;font-size:11px;font-weight:600;letter-spacing:.04em;margin-bottom:4px;padding:0 4px 4px;text-transform:uppercase}.si-claim-row,.si-claims-header{grid-gap:8px;display:grid;gap:8px;grid-template-columns:48px 1fr 1fr}.si-claim-row{align-items:center}.si-claim-num{color:#6b7280;font-size:12px;font-weight:600;text-align:center}.si-claim-row input{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#111827;font-size:13px;outline:none;padding:7px 10px;transition:border-color .15s;width:100%}.si-claim-row input:focus{border-color:#1a2541}.si-claimed-summary{align-items:center;border-top:1px solid #e5e7eb;color:#374151;display:flex;font-size:13px;gap:6px;margin-top:10px;padding-top:10px}.si-claimed-summary strong{color:#1a2541}.si-claimed-pct{color:#6b7280;font-size:12px}.si-tag-group{display:flex;flex-wrap:wrap;gap:8px}.si-tag{background:#f9fafb;border:1.5px solid #d1d5db;border-radius:20px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:7px 16px;transition:background .15s,border-color .15s,color .15s}.si-tag:hover:not(.si-tag-active){border-color:#1a2541;color:#1a2541}.si-tag-active{background:#1a2541;border-color:#1a2541;color:#fff}.si-tag-active:hover{background:#243156;border-color:#243156;color:#fff}.si-tag-type-mc{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.si-tag-type-vo{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.si-tag-type-sc{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.si-tag-type-mc.si-tag-active{background:#059669;border-color:#059669;color:#fff}.si-tag-type-vo.si-tag-active{background:#2563eb;border-color:#2563eb;color:#fff}.si-tag-type-sc.si-tag-active{background:#dc2626;border-color:#dc2626;color:#fff}.si-file-upload{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.si-file-btn{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:background .15s}.si-file-btn:hover{background:#e5e7eb}.si-file-name{background:#eff6ff;border-radius:6px;color:#1a2541;font-size:13px;max-width:220px;overflow:hidden;padding:4px 10px;text-overflow:ellipsis;white-space:nowrap}.si-modal-footer{border-top:1px solid #f3f4f6;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px}.si-modal-cancel{background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background .15s}.si-modal-cancel:hover{background:#e5e7eb}.si-modal-save{background:#1a2541;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background .15s}.si-modal-save:hover:not(:disabled){background:#243156}.si-modal-save:disabled{cursor:not-allowed;opacity:.6}.sip-container{background:#f5f7fa;box-sizing:border-box;min-height:100%;padding:28px 32px}.sip-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:300px}.sip-spinner{animation:sip-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#1a2541;height:36px;width:36px}@keyframes sip-spin{to{transform:rotate(1turn)}}.sip-page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:28px}.sip-header-left{display:flex;flex-direction:column;gap:6px}.sip-back-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:4px;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.sip-back-btn:hover{background:linear-gradient(135deg,#7c8ef5,#8a5fb8);box-shadow:0 6px 24px #667eea80,0 0 0 3px #667eea1a;color:#fff;transform:translateY(-2px)}.sip-back-btn:active{transform:translateY(0)}.sip-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.sip-title{color:#1a2541;font-size:22px;font-weight:700;margin:0}.sip-subtitle-row{color:#6b7280;display:flex;font-size:13px;gap:16px}.sip-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;white-space:nowrap}.sip-badge-fully{background:#d1fae5;color:#065f46}.sip-badge-partial{background:#fef3c7;color:#92400e}.sip-badge-overdue{background:#fee2e2;color:#991b1b}.sip-header-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.sip-btn-primary{align-items:center;background:#1a2541;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:9px 18px;transition:background .2s}.sip-btn-primary:hover{background:#263354}.sip-btn-secondary{align-items:center;background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#1a2541;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:9px 18px;transition:background .2s,border-color .2s}.sip-btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af}.sip-stat-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:28px}.sip-stat-card{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;padding:20px 22px}.sip-stat-card-ring{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.sip-stat-card-claimed{align-items:center;display:flex;gap:12px;justify-content:space-between}.sip-stat-claimed-left{flex:1 1;min-width:0}.sip-subcon-paid-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.sip-subcon-paid{color:#ef4444;font-size:18px;font-weight:700}.sip-subcon-sep{color:#9ca3af;font-size:16px;font-weight:400}.sip-subcon-total{color:#6b7280;font-size:15px;font-weight:600}.sip-stat-label{color:#9ca3af;font-size:12px;font-weight:600;letter-spacing:.05em;margin:0 0 6px;text-transform:uppercase}.sip-stat-value{color:#1a2541;font-size:22px;font-weight:700;margin:0 0 4px}.sip-stat-sub{color:#9ca3af;font-size:12px;margin:0}.sip-val-green{color:#10b981!important}.sip-val-orange{color:#ef4444!important}.sip-ring-wrap{align-items:center;display:inline-flex;justify-content:center;margin-top:6px;position:relative}.sip-ring-label{color:#1a2541;font-size:15px;font-weight:700;position:absolute}.sip-followup-log{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;margin-bottom:24px;padding:18px 22px}.sip-section-title{color:#1a2541;font-size:14px;font-weight:700;margin:0 0 12px}.sip-followup-list{display:flex;flex-direction:column;gap:8px}.sip-followup-item{background:#f9fafb;border-radius:8px;display:flex;font-size:13px;gap:16px;padding:8px 12px}.sip-followup-date{color:#1a2541;font-weight:600;min-width:100px;white-space:nowrap}.sip-followup-notes{color:#4b5563}.sip-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:4px;margin-bottom:20px}.sip-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:7px;margin-bottom:-2px;padding:9px 18px;transition:color .2s,border-color .2s;white-space:nowrap}.sip-tab:hover{color:#1a2541}.sip-tab-active{border-bottom-color:#1a2541;color:#1a2541;font-weight:700}.sip-tab-count{background:#f3f4f6;border-radius:10px;color:#6b7280;font-size:11px;font-weight:600;padding:1px 8px}.sip-tab-active .sip-tab-count{background:#1a2541;color:#fff}.sip-table-wrap{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;overflow-x:auto;overflow-y:visible}.sip-table{border-collapse:initial;border-spacing:0;font-size:13px;min-width:1800px;width:100%}.sip-table th{background:#f0f2f5;border-bottom:2px solid #d1d5db;color:#374151;font-size:12px;font-weight:700;letter-spacing:.04em;padding:12px 18px;text-align:left;text-transform:uppercase;white-space:nowrap}.sip-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sip-th-sortable:hover{background:#f0f2f5;color:#1a2541}.sip-sort-icon{display:inline-block;font-size:13px;font-weight:900;line-height:1;margin-left:4px;opacity:.35;vertical-align:middle}.sip-th-sortable.sip-th-active .sip-sort-icon,.sip-th-sortable:hover .sip-sort-icon{color:#1a2541;opacity:1}.sip-table td{background:#fff;border-bottom:1px solid #f3f4f6;color:#374151;padding:14px 18px;vertical-align:middle;white-space:nowrap}.sip-table tr:last-child td{border-bottom:none}.sip-table tr:hover td{background:#fafafa}.sip-num{text-align:right!important}.sip-col-sticky-left{background:#fff;left:0;min-width:180px;overflow-wrap:break-word;position:-webkit-sticky;position:sticky;white-space:normal!important;word-break:break-word;z-index:2}.sip-table thead .sip-col-sticky-left{background:#f0f2f5;z-index:3}.sip-table tfoot .sip-col-sticky-left{background:#f9fafb;z-index:3}.sip-col-sticky-refno{background:#fff;box-shadow:2px 0 5px #00000014;min-width:90px;position:-webkit-sticky;position:sticky;z-index:2}.sip-table thead .sip-col-sticky-refno{background:#f0f2f5;z-index:3}.sip-table tfoot .sip-col-sticky-refno{background:#f9fafb;z-index:3}.sip-col-signed{background:#fff;left:0;min-width:60px;position:-webkit-sticky;position:sticky;text-align:center;vertical-align:middle;width:60px;z-index:2}.sip-table thead .sip-col-signed{background:#f0f2f5;z-index:3}.sip-table tfoot .sip-col-signed{background:#f9fafb;z-index:3}.sip-th-signed{color:#374151;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sip-signed-label{align-items:center;cursor:pointer;display:inline-flex;justify-content:center}.sip-signed-cb{height:0;opacity:0;pointer-events:none;position:absolute;width:0}.sip-signed-box{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:6px;color:#fff;display:flex;font-size:13px;font-weight:700;height:22px;justify-content:center;transition:all .15s;-webkit-user-select:none;user-select:none;width:22px}.sip-signed-box.sip-signed-yes{background:#10b981;border-color:#10b981;box-shadow:0 0 0 3px #10b98126;color:#fff}.sip-signed-box.sip-signed-no{background:#fff;border-color:#d1d5db;color:#0000}.sip-signed-label:hover .sip-signed-box.sip-signed-no{background:#f0fdf4;border-color:#10b981}.sip-row-unsigned td{opacity:.55}.sip-row-unsigned .sip-col-signed{opacity:1}.sip-col-sticky-right{background:#fff;box-shadow:-2px 0 5px #00000014;min-width:150px;position:-webkit-sticky;position:sticky;right:0;z-index:2}.sip-table thead .sip-col-sticky-right{background:#f0f2f5;z-index:3}.sip-table tfoot .sip-col-sticky-right{background:#f9fafb;z-index:3}.sip-table tr:hover .sip-col-signed,.sip-table tr:hover .sip-col-sticky-left,.sip-table tr:hover .sip-col-sticky-refno,.sip-table tr:hover .sip-col-sticky-right{background:#fafafa}.sip-claim-cell{min-width:110px;white-space:nowrap}.sip-claim-amt{display:block;font-weight:600}.sip-claim-date{color:#9ca3af;display:block;font-size:11px;margin-top:2px}.sip-contract-name{color:#1a2541;display:block;font-weight:600;overflow-wrap:break-word;white-space:normal;word-break:break-word}.sip-last-claim{color:#9ca3af;display:block;font-size:11px;margin-top:2px}.sip-ref{color:#1a2541;font-family:monospace;font-size:13px;font-weight:600}.sip-payer{color:#374151;font-size:13px;font-weight:500;max-width:120px}.sip-type-badge{border:1px solid #0000;border-radius:10px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;white-space:nowrap}.sip-type-mc{background:#bbf7d0;border-color:#4ade80;color:#14532d}.sip-type-vo{background:#bfdbfe;border-color:#60a5fa;color:#1e3a8a}.sip-type-sc{background:#fecaca;border-color:#f87171;color:#7f1d1d}.sip-pct-wrap{align-items:flex-end;display:flex;flex-direction:column;gap:3px;min-width:60px}.sip-pct-bar{background:#e5e7eb;border-radius:3px;height:5px;overflow:hidden;width:60px}.sip-pct-fill{background:#3b82f6;border-radius:3px;height:100%;transition:width .3s}.sip-pct-text{color:#6b7280;font-size:11px}.sip-file-link{color:#3b82f6;font-size:12px;text-decoration:none;white-space:nowrap}.sip-file-link:hover{text-decoration:underline}.sip-no-file{color:#d1d5db}.sip-actions{align-items:center;display:flex;gap:6px}.sip-act-btn{align-items:center;border:1.5px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:5px 10px;transition:background .15s,border-color .15s;white-space:nowrap}.sip-act-claim{background:#ecfdf5;border-color:#a7f3d0;color:#10b981}.sip-act-claim:hover{background:#d1fae5}.sip-act-edit{background:#eff6ff;border-color:#bfdbfe;color:#3b82f6}.sip-act-edit:hover{background:#dbeafe}.sip-act-del{background:#fff1f2;border-color:#fecaca;color:#ef4444}.sip-act-del:hover{background:#fee2e2}.sip-tfoot-row td{background:#f9fafb;border-top:2px solid #e5e7eb;font-size:13px;padding:10px 14px}.sip-empty{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:14px;padding:60px 24px;text-align:center}.sip-empty p{font-size:14px;margin:0}.sip-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.sip-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:560px;overflow-y:auto;width:100%}.sip-modal-sm{max-width:420px}.sip-modal-header{align-items:flex-start;display:flex;justify-content:space-between;padding:20px 24px 0}.sip-modal-header h2{color:#1a2541;font-size:17px;font-weight:700;margin:0}.sip-modal-close{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:22px;line-height:1;margin-left:12px;padding:0}.sip-modal-close:hover{color:#374151}.sip-modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;padding:20px 24px}.sip-modal-footer{border-top:1px solid #f3f4f6;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px}.sip-modal-cancel{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px}.sip-modal-cancel:hover{background:#f9fafb}.sip-modal-save{background:#1a2541;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px;transition:background .2s}.sip-modal-save:hover:not(:disabled){background:#263354}.sip-modal-save:disabled{cursor:not-allowed;opacity:.6}.sip-form-group{display:flex;flex-direction:column;gap:6px}.sip-form-group label{color:#374151;font-size:13px;font-weight:600}.sip-form-group input,.sip-form-group select,.sip-form-group textarea{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#1a2541;font-family:inherit;font-size:14px;outline:none;padding:9px 12px;transition:border-color .2s}.sip-form-group input:focus,.sip-form-group select:focus,.sip-form-group textarea:focus{border-color:#1a2541}.sip-form-group textarea{resize:vertical}.sip-form-row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.sip-tag-group{display:flex;flex-wrap:wrap;gap:8px}.sip-tag{background:#fff;border:1.5px solid #d1d5db;border-radius:20px;color:#374151;cursor:pointer;font-size:13px;padding:6px 14px;transition:all .15s}.sip-tag:hover{border-color:#1a2541;color:#1a2541}.sip-tag-active,.sip-tag-active:hover{background:#1a2541;border-color:#1a2541;color:#fff!important}.sip-tag-type-mc.sip-tag-active,.sip-tag-type-mc.sip-tag-active:hover{background:#bbf7d0;border-color:#4ade80;color:#14532d!important}.sip-tag-type-vo.sip-tag-active,.sip-tag-type-vo.sip-tag-active:hover{background:#bfdbfe;border-color:#60a5fa;color:#1e3a8a!important}.sip-tag-type-sc.sip-tag-active,.sip-tag-type-sc.sip-tag-active:hover{background:#fecaca;border-color:#f87171;color:#7f1d1d!important}.sip-input-prefix{align-items:center;border:1.5px solid #e5e7eb;border-radius:8px;display:flex;overflow:hidden;transition:border-color .2s}.sip-input-prefix:focus-within{border-color:#1a2541}.sip-input-prefix span{background:#f9fafb;border-right:1px solid #e5e7eb;color:#6b7280;font-size:14px;padding:9px 10px 9px 12px;-webkit-user-select:none;user-select:none}.sip-input-prefix input{border:none;border-radius:0;flex:1 1;min-width:0;padding:9px 12px}.sip-input-prefix input:focus{border-color:#0000;outline:none}.sip-input-readonly{background:#f9fafb}.sip-input-readonly input{background:#f9fafb;color:#6b7280}.sip-file-upload{align-items:center;display:flex;gap:12px}.sip-file-btn{align-items:center;background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:background .2s}.sip-file-btn:hover{background:#f3f4f6}.sip-file-name{color:#6b7280;font-size:12px}.sip-existing-claims{background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px 14px}.sip-existing-title{color:#6b7280;font-size:12px;font-weight:700;letter-spacing:.04em;margin:0 0 6px;text-transform:uppercase}.sip-existing-row{color:#374151;display:flex;font-size:13px;justify-content:space-between}.sip-inv-table{min-width:900px}.sip-inv-table td,.sip-inv-table th{white-space:nowrap}.sip-inv-no{color:#1f2937;font-weight:600}.sip-inv-status{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px}.sip-inv-status-draft{background:#f3f4f6;color:#6b7280}.sip-inv-status-issued{background:#dbeafe;color:#1d4ed8}.sip-inv-status-paid{background:#d1fae5;color:#065f46}.sip-inv-status-cancelled{background:#fee2e2;color:#991b1b}.sip-inv-row-clickable{cursor:pointer;transition:background .15s}.sip-inv-row-clickable:hover{background:#f0f7ff!important}.sip-modal-hint{color:#6b7280;font-size:13px;line-height:1.5;margin:0 24px 4px}.sip-inv-tag-draft{background:#f9fafb;border:1.5px solid #d1d5db;color:#6b7280}.sip-inv-tag-issued{background:#eff6ff;border:1.5px solid #93c5fd;color:#1d4ed8}.sip-inv-tag-paid{background:#ecfdf5;border:1.5px solid #6ee7b7;color:#065f46}.sip-inv-tag-cancelled{background:#fef2f2;border:1.5px solid #fca5a5;color:#991b1b}.sip-inv-tag-draft.sip-tag-active{background:#6b7280;border-color:#6b7280;color:#fff}.sip-inv-tag-issued.sip-tag-active{background:#2563eb;border-color:#2563eb;color:#fff}.sip-inv-tag-paid.sip-tag-active{background:#10b981;border-color:#10b981;color:#fff}.sip-inv-tag-cancelled.sip-tag-active{background:#ef4444;border-color:#ef4444;color:#fff}.sip-inv-days{color:#6b7280;font-size:13px;font-weight:500}.sip-inv-days-overdue{color:#ef4444;font-weight:700}.sip-inv-followup-note{color:#6b7280;font-size:12px;margin-top:2px;max-width:220px;white-space:normal}.sip-btn-ghost{align-items:center;background:#0000;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 14px;transition:background .15s,border-color .15s}.sip-btn-ghost:hover{background:#f3f4f6;border-color:#9ca3af}@media (max-width:1100px){.sip-stat-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.sip-container{padding:16px}.sip-stat-row{grid-template-columns:1fr 1fr}.sip-page-header{flex-direction:column}.sip-form-row{grid-template-columns:1fr}.sip-table{font-size:12px}}.inv-page{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 20px #0000001f;box-sizing:border-box;color:#111;font-family:Times New Roman,Times,serif;font-size:13px;min-height:1000px;padding:36px 44px 28px;width:760px}.inv-letterhead{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:4px}.inv-logo-block{align-items:center;display:flex;gap:12px}.inv-logo-graphic{align-items:center;border:2.5px solid #1a3870;border-radius:50%;color:#1a3870;display:flex;flex-shrink:0;font-size:14px;font-style:italic;font-weight:900;height:56px;justify-content:center;width:56px}.inv-logo-sg{font-family:Georgia,serif}.inv-logo-text{line-height:1.2}.inv-company-name{color:#1a3870;font-family:Georgia,serif;font-size:32px;font-weight:900;letter-spacing:.06em}.inv-company-sub{color:#1a3870;font-family:Arial,sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.05em}.inv-bizsafe{color:#222;font-family:Arial,sans-serif;font-size:14px;font-style:italic;font-weight:900;letter-spacing:-.02em}.inv-bizsafe-biz{color:#555;font-weight:400}.inv-bizsafe-safe{color:#111}.inv-bizsafe-3{font-size:10px;vertical-align:super}.inv-letterhead-rule-blue{background:#1a3870;height:2.5px;margin:6px 0 2px}.inv-letterhead-rule-red{background:#c0392b;height:1.5px;margin-bottom:6px}.inv-address-bar{color:#333;font-family:Arial,sans-serif;font-size:10.5px;line-height:1.5;margin-bottom:14px}.inv-address-bar p{margin:0}.inv-header-info{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:16px}.inv-bill-to{flex:1 1;min-width:0}.inv-bill-to-name{font-size:13.5px;font-weight:700;margin:0 0 2px}.inv-bill-to-addr{font-size:12.5px;line-height:1.5;margin:0 0 2px}.inv-attn{font-size:12.5px;margin:2px 0 0}.inv-meta{min-width:260px;text-align:right}.inv-meta-row{align-items:baseline;display:flex;font-size:12.5px;gap:10px;justify-content:flex-end;margin-bottom:3px}.inv-meta-gst{color:#444;font-size:11.5px;margin-bottom:6px}.inv-meta-label{color:#333;white-space:nowrap}.inv-meta-val{color:#111;min-width:120px;text-align:right}.inv-meta-invno{color:#111;font-size:15px;font-weight:900}.inv-meta-ref{font-style:italic;font-weight:700}.inv-table{border-collapse:collapse;font-size:12.5px;margin-bottom:0;width:100%}.inv-col-item{width:44px}.inv-col-qty{width:70px}.inv-col-amt{width:88px}.inv-th-row{border-bottom:1.5px solid #111;border-top:1.5px solid #111}.inv-th{border-right:1px solid #555;font-size:12.5px;font-weight:700;padding:6px 8px;text-align:left}.inv-th:last-child{border-right:none}.inv-th-center{text-align:center}.inv-th-right{text-align:right}.inv-td{border-bottom:1px solid #ddd;border-right:1px solid #aaa;padding:5px 8px;vertical-align:top}.inv-td:last-child{border-right:none}.inv-td-item{vertical-align:middle}.inv-td-center,.inv-td-item{text-align:center}.inv-td-right{text-align:right;white-space:nowrap}.inv-td-neg{color:#c0392b}.inv-td-indent{padding-left:24px}.inv-td-italic,.inv-td-prevclaim{color:#444;font-style:italic}.inv-re-header{border-right:none!important;font-size:13px;font-weight:700;padding-bottom:6px;padding-top:10px;text-decoration:underline}.inv-spacer td{border-bottom:none;height:60px}.inv-spacer-sm td{border-bottom:none;height:12px}.inv-bank-section{border-right:none!important;font-style:italic;padding-top:10px}.inv-bank-header{font-size:12px;font-style:normal;font-weight:700;margin:0 0 2px;text-decoration:underline}.inv-bank-line,.inv-bank-paynow{font-size:11.5px;line-height:1.6;margin:0}.inv-bank-paynow{color:#2563eb}.inv-total-label{border-right:1px solid #aaa;font-size:12.5px;padding-right:10px;text-align:right}.inv-grand-row td{border-bottom:1.5px solid #111;border-top:1.5px solid #111}.inv-grand-label{border-right:1px solid #555;font-size:13px;font-weight:700;padding-right:10px;text-align:right}.inv-grand-amt{background:#f9f9f9;font-size:13.5px;font-weight:900;text-align:right}.inv-words{border-right:none!important;color:#333;font-size:11.5px;padding-top:8px}.inv-signature-block{align-items:flex-end;display:flex;flex-direction:column;gap:6px;margin-top:20px}.inv-sig-for{color:#111;font-size:12px;font-weight:600;text-align:right}.inv-sig-line-wrap{align-items:center;display:flex;flex-direction:column;min-width:180px}.inv-sig-line{background:#111;height:1px;margin-bottom:4px;margin-top:36px;width:180px}.inv-sig-name{font-size:12px;font-weight:700;letter-spacing:.04em}.inv-footer{border-top:1px solid #e5e7eb;color:#666;font-size:11px;margin-top:14px;padding-top:8px;text-align:center}.ie-page{background:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:100vh;overflow:hidden}.ie-loading,.ie-page{display:flex;flex-direction:column}.ie-loading{align-items:center;color:#6b7280;gap:16px;height:100%;justify-content:center}.ie-spinner{animation:ie-spin .7s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#2563eb;height:36px;width:36px}@keyframes ie-spin{to{transform:rotate(1turn)}}.ie-topbar{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 4px #0000000f;flex-shrink:0;gap:12px;justify-content:space-between;padding:10px 20px;z-index:10}.ie-topbar,.ie-topbar-left{align-items:center;display:flex}.ie-topbar-left{gap:14px;min-width:0}.ie-topbar-center,.ie-topbar-right{align-items:center;display:flex}.ie-topbar-right{flex-shrink:0;gap:8px}.ie-back-btn{align-items:center;background:linear-gradient(135deg,#1e3a5f,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #2563eb4d;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:7px 14px;transition:opacity .15s,transform .15s;white-space:nowrap}.ie-back-btn:hover{opacity:.88;transform:translateX(-2px)}.ie-title-block{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.ie-title{color:#9ca3af;font-size:14px;font-weight:500}.ie-invoice-no{color:#111827;font-size:16px;font-weight:700}.ie-status-dot{align-items:center;border-radius:20px;color:#fff;display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.03em;padding:3px 10px}.ie-unsaved-dot{animation:ie-dot-pulse 1.8s ease-in-out infinite;background:#f59e0b;border-radius:50%;display:inline-block;height:8px;margin-left:4px;vertical-align:middle;width:8px}@keyframes ie-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.ie-view-toggle{background:#f3f4f6;border-radius:8px;display:flex;gap:2px;padding:3px}.ie-view-btn{background:#0000;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:13px;font-weight:500;padding:5px 14px;transition:all .15s}.ie-view-btn.active{background:#fff;box-shadow:0 1px 4px #0000001a;color:#111827;font-weight:600}.ie-btn{align-items:center;border:1.5px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:7px 14px;transition:all .15s}.ie-btn-ghost{background:#f9fafb;border-color:#e5e7eb;color:#374151}.ie-btn-ghost:hover{background:#f0f2f5;border-color:#d1d5db}.ie-btn-blue{background:#2563eb;color:#fff}.ie-btn-blue:hover{background:#1d4ed8}.ie-btn-green{background:#10b981;color:#fff}.ie-btn-green:hover{background:#059669}.ie-btn-save-clean{background:#111827;border:none!important;color:#fff;font-weight:600}.ie-btn-save-clean:hover{background:#374151}.ie-btn-save-dirty{animation:ie-save-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#16a34a,#22c55e);border:none!important;box-shadow:0 0 0 0 #22c55e80;color:#fff;font-weight:700}.ie-btn-save-dirty:hover{animation:none;background:linear-gradient(135deg,#15803d,#16a34a);box-shadow:0 4px 14px #16a34a66}.ie-btn-save-clean:disabled,.ie-btn-save-dirty:disabled{animation:none;cursor:not-allowed;opacity:.6}@keyframes ie-save-pulse{0%,to{box-shadow:0 0 0 0 #22c55e80}50%{box-shadow:0 0 0 7px #22c55e00}}.ie-body{flex:1 1;position:relative}.ie-body,.ie-left-panel{display:flex;overflow:hidden}.ie-left-panel{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;flex-shrink:0}.ie-left-scroll{flex:1 1;overflow-y:auto;padding:20px 24px 40px}.ie-section{border-bottom:1px solid #f0f2f5;margin-bottom:28px;padding-bottom:24px}.ie-section:last-child{border-bottom:none}.ie-section-title{color:#6b7280;font-size:13px;font-weight:700;letter-spacing:.06em;margin:0 0 16px;text-transform:uppercase}.ie-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.ie-section-header .ie-section-title{margin-bottom:0}.ie-divider{background:#f0f2f5;height:1px;margin:16px 0}.ie-field{margin-bottom:12px}.ie-field label{color:#6b7280;display:block;font-size:12px;font-weight:600;letter-spacing:.02em;margin-bottom:5px}.ie-field input,.ie-field select,.ie-field textarea{background:#fff;border:1.5px solid #e5e7eb;border-radius:7px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:13px;padding:8px 11px;transition:border-color .15s;width:100%}.ie-field input:focus,.ie-field select:focus,.ie-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14;outline:none}.ie-field textarea{resize:vertical}.ie-field-hint{color:#9ca3af;font-size:10px;font-style:italic;font-weight:400}.ie-readonly-input{background:#f9fafb!important;color:#6b7280!important;cursor:default}.ie-grid-2{grid-gap:0 16px;display:grid;gap:0 16px;grid-template-columns:1fr 1fr}.ie-status-tags{display:flex;flex-wrap:wrap;gap:6px}.ie-status-tag{border:1.5px solid #0000;border-radius:20px;cursor:pointer;font-size:12px;font-weight:600;padding:5px 13px;transition:all .15s}.ie-status-draft{background:#f3f4f6;border-color:#d1d5db;color:#6b7280}.ie-status-issued{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.ie-status-paid{background:#ecfdf5;border-color:#6ee7b7;color:#065f46}.ie-status-cancelled{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.ie-status-draft.active{background:#6b7280;border-color:#6b7280;color:#fff}.ie-status-issued.active{background:#2563eb;border-color:#2563eb;color:#fff}.ie-status-paid.active{background:#10b981;border-color:#10b981;color:#fff}.ie-status-cancelled.active{background:#ef4444;border-color:#ef4444;color:#fff}.ie-add-btn{background:linear-gradient(135deg,#1e3a5f,#2563eb);border:none;border-radius:7px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:opacity .15s}.ie-add-btn:hover{opacity:.88}.ie-add-menu-wrap{position:relative}.ie-add-menu{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:100}.ie-add-menu-item{align-items:center;background:#0000;border:none;color:#374151;cursor:pointer;display:flex;font-family:inherit;font-size:13px;gap:10px;padding:11px 16px;text-align:left;transition:background .12s;width:100%}.ie-add-menu-item:hover{background:#f0f7ff}.ie-add-menu-icon{font-size:15px}.ie-quote-submenu{background:#f9fafb;border-top:1px solid #e5e7eb;max-height:200px;overflow-y:auto}.ie-quote-submenu-empty{color:#9ca3af;font-size:12px;padding:12px 16px}.ie-quote-submenu-item{align-items:flex-start;background:#0000;border:none;border-bottom:1px solid #e5e7eb;cursor:pointer;display:flex;flex-direction:column;padding:9px 20px;text-align:left;transition:background .12s;width:100%}.ie-quote-submenu-item:last-child{border-bottom:none}.ie-quote-submenu-item:hover{background:#eff6ff}.ie-quote-ref{color:#6b7280;font-size:11px;font-weight:600}.ie-quote-name{color:#111827;font-size:13px}.ie-empty-content{background:#f9fafb;border:2px dashed #e5e7eb;border-radius:10px;color:#9ca3af;padding:32px 16px;text-align:center}.ie-empty-hint{font-size:12px;margin-top:6px}.ie-line-items{display:flex;flex-direction:column;gap:10px}.ie-item{background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;overflow:hidden}.ie-item-quotation{border-color:#93c5fd}.ie-item-adjustment{border-color:#fca5a5}.ie-item-prevclaim{border-color:#d8b4fe}.ie-item-custom{border-color:#d1d5db}.ie-item-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 12px}.ie-item-quotation .ie-item-header{background:#eff6ff;border-color:#bfdbfe}.ie-item-adjustment .ie-item-header{background:#fff7f7;border-color:#fecaca}.ie-item-prevclaim .ie-item-header{background:#faf5ff;border-color:#e9d5ff}.ie-item-type-tag{border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 9px}.ie-tag-quotation{background:#dbeafe;color:#1d4ed8}.ie-tag-adjustment{background:#fee2e2;color:#991b1b}.ie-tag-prevclaim{background:#f3e8ff;color:#7e22ce}.ie-tag-custom{background:#f3f4f6;color:#6b7280}.ie-item-controls{align-items:center;display:flex;gap:4px}.ie-item-ctrl{background:#fff;border:1px solid #e5e7eb;border-radius:5px;color:#6b7280;cursor:pointer;font-size:11px;padding:3px 7px;transition:all .12s}.ie-item-ctrl:hover:not(:disabled){background:#f0f2f5;color:#111827}.ie-item-ctrl:disabled{cursor:default;opacity:.3}.ie-item-delete{border-color:#fca5a5;color:#ef4444}.ie-item-delete:hover{background:#fee2e2!important}.ie-item-expand{font-size:10px}.ie-item-body{padding:12px}.ie-item-row{align-items:flex-end;display:flex;gap:10px}.ie-field-grow{flex:1 1;min-width:0}.ie-field-sm{flex-shrink:0;width:90px}.ie-field-xs{flex-shrink:0;width:110px}.ie-field-amt{flex-shrink:0;width:130px}.ie-subitem{align-items:center;background:#fafafa;border:1px solid #e5e7eb;border-radius:7px;display:flex;gap:6px;margin-top:8px;padding:8px 10px}.ie-subitem-type{background:#fff;border:1.5px solid #e5e7eb;border-radius:6px;color:#374151;flex-shrink:0;font-size:12px;padding:6px 8px;width:90px}.ie-subitem-desc{flex:1 1;min-width:0}.ie-subitem-amt,.ie-subitem-desc{border:1.5px solid #e5e7eb;border-radius:6px;font-family:inherit;font-size:12px;padding:6px 9px}.ie-subitem-amt{flex-shrink:0;width:110px}.ie-subitem-del{background:#fff;border:1px solid #fca5a5;border-radius:5px;color:#ef4444;cursor:pointer;flex-shrink:0;font-size:11px;padding:5px 7px;transition:background .12s}.ie-subitem-del:hover{background:#fee2e2}.ie-subitem-amt:focus,.ie-subitem-desc:focus,.ie-subitem-type:focus{border-color:#2563eb;outline:none}.ie-add-subitem-btn{background:#f0f7ff;border:1.5px dashed #93c5fd;border-radius:6px;color:#2563eb;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;margin-top:8px;padding:5px 12px;transition:background .12s}.ie-add-subitem-btn:hover{background:#dbeafe}.ie-totals-table{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.ie-total-row{align-items:center;border-bottom:1px solid #e5e7eb;color:#374151;display:flex;font-size:13px;justify-content:space-between;padding:10px 16px}.ie-total-row:last-of-type{border-bottom:none}.ie-total-deduct{color:#ef4444}.ie-total-this{color:#2563eb;font-weight:600}.ie-total-grand{background:#f0f7ff;color:#111827;font-size:15px;font-weight:700}.ie-total-words{border-top:1px solid #e5e7eb;color:#6b7280;font-size:11.5px;font-style:italic;line-height:1.4;padding:10px 16px}.ie-bank-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;color:#374151;font-size:12.5px;line-height:1.8;padding:14px 16px}.ie-bank-header{color:#111827;font-weight:700;margin-bottom:4px;text-decoration:underline}.ie-bank-readonly-note{color:#9ca3af;font-size:11px;font-style:italic;margin-top:8px}.ie-drag-handle{align-items:center;background:#f0f2f5;border-left:1px solid #e5e7eb;border-right:1px solid #e5e7eb;cursor:col-resize;display:flex;flex-shrink:0;justify-content:center;transition:background .15s;width:8px}.ie-drag-handle:hover{background:#e0e7ff}.ie-drag-dots{border-left:1px dotted #9ca3af;border-right:1px dotted #9ca3af;height:30px;width:3px}.ie-right-panel{background:#e8eaed;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.ie-preview-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;color:#6b7280;display:flex;flex-shrink:0;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.05em;padding:8px 16px;text-transform:uppercase}.ie-preview-scroll{align-items:center;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:20px}@media (max-width:900px){.ie-grid-2{grid-template-columns:1fr}.ie-topbar{gap:8px;padding:8px 14px}.ie-topbar-center{display:none}}.profile-page{background:#f5f7fa;flex:1 1;overflow-y:auto;padding:28px}.profile-topbar{align-items:center;display:flex;gap:12px;margin-bottom:16px}.profile-back-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:10px 16px}.profile-back-btn:hover{box-shadow:0 6px 24px #667eea73;transform:translateY(-1px)}.profile-title{color:#111827;font-size:28px;font-weight:800;margin:0}.profile-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 2px 8px #00000014;max-width:720px;padding:20px}.profile-grid{grid-gap:12px 16px;align-items:center;display:grid;gap:12px 16px;grid-template-columns:180px 1fr}.profile-label{color:#6b7280;font-size:13px;font-weight:700}.profile-value{color:#111827;font-size:14px;font-weight:600}.profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.profile-action-btn{background:#fff;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-weight:700;padding:10px 14px}.profile-action-btn.primary{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff}.profile-action-btn:hover{background:#1118270f}.profile-action-btn.primary:hover{background:linear-gradient(135deg,#12c58b,#06b276)}.profile-muted{color:#6b7280;font-weight:600}.profile-password-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin-top:14px;padding:14px}@media (max-width:640px){.profile-grid{grid-template-columns:1fr}}.claims-container{background-color:#f5f7fa;box-sizing:border-box;min-height:100vh;padding:32px;width:100%}.claims-page-title{color:#1a1a1a;font-size:36px;font-weight:700;letter-spacing:-.025em;margin:0 0 32px}.claims-header{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:32px}.month-navigation{gap:12px;margin-bottom:24px}.month-navigation,.nav-btn{align-items:center;display:flex}.nav-btn{background-color:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:24px;font-weight:600;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.nav-btn:hover{background-color:#3b82f6;color:#fff;transform:scale(1.05)}.nav-btn:active{transform:scale(.95)}.month-selector{flex:1 1;max-width:400px;position:relative}.month-display-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 6px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;justify-content:space-between;padding:10px 20px;transition:all .2s ease;width:100%}.month-display-btn:hover{box-shadow:0 6px 12px #3b82f64d;transform:translateY(-2px)}.month-text{flex:1 1;text-align:left}.dropdown-icon{font-size:14px;margin-left:8px;transition:transform .2s ease}.month-picker-dropdown{animation:slideDown .2s ease;background:#fff;border-radius:12px;box-shadow:0 10px 25px #00000026;display:flex;flex-direction:column;gap:16px;left:0;margin-top:8px;padding:20px;position:absolute;right:0;top:100%;z-index:100}.month-picker-header{display:flex;flex-direction:column;gap:8px}.month-picker-header label{color:#374151;font-size:14px;font-weight:600}.month-select,.year-select{background-color:#fff;border:2px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.month-select:focus,.year-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.today-btn{background-color:#10b981;border:none;color:#fff;padding:10px 20px}.today-btn:hover{background-color:#059669;box-shadow:0 4px 6px #10b98133;transform:translateY(-2px)}.today-btn:active{transform:translateY(0)}.filter-controls{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px}.search-container{margin-bottom:0}.search-input{line-height:1.5;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;vertical-align:middle}.search-input:focus{outline:none}.filter-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.filter-select{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:16px;height:48px;line-height:1.5;min-width:140px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;vertical-align:middle}.filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.claims-stats{align-items:center;display:flex;gap:24px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-value{font-size:24px}.stat-divider{background-color:#e5e7eb;height:40px;width:1px}.add-claim-container{flex-wrap:wrap;justify-content:space-between;margin-bottom:24px}.action-buttons,.add-claim-container{align-items:center;display:flex;gap:16px}.export-buttons{display:flex;gap:8px}.export-btn{align-items:center;background-color:#f8fafc;border:1px solid #d1d5db;border-radius:6px;color:#374151;display:flex;font-weight:500;gap:6px;padding:8px 12px}.export-btn:hover{background-color:#e5e7eb;border-color:#9ca3af}.csv-btn:hover{background-color:#dbeafe;border-color:#3b82f6;color:#1e40af}.json-btn:hover{background-color:#d1fae5;border-color:#10b981;color:#065f46}.add-claim-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;transition:background-color .2s ease}.add-claim-btn:hover{background-color:#2563eb}.claims-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:auto}.claims-table{border-collapse:collapse;min-width:800px;table-layout:fixed;width:100%}.claims-table.resizing{-webkit-user-select:none;user-select:none}.claims-table.resizing *{cursor:col-resize!important}.claims-table th{background-color:#f8fafc;border-bottom:2px solid #e5e7eb;color:#374151;font-size:14px;font-weight:600;letter-spacing:.025em;padding:16px 20px;position:relative;text-align:left}.sortable-header{cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.sortable-header:hover{background-color:#f0f4f8}.sortable-header:active{background-color:#e5e9f0}.header-content{align-items:center;display:flex;gap:8px;justify-content:space-between}.sort-indicator{color:#3b82f6;font-size:16px;font-weight:700;line-height:1}.resizable-col{min-width:100px;position:relative;-webkit-user-select:none;user-select:none}.resize-handle{background-color:initial;bottom:0;position:absolute;right:0;top:0;transition:background-color .2s ease;width:4px;z-index:10}.resize-handle:hover{background-color:#3b82f6}.resize-handle:active{background-color:#1d4ed8}.claims-table td{border-bottom:1px solid #f3f4f6;color:#1f2937;padding:16px 20px}.claims-table td,.text-wrap{word-wrap:break-word;overflow-wrap:break-word}.text-wrap{max-width:200px;white-space:normal}.claims-table tr:hover{background-color:#f9fafb}.clickable-row{cursor:pointer;transition:background-color .2s ease}.clickable-row:hover{background-color:#e5f3ff!important}.image-cell{width:80px}.claim-image{object-fit:cover}.claim-image,.no-image{border:1px solid #e5e7eb;border-radius:8px;height:60px;width:60px}.no-image{align-items:center;background-color:#f3f4f6;color:#6b7280;display:flex;font-size:12px;justify-content:center}.amount-cell{color:#059669;font-weight:600}.no-claims{color:#6b7280;font-style:italic;padding:48px 20px;text-align:center}.delete-btn{background-color:#ef4444;transition:background-color .2s ease}.delete-btn:hover{background-color:#dc2626}.modal-overlay{padding:10px}.modal-content{max-height:95vh;max-width:1100px;min-width:900px}.close-btn{font-size:24px}.form-group label{color:#1a1a1a;font-size:16px;font-weight:700;letter-spacing:-.01em;margin-bottom:10px}.form-group label[for]:after{content:""}.form-group input:required+label:after,.form-group label:has(+* input:required):after,.form-group label:has(+input:required):after{color:#ef4444;content:" *";font-weight:700;margin-left:2px}.form-group input{border:1px solid #d1d5db}.form-group input:focus,.form-group select:focus{box-shadow:0 0 0 3px #3b82f61a}.project-site-select{background-color:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;cursor:pointer;font-family:inherit;font-size:16px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.project-site-select option{padding:8px}.no-projects-message{background-color:#fef3c7;border:2px solid #fbbf24;border-radius:8px;padding:20px;text-align:center}.no-projects-message p{color:#92400e;font-size:14px;font-weight:600;margin:0 0 8px}.no-projects-message small{color:#78350f;font-size:12px}.image-upload-container{background-color:initial;margin-bottom:0}.image-upload-btn{background-color:initial!important;border:2px dashed #d1d5db;border-radius:8px;box-sizing:border-box;cursor:pointer;display:block;max-width:100%;overflow:hidden;padding:24px;text-align:center;transition:border-color .2s ease,background-color .2s ease;width:100%}.image-upload-btn:hover{background-color:initial!important;border-color:#3b82f6}.upload-placeholder{align-items:center;display:flex;flex-direction:column;gap:8px}.upload-placeholder span{font-size:32px}.upload-placeholder p{color:#6b7280;font-size:14px;margin:0}.preview-container{border-radius:8px;box-sizing:border-box;height:400px;max-width:100%;overflow:hidden;position:relative}.main-preview,.preview-container{background-color:initial;width:100%}.main-preview{height:100%;object-fit:contain}.preview-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.preview-container:hover .preview-overlay{opacity:1}.preview-overlay span{font-size:32px;margin-bottom:8px}.preview-overlay p{color:#fff;font-size:14px;font-weight:500;margin:0}.image-preview{max-height:200px;object-fit:cover;width:100%}.cancel-btn{background:none;border:1px solid #d1d5db}.cancel-btn,.save-btn{transition:background-color .2s ease}.save-btn{background-color:#3b82f6}.save-btn:hover{background-color:#2563eb}.modal-footer .delete-variant{background-color:#ef4444!important;border:none!important;border-radius:8px!important;color:#fff!important;cursor:pointer!important;font-size:16px!important;font-weight:600!important;padding:12px 24px!important;transition:background-color .2s ease!important}.modal-footer .delete-variant:hover{background-color:#dc2626!important}.amount-input-container{align-items:center;display:flex;gap:8px}.currency-selector{position:relative}.currency-select{background-color:#fff;border-radius:8px;font-weight:600;padding:12px 8px;text-align:center;text-align-last:center;transition:border-color .2s ease,box-shadow .2s ease;width:70px}.currency-select:focus{box-shadow:0 0 0 3px #3b82f61a;outline:none}.amount-input{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-size:16px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease}.amount-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.image-carousel{background-color:initial;margin-top:16px;padding:0}.carousel-container{background-color:initial;max-width:100%;overflow-x:auto;padding-bottom:8px}.carousel-track{background-color:initial;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}.carousel-item{border:2px solid #e5e7eb;border-radius:6px;cursor:move;flex-shrink:0;height:60px;overflow:hidden;position:relative;transition:transform .2s ease,border-color .2s ease;width:60px}.carousel-item:hover{border-color:#3b82f6;transform:translateY(-2px)}.carousel-item.drag-over{background-color:#3b82f61a;border-color:#3b82f6}.carousel-item img{height:100%;object-fit:cover;pointer-events:none;width:100%}.pdf-preview{align-items:center;background:#f3f4f6;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;padding:12px;width:100%}.pdf-icon{font-size:48px;margin-bottom:8px}.pdf-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:11px;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;word-break:break-word}.remove-image-btn{background-color:#ef4444;font-size:12px;font-weight:700;height:18px;transition:background-color .2s ease;width:18px;z-index:2}.remove-image-btn:hover{background-color:#dc2626}.view-image-btn{align-items:center;background-color:#10b981;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:10px;height:18px;justify-content:center;position:absolute;right:24px;top:4px;transition:background-color .2s ease;width:18px;z-index:3}.view-image-btn:hover{background-color:#059669}.main-view-image-btn{align-items:center;background-color:#10b981;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;position:absolute;right:8px;top:8px;transition:background-color .2s ease;width:24px;z-index:3}.main-view-image-btn:hover{background-color:#059669}.image-viewer-overlay{background-color:#000000e6;padding:2.5vh;z-index:2000}.image-viewer-content{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;max-width:95vw}.image-viewer-header{padding:12px}.zoom-controls-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #0000001a;border-radius:12px;box-shadow:0 4px 12px #00000026;display:flex;gap:8px;left:20px;padding:10px 14px;position:absolute;top:20px;z-index:15}.zoom-btn{align-items:center;background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:28px;justify-content:center;transition:background-color .2s ease;width:28px}.zoom-btn:hover{background:#2563eb}.zoom-btn.reset-btn{background:#6b7280}.zoom-btn.reset-btn:hover{background:#4b5563}.zoom-level{color:#374151;font-size:14px;font-weight:600;min-width:45px;text-align:center}.close-viewer-btn{background:#ef4444;box-shadow:0 2px 4px #0000001a;font-size:16px;height:28px;transition:background-color .2s ease;width:28px}.close-viewer-btn:hover{background:#dc2626}.image-viewer-body{align-items:center;background:#f9fafb;box-sizing:border-box;height:100%;justify-content:center;padding:50px 30px 30px;width:100%}.full-size-image{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;max-height:100%;max-width:100%;object-fit:contain}.pdf-viewer{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.pdf-iframe{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;height:80vh;width:100%}.drag-handle{background-color:#0009;border-radius:4px;bottom:4px;color:#fff;cursor:move;font-size:10px;left:4px;opacity:0;padding:2px 4px;position:absolute;transition:opacity .2s ease}.carousel-item:hover .drag-handle{opacity:1}.image-preview-container{display:inline-block;position:relative}.image-count-badge{align-items:center;background-color:#3b82f6;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;width:20px}@media (max-width:768px){.claims-container{padding:16px}.claims-header{padding:20px}.claims-header h1{font-size:24px}.month-navigation{flex-wrap:wrap;gap:8px}.month-selector{flex:1 1 100%;max-width:100%;order:-1}.month-display-btn{font-size:18px;padding:12px 16px}.nav-btn{height:50px;width:50px}.today-btn{flex:1 1}.claims-stats{align-items:flex-start;flex-direction:column;gap:16px}.stat-divider{height:1px;width:100%}.filter-controls{margin-top:16px;padding-top:16px}.filter-group{align-items:stretch;flex-direction:column}.filter-select{min-width:auto;width:100%}.search-input{max-width:100%}.action-buttons,.add-claim-container{align-items:stretch;flex-direction:column}.export-buttons{justify-content:center}.claims-table{font-size:14px}.claims-table td,.claims-table th{padding:12px 16px}.modal-content{margin:10px;max-width:calc(100vw - 20px)!important;min-width:0!important;min-width:auto!important;width:calc(100vw - 20px)!important}}.category-multi-select{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.category-tag{background-color:#f3f4f6;border:1px solid #0000;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .1s ease}.category-tag[data-category="Food Expense"]{background-color:#fef3c7;border-color:#fde68a;color:#92400e}.category-tag[data-category=Materials]{background-color:#dbeafe;border-color:#93c5fd;color:#1e40af}.category-tag[data-category="Office Supplies"]{background-color:#e9d5ff;border-color:#c4b5fd;color:#6b21a8}.category-tag[data-category=Other]{background-color:#f3f4f6;border-color:#d1d5db;color:#374151}.category-tag[data-category="Project Use"]{background-color:#d1fae5;border-color:#6ee7b7;color:#065f46}.category-tag[data-category=Tools]{background-color:#fed7aa;border-color:#fdba74;color:#9a3412}.category-tag[data-category=Transport]{background-color:#fce7f3;border-color:#f9a8d4;color:#9f1239}.category-tag[data-category=Utilities]{background-color:#cffafe;border-color:#67e8f9;color:#164e63}.category-tag:hover{box-shadow:0 2px 4px #0000001a;opacity:.9}.category-tag.selected{box-shadow:0 2px 6px #00000026;font-weight:600;opacity:1}.category-tags-display{display:flex;flex-wrap:wrap;gap:6px}.category-tag-display{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;color:#1e40af;font-size:12px;font-weight:500;padding:4px 10px}.projects-list-container{background-color:#f5f7fa;min-height:100vh;padding:32px}.projects-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:32px}.add-project-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 6px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:all .2s ease}.add-project-btn:hover{box-shadow:0 6px 12px #3b82f64d;transform:translateY(-2px)}.add-project-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.projects-stats-bar{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.stat-card{transition:transform .2s ease,box-shadow .2s ease}.active-icon{background:linear-gradient(135deg,#3b82f6,#2563eb)}.completed-icon{background:linear-gradient(135deg,#10b981,#059669)}.total-icon{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.stat-label-with-selector{align-items:center;color:#6b7280;display:flex;font-size:14px;font-weight:500;gap:8px}.year-selector{background-color:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;font-weight:600;padding:4px 8px;transition:all .2s ease}.year-selector:hover{background-color:#fffbeb;border-color:#fbbf24}.date-range-selector{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.month-selector{background-color:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:12px;font-weight:600;padding:4px 6px;transition:all .2s ease}.month-selector:hover{background-color:#fffbeb;border-color:#fbbf24}.date-range-separator{color:#6b7280;font-size:12px;font-weight:500;margin:0 2px}.year-selector:focus{border-color:#fbbf24;box-shadow:0 0 0 3px #fbbf241a;outline:none}.sales-card{cursor:default}.kanban-board{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 1fr}.kanban-column{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;min-height:400px;padding:24px;transition:box-shadow .2s ease}.kanban-column.active-column,.kanban-column.completed-column{border:2px solid #0000}.column-header{border-bottom:2px solid #f3f4f6;margin-bottom:24px;padding-bottom:20px}.column-title{align-items:center;display:flex;gap:12px;margin-bottom:8px}.column-icon{font-size:24px}.column-title h2{color:#1a1a1a;flex:1 1;font-size:24px;font-weight:700;margin:0}.column-count{background:#f3f4f6;border-radius:12px;color:#374151;font-size:14px;font-weight:600;padding:4px 12px}.column-header-footer{align-items:center;display:flex;gap:12px;justify-content:space-between}.column-subtitle{color:#6b7280;flex:1 1;font-size:14px;margin:0}.view-all-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:4px;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.view-all-btn:hover{background:#eff6ff;color:#2563eb;transform:translateX(2px)}.view-all-arrow{font-size:14px;transition:transform .2s ease}.view-all-btn:hover .view-all-arrow{transform:translateX(2px)}.projects-grid{display:flex;flex-direction:column}.project-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;cursor:move;padding:12px;position:relative;transition:all .2s ease}.project-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.project-card.completed{background:#f0fdf4;border-color:#d1fae5}.project-card.completed:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126}.project-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.project-status-badge{border-radius:8px;font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.project-status-badge.active{background:#dbeafe;color:#1e40af}.project-status-badge.completed{background:#d1fae5;color:#065f46}.project-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.project-card:hover .project-actions{opacity:1}.project-edit-btn{align-items:center;background:#dbeafe;border:none;border-radius:50%;color:#1e40af;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;transition:all .2s ease;width:24px}.project-edit-btn:hover{background:#1e40af;color:#fff;transform:scale(1.1)}.project-delete-btn{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:24px;justify-content:center;transition:all .2s ease;width:24px}.project-delete-btn:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.project-summary-overlay{background-color:initial;display:block;left:220px;position:fixed;width:calc(100vw - 220px);z-index:1000}.project-summary-modal,.project-summary-overlay{bottom:0;height:100vh;margin:0;padding:0;right:0;top:0}.project-summary-modal{background:#fff;border-radius:0;box-shadow:none;left:0;overflow-y:auto;position:absolute;width:100%}.project-summary-content{display:flex;flex-direction:column;gap:24px;height:calc(100vh - 120px);overflow-y:auto;padding:0 24px 24px}.project-info-section h3{color:#1a1a1a;font-size:32px;font-weight:700;margin:0 0 24px}.project-details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#1a1a1a;font-size:14px;font-weight:500}.detail-value.status-active{color:#1e40af;font-weight:600}.detail-value.status-completed{color:#065f46;font-weight:600}.project-description-section{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.project-description-section h4{color:#1a1a1a;font-size:16px;font-weight:600;margin:0 0 8px}.project-description-section p{color:#6b7280;font-size:14px;line-height:1.5;margin:0}.project-stats-section h4{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 16px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stats-grid .stat-card{align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:16px;min-height:120px;padding:24px;transition:all .2s ease}.stats-grid .stat-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.stats-grid .stat-icon{align-items:center;background:#f0f4f8;border-radius:8px;display:flex;font-size:24px;height:40px;justify-content:center;width:40px}.stats-grid .stat-content{flex:1 1}.stats-grid .stat-value{color:#1a1a1a;font-size:28px;font-weight:700;margin:0 0 8px}.stats-grid .stat-label{color:#6b7280;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.project-actions-section{border-top:1px solid #e5e7eb;display:flex;gap:16px;margin-top:auto;padding-top:24px}.edit-project-btn,.view-details-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;min-width:160px;padding:16px 32px;transition:all .2s ease}.edit-project-btn{background:#3b82f6;color:#fff}.edit-project-btn:hover{background:#2563eb;transform:translateY(-1px)}.view-details-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.view-details-btn:hover{background:#e5e7eb;border-color:#9ca3af}.project-name{font-size:16px;font-weight:700;line-height:1.2;margin:0 0 8px}.project-details{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.project-detail-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:6px}.detail-icon{font-size:14px}.detail-text{flex:1 1}.project-description{border-top:1px solid #e5e7eb;color:#6b7280;font-size:12px;line-height:1.4;margin:8px 0 0;padding-top:8px}.project-drag-hint{align-items:center;background:#ffffffe6;border-radius:4px;color:#9ca3af;display:flex;font-size:10px;gap:4px;left:8px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:8px;transition:opacity .2s ease}.project-card:hover .project-drag-hint{opacity:1}.project-drag-hint span{font-size:14px}.modal-header{margin-bottom:24px;padding:24px 24px 0}.project-summary-modal .modal-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:0;padding:24px 24px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header-left{align-items:center;display:flex;gap:16px}.back-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 2px 8px #667eea4d;color:#fff;display:inline-flex;gap:8px;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.back-btn:hover{background:linear-gradient(135deg,#7c8ef5,#8a5fb8);box-shadow:0 6px 24px #667eea80,0 0 0 3px #667eea1a;color:#fff;transform:translateY(-2px)}.back-btn:active{box-shadow:0 2px 8px #667eea4d;transform:translateY(0)}.project-summary-modal .modal-header h2{margin:0;padding:0}.modal-body{padding:0 24px}.form-group input,.form-group select,.form-group textarea{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group textarea{min-height:100px}.status-select{cursor:pointer}.modal-footer{margin-top:24px;padding:24px}@media (max-width:1024px){.kanban-board{grid-template-columns:1fr}}@media (max-width:768px){.projects-list-container{padding:16px}.projects-header{align-items:stretch;flex-direction:column}.add-project-btn{justify-content:center;width:100%}.header-content h1{font-size:28px}.projects-stats-bar{grid-template-columns:1fr}.kanban-column{padding:16px}.column-title h2{font-size:20px}.modal-content{margin:10px;max-width:calc(100vw - 20px)}}.kanban-column.drag-over{background:#f0f9ff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.project-card.dragging{opacity:.5;transform:rotate(2deg)}.location-autocomplete-container{position:relative;width:100%}.location-input{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.location-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.location-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.autocomplete-dropdown{animation:slideDown .2s ease;background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.autocomplete-loading{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;justify-content:center;padding:16px;text-align:center}.loading-spinner-small{animation:spin .8s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}.api-error-note{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:6px;color:#92400e;font-size:13px;line-height:1.5;margin-top:8px;padding:12px}.api-error-note small{color:#78350f;font-size:11px}.api-error-message{color:#dc2626;font-size:13px;line-height:1.5;padding:16px;text-align:center}.api-error-message small{color:#6b7280;font-size:11px}.no-results{color:#6b7280;padding:16px}.input-hint{animation:fadeIn .3s ease;background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;font-size:12px;margin-top:4px;padding:8px 12px}.suggestion-item{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background-color .15s ease}.suggestion-item:last-child{border-bottom:none}.suggestion-item.active,.suggestion-item:hover{background-color:#f0f9ff}.suggestion-icon{flex-shrink:0;font-size:18px}.suggestion-text{flex:1 1;min-width:0}.suggestion-main{color:#1a1a1a;font-size:14px;font-weight:600;margin-bottom:2px}.suggestion-main,.suggestion-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-secondary{color:#6b7280;font-size:12px}.suggestion-postal{background-color:#eff6ff;border-radius:4px;color:#3b82f6;display:inline-block;font-size:11px;font-weight:600;margin-top:4px;padding:2px 6px}.autocomplete-dropdown::-webkit-scrollbar{width:8px}.autocomplete-dropdown::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.autocomplete-dropdown::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.autocomplete-dropdown::-webkit-scrollbar-thumb:hover{background:#9ca3af}.team-management-container{background-color:#f5f7fa;min-height:100vh;padding:32px}.team-management-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:32px}.access-permissions-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#4338ca);border:none;border-radius:12px;box-shadow:0 10px 20px #6366f140;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:transform .2s ease,box-shadow .2s ease}.access-permissions-btn:hover{box-shadow:0 14px 28px #4f46e559;transform:translateY(-2px)}.access-permissions-btn:active{box-shadow:0 6px 14px #4f46e540;transform:translateY(0)}.access-permissions-btn:focus{box-shadow:0 0 0 3px #6366f159;outline:none}.access-permissions-btn .access-icon{align-items:center;display:inline-flex;font-size:16px}.create-team-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 6px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:all .2s ease}.create-team-btn:hover{box-shadow:0 6px 12px #3b82f64d;transform:translateY(-2px)}.create-team-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.plus-icon{font-size:20px;font-weight:300}.team-stats-bar{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:20px;padding:24px;position:relative;transition:all .2s ease}.stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-4px)}.stat-card.active{border:3px solid #3b82f6;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.worker-stat-card{align-items:center;display:flex;justify-content:space-between}.view-all-workers-btn{background:#0000;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.view-all-workers-btn:hover{background:#3b82f6;color:#fff;transform:translateY(-1px)}.view-all-workers-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.stat-icon{align-items:center;border-radius:12px;display:flex;font-size:28px;height:60px;justify-content:center;width:60px}.team-icon{background:linear-gradient(135deg,#3b82f6,#2563eb)}.worker-icon{background:linear-gradient(135deg,#10b981,#059669)}.vehicle-icon{background:#f05d5e}.unassigned-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-content{flex:1 1}.stat-value{color:#1a1a1a;font-size:32px;font-weight:700;line-height:1;margin-bottom:4px}.stat-label{color:#6b7280;font-size:14px;font-weight:500}.team-management-content{grid-gap:24px;align-items:start;background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 8px 360px;padding:24px}.resize-handle{align-items:center;border-radius:12px;cursor:col-resize;display:flex;height:100%;justify-content:center;margin:0 -2px;min-width:12px;position:relative;touch-action:none}.resize-handle .handle-grip{background:linear-gradient(180deg,#d1d5db,#9ca3af);border-radius:999px;height:44px;transition:background .2s ease,height .2s ease;width:3px}.resize-handle:hover .handle-grip,body.resizing .resize-handle .handle-grip{background:linear-gradient(180deg,#6366f1,#4338ca);height:52px}body.resizing,body.resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.workers-table-view{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:24px}.workers-table-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.workers-table-header h2{color:#1a1a1a;font-size:24px;font-weight:700;margin:0}.section-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:0;margin-top:0;padding-top:0}.section-title{border:none!important;color:#1a1a1a!important;font-size:24px!important;font-weight:700!important;line-height:1.2!important;margin:0 0 20px!important;padding:0!important;text-decoration:none!important;vertical-align:top!important}.create-team-btn-small{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;margin-top:0;padding:10px 20px;transition:all .2s ease}.create-team-btn-small:hover{box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.create-team-btn-small:disabled{cursor:not-allowed;opacity:.6;transform:none}.teams-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;min-height:400px;padding:24px}.teams-section .section-header,.teams-section .section-title{margin-top:0;padding-top:0}.teams-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:900px){.teams-grid{grid-template-columns:1fr}}.team-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;min-height:200px;padding:20px;position:relative;transition:all .2s ease}.team-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.team-card.drag-over{background:#eff6ff;border-color:#3b82f6;border-width:3px;box-shadow:0 0 0 4px #3b82f633,0 8px 16px #3b82f64d;transform:scale(1.02)}.team-card.drag-over:before{animation:pulse 1.5s ease-in-out infinite;background:#3b82f6e6;border-radius:8px;color:#fff;content:"Drop here";font-size:14px;font-weight:600;left:50%;padding:8px 16px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.team-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.team-name{color:#1a1a1a;margin:0}.delete-team-btn,.team-name{font-size:18px;font-weight:700}.delete-team-btn{align-items:center;background:#ef4444;border:2px solid #ef4444;border-radius:50%;box-shadow:0 2px 4px #ef444433;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;opacity:1;transition:all .2s ease;width:28px}.team-card:hover .delete-team-btn,.vehicle-card:hover .delete-team-btn{opacity:1}.delete-team-btn:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 4px 8px #ef44444d;color:#fff;transform:scale(1.15)}.delete-team-btn:active{background:#b91c1c;border-color:#b91c1c;transform:scale(1.05)}.team-members-count{color:#6b7280;font-size:12px;font-weight:500;margin-bottom:12px}.team-members-list{display:flex;flex-direction:column;gap:8px;min-height:60px}.empty-team-members{align-items:center;color:#9ca3af;display:flex;flex-direction:column;font-size:14px;gap:4px;justify-content:center;padding:20px;text-align:center}.hint-text{color:#d1d5db;font-size:12px}.team-member-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:move;display:flex;gap:12px;justify-content:space-between;padding:10px 12px;transition:all .2s ease}.team-member-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px #3b82f61a}.team-member-item:active{cursor:grabbing}.team-member-main{grid-gap:12px;align-items:center;display:grid;flex:1 1;gap:12px;grid-template-columns:minmax(0,1fr) auto;min-width:0}.member-name{color:#1a1a1a;flex:1 1;font-size:14px;font-weight:500;line-height:1.4;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis;white-space:normal;word-break:break-word}.member-role-badges{align-items:center;display:inline-flex;flex-shrink:0;gap:6px}.remove-member-btn{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:20px;justify-content:center;opacity:0;transition:all .2s ease;width:20px}.team-member-item:hover .remove-member-btn{opacity:1}.remove-member-btn:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.workers-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;max-height:calc(100vh - 200px);overflow-y:auto;padding:24px;position:-webkit-sticky;position:sticky;top:20px}.workers-section .section-title{margin-top:0;padding-top:0}.workers-section.drag-over{background:#eff6ff;border:2px dashed #3b82f6;box-shadow:0 0 0 3px #3b82f640}.workers-list{display:flex;flex-direction:column;gap:12px}.worker-item{grid-column-gap:12px;grid-row-gap:8px;align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;column-gap:12px;cursor:move;display:grid;grid-template-columns:auto minmax(0,1fr) auto;padding:12px;row-gap:8px;transition:all .2s ease}.worker-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.worker-item .worker-avatar,.worker-item .worker-drag-hint{grid-row:span 2}.worker-item.dragging{opacity:.5}.worker-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.worker-info{display:flex;flex-direction:column;gap:6px;min-width:0}.worker-name{color:#1a1a1a;font-size:14px;font-weight:600}.worker-role-badges{align-items:center;display:inline-flex;flex-shrink:0;flex-wrap:wrap;gap:6px}.worker-drag-hint{color:#9ca3af;flex-shrink:0;font-size:16px;opacity:.5}.worker-item:hover .worker-drag-hint{opacity:1}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state p{font-weight:600;margin:0 0 8px}.empty-state span{color:#d1d5db;font-size:14px}.loading-overlay{align-items:center;background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-spinner{border:5px solid #f3f4f6;height:50px;width:50px}.modal-overlay{background-color:#00000080}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:900px}.modal-header{margin-bottom:16px;padding:20px 24px 16px}.modal-header h2{color:#1a1a1a;font-size:24px;font-weight:700;padding-bottom:16px}.close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:28px;line-height:1;padding:4px;transition:background-color .2s ease}.close-btn:hover{background-color:#f3f4f6}.modal-body{overflow-y:auto;padding:0 24px 16px}.form-row{grid-template-columns:1fr 1fr}.form-group,.form-row{margin-bottom:16px}.form-group label{font-weight:600}.form-group input{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.role-selection{display:flex;gap:12px;margin-bottom:8px}.role-button{background:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;min-width:0;padding:12px 20px;transition:all .2s ease}.role-button:hover{background-color:#f9fafb;border-color:#9ca3af}.role-button.active{border-width:2px;box-shadow:0 4px 6px #0000001a;font-weight:600;padding:12px 20px}.role-button.active.carpenter{background:#10b981;border-color:#10b981;color:#fff}.role-button.active.driver{background:#f05d5e;border-color:#f05d5e;color:#fff}.form-hint{color:#6b7280;font-size:13px;margin-bottom:0;margin-top:4px}.modal-footer{align-items:center;flex-shrink:0;justify-content:space-between;margin-top:16px}.cancel-btn{background:#fff;border:2px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s ease}.cancel-btn:hover{background-color:#f9fafb;border-color:#9ca3af}.save-btn{box-shadow:0 4px 6px #3b82f633;transition:all .2s ease}.save-btn:hover{box-shadow:0 6px 12px #3b82f64d}.save-btn:disabled{opacity:.6;transform:none}.delete-btn{background:#ef4444!important;border:2px solid #ef4444!important;box-shadow:0 4px 6px #ef444433;color:#fff!important;min-width:100px;transition:all .2s ease}.delete-btn:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 6px 12px #ef44444d;transform:translateY(-2px)}.delete-btn:active{background:#b91c1c;border-color:#b91c1c;transform:translateY(0)}.delete-btn:disabled{background:#ef4444;border-color:#ef4444;opacity:.6;transform:none}.vehicle-info-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:16px}.info-row{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.info-row:last-child{border-bottom:none}.info-label{color:#6b7280;font-size:14px;font-weight:600}.info-value{color:#1a1a1a;font-size:14px;font-weight:500}.fullscreen-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:0;position:fixed;right:0;top:0;z-index:1000}.fullscreen-modal-content{background:#fff;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100vw}.fullscreen-modal-header{align-items:center;background:#fff;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.fullscreen-header-left{align-items:center;display:flex;gap:20px}.fullscreen-modal-header h2{color:#1a1a1a;font-size:28px;font-weight:700;margin:0}.add-worker-in-table-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 6px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.add-worker-in-table-btn:hover{box-shadow:0 6px 12px #3b82f64d;transform:translateY(-2px)}.add-worker-in-table-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.fullscreen-modal-body{background:#f5f7fa;flex:1 1;overflow-y:auto;padding:32px}.workers-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.workers-table{background:#fff;border-collapse:collapse;table-layout:fixed;width:100%}.workers-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.workers-table th{color:#374151;font-size:14px;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.workers-table th.sortable{cursor:pointer;padding-right:24px;position:relative;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.workers-table th.sortable:hover{background-color:#f3f4f6}.workers-table th .sort-indicator{color:#3b82f6;display:inline-block;font-weight:700;margin-left:4px;min-width:16px;position:absolute;right:8px;text-align:center}.workers-table td{border-bottom:1px solid #f3f4f6;color:#1a1a1a;font-size:14px;padding:12px 16px}.workers-table tbody tr:hover{background:#f9fafb}.workers-table tbody tr:last-child td{border-bottom:none}.table-roles{flex-wrap:nowrap;gap:8px}.role-badge,.table-roles{align-items:center;display:inline-flex}.role-badge{border-radius:12px;color:#fff;flex-direction:row;font-size:11px;font-weight:600;gap:6px;justify-content:center;line-height:1;padding:4px 10px;text-transform:capitalize;white-space:nowrap}.role-badge.icon-only{border-radius:13px;box-shadow:0 4px 10px #0f172a1f;gap:0;height:26px;padding:4px;position:relative;transition:transform .15s ease,box-shadow .15s ease;width:26px}.role-badge.icon-only:after{border-radius:8px;box-shadow:0 12px 24px #0f172a33;color:#f8fafc;content:attr(data-role-label);font-size:12px;font-weight:500;line-height:1.2;padding:6px 10px;transform:translate(-50%,calc(100% + 6px));white-space:nowrap}.role-badge.icon-only:after,.role-badge.icon-only:before{background:#0f172af5;left:50%;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease,transform .2s ease}.role-badge.icon-only:before{border-radius:2px;-webkit-clip-path:polygon(50% 0,0 100%,100% 100%);clip-path:polygon(50% 0,0 100%,100% 100%);content:"";height:8px;transform:translate(-50%,calc(100% + 2px));width:8px}.role-badge.icon-only:hover{box-shadow:0 8px 18px #0f172a2e;transform:translateY(-2px)}.role-badge.icon-only:hover:after,.role-badge.icon-only:hover:before{opacity:1;transform:translate(-50%,calc(100% + 2px))}.role-badge-icon{align-items:center;display:inline-flex;font-size:18px;justify-content:center;line-height:1}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.role-badge-label{display:inline-block;line-height:1}.no-role-badge{color:#9ca3af;font-size:14px}.table-actions{gap:8px}.table-delete-btn,.table-edit-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.table-edit-btn{background:#dbeafe;color:#1e40af}.table-edit-btn:hover{background:#1e40af;color:#fff;transform:scale(1.1)}.table-delete-btn{background:#fee2e2;color:#dc2626;font-size:20px;font-weight:700}.table-delete-btn:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.error-message{align-items:center;animation:slideDown .3s ease;background:#fee2e2;border:2px solid #ef4444;border-radius:8px;color:#991b1b;display:flex;gap:12px;margin-bottom:24px;padding:16px 20px}.error-icon{flex-shrink:0;font-size:20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vehicles-view{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:32px}.vehicles-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.vehicles-header h2{color:#1a1a1a;font-size:24px;font-weight:700;margin:0}.vehicles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.vehicle-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px;position:relative;transition:all .2s ease}.vehicle-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf626;transform:translateY(-2px)}.vehicle-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.vehicle-plate{color:#1a1a1a;font-size:20px;font-weight:700;letter-spacing:1px;margin:0}.vehicle-model{color:#6b7280;font-size:14px;font-style:italic;margin-bottom:16px}.vehicle-driver-section{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.vehicle-driver-label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.vehicle-driver-dropdown{position:relative}.vehicle-driver-trigger{align-items:center;background:linear-gradient(135deg,#818cf82e,#6366f10d);border:2px solid #e0e7ff;border-radius:16px;box-shadow:inset 0 1px 0 #fff9;color:#1f2937;cursor:pointer;display:flex;font-weight:600;gap:12px;justify-content:flex-start;padding:12px 44px 12px 16px;position:relative;transition:all .2s ease;width:100%}.vehicle-driver-trigger:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%235256CD' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='m2.5 4.5 3.5 3 3.5-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";height:12px;pointer-events:none;position:absolute;right:18px;width:12px}.vehicle-driver-trigger:hover{background:linear-gradient(135deg,#818cf84d,#6366f11f);border-color:#818cf8}.vehicle-driver-trigger:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f126;outline:none}.vehicle-driver-dropdown.open .vehicle-driver-trigger{background:linear-gradient(135deg,#6366f133,#818cf81f);border-color:#6366f1;box-shadow:0 0 0 4px #6366f11f}.vehicle-driver-trigger.has-selection{color:#312e81}.vehicle-driver-trigger-content{align-items:center;display:flex;gap:10px;text-align:left;width:100%}.driver-trigger-label{color:inherit;flex:1 1;font-weight:600;text-align:left}.driver-trigger-label.no-driver{color:#4b5563;font-weight:500}.driver-trigger-icon{align-items:center;background:#f05d5e;border-radius:10px;box-shadow:0 4px 8px #f05d5e59;color:#fff;display:inline-flex;font-size:16px;height:28px;justify-content:center;width:28px}.vehicle-driver-menu{background:#fff;border:1px solid #6366f11f;border-radius:18px;box-shadow:0 18px 45px #4f46e52e;left:0;padding:8px;position:absolute;top:calc(100% + 10px);width:100%;z-index:10}.vehicle-driver-option{align-items:center;background:#0000;border:none;border-radius:12px;color:#1f2937;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:space-between;padding:12px 14px;transition:all .2s ease;width:100%}.vehicle-driver-option:hover{background:#6366f114;transform:translateX(4px)}.vehicle-driver-option.selected{background:linear-gradient(135deg,#818cf859,#6366f133);color:#312e81}.vehicle-driver-option.no-driver{color:#4b5563}.vehicle-driver-option.no-driver.selected{color:#312e81}.option-check{color:#4338ca;font-size:16px}.vehicle-driver-info{background:#ede9fe;border-radius:6px;display:inline-block;margin-top:12px;padding:8px 12px}.driver-badge-small{color:#6d28d9;font-size:13px;font-weight:600}@media (max-width:1024px){.team-management-content{grid-template-columns:1fr!important}.workers-section{max-height:none;position:static}.resize-handle{display:none}}@media (max-width:768px){.team-management-container{padding:16px}.team-management-header{align-items:stretch;flex-direction:column}.create-team-btn{justify-content:center;width:100%}.header-content h1{font-size:28px}.team-stats-bar,.teams-grid{grid-template-columns:1fr}.fullscreen-header-left{align-items:flex-start;flex-direction:column;gap:12px}.fullscreen-modal-header{padding:16px}.fullscreen-modal-header h2{font-size:20px}.fullscreen-modal-body{padding:16px}.workers-table{font-size:12px}.workers-table td,.workers-table th{padding:8px}.team-management-container{padding:16px}.team-management-header{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px}.header-content h1{font-size:24px}.header-subtitle{font-size:14px}.header-actions{margin-left:0;width:100%}.access-permissions-btn{font-size:13px;justify-content:center;padding:10px 16px;width:100%}.teams-section,.workers-section{margin-bottom:20px;padding:16px}.section-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:16px}.section-header .section-title{font-size:20px}.add-team-btn,.add-worker-btn{font-size:13px;padding:10px 16px;width:100%}.teams-grid{gap:12px;grid-template-columns:1fr}.team-card{padding:16px}.team-header{align-items:flex-start;flex-direction:column;gap:12px}.team-name{font-size:16px}.team-actions{justify-content:flex-start;width:100%}.workers-table{-webkit-overflow-scrolling:touch;display:block;font-size:12px;overflow-x:auto}.workers-table td,.workers-table th{padding:8px 6px;white-space:nowrap}.modal-overlay{padding:16px}.modal-content{max-height:90vh;max-width:100%;overflow-y:auto;padding:20px;width:95%}.modal-content h3{font-size:18px}.form-group{margin-bottom:16px}.form-group label{font-size:14px}.form-group input,.form-group select,.form-group textarea{font-size:14px;padding:10px}.modal-actions{flex-direction:column;gap:10px}.cancel-btn,.save-btn{padding:10px;width:100%}}@media (max-width:480px){.team-management-container{padding:12px}.header-content h1{font-size:20px}.section-header .section-title{font-size:18px}.team-card{padding:12px}.workers-table{font-size:11px}}.daily-transport-container{background-color:#f5f7fa;min-height:100vh;padding:32px}.available-members-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-top:24px;padding:24px}.available-members-title{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 16px}.available-members-list{display:flex;flex-wrap:wrap;gap:8px}.available-member-item{align-items:center;background:#f9fafb;border:1px solid #d1d5db;border-radius:12px;color:#1a1a1a;cursor:move;display:inline-flex;font-size:14px;font-weight:600;gap:4px;padding:6px 12px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.available-member-item:hover{background:#f3f4f6;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.available-member-item:active{background:#3b82f6!important;border-color:#3b82f6!important;box-shadow:0 4px 12px #3b82f666;color:#fff!important;cursor:grabbing;opacity:.9;transform:scale(1.05) translateY(-2px);z-index:1000}.available-members-section.drag-over{background:#eff6ff;border:2px dashed #3b82f6}.no-available-members{color:#6b7280;font-size:14px;font-style:italic}.daily-transport-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:32px}.header-content h1{color:#1a1a1a;font-size:36px;font-weight:700;letter-spacing:-.025em;margin:0 0 8px}.header-subtitle{color:#6b7280;font-size:16px;margin:0}.header-actions{align-items:center;display:flex;gap:12px;margin-left:auto}.date-input-group{align-items:center;display:flex;gap:8px}.date-nav-btn{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:20px;font-weight:600;justify-content:center;line-height:1;min-width:44px;padding:10px 14px;transition:all .2s ease}.date-nav-btn:hover{background:#f3f4f6;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;color:#3b82f6;transform:translateY(-1px)}.date-nav-btn:active{transform:translateY(0)}.date-selector{align-items:center;display:flex;position:relative}.date-display-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 6px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:12px;justify-content:space-between;min-width:200px;padding:10px 16px;transition:all .2s ease}.date-display-btn:hover{box-shadow:0 6px 12px #3b82f64d;transform:translateY(-2px)}.date-text{flex:1 1;text-align:left}.dropdown-icon{color:#fff;font-size:12px;opacity:.9}.date-picker-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #0000001f;left:0;min-width:300px;padding:16px;position:absolute;right:0;top:calc(100% + 8px);z-index:10001}.date-picker-row{display:flex;gap:12px}.date-picker-column{display:flex;flex:1 1;flex-direction:column;gap:8px}.date-picker-column label{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.day-select,.month-select,.year-select{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px;transition:all .2s ease}.day-select:hover,.month-select:hover,.year-select:hover{background:#f9fafb;border-color:#9ca3af}.day-select:focus,.month-select:focus,.year-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.today-btn{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.today-btn:hover{background:#3b82f6;box-shadow:0 2px 4px #3b82f633;color:#fff;transform:translateY(-1px)}.export-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.export-btn:disabled{cursor:not-allowed;opacity:.5}.export-image-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 6px #10b98133;color:#fff}.export-image-btn:hover:not(:disabled){box-shadow:0 6px 12px #10b9814d;transform:translateY(-2px)}.export-pdf-btn{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 6px #f59e0b33;color:#fff}.export-pdf-btn:hover:not(:disabled){box-shadow:0 6px 12px #f59e0b4d;transform:translateY(-2px)}.schedule-builder{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;overflow-x:auto;padding:24px}.schedule-table-container{margin-top:20px;overflow-x:auto;overflow-y:visible;position:relative}.schedule-builder{overflow:visible;position:relative}.daily-transport-container{overflow:visible}.schedule-table.editable{background:#f5f7fa;border-collapse:collapse;border-radius:8px;margin-top:0;overflow:hidden;width:100%}.schedule-table.editable thead{background:#e5e7eb;border-bottom:2px solid #1a1a1a}.schedule-table.editable th{background:#d4dfcf;border:1px solid #000;color:#1a1a1a;font-size:14px;font-weight:700;padding:12px 16px;text-align:center;white-space:nowrap}.schedule-table.editable th.actions-header{background:#f2f4f7!important;max-width:40px;min-width:40px;padding:12px 4px;text-align:center;width:40px}.schedule-table.editable th.driver-header{background:#fef3c7!important;position:relative;text-align:center}.schedule-table.editable td{word-wrap:break-word;background:#fff;border:1px solid #d1d5db;color:#1a1a1a;font-size:14px;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;padding:8px 12px;vertical-align:middle;word-break:break-word}.schedule-table.editable tbody tr{background:#fff;transition:all .2s ease}.schedule-table.editable tbody tr:nth-child(2n){background:#fff}.schedule-table.editable tbody tr.drag-over-row{background:#dbeafe;border:2px dashed #3b82f6;border-radius:8px;box-shadow:0 4px 12px #3b82f633;transform:scale(1.02)}.schedule-table.editable tbody tr[draggable=true]:hover{cursor:move}.schedule-table.editable tbody tr[draggable=true]:active{cursor:grabbing}.schedule-table.editable .location-cell{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.column-resize-handle{background:#0000;bottom:0;cursor:col-resize;position:absolute;right:-4px;top:0;transition:background .2s ease;-webkit-user-select:none;user-select:none;width:8px;z-index:10}.column-resize-handle:hover{background:#3b82f64d}.column-resize-handle:active{background:#3b82f680}.location-projects-list{align-items:stretch;display:flex;flex-direction:column;gap:6px}.project-item-wrapper{align-items:center;display:flex;gap:6px;position:relative;width:100%}.project-item-wrapper .custom-dropdown{flex:1 1}.location-projects-list>.custom-dropdown{align-self:center;display:inline-flex;justify-content:center;width:auto!important}.location-projects-list>.custom-dropdown .custom-dropdown-trigger{width:auto!important}.location-projects-list>.custom-dropdown .custom-dropdown-menu{min-width:200px}.remove-project-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:20px;justify-content:center;line-height:1;margin:0;opacity:0;padding:0;transition:all .2s ease;visibility:hidden;width:20px}.project-item-wrapper:hover .remove-project-btn{opacity:1;visibility:visible}.remove-project-btn:hover{background:#dc2626;transform:scale(1.1)}.add-more-btn{align-items:center!important;background:#0000!important;border:1px solid #d1d5db!important;border-radius:50%!important;box-shadow:none!important;color:#9ca3af!important;display:flex!important;font-size:20px!important;height:32px!important;justify-content:center!important;line-height:1!important;max-width:32px!important;min-width:32px!important;padding:0!important;position:relative!important;width:32px!important}.add-more-btn:after{display:none!important}.add-more-btn span{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.add-more-btn:hover{background:#f9fafb!important;border-color:#9ca3af!important;box-shadow:none!important;color:#6b7280!important;transform:scale(1.05)}.add-more-btn:active{transform:scale(.95)}.schedule-table.editable .personnel-cell{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.team-option{font-weight:600!important}.team-divider{background:#e5e7eb;height:1px;margin:8px 0}.team-divider-inline{background:#e5e7eb;height:1px;margin:12px 0 8px;width:100%}.team-member-option{padding:8px 14px 8px 28px}.team-member-name-dropdown{align-items:center;color:#1f2937;display:inline-flex;font-size:14px;font-weight:500;gap:6px}.no-members{color:#9ca3af;font-size:13px;font-style:italic}.schedule-table.editable .lorry-cell{text-align:center}.schedule-table.editable .driver-site-cell{background:#0000!important;color:#1a1a1a;font-weight:600;max-width:110px;min-width:90px;position:relative;text-align:center}.schedule-table.editable .actions-header{max-width:40px;min-width:40px;padding:12px 4px;text-align:center;width:40px}.schedule-table.editable .row-actions-cell{max-width:40px;min-width:40px;padding:8px 4px;text-align:center;vertical-align:middle;width:40px}.schedule-table.editable .row-actions-cell .remove-row-btn{margin:0 auto}.notes-header{background:#e0f2fe!important;font-weight:600;min-width:250px;padding:12px 16px;text-align:center;width:250px}.notes-toggle-header{background:#fef3c7!important;max-width:50px;min-width:50px;padding:8px 4px;text-align:center;vertical-align:middle;width:50px}.notes-toggle-btn{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;padding:6px 8px;transition:all .2s ease;width:40px}.notes-toggle-btn:hover{transform:scale(1.05)}.notes-toggle-btn.expanded,.notes-toggle-btn:hover{background:#fee2e2;border-color:#ef4444;color:#991b1b}.add-notes-btn{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:8px;box-shadow:0 1px 3px #0000001a;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:4px;justify-content:center;padding:8px 14px;transition:all .2s ease}.add-notes-btn:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.add-notes-btn:active{box-shadow:0 1px 2px #0000001a;transform:translateY(0)}.add-notes-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.add-notes-btn.active:hover{background:#2563eb;border-color:#2563eb}.notes-cell{max-width:250px;min-width:250px;padding:12px;vertical-align:top;width:250px}.notes-input{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:13px;height:100%;max-height:200px;min-height:100px;padding:10px;resize:vertical;transition:border-color .2s ease;width:100%}.notes-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.notes-input::placeholder{color:#9ca3af;font-style:italic}.notes-toggle-cell{background:#0000;max-width:50px;min-width:50px;padding:8px 4px;width:50px}.remove-row-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;line-height:1;opacity:.7;padding:0;transition:all .2s ease;width:28px}.remove-row-btn:hover{background:#dc2626;opacity:1;transform:scale(1.1)}.remove-row-btn:active{transform:scale(.95)}.driver-cell-trigger{align-items:flex-start!important;border:2px solid #e0e7ff!important;border-radius:16px!important;box-shadow:inset 0 1px 0 #fff9!important;color:#1a1a1a!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;font-weight:600!important;gap:8px!important;justify-content:flex-start!important;min-height:40px!important;padding:8px 36px 8px 12px!important;position:relative!important;text-align:left!important;transition:all .2s ease!important;width:100%!important}.driver-cell-trigger.no-driver{background:linear-gradient(135deg,#818cf82e,#6366f10d)!important}.driver-cell-trigger>span{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:6px;justify-content:flex-start;min-width:0;padding-right:8px;word-break:break-word}.driver-cell-trigger>span>span{word-break:break-word}.driver-cell-trigger:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%235256CD' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='m2.5 4.5 3.5 3 3.5-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";flex-shrink:0;height:10px;pointer-events:none;position:absolute;right:12px;top:12px;width:10px}.driver-cell-trigger .dropdown-icon{display:none}.schedule-table.editable .actions-cell{min-width:120px;text-align:center}.teams-list-vertical{align-items:stretch;display:flex;flex-direction:column;gap:12px}.teams-list-vertical>.custom-dropdown{align-self:center;display:inline-flex;justify-content:center;width:auto!important}.teams-list-vertical>.custom-dropdown .custom-dropdown-trigger{width:auto!important}.team-group-container{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:8px;transition:all .2s ease}.team-group-container.drag-over-team{background:#eff6ff;border:2px dashed #3b82f6;border-radius:8px}.team-header-row{align-items:center;display:flex;gap:6px}.team-header-row .custom-dropdown{flex:1 1;min-width:0}.team-pill{background:#fff!important;border:2px solid #d1d5db!important;font-weight:600!important;gap:4px!important;justify-content:space-between!important;padding-left:12px!important;padding-right:22px!important}.team-pill>span{flex:1 1!important;min-width:0!important;overflow:hidden!important;text-align:left!important;text-overflow:ellipsis!important;white-space:nowrap!important}.team-pill:after{flex-shrink:0!important;position:absolute!important;right:8px!important}.custom-team-pill{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-color:#f59e0b!important}.custom-team-pill:hover{background:linear-gradient(135deg,#fde68a,#fcd34d)!important;border-color:#d97706!important}.personnel-cell.drag-over-empty-cell{animation:pulse-border 1.5s ease-in-out infinite;background:linear-gradient(135deg,#3b82f61a,#6366f10d)!important;border:2px dashed #3b82f6!important;border-radius:8px}.personnel-cell.drag-over-empty-cell:before{color:#3b82f6;content:"Drop to create Custom Team";font-size:12px;font-weight:600;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap}@keyframes pulse-border{0%,to{border-color:#3b82f6}50%{border-color:#60a5fa}}.custom-dropdown.drag-over-add-btn .custom-dropdown-trigger{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-color:#f59e0b!important;box-shadow:0 0 0 3px #f59e0b33!important;transform:scale(1.05)}.custom-dropdown.drag-over-add-btn .add-more-btn{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-color:#f59e0b!important;color:#92400e!important;font-weight:700!important}.collapse-team-btn{background:#fff;border:2px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:12px;font-weight:600;min-width:60px;padding:6px 10px;text-align:center;transition:all .2s ease}.collapse-team-btn:hover{background:#f3f4f6;border-color:#9ca3af;color:#3b82f6;transform:scale(1.05)}.team-members-display-table{border-left:3px solid #e5e7eb;display:flex;flex-direction:column;gap:4px;margin-left:8px;padding-left:12px}.team-member-name-table{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:12px;box-sizing:border-box;color:#1a1a1a;display:inline-flex;font-size:14px;font-weight:600;gap:4px;outline:none;padding:4px 8px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;z-index:1}.team-member-name-table:focus{outline:none}.team-member-name-table:active{background:#3b82f6!important;border-color:#3b82f6!important;box-shadow:0 4px 12px #3b82f666;color:#fff!important;cursor:grabbing;opacity:.9;transform:scale(1.05) translateY(-2px);z-index:1000}.team-member-with-remove{align-items:center!important;display:inline-flex!important;padding-right:28px!important;position:relative!important;width:auto}.team-member-with-remove .member-name-content{align-items:center;display:inline-flex;gap:4px}.team-member-with-remove .remove-member-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:18px;justify-content:center;line-height:1;margin:0;opacity:0;padding:0;position:absolute;right:4px;top:50%;transform:translateY(-50%);transition:all .2s ease;visibility:hidden;width:18px;z-index:10}.team-member-with-remove:hover .remove-member-btn{opacity:1!important;visibility:visible!important}.team-member-with-remove .remove-member-btn:hover{background:#dc2626;transform:translateY(-50%) scale(1.15)}.team-member-with-remove .remove-member-btn:active{transform:translateY(-50%) scale(.9)}.team-member-name-table.drag-over-member{background:#dbeafe!important;border-color:#3b82f6!important;box-shadow:0 2px 8px #3b82f64d;transform:scale(1.05);transition:all .2s ease}.draggable-worker{cursor:move;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;z-index:1}.draggable-worker:hover{background:#f3f4f6;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px);z-index:2}.draggable-worker:active{background:#3b82f6!important;border-color:#3b82f6!important;box-shadow:0 4px 12px #3b82f666;color:#fff!important;cursor:grabbing;opacity:.9;transform:scale(1.05);z-index:1000}.personnel-cell.drag-over{background:#eff6ff;border:2px dashed #3b82f6;border-radius:8px;position:relative}.personnel-cell.drag-over:before{animation:pulse 1.5s ease-in-out infinite;background:#3b82f6e6;border-radius:8px;color:#fff;content:"Drop here";font-size:14px;font-weight:600;left:50%;padding:8px 16px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}@keyframes pulse{0%,to{opacity:.9;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}.no-members-text{color:#9ca3af;font-size:13px;font-style:italic;padding:4px 0}.table-row-actions{gap:8px;justify-content:center}.entry-color-selector-table,.table-row-actions{align-items:center;display:flex}.entry-color-selector-table .color-options{display:flex;flex-wrap:wrap;gap:4px}.entry-color-selector-table .color-option{border:2px solid #0000;border-radius:4px;box-shadow:0 1px 2px #0000001a;cursor:pointer;height:20px;padding:0;transition:all .2s ease;width:20px}.entry-color-selector-table .color-option:hover{transform:scale(1.1)}.entry-color-selector-table .color-option.selected{border-color:#1a1a1a;box-shadow:0 0 0 2px #fff,0 0 0 3px #1a1a1a}.remove-entry-btn-table{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:24px;justify-content:center;transition:all .2s ease;width:24px}.remove-entry-btn-table:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.builder-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.builder-header h2{color:#1a1a1a;font-size:24px;font-weight:700;margin:0}.builder-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.copy-previous-btn{background:linear-gradient(135deg,#a855f7,#9333ea);border:none;border-radius:8px;box-shadow:0 2px 4px #a855f733;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.copy-previous-btn:hover{box-shadow:0 4px 8px #a855f74d;transform:translateY(-2px)}.add-entry-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.add-entry-btn:hover{box-shadow:0 4px 8px #3b82f64d;transform:translateY(-2px)}.empty-builder{color:#6b7280;padding:40px 20px;text-align:center}.empty-builder p{font-size:16px;margin:0}.entries-list{display:flex;flex-direction:column;gap:16px}.schedule-entry-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;min-height:200px;padding:20px;position:relative;transition:all .2s ease}.schedule-entry-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.entry-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.entry-color-selector{align-items:center;display:flex;gap:8px}.color-selector-label{color:#6b7280;font-size:13px;font-weight:600}.color-options{align-items:center;display:flex;gap:6px}.color-option{border:2px solid #0000;border-radius:6px;box-shadow:0 1px 3px #0000001a;cursor:pointer;height:24px;padding:0;transition:all .2s ease;width:24px}.color-option:hover{box-shadow:0 2px 6px #00000026;transform:scale(1.1)}.color-option.selected{border-color:#1a1a1a;box-shadow:0 0 0 2px #fff,0 0 0 4px #1a1a1a;transform:scale(1.1)}.entry-number{color:#6b7280;font-size:14px;font-weight:600}.remove-entry-btn{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:24px;justify-content:center;opacity:0;transition:all .2s ease;width:24px}.schedule-entry-card:hover .remove-entry-btn{opacity:1}.remove-entry-btn:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.entry-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.field-group{display:flex;flex-direction:column;gap:6px}.field-group label{color:#374151;font-size:13px;font-weight:600}.custom-dropdown{position:relative;width:100%;z-index:1}.custom-dropdown.open{z-index:1001}.custom-dropdown-trigger{align-items:center;background:linear-gradient(135deg,#818cf82e,#6366f10d);border:2px solid #e0e7ff;border-radius:16px;box-shadow:inset 0 1px 0 #fff9;color:#1f2937;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:flex-start;padding:12px 24px 12px 16px;position:relative;text-align:left;transition:all .2s ease;width:100%}.custom-dropdown-trigger>span{flex:1 1;min-width:0}.custom-dropdown-trigger:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%235256CD' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='m2.5 4.5 3.5 3 3.5-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";flex-shrink:0;height:10px;pointer-events:none;position:absolute;right:8px;width:10px}.custom-dropdown-trigger:hover{background:#f0f9ff;border-color:#818cf8;box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px)}.custom-dropdown.open .custom-dropdown-trigger{background:linear-gradient(135deg,#6366f133,#818cf81f);border-color:#6366f1;box-shadow:0 0 0 4px #6366f11f}.custom-dropdown-trigger.has-selection{color:#312e81}.custom-dropdown-trigger:disabled{background:linear-gradient(135deg,#f3f4f680,#e5e7eb4d);border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;opacity:.6}.custom-dropdown-menu{background:#fff;border:1px solid #6366f11f;border-radius:18px;box-shadow:0 18px 45px #4f46e52e;max-height:300px;min-width:200px;overflow-y:auto;padding:8px;position:fixed;z-index:10000}.team-members-dropdown{max-height:none!important;overflow-x:visible!important;overflow-y:visible!important}.driver-dropdown-menu{min-width:250px}.driver-dropdown-header{align-items:center;border-bottom:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:13px;font-weight:600;justify-content:flex-start;margin-bottom:4px;padding:8px 12px}.driver-color-picker-inline{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:8px;padding:8px 12px}.color-picker-label{color:#6b7280;font-size:12px;font-weight:500;white-space:nowrap}.color-picker-options-inline{display:flex;flex-wrap:wrap;gap:6px}.color-option-inline{border:2px solid #0000;border-radius:4px;box-shadow:0 1px 2px #0000001a;cursor:pointer;height:20px;padding:0;transition:all .2s ease;width:20px}.color-option-inline:hover{box-shadow:0 2px 4px #00000026;transform:scale(1.15)}.color-option-inline.selected{border-color:#1a1a1a;box-shadow:0 0 0 2px #fff,0 0 0 4px #1a1a1a;transform:scale(1.15)}.driver-option-wrapper{min-height:48px;position:relative;width:100%}.color-picker-container{z-index:10}.color-picker-container,.color-picker-trigger{flex-shrink:0;pointer-events:auto;position:relative}.color-picker-trigger{border:2px solid #d1d5db;border-radius:6px;box-shadow:0 1px 3px #0000001a;cursor:pointer;height:24px;padding:0;transform:translateZ(0);transition:transform .15s ease,border-color .15s ease;width:24px;will-change:transform;z-index:11}.color-picker-trigger:hover{border-color:#6366f1;transform:scale(1.1)}.color-picker-menu{grid-gap:6px;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #00000026;box-sizing:border-box;display:grid;gap:6px;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(3,1fr);height:100px;overflow:hidden;padding:8px;pointer-events:auto;position:fixed;transform:translateZ(0);width:190px;will-change:transform,opacity;z-index:100000}.color-picker-menu .color-option{border:2px solid #0000;border-radius:6px;box-shadow:0 1px 3px #0000001a;cursor:pointer;height:24px;opacity:1!important;padding:0;pointer-events:auto;position:relative;transform:translateZ(0);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;width:24px;will-change:transform;z-index:10001}.color-picker-menu .color-option.white-color{border:1px solid #d1d5db}.color-picker-menu .color-option:hover{box-shadow:0 2px 6px #00000026;transform:scale(1.1)}.color-picker-menu .color-option.selected{border-color:#1a1a1a;box-shadow:0 0 0 2px #fff,0 0 0 4px #1a1a1a;transform:scale(1.1)}.color-picker-menu .color-option.color-in-use{opacity:.95}.color-picker-menu .color-option.color-in-use:hover{box-shadow:0 2px 8px #0003;opacity:1}.custom-dropdown-option{align-items:center;background:#0000;border:none;border-radius:12px;color:#1f2937;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:space-between;padding:12px 14px;position:relative;text-align:left;transition:all .2s ease;width:100%;z-index:1}.custom-dropdown-option:hover:not(.hidden){background:#6366f114;transform:translateX(4px)}.custom-dropdown-option.hidden{pointer-events:none;visibility:hidden}.custom-dropdown-option.selected{background:linear-gradient(135deg,#818cf859,#6366f133);color:#312e81}.custom-dropdown-option.placeholder{color:#4b5563}.custom-dropdown-option.placeholder.selected{color:#312e81}.custom-dropdown-check{color:#4338ca;font-size:16px}.field-select{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#818cf82e,#6366f10d);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%235256CD' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='m2.5 4.5 3.5 3 3.5-3'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;border:2px solid #e0e7ff;border-radius:16px;box-shadow:inset 0 1px 0 #fff9;color:#1f2937;cursor:pointer;font-size:14px;font-weight:600;padding:12px 44px 12px 16px;position:relative;transition:all .2s ease;width:100%}.team-members-display{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;min-height:40px;padding:8px;transition:all .2s ease}.team-members-display.drag-over{background:#eff6ff;border-color:#3b82f6;border-width:2px}.team-member-name{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:16px;color:#1a1a1a;display:inline-flex;font-size:13px;gap:4px;padding:4px 10px}.team-member-name.draggable-worker{cursor:move;transition:all .2s ease}.team-member-name.draggable-worker:hover{border-color:#3b82f6;box-shadow:0 2px 4px #3b82f633;transform:translateY(-1px)}.team-member-name.draggable-worker:active{background:#3b82f6!important;border-color:#3b82f6!important;box-shadow:0 4px 12px #3b82f666;color:#fff!important;cursor:grabbing;opacity:.9;transform:scale(1.05) translateY(-2px);z-index:1000}.carpenter-indicator,.driver-indicator{font-size:12px;margin-left:2px}.export-preview{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:32px}.preview-header{border-bottom:3px solid #1a1a1a;margin-bottom:24px;padding-bottom:16px;text-align:center}.preview-header h2{color:#1a1a1a;font-size:24px;font-weight:700;margin:0}.schedule-table{border-collapse:collapse;margin-top:20px;width:100%}.schedule-table thead{background:#f9fafb;border-bottom:2px solid #1a1a1a}.schedule-table th{background:#d4dfcf;border:1px solid #000;color:#1a1a1a;font-size:14px;font-weight:700;padding:12px 16px;text-align:center}.schedule-table th.driver-header{background:#fef3c7!important;position:relative;text-align:center}.driver-subheaders{background:#fef3c7;border-top:1px solid #000;display:flex;font-size:13px;font-weight:600;justify-content:space-around;margin-top:8px;padding-top:8px}.driver-subheaders span{flex:1 1;text-align:center}.schedule-table td{background:#fff;border:1px solid #000;color:#1a1a1a;font-size:14px;font-weight:700;padding:12px 16px}.schedule-table tbody tr{background:#fff}.schedule-table .driver-site-cell{background:#fff!important;text-align:center}.driver-name-badge{border-radius:4px;color:#1a1a1a;display:block;font-weight:700;padding:8px 12px;text-align:center}.schedule-table tbody tr:nth-child(2n){background:#f9fafb}.location-cell{font-weight:500;min-width:250px}.personnel-cell{min-width:250px;position:relative}.lorry-cell{font-weight:600;min-width:120px;text-align:center}.lorry-cell-content{align-items:center;display:flex;flex-direction:column;gap:8px;width:100%}.lorry-capacity-btn{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:8px;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:4px;justify-content:center;min-width:100px;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.lorry-capacity-btn:hover{border-color:#9ca3af;box-shadow:0 2px 6px #0000001a;transform:translateY(-1px)}.lorry-capacity-btn:active{box-shadow:0 1px 3px #0000001a;transform:translateY(0)}.lorry-capacity-btn.capacity-empty{border-color:#22c55e;color:#15803d}.lorry-capacity-btn.capacity-quarter{border-color:#3b82f6;color:#1e40af}.lorry-capacity-btn.capacity-half{border-color:#eab308;color:#a16207}.lorry-capacity-btn.capacity-threequarters{border-color:#f97316;color:#c2410c}.lorry-capacity-btn.capacity-full{border-color:#ef4444;color:#b91c1c}.driver-site-cell{color:#1a1a1a;font-weight:600;max-width:110px;min-width:90px;text-align:center}@media (max-width:768px){.daily-transport-container{padding:16px}.daily-transport-header{align-items:flex-start;flex-direction:column}.header-actions{flex-wrap:wrap;margin-left:0;width:100%}.entry-fields{grid-template-columns:1fr}.export-preview{padding:20px}.daily-transport-container{padding:16px}.daily-transport-header{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px}.header-content h1{font-size:24px}.header-subtitle{font-size:14px}.header-actions{flex-direction:column;gap:10px;margin-left:0;width:100%}.date-input-group{flex-direction:column;gap:8px;width:100%}.date-input,.today-btn{padding:10px;width:100%}.export-btn{font-size:13px;padding:10px 16px;width:100%}.schedule-builder{margin-bottom:20px;padding:16px}.schedule-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.schedule-table.editable{font-size:12px;min-width:800px}.schedule-table.editable td,.schedule-table.editable th{padding:8px 6px}.custom-dropdown-trigger{font-size:12px;padding:6px 10px}.custom-dropdown-menu{font-size:12px;max-width:200px}.custom-dropdown-option{font-size:12px;padding:8px 12px}.color-picker-menu{gap:4px;height:80px;padding:6px;width:152px}.color-picker-menu .color-option{height:20px;width:20px}.available-members-section{margin-top:16px;padding:16px}.available-members-title{font-size:16px}.available-member-item{font-size:12px;padding:5px 10px}.schedule-entry-card{min-height:150px;padding:16px}.entry-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:12px}.entry-fields{gap:12px;grid-template-columns:1fr}.field-group{align-items:flex-start;flex-direction:column;gap:6px}.field-label{font-size:12px}.export-preview{padding:16px}.export-preview h2{font-size:18px}}@media (max-width:480px){.daily-transport-container{padding:12px}.header-content h1{font-size:20px}.header-subtitle{font-size:12px}.schedule-table.editable{font-size:11px;min-width:700px}.schedule-table.editable td,.schedule-table.editable th{padding:6px 4px}.custom-dropdown-trigger{font-size:11px;padding:5px 8px}.color-picker-menu{gap:3px;height:70px;padding:5px;width:133px}.color-picker-menu .color-option{height:18px;width:18px}.available-member-item{font-size:11px;padding:4px 8px}.schedule-entry-card{padding:12px}}.material-search-bar{max-width:100%;position:relative;width:100%}.search-icon{font-size:20px;left:20px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.search-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:16px;height:48px;outline:none;padding:12px 50px 12px 55px;transition:all .2s;width:100%}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:#9ca3af}.clear-search{align-items:center;background:#e5e7eb;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;position:absolute;right:15px;top:50%;transform:translateY(-50%);transition:all .2s;width:24px}.clear-search:hover{background:#d1d5db;color:#374151}.filter-sort-container{align-items:center;display:flex}.filter-sort-controls{align-items:stretch;display:flex;gap:12px}.filter-button{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;height:48px;padding:12px 16px;transition:all .2s ease;white-space:nowrap}.filter-button:hover{background-color:#f9fafb;border-color:#9ca3af}.filter-button:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.filter-button.has-filters{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.filter-icon,.sort-icon{font-size:16px}.dropdown-arrow{margin-left:4px;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.filter-dropdown{border:1px solid #6366f11f;border-radius:18px;box-shadow:0 18px 45px #4f46e52e;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;overflow-x:hidden;padding:20px;width:380px;z-index:1000}.filter-dropdown-section{display:flex;flex-direction:column;gap:8px;max-width:100%;overflow:visible}.filter-section-label{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.05em;padding:0 8px;text-transform:uppercase}.filter-checkbox-list{box-sizing:border-box;display:flex;flex-direction:column;gap:2px;max-height:200px;max-width:100%;overflow-x:hidden;overflow-y:auto;padding-right:4px}.filter-checkbox-list::-webkit-scrollbar{width:6px}.filter-checkbox-list::-webkit-scrollbar-track{background:#0000;border-radius:10px}.filter-checkbox-list::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:10px}.filter-checkbox-list::-webkit-scrollbar-thumb:hover{background:#6366f180}.filter-checkbox-item{align-items:center;border-radius:12px;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;max-width:100%;padding:12px 14px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.filter-checkbox-item:hover{background:#6366f114;transform:translateX(4px)}.filter-checkbox-input{-webkit-appearance:none;appearance:none;border:2px solid #d1d5db;border-radius:6px;cursor:pointer;flex-shrink:0;height:20px;position:relative;transition:all .2s ease;width:20px}.filter-checkbox-input:checked{background:linear-gradient(135deg,#6366f1,#4f46e5);border-color:#4f46e5}.filter-checkbox-input:checked:after{color:#fff;content:"✓";font-size:14px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.filter-checkbox-label{color:#1f2937;flex:1 1;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-checkbox-item:has(.filter-checkbox-input:checked){background:linear-gradient(135deg,#818cf859,#6366f133)}.filter-checkbox-item:has(.filter-checkbox-input:checked) .filter-checkbox-label{color:#312e81;font-weight:600}.filter-checkbox-check{color:#4338ca;font-size:16px;font-weight:700;margin-left:auto}.filter-empty-state{color:#9ca3af;font-size:14px;font-style:italic;padding:12px 14px;text-align:center}.clear-filters-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:12px;box-shadow:0 2px 8px #ef444433;color:#fff;font-weight:600;margin-top:4px;padding:12px 16px;transition:all .2s ease}.clear-filters-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.clear-filters-btn:active{transform:translateY(0)}.supplier-autocomplete-container{display:flex;flex-direction:column;gap:8px;max-width:100%;overflow:visible}.supplier-selected-tags{display:flex;flex-wrap:wrap;gap:6px;max-width:100%;overflow:visible;padding:4px 10px}.supplier-tag{align-items:center;background:#e5e7eb;border-radius:20px;color:#374151;display:flex;flex-direction:row;flex-wrap:nowrap;font-size:13px;gap:8px;justify-content:center;padding:6px 12px;transition:all .2s ease;width:-webkit-fit-content;width:fit-content}.supplier-tag:hover{background:#d1d5db}.supplier-tag-remove{align-items:center;background:none;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:14px;height:16px;justify-content:center;line-height:1;min-width:16px;padding:0;transition:all .2s ease;width:16px}.supplier-tag-remove:hover{background:#9ca3af;color:#fff}.supplier-search-wrapper{overflow:visible;padding:0 10px}.supplier-search-input{background:#fff;border:2px solid #e0e7ff;border-radius:10px;box-sizing:border-box;color:#1f2937;font-size:14px;font-weight:500;max-width:100%;padding:10px 12px;transition:all .2s ease;width:100%}.supplier-search-input::placeholder{color:#9ca3af;font-weight:400}.supplier-search-input:focus{background:linear-gradient(135deg,#818cf80d,#6366f105);border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.supplier-dropdown{border:1px solid #6366f11f;border-radius:12px;box-shadow:0 8px 24px #4f46e526;box-sizing:border-box;max-height:200px;overflow-x:hidden;padding:4px;top:calc(100% + 4px);z-index:1001}.supplier-dropdown::-webkit-scrollbar{width:6px}.supplier-dropdown::-webkit-scrollbar-track{background:#0000;border-radius:10px}.supplier-dropdown::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:10px}.supplier-dropdown::-webkit-scrollbar-thumb:hover{background:#6366f180}.supplier-dropdown-item{border-radius:8px;color:#1f2937;font-size:14px;font-weight:500;overflow:hidden;padding:10px 12px;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.supplier-dropdown-item:hover{background:#6366f114;transform:translateX(4px)}.sort-dropdown-wrapper{position:relative}.sort-button{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;height:48px;min-width:220px;padding:12px 16px;transition:all .2s ease;white-space:nowrap}.sort-button:hover{background-color:#f9fafb;border-color:#9ca3af}.sort-button:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.sort-dropdown{background:#fff;border:1px solid #6366f11f;border-radius:18px;box-shadow:0 18px 45px #4f46e52e;display:flex;flex-direction:column;gap:2px;min-width:240px;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.sort-option{align-items:center;background:#0000;border:none;border-radius:12px;color:#1f2937;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:space-between;padding:12px 14px;position:relative;text-align:left;transition:all .2s ease;z-index:1}.sort-option:hover{background:#6366f114;transform:translateX(4px)}.sort-option.active{background:linear-gradient(135deg,#818cf859,#6366f133);color:#312e81;font-weight:600}.sort-check{color:#4338ca;font-size:16px;font-weight:700}@media (max-width:768px){.filter-sort-controls{flex-direction:column;width:100%}.filter-button,.sort-button{justify-content:space-between;width:100%}.filter-dropdown,.sort-dropdown{left:0;min-width:100%;right:0}}.category-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;height:200px;overflow:hidden;transition:all .3s}.category-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.category-card-image{align-items:center;background:#f3f4f6;display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative}.category-card-image img{height:100%;object-fit:cover;width:100%}.category-placeholder{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.category-icon{font-size:48px;opacity:.3}.category-card-content{align-items:center;background:#fffffff2;display:flex;gap:10px;justify-content:space-between;padding:15px}.category-card-text{flex:1 1;min-width:0}.category-card-title{color:#111827;font-size:16px;font-weight:600;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-card-subtitle{color:#6b7280;font-size:13px;font-weight:400;margin:0}.category-card-actions{display:flex;gap:8px;opacity:0;transition:opacity .2s}.category-card:hover .category-card-actions{opacity:1}.category-delete-btn,.category-edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;line-height:1;padding:4px;transition:background .2s}.category-edit-btn:hover{background:#e5e7eb}.category-delete-btn:hover{background:#fee2e2}@media (max-width:768px){.category-card-actions{opacity:1}}.product-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:300px;overflow:hidden;position:relative;transition:all .2s}.product-card-menu{position:absolute;right:8px;top:8px;z-index:10}.product-card-menu-btn{align-items:center;background:#fffffff2;border:none;border-radius:50%;box-shadow:0 2px 6px #00000026;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:28px;justify-content:center;transition:all .15s;width:28px}.product-card-menu-btn:hover{background:#fff;box-shadow:0 3px 10px #0003;transform:scale(1.1)}.product-card-dropdown{animation:dropdownFadeIn .15s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #00000026;margin-top:4px;min-width:130px;overflow:hidden;position:absolute;right:0;top:100%}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.product-card-dropdown button{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 14px;text-align:left;transition:background .1s;width:100%}.product-card-dropdown button:hover{background:#f3f4f6}.product-card-dropdown button.delete-option{color:#dc2626}.product-card-dropdown button.delete-option:hover{background:#fef2f2}.product-card-dropdown .dropdown-icon{font-size:14px}.product-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.product-card-image{align-items:center;background:#f9fafb;display:flex;height:180px;justify-content:center;overflow:hidden;width:100%}.product-card-image img{height:100%;object-fit:cover;width:100%}.product-placeholder{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.product-icon{font-size:48px;opacity:.2}.product-card-info{display:flex;flex:1 1;flex-direction:column;gap:6px;padding:15px}.product-card-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#111827;display:-webkit-box;font-size:15px;font-weight:600;line-height:1.4}.product-card-name,.product-card-supplier{margin:0;overflow:hidden;text-overflow:ellipsis}.product-card-supplier{color:#6b7280;font-size:13px;white-space:nowrap}.product-card-price{color:#059669;font-size:16px;font-weight:700;margin:0}.product-card-updated{color:#9ca3af;font-size:11px;font-weight:400;margin:2px 0 0}.product-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.product-tag{background:#dbeafe;color:#1e40af;white-space:nowrap}.product-tag,.product-tag-more{border-radius:4px;font-size:11px;padding:3px 8px}.product-tag-more{background:#f3f4f6;color:#6b7280}@media (max-width:768px){.product-card{height:280px}.product-card-image{height:160px}}.breadcrumbs{background:#f8f9fa;border-bottom:2px solid #e5e7eb;box-shadow:0 4px 12px #0000001f;box-sizing:border-box;color:#6b7280;font-size:14px;justify-content:space-between;left:0;padding:14px 20px;position:fixed;top:60px;transition:margin-left .3s ease,width .3s ease;z-index:999}.breadcrumbs,.breadcrumbs-nav{align-items:center;display:flex}.breadcrumbs-nav{flex-wrap:wrap}.breadcrumbs-actions{align-items:center;display:flex;gap:10px}.breadcrumb-save-btn{border:none;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;min-width:140px;padding:10px 40px;transition:all .2s ease}.breadcrumb-save-btn.active{background:#3b82f6;color:#fff}.breadcrumb-save-btn.active:hover{background:#2563eb}.breadcrumb-save-btn.disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.breadcrumb-more-menu{position:relative}.breadcrumb-more-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:36px;justify-content:center;transition:all .15s;width:36px}.breadcrumb-more-btn:hover{background:#f3f4f6;border-color:#9ca3af}.breadcrumb-dropdown{animation:breadcrumbDropdownFadeIn .15s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #00000026;margin-top:6px;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes breadcrumbDropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.breadcrumb-dropdown button{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;text-align:left;transition:background .1s;width:100%}.breadcrumb-dropdown button:hover{background:#f3f4f6}.breadcrumb-dropdown button.delete-option{color:#dc2626}.breadcrumb-dropdown button.delete-option:hover{background:#fef2f2}.breadcrumb-dropdown .dropdown-icon{font-size:14px}.breadcrumb-item{align-items:center;display:inline-flex}.breadcrumb-link{color:#3b82f6;text-decoration:none;transition:color .2s}.breadcrumb-link:hover{color:#2563eb;text-decoration:underline}.breadcrumb-current{color:#111827;font-weight:500}.breadcrumb-separator{color:#9ca3af;margin:0 8px}@media (max-width:768px){.breadcrumbs{margin-left:0!important;width:100%!important}}.material-catalogue-page{background:#f5f7fa;min-height:100vh}.material-catalogue-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px;padding:40px}.loading-spinner{animation:spin .8s linear infinite}.loading-text{text-align:center}.material-catalogue-content{margin:0 auto;max-width:1400px;padding:20px 30px}.catalogue-header{margin-bottom:20px}.catalogue-header h1{color:#111827;font-size:28px;font-weight:700;margin:0}.section-header{margin:30px 0 20px}.section-header h2{color:#111827;font-size:22px;font-weight:600;margin:0}.categories-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:40px}.add-category-card{align-items:center;background:#fff;border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:10px;height:200px;justify-content:center;transition:all .3s}.add-category-card:hover{background:#f0f9ff;border-color:#3b82f6}.add-category-icon{color:#9ca3af;font-size:48px;font-weight:300;line-height:1}.add-category-card p{color:#6b7280;font-size:16px;font-weight:500;margin:0}.products-grid{margin-bottom:40px}.empty-state{border-radius:8px;padding:60px 20px}.recently-shown-section,.search-results-section{margin-top:30px}.file-info{color:#6b7280;font-size:12px;margin-top:6px}.recently-viewed-section{margin-bottom:40px;margin-top:40px}.recently-viewed-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.recently-viewed-table{border-collapse:collapse;table-layout:auto;width:100%}.recently-viewed-table thead{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #dee2e6}.recently-viewed-table th{color:#495057;font-size:14px;font-weight:600;letter-spacing:.05em;padding:16px 20px;text-align:left;text-transform:uppercase;white-space:nowrap}.recently-viewed-table tbody tr{border-bottom:1px solid #e9ecef;cursor:pointer;transition:all .2s ease}.recently-viewed-table tbody tr:hover{background:#f8f9fa;box-shadow:inset -4px 0 0 #3b82f6;transform:translateX(4px)}.recently-viewed-table tbody tr:last-child{border-bottom:none}.recently-viewed-table td{color:#1f2937;font-size:14px;padding:16px 20px;vertical-align:middle}.item-name-cell{max-width:400px;min-width:250px}.item-name-content{align-items:center;display:flex;gap:12px}.item-thumbnail{border:1px solid #e5e7eb;border-radius:8px;flex-shrink:0;height:48px;object-fit:cover;width:48px}.item-name-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1f2937;display:-webkit-box;font-weight:500;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.tags-cell{max-width:300px;min-width:200px;text-align:left;vertical-align:middle}.tags-cell .text-muted{color:#9ca3af!important;display:inline-block!important;font-size:14px!important;font-style:normal!important;font-weight:400!important;letter-spacing:normal!important;line-height:1!important;vertical-align:middle!important}.tags-container{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.tag-badge{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border:1px solid #6366f133;border-radius:6px;color:#6366f1;font-weight:500;padding:4px 10px;white-space:nowrap}.tag-badge,.tag-badge-more{align-items:center;display:inline-flex;font-size:12px}.tag-badge-more{background:#e5e7eb;border-radius:6px;color:#6b7280;font-weight:600;padding:4px 8px}.price-cell{min-width:120px;white-space:nowrap}.price-text{color:#059669;font-size:15px;font-weight:600}.supplier-cell{color:#6b7280;font-weight:500;min-width:180px;text-align:left;vertical-align:middle}.supplier-cell .text-muted,.text-muted{color:#9ca3af!important;display:inline-block!important;font-size:14px!important;font-style:normal!important;font-weight:400!important;letter-spacing:normal!important;line-height:1!important;vertical-align:middle!important}.see-more-container{background:#f9fafb;border-top:1px solid #e9ecef;padding:20px;text-align:center}.see-more-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 12px #3b82f64d;color:#fff;font-weight:600;padding:12px 24px;transition:all .3s ease}.see-more-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.see-more-btn:active{transform:translateY(0)}.recently-viewed-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 40px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:20px;opacity:.5}.empty-state-text{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.empty-state-subtext{color:#9ca3af;font-size:14px;margin:0}@media (max-width:768px){.material-catalogue-content{padding:15px}.search-filter-row{flex-direction:column}.search-filter-row>div:first-child,.search-filter-row>div:last-child{min-width:100%}.catalogue-header h1{font-size:24px}.categories-grid,.products-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.add-category-card{height:150px}.add-category-icon{font-size:36px}.modal-content{max-width:100%}.recently-viewed-table{font-size:13px}.recently-viewed-table td,.recently-viewed-table th{padding:12px 16px}.item-thumbnail{height:40px;width:40px}.supplier-cell,.tags-cell{min-width:150px}.recently-viewed-table-container{overflow-x:auto}.recently-viewed-table{min-width:800px}}@media (max-width:1024px){.recently-viewed-table{font-size:13px}.recently-viewed-table td,.recently-viewed-table th{padding:12px 16px}.item-thumbnail{height:40px;width:40px}.supplier-cell,.tags-cell{min-width:150px}}.move-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.move-modal-content{animation:moveModalSlideIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:420px;width:90%}@keyframes moveModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.move-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.move-modal-header h3{color:#111827;font-size:18px;font-weight:600;margin:0}.move-modal-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:18px;padding:4px 8px;transition:all .15s}.move-modal-close:hover{background:#f3f4f6;color:#111827}.move-modal-body{flex:1 1;overflow-y:auto;padding:20px}.move-modal-description{color:#4b5563;font-size:14px;line-height:1.5;margin:0 0 16px}.move-modal-description strong{color:#111827}.move-modal-empty,.move-modal-loading{color:#6b7280;font-size:14px;padding:32px 16px;text-align:center}.move-category-list{display:flex;flex-direction:column;gap:8px}.move-category-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 14px;transition:all .15s}.move-category-item:hover{background:#f8fafc;border-color:#3b82f6}.move-category-item.selected{background:#eff6ff;border-color:#3b82f6}.move-category-icon{align-items:center;background:#f3f4f6;border-radius:6px;display:flex;flex-shrink:0;height:40px;justify-content:center;overflow:hidden;width:40px}.move-category-icon img{height:100%;object-fit:cover;width:100%}.move-category-icon span{font-size:20px}.move-category-name{color:#111827;flex:1 1;font-size:14px;font-weight:500}.move-category-check{color:#3b82f6;font-size:16px;font-weight:600}.move-modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.move-btn-cancel{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s}.move-btn-cancel:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.move-btn-confirm{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-width:140px;padding:10px 20px;transition:all .15s}.move-btn-confirm:hover:not(:disabled){background:#2563eb}.move-btn-confirm:disabled{background:#9ca3af;cursor:not-allowed}.move-btn-cancel:disabled,.move-btn-confirm:disabled{opacity:.7}.material-category-page{background:#f5f7fa;min-height:100vh;padding-top:50px}.material-category-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px}.material-category-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:40px;width:40px}.material-category-loading .loading-text{color:#6b7280;font-size:16px;text-align:center}.category-cover-image,.category-cover-section{position:relative;width:100%}.category-cover-image{background-position:50%;background-size:cover;height:300px}.category-cover-overlay{align-items:flex-end;background:linear-gradient(0deg,#000c,#0000);bottom:0;display:flex;justify-content:space-between;left:0;padding:40px 30px 30px;position:absolute;right:0}.category-edit-menu-container{position:absolute;right:20px;top:20px;z-index:10}.category-edit-btn,.category-edit-btn-placeholder{align-items:center;background:#ffffffe6;border:none;border-radius:50%;color:#111827;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;transition:all .2s;width:40px}.category-edit-btn-placeholder:hover,.category-edit-btn:hover{background:#fff;transform:scale(1.1)}.category-edit-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:220px;overflow:hidden;position:absolute;right:0;top:50px;z-index:100}.category-edit-dropdown button{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;text-align:left;transition:background .2s;width:100%}.category-edit-dropdown button:hover{background:#f3f4f6}.category-edit-dropdown button:not(:last-child){border-bottom:1px solid #e5e7eb}.category-cover-title{color:#fff;font-size:32px;font-weight:700;margin:0;text-shadow:0 2px 4px #0000004d}.change-cover-btn{background:#ffffffe6;border:none;border-radius:6px;color:#111827;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.change-cover-btn:hover{background:#fff}.category-cover-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;gap:20px;height:200px;justify-content:center;padding:30px;width:100%}.category-cover-placeholder .category-cover-title{color:#fff}.add-cover-btn{background:#fff3;border:2px dashed #ffffff80;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.add-cover-btn:hover{background:#ffffff4d;border-color:#fffc}.material-category-content{margin:0 auto;max-width:1400px;padding:30px}.search-filter-row{align-items:stretch;gap:15px;margin-bottom:25px;width:100%}.search-filter-row>div:first-child{flex:1 1;min-width:0}.search-filter-row>div:last-child{flex:0 0 auto}.add-product-btn-large{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:12px 24px;transition:all .2s}.add-product-btn-large:hover{background:#2563eb}.products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:20px}.products-list{gap:15px;margin-top:20px}.add-product-card,.products-list{display:flex;flex-direction:column}.add-product-card{align-items:center;background:#fff;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;gap:10px;height:300px;justify-content:center;transition:all .3s}.add-product-card:hover{background:#f0f9ff;border-color:#3b82f6}.add-product-icon{color:#9ca3af;font-size:48px;font-weight:300;line-height:1}.add-product-card p{color:#6b7280;font-size:16px;font-weight:500;margin:0}.empty-state{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;margin-top:20px;padding:80px 20px}.empty-icon{margin-bottom:15px}.empty-state p{color:#6b7280;font-size:16px;margin:0}.image-preview{border:1px solid #e5e7eb;border-radius:8px;margin-top:15px;overflow:hidden}.image-preview img{max-height:200px;object-fit:cover;width:100%}.modal-content{box-shadow:0 20px 25px -5px #0000001a}.modal-header{padding:20px 24px}.modal-header h2{color:#111827;font-size:20px}.modal-close{font-size:24px;transition:color .2s}.modal-close:hover{color:#6b7280}.modal-body{padding:24px}.form-input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s;width:100%}.form-input:focus{border-color:#3b82f6}.modal-footer{padding:20px 24px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover:not(:disabled){background:#f3f4f6}.btn-danger{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.modal-footer-spacer{flex:1 1}.current-cover-section{margin-bottom:20px}.current-cover-section label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.current-cover-preview{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.current-cover-preview img{max-height:150px;object-fit:cover;width:100%}@media (max-width:768px){.category-cover-image{height:200px}.category-cover-overlay{align-items:flex-start;flex-direction:column;gap:15px;padding:20px 15px 15px}.category-cover-title{font-size:24px}.category-edit-menu-container{right:10px;top:10px}.material-category-content{padding:20px 15px}.search-filter-row{flex-direction:column}.search-filter-row>div:first-child,.search-filter-row>div:last-child{min-width:100%}.products-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.add-product-card{height:200px}.modal-content{max-width:100%}}.image-carousel{background:#f9fafb;border-radius:8px;overflow:hidden;width:100%}.image-carousel-empty{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;flex-direction:column;gap:10px;height:400px;justify-content:center;width:100%}.empty-icon{font-size:64px;opacity:.3}.image-carousel-empty p{color:#9ca3af;font-size:16px;margin:0}.carousel-main{align-items:center;background:#000;display:flex;height:500px;justify-content:center;position:relative;width:100%}.carousel-image,.carousel-video{cursor:zoom-in;max-height:100%;max-width:100%;object-fit:contain}.carousel-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;color:#111827;cursor:pointer;display:flex;font-size:28px;height:45px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:45px;z-index:10}.carousel-btn:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.carousel-btn-prev{left:15px}.carousel-btn-next{right:15px}.carousel-counter{background:#000000b3;border-radius:20px;bottom:15px;color:#fff;font-size:13px;font-weight:500;padding:6px 12px;position:absolute;right:15px}.carousel-thumbnails{background:#fff;display:flex;gap:10px;overflow-x:auto;padding:15px}.carousel-thumbnail{align-items:center;background:#f3f4f6;border:2px solid #0000;border-radius:6px;cursor:pointer;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;transition:all .2s;width:80px}.carousel-thumbnail:hover{border-color:#3b82f6;transform:scale(1.05)}.carousel-thumbnail.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.carousel-thumbnail img{height:100%;object-fit:cover;width:100%}.thumbnail-video-icon{font-size:32px;opacity:.6}@media (max-width:768px){.carousel-main{height:300px}.carousel-btn{font-size:22px;height:35px;width:35px}.carousel-thumbnail{height:60px;width:60px}}.dynamic-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;padding:20px}.dynamic-table-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:15px}.table-name{border-radius:6px;color:#111827;font-size:18px;font-weight:600;margin:0;padding:8px 12px;transition:background .2s}.table-name:hover{background:#f3f4f6}.table-name-input{border:2px solid #3b82f6;border-radius:6px;font-size:18px;font-weight:600;min-width:200px;outline:none;padding:8px 12px}.table-actions{display:flex;flex-wrap:wrap;gap:10px}.table-action-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:all .2s;white-space:nowrap}.table-action-btn:hover{background:#f3f4f6;border-color:#9ca3af}.table-action-btn.delete-btn{background:#fee2e2;border-color:#fecaca;color:#dc2626}.table-action-btn.delete-btn:hover{background:#fecaca;border-color:#ef4444}.table-scroll-container{border:1px solid #e5e7eb;border-radius:6px;overflow-x:auto}.dynamic-table{border-collapse:collapse;min-width:600px;width:100%}.dynamic-table thead{background:#f9fafb}.dynamic-table th{border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600;padding:12px;position:relative;text-align:left;white-space:nowrap}.dynamic-table td{border-bottom:1px solid #e5e7eb;padding:8px 12px}.column-header-input{background:#0000;border:1px solid #0000;border-radius:4px;font-size:14px;font-weight:600;min-width:120px;padding:6px 8px;transition:all .2s;width:100%}.column-header-input:not(:disabled):hover{background:#fff;border-color:#d1d5db}.column-header-input:focus{background:#fff;border-color:#3b82f6;outline:none}.column-header-input:disabled{cursor:default}.delete-col-btn{align-items:center;background:#fee2e2;border:none;border-radius:4px;color:#dc2626;cursor:pointer;display:none;font-size:12px;height:20px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s;width:20px}.dynamic-table th:hover .delete-col-btn{display:flex}.delete-col-btn:hover{background:#fecaca}.table-cell-input{background:#0000;border:1px solid #0000;border-radius:4px;font-size:14px;min-width:120px;padding:6px 8px;transition:all .2s;width:100%}.table-cell-input:not(:disabled):hover{background:#f9fafb;border-color:#d1d5db}.table-cell-input:focus{background:#fff;border-color:#3b82f6;outline:none}.table-cell-input:disabled{cursor:default}.row-actions-cell,.row-actions-header{text-align:center;width:80px}.delete-row-btn{background:#fee2e2;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px;transition:all .2s}.delete-row-btn:hover{background:#fecaca}@media (max-width:768px){.dynamic-table-container{padding:15px}.dynamic-table-header{align-items:flex-start;flex-direction:column}.table-actions{width:100%}.table-action-btn{flex:1 1}}.material-product-page{background:#f5f7fa;min-height:100vh;padding-top:60px}.material-product-loading{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:400px}.material-product-content{margin:0 auto;max-width:1600px;padding:20px 30px 40px}.product-layout{display:flex;flex-direction:column;gap:30px;margin-bottom:40px}.product-media-section{display:flex;flex-direction:column;gap:20px;max-width:100%;padding-bottom:10px;width:100%}.media-upload-input{display:none}.media-upload-empty{align-items:center;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;display:flex;height:500px;justify-content:center;transition:all .3s;width:100%}.media-upload-empty:hover{background:#f0f9ff;border-color:#3b82f6}.media-upload-empty.dragging{background:#dbeafe;border:3px solid #3b82f6}.media-upload-empty.dragging .upload-icon{transform:scale(1.1);transition:transform .2s}.media-upload-empty.dragging .upload-empty-content p{color:#1e40af}.upload-empty-content{align-items:center;display:flex;flex-direction:column;gap:12px;text-align:center}.upload-icon{font-size:64px;opacity:.4}.upload-empty-content p{color:#374151;font-size:18px;font-weight:600;margin:0}.upload-hint{color:#6b7280}.media-empty-state{align-items:center;background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;gap:12px;height:500px;justify-content:center;width:100%}.media-empty-state .empty-icon{font-size:64px;opacity:.3}.media-empty-state p{color:#6b7280;font-size:16px;margin:0}.media-preview-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;width:100%}.media-preview-container.dragging{background:#f0f9ff;border:3px solid #3b82f6}.drop-overlay{align-items:center;background:#dbeafef2;border:3px dashed #3b82f6;border-radius:8px;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:100}.drop-overlay-content{align-items:center;display:flex;flex-direction:column;gap:12px;text-align:center}.drop-icon{animation:bounce 1s infinite;font-size:72px;opacity:.8}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.drop-overlay-content p{color:#1e40af;font-size:24px;font-weight:600;margin:0}.media-preview-main{align-items:center;background:#f9fafb;display:flex;height:auto;justify-content:center;max-height:600px;min-height:400px;overflow:hidden;position:relative;width:100%}.media-preview-large{cursor:zoom-in;height:auto;max-height:600px;object-fit:contain;width:100%}.preview-nav-btn{align-items:center;background:#000c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:45px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:45px;z-index:10}.preview-nav-btn:hover{background:#000000f2;transform:translateY(-50%) scale(1.1)}.preview-nav-prev{left:15px}.preview-nav-next{right:15px}.media-counter{background:#000000b3;border-radius:20px;bottom:15px;color:#fff;font-size:13px;font-weight:500;padding:6px 12px;position:absolute;right:15px}.add-media-button-container{background:#f9fafb;display:flex;justify-content:flex-start;padding:15px 0}.add-media-button{align-items:center;background:#3b82f6;border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s}.add-media-button:hover{background:#2563eb;box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.add-media-button:active{transform:translateY(0)}.add-media-icon{font-size:16px;line-height:1}.media-thumbnails-wrapper{background:#f9fafb;overflow:visible;padding:10px 38px;position:relative}.carousel-viewport{display:flex;justify-content:flex-start;margin:0 auto;max-width:1200px;overflow:hidden;position:relative;width:100%}.media-thumbnails-carousel{align-items:center;background:#f9fafb;display:flex;flex-wrap:nowrap;gap:10px;justify-content:flex-start;overflow:visible;padding:0;transition:transform .6s ease;will-change:transform}.carousel-nav-btn{align-items:center;background:#000c;border:none;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:40px;z-index:10}.media-thumbnails-wrapper:hover .carousel-nav-btn{opacity:1}.carousel-nav-btn:hover{background:#000000f2;transform:translateY(-50%) scale(1.1)}.carousel-nav-prev{left:10px}.carousel-nav-next{right:10px}.media-thumbnail-item{background:#fff;border:2px solid #0000;border-radius:6px;cursor:pointer;flex:0 0 70px;height:70px;min-width:70px;overflow:hidden;position:relative;transition:border-color .2s;width:70px}.media-thumbnail-item.active,.media-thumbnail-item:hover{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.media-thumbnail{background:#f9fafb;height:100%;object-fit:contain;width:100%}.video-indicator-small{background:#000000b3;border-radius:3px;bottom:4px;color:#fff;font-size:10px;padding:2px 6px;position:absolute;right:4px}.media-remove-btn-small{align-items:center;background:#ef4444e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:none;font-size:12px;height:24px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s;width:24px}.media-thumbnail-item:hover .media-remove-btn-small{display:flex}.media-remove-btn-small:hover{background:#ef4444;transform:scale(1.1)}.media-add-more-small{align-items:center;background:#fff;border:2px dashed #d1d5db;border-radius:6px;cursor:pointer;display:flex;flex:0 0 100px;height:100px;justify-content:center;min-width:100px;transition:all .3s;width:100px}.media-add-more-small:hover{background:#f0f9ff;border-color:#3b82f6}.add-more-content-small{align-items:center;display:flex;justify-content:center;text-align:center}.add-more-icon-small{color:#9ca3af;font-size:32px;font-weight:300;line-height:1}.product-info-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:30px}.form-section-header{align-items:center;display:flex;gap:12px;margin-bottom:-4px;margin-top:40px}.form-section-header:first-child{margin-top:0}.section-title{color:#a8adb5;font-size:11px;font-weight:400;letter-spacing:.8px;text-transform:uppercase;white-space:nowrap}.section-divider{background:linear-gradient(90deg,#d1d5db 0,#e5e7eb 50%,#0000);flex:1 1;height:1px}.form-row{grid-gap:16px;display:grid;gap:16px;margin-bottom:4px}.form-row-2,.form-row-2.product-name-tags,.form-row-2.supplier-price-row{grid-template-columns:1fr 1fr}.form-row-3{grid-template-columns:1fr 1fr 1fr}.form-section-group{border-radius:8px;margin:16px -20px 0;padding:20px}.form-section-group.inventory-section{background:#f9fafb;border:1px solid #f3f4f6}.form-section-group .form-section-header{margin-bottom:-4px;margin-top:0}.form-section-group .form-row{margin-bottom:0}.muted-input{background:#f9fafb!important;border-color:#e5e7eb;color:#6b7280}.muted-input:not(:disabled){color:#374151}.muted-input:focus{background:#fff!important;border-color:#3b82f6}.supplier-address-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:4px}.supplier-address-group{margin-bottom:0!important}.supplier-address-group,.supplier-address-group+.supplier-address-group{grid-column:1;margin-top:2px!important}.info-group{align-items:stretch;display:flex;flex-direction:column;gap:4px}.info-group-compact{gap:6px}.info-group label{color:#374151;font-size:14px;font-weight:600}.info-group.primary{gap:4px;margin-bottom:0}.info-group.primary label{color:#111827;font-size:14px;font-weight:600;letter-spacing:-.01em}.info-group.primary .info-input,.info-group.primary .price-input,.info-group.primary .supplier-tag-input-field,.info-group.primary .tag-input-field{background:#fff;border:1px solid #d1d5db;font-size:14px;font-weight:400}.info-group.primary .info-input:focus,.info-group.primary .price-input:focus,.info-group.primary .supplier-tag-input-field:focus-within,.info-group.primary .tag-input-field:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f614}.info-group.secondary{gap:4px;margin-bottom:0;margin-top:8px}.product-name-tags .info-group.secondary{gap:6px;margin-bottom:0;margin-top:0}.product-name-tags .info-group{align-self:start}.product-name-tags .info-group.primary{margin-bottom:0}.info-group.secondary label{color:#6b7280;font-size:13px;font-weight:500}.info-group.secondary .info-input::placeholder,.info-group.secondary .info-textarea::placeholder,.info-group.secondary .tag-input-inline::placeholder{color:#9ca3af;font-size:13.5px;opacity:.7}.info-group.secondary .info-input,.info-group.secondary .info-textarea,.info-group.secondary .tag-input-field{background:#fafbfc;border-color:#e5e7eb;font-size:14px}.info-group.secondary .info-input:focus,.info-group.secondary .info-textarea:focus,.info-group.secondary .tag-input-field:focus-within{background:#fff;border-color:#3b82f6}.price-last-updated{color:#9ca3af;font-size:12px;font-style:normal;font-weight:400}.info-input,.info-textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;display:block;font-family:inherit;font-size:14px;margin:0;min-height:44px;outline:none;padding:10px 14px;transition:border-color .2s;width:100%}.info-input:focus,.info-textarea:focus{border-color:#3b82f6}.info-input:disabled,.info-textarea:disabled{background:#f9fafb;cursor:not-allowed}.info-textarea{min-height:100px;resize:vertical}.info-group-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.quantity-unit-row{grid-template-columns:2fr 1fr}.price-input-container{align-items:center;display:flex;gap:10px}.currency-dropdown-wrapper{min-width:100px;position:relative}.currency-display-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;gap:8px;justify-content:space-between;min-height:44px;padding:10px 14px;transition:all .2s;width:100%}.currency-display-trigger:hover{border-color:#9ca3af}.currency-display-trigger:focus,.currency-display-trigger:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f614}.currency-display-trigger.disabled{background:#f9fafb;cursor:not-allowed}.currency-display-trigger.disabled:hover{border-color:#d1d5db}.currency-value{color:#374151;font-weight:500}.currency-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.currency-dropdown-item{color:#374151;cursor:pointer;font-size:14px;padding:10px 14px;transition:background .15s}.currency-dropdown-item:hover{background:#f3f4f6}.currency-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;min-width:90px;outline:none;padding:10px 14px;transition:border-color .2s}.currency-select:focus{border-color:#3b82f6}.currency-select:disabled{background:#f9fafb;cursor:not-allowed}.price-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:14px;min-height:44px;outline:none;padding:10px 14px;transition:border-color .2s}.price-input:focus{border-color:#3b82f6}.price-input:disabled{background:#f9fafb;cursor:not-allowed}.tags-input-container{display:flex;flex-direction:column;gap:8px;width:100%}.tag-input-field{box-sizing:border-box;padding:10px 14px}.tags-display{display:flex;flex-wrap:wrap;gap:8px}.tag-chip{background:#dbeafe;color:#1e40af}.tag-remove{color:#1e40af;font-size:14px;transition:transform .2s}.tag-remove:hover{transform:scale(1.2)}.tag-menu-btn{background:none;border:none;color:inherit;cursor:pointer;font-size:16px;line-height:1;margin-left:-2px;padding:0;transition:transform .2s}.tag-menu-btn:hover{transform:scale(1.2)}.tag-color-menu{z-index:10000}.tag-menu-header{overflow:hidden}.tag-menu-name{border-radius:4px;cursor:text;font-family:inherit;font-size:13px;padding:6px 8px;transition:border-color .2s}.tag-menu-name,.tag-menu-name:focus{background:#fff}.tag-menu-delete{color:#374151}.tag-menu-delete:hover{background:#f9fafb}.tag-menu-section{padding:8px 12px}.tag-color-option{cursor:pointer}.tag-color-option:hover{background:#f3f4f6}.tag-color-swatch{border:1px solid #0000001a;border-radius:3px}.tag-color-swatch-default{background:#e5e7eb}.tag-color-swatch-gray{background:#9ca3af}.tag-color-swatch-brown{background:#d97706}.tag-color-swatch-orange{background:#f97316}.tag-color-swatch-yellow{background:#facc15}.tag-color-swatch-green{background:#22c55e}.tag-color-swatch-blue{background:#3b82f6}.tag-color-swatch-purple{background:#a855f7}.tag-color-swatch-pink{background:#ec4899}.tag-color-swatch-red{background:#ef4444}.tag-input-row{display:flex;gap:10px}.tag-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s;width:100%}.tag-input:focus{border-color:#3b82f6}.tag-input:disabled{background:#f9fafb;cursor:not-allowed}.tag-input-inline{background:#0000;border:none;outline:none;padding:4px}.empty-tags-text{color:#9ca3af;font-size:14px}.tag-add-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.tag-add-btn:hover{background:#2563eb}.tag-input-wrapper{position:relative;width:100%}.tag-dropdown{border-radius:6px;box-shadow:0 4px 12px #00000026;margin-top:4px;max-height:280px;top:100%}.tag-dropdown-menu-btn{color:#6b7280;font-size:16px;transition:all .15s}.tag-color-indicator{border:1px solid #0000001a}.tag-color-indicator-default{background:#e5e7eb}.tag-color-indicator-gray{background:#9ca3af}.tag-color-indicator-brown{background:#d97706}.tag-color-indicator-orange{background:#f97316}.tag-color-indicator-yellow{background:#facc15}.tag-color-indicator-green{background:#86efac}.tag-color-indicator-blue{background:#60a5fa}.tag-color-indicator-purple{background:#c084fc}.tag-color-indicator-pink{background:#f9a8d4}.tag-color-indicator-red{background:#f87171}.tag-dropdown-create{border-top:1px solid #e5e7eb}.tag-dropdown-create:hover{background:#eff6ff}.tag-dropdown-empty{padding:12px 14px}.storage-input-wrapper,.unit-input-wrapper{position:relative;width:100%}.storage-input-wrapper .info-input{box-sizing:border-box;width:100%}.storage-dropdown,.unit-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:280px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.dropdown-item-wrapper{align-items:center;display:flex;font-size:14px;justify-content:space-between;padding:10px 14px;position:relative;transition:background .15s}.dropdown-item-wrapper:hover{background:#f3f4f6}.dropdown-item-content{flex:1 1}.dropdown-item,.dropdown-item-content{align-items:center;cursor:pointer;display:flex;gap:8px}.dropdown-item{font-size:14px;padding:10px 14px;transition:background .15s}.dropdown-item:hover{background:#f3f4f6}.dropdown-create{border-top:1px solid #e5e7eb;color:#3b82f6;font-weight:500}.dropdown-create:hover{background:#eff6ff}.dropdown-icon{flex-shrink:0;font-size:16px}.dropdown-empty-message{color:#9ca3af;font-size:14px;font-style:italic;padding:16px 14px;text-align:center}.unit-dropdown-menu-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:16px;padding:4px 8px;transition:all .15s}.unit-dropdown-menu-btn:hover{background:#e5e7eb;color:#374151}.unit-edit-menu{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;box-sizing:border-box;max-width:220px;padding:8px 0;position:fixed;width:220px;z-index:10000}.unit-menu-header{border-bottom:1px solid #e5e7eb;overflow:hidden;padding:8px 12px}.unit-menu-name{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-sizing:border-box;cursor:text;font-family:inherit;font-size:13px;max-width:100%;outline:none;padding:6px 8px;transition:border-color .2s;width:100%}.unit-menu-name:focus{background:#fff;border-color:#3b82f6}.unit-menu-delete{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 12px;text-align:left;transition:background .15s;width:100%}.unit-menu-delete:hover{background:#f9fafb}.storage-edit-menu{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;box-sizing:border-box;max-height:410px;max-width:220px;overflow-y:auto;padding:8px 0;position:fixed;width:220px;z-index:10000}.storage-menu-header{border-bottom:1px solid #e5e7eb;overflow:hidden;padding:8px 12px}.storage-menu-name{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-sizing:border-box;cursor:text;font-family:inherit;font-size:13px;max-width:100%;outline:none;padding:6px 8px;transition:border-color .2s;width:100%}.storage-menu-name:focus{background:#fff;border-color:#3b82f6}.storage-menu-delete{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 12px;text-align:left;transition:background .15s;width:100%}.storage-menu-delete:hover{background:#f9fafb}.storage-dropdown-menu-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;margin-left:auto;padding:2px 8px;transition:color .15s}.storage-dropdown-menu-btn:hover{color:#4b5563}.projects-input-wrapper{position:relative;width:100%}.projects-display-trigger{align-items:center;background:#fafbfc;border:1px solid #e5e7eb;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;gap:10px;justify-content:space-between;min-height:44px;padding:8px 14px;transition:all .2s;width:100%}.projects-display-trigger:focus,.projects-display-trigger:focus-within,.projects-display-trigger:hover{background:#fff;border-color:#3b82f6}.projects-display-trigger.disabled{background:#f9fafb;cursor:not-allowed}.projects-display-trigger.disabled:hover{border-color:#d1d5db}.selected-projects-display{display:flex;flex:1 1;flex-wrap:wrap;gap:6px;overflow:hidden}.selected-project-tag{background:#dbeafe;border-radius:14px;color:#1e40af;font-size:13px;font-weight:500;padding:4px 10px;white-space:nowrap}.projects-placeholder{color:#9ca3af;font-size:14px;opacity:.8}.dropdown-arrow{color:#9ca3af;flex-shrink:0;font-size:10px;transition:transform .2s}.projects-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.projects-dropdown-section-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;padding:8px 14px;text-transform:uppercase}.projects-dropdown-section-header:not(:first-child){margin-top:8px}.projects-dropdown-item{align-items:center;cursor:pointer;display:flex;font-size:15px!important;gap:10px;padding:10px 14px;transition:background .15s}.projects-dropdown-item:hover{background:#f3f4f6}.project-checkbox{accent-color:#3b82f6;cursor:pointer;flex-shrink:0;height:16px;width:16px}.project-name{color:#374151;flex:1 1;font-size:15px!important;line-height:1}.projects-dropdown-empty{color:#9ca3af;font-size:14px;font-style:italic;padding:16px 14px;text-align:center}.supplier-input-wrapper,.supplier-search-wrapper{margin:0;padding:0;position:relative;width:100%}.supplier-tag-input-field{align-items:center;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start;margin:0;max-width:100%;min-height:44px;padding:10px 14px;transition:all .2s;width:100%}.supplier-tag-inline{background:#f3f4f6;border:1px solid #d1d5db;border-radius:16px;color:#374151;font-weight:500;gap:6px;padding:4px 10px}.supplier-tag-inline,.supplier-tag-remove-inline{align-items:center;display:inline-flex;font-size:13px}.supplier-tag-remove-inline{background:none;border:none;border-radius:50%;color:#6b7280;cursor:pointer;height:16px;justify-content:center;line-height:1;margin-left:2px;padding:0;transition:all .2s;width:16px}.supplier-tag-remove-inline:hover{background:#e5e7eb;color:#374151;transform:scale(1.1)}.supplier-search-input-inline{background:#0000;border:none;flex:1 1;font-family:inherit;font-size:14px;font-weight:400;min-width:150px;outline:none;padding:0}.supplier-search-input-inline::placeholder{color:#9ca3af}.supplier-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.supplier-dropdown-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:10px 14px;transition:background .15s}.supplier-dropdown-item:last-child{border-bottom:none}.supplier-dropdown-item:hover{background:#f3f4f6}.supplier-dropdown-name{color:#374151;font-size:15px;font-weight:500;margin-bottom:4px}.supplier-dropdown-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.supplier-dropdown-tag{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:12px;color:#6b7280;display:inline-block;font-size:12px;padding:2px 8px}.supplier-dropdown-empty{color:#9ca3af;font-size:14px;font-style:italic;padding:16px 14px;text-align:center}.product-actions{display:flex;gap:12px;grid-column:1/-1;margin-top:10px;padding-top:10px}.save-btn{background:#10b981;border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s}.save-btn:hover:not(:disabled){background:#059669}.save-btn:disabled{cursor:not-allowed;opacity:.5}.delete-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s}.delete-btn:hover:not(:disabled){background:#dc2626}.delete-btn:disabled{cursor:not-allowed;opacity:.5}.product-tables-section{margin-top:40px}.tables-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.tables-header h2{color:#111827;font-size:22px;font-weight:600;margin:0}.add-table-btn{background:#f97316;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s}.add-table-btn:hover{background:#ea580c}.add-table-btn-large{background:#f97316;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:12px 24px;transition:all .2s}.add-table-btn-large:hover{background:#ea580c}.no-tables-placeholder{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:60px 20px;text-align:center}.no-tables-placeholder p{color:#6b7280;font-size:16px;margin:0}.media-modal-overlay{background:#000000e6;bottom:0;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.media-modal-content,.media-modal-overlay{align-items:center;display:flex;justify-content:center}.media-modal-content{flex-direction:column;max-height:95vh;max-width:90vw;position:relative}.media-modal-close{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:0;top:-50px;transition:all .2s;width:40px}.media-modal-close:hover{background:#fff3;transform:scale(1.1)}.media-modal-nav{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:36px;height:50px;justify-content:center;line-height:1;position:fixed;top:50%;transform:translateY(-50%);transition:all .2s;width:50px;z-index:2001}.media-modal-nav:hover{background:#fff3;transform:translateY(-50%) scale(1.1)}.media-modal-prev{left:40px}.media-modal-next{right:40px}@media (max-width:768px){.media-modal-prev{left:10px}.media-modal-next{right:10px}}.media-modal-counter{border:1px solid #fff3;border-radius:12px;font-size:14px;padding:6px 12px;top:-50px}.media-modal-counter,.media-modal-zoom-indicator{background:#00000080;color:#ffffffb3;font-weight:500;left:50%;position:absolute;transform:translateX(-50%)}.media-modal-zoom-indicator{border:1px solid #fff3;border-radius:10px;bottom:-50px;font-size:13px;min-width:50px;padding:5px 10px;text-align:center}.media-modal-image-container{align-items:center;display:flex;justify-content:center;max-height:70vh;max-width:100%;overflow:hidden;position:relative}.media-modal-image-container.zoomed{height:90vh;max-height:none;width:90vw}.media-modal-image,.media-modal-video{border-radius:8px;max-height:70vh;max-width:100%;object-fit:contain;transform-origin:center center;transition:transform .1s ease-out;-webkit-user-select:none;user-select:none}.media-modal-image-container.zoomed .media-modal-image,.media-modal-image-container.zoomed .media-modal-video{height:auto;max-height:none;max-width:none;width:auto}.image-note-section{margin-top:16px;max-width:600px;width:100%}.image-note-divider{background:#ffffff26;height:1px;margin-bottom:12px}.image-note-label{align-items:center;color:#ffffff80;display:flex;font-size:12px;font-weight:400;gap:8px;margin-bottom:8px}.image-note-saving{color:#fff6;font-size:11px;font-style:italic}.image-note-input{background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;color:#ffffffe6;font-family:inherit;font-size:13px;line-height:1.5;max-height:120px;min-height:40px;padding:10px 12px;resize:vertical;transition:border-color .15s,background .15s;width:100%}.image-note-input::placeholder{color:#ffffff59}.image-note-input:focus{background:#ffffff1a;border-color:#ffffff4d;outline:none}.image-note-readonly{background:#ffffff0d;border-radius:6px;color:#ffffffb3;font-size:13px;line-height:1.5;margin:0;padding:10px 12px}.image-note-empty{color:#ffffff59;font-style:italic}@media (max-width:1024px){.form-row-2,.form-row-2.product-name-tags,.form-row-2.supplier-price-row,.form-row-3,.supplier-address-row{grid-template-columns:1fr 1fr}}@media (max-width:768px){.material-product-content{padding:15px}.product-info-section{gap:16px;padding:20px}.form-row-2,.form-row-2.product-name-tags,.form-row-2.supplier-price-row,.form-row-3,.info-group-row,.quantity-unit-row,.supplier-address-row{grid-template-columns:1fr}.price-input-container{align-items:stretch;flex-direction:column}.currency-dropdown-wrapper,.currency-select{width:100%}.product-actions,.tables-header{flex-direction:column}.tables-header{align-items:flex-start;gap:15px}.add-table-btn{width:100%}.media-upload-empty{height:300px}.upload-icon{font-size:48px}.upload-empty-content p{font-size:16px}.media-preview-main{height:auto;max-height:500px;min-height:250px}.preview-nav-btn{font-size:22px;height:35px;width:35px}.media-thumbnail-item{flex:0 0 60px;height:60px;min-width:60px;width:60px}.media-add-more-small{flex:0 0 80px;height:80px;min-width:80px;width:80px}.carousel-nav-btn{font-size:20px;height:32px;width:32px}.add-media-button-container{padding:12px 0}.add-media-button{font-size:13px;padding:10px 16px}}.add-media-button-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3b82f6f2;border:none;border-radius:8px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 12px;position:absolute;right:15px;top:15px;transition:all .2s;z-index:10}.add-media-button-overlay:hover{background:#2563ebf2;transform:scale(1.05)}.add-media-icon-small{font-size:16px;line-height:1}.media-preview-container{position:relative}.add-media-button-container,.info-group-row.quantity-unit-row,.media-add-more-small,.quantity-unit-row{display:none}.supplier-contacts-container,.supplier-list-container{background:#f5f7fa;min-height:100vh;padding:20px 30px 40px}.supplier-list-loading{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.loading-text{color:#6b7280;font-size:16px;margin:0}.supplier-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.supplier-list-header h1{color:#1f2937;font-size:28px;font-weight:600;margin:0}.add-supplier-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.add-supplier-btn:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.supplier-list-controls{margin-bottom:20px}.search-filter-row{align-items:center;display:flex;gap:12px}.supplier-search{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-size:14px;outline:none;padding:10px 16px;transition:all .2s}.supplier-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-dropdown-wrapper{position:relative}.filter-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 16px;transition:all .2s;white-space:nowrap}.filter-btn:hover{background:#f0f9ff;border-color:#3b82f6}.filter-count{align-items:center;background:#3b82f6;border-radius:10px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:2px 8px}.filter-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #00000026;max-height:300px;min-width:220px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.filter-dropdown-empty{color:#9ca3af;font-size:14px;padding:12px 16px;text-align:center}.filter-tag-option{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 16px;transition:background .15s}.filter-tag-option:hover{background:#f9fafb}.filter-tag-option input[type=checkbox]{cursor:pointer}.clear-filters-btn{background:#f9fafb;border:none;border-top:1px solid #e5e7eb;color:#ef4444;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background .15s;width:100%}.clear-filters-btn:hover{background:#fee2e2}.supplier-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.supplier-table{border-collapse:collapse;width:100%}.supplier-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.supplier-table th{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.supplier-table th.sortable{cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.supplier-table th.sortable:hover{background:#f3f4f6}.supplier-table th.sorted{font-weight:700}.supplier-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s}.supplier-table tbody tr:hover{background:#f9fafb}.supplier-table td{color:#374151;font-size:14px;padding:14px 16px}.supplier-name{color:#1f2937;font-weight:500}.no-results{color:#9ca3af;font-size:14px;padding:40px 20px;text-align:center}.notes-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expand-btn{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:4px;transition:all .2s}.expand-btn:hover{color:#3b82f6;transform:scale(1.1)}.tags-cell{display:flex;flex-wrap:wrap;gap:6px}.supplier-tag{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px;white-space:nowrap}.supplier-tag.tag-color-default,.tag-color-default{background:#f3f4f6;color:#374151}.supplier-tag.tag-color-gray,.tag-color-gray{background:#e5e7eb;color:#4b5563}.supplier-tag.tag-color-brown,.tag-color-brown{background:#fef3c7;color:#92400e}.supplier-tag.tag-color-orange,.tag-color-orange{background:#fed7aa;color:#c2410c}.supplier-tag.tag-color-yellow,.tag-color-yellow{background:#fef08a;color:#854d0e}.supplier-tag.tag-color-green,.tag-color-green{background:#bbf7d0;color:#166534}.supplier-tag.tag-color-blue,.tag-color-blue{background:#bfdbfe;color:#1e40af}.supplier-tag.tag-color-purple,.tag-color-purple{background:#e9d5ff;color:#6b21a8}.supplier-tag.tag-color-pink,.tag-color-pink{background:#fbcfe8;color:#9f1239}.supplier-tag.tag-color-red,.tag-color-red{background:#fecaca;color:#991b1b}.actions-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:20px;font-weight:700;line-height:1;padding:4px 8px;transition:all .2s}.actions-btn:hover{background:#f3f4f6;border-radius:4px;color:#3b82f6}.actions-menu{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #00000026;min-width:120px;overflow:hidden;z-index:1000}.actions-menu button{background:#fff;border:none;cursor:pointer;display:block;font-size:14px;padding:10px 16px;text-align:left;transition:background .15s;width:100%}.actions-menu button:hover{background:#f9fafb}.actions-menu .action-delete{color:#ef4444}.actions-menu .action-delete:hover{background:#fee2e2}.expanded-row td{background:#f9fafb;padding:0!important}.contacts-section{border-top:1px solid #e5e7eb;padding:20px 40px}.contacts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.contacts-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.add-contact-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s}.add-contact-btn:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.no-contacts{color:#9ca3af;font-size:14px;margin:0;padding:20px;text-align:center}.contacts-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:16px}.contact-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:16px;transition:all .2s}.contact-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #00000014}.contact-info{flex:1 1;min-width:0}.contact-name{color:#1f2937;font-size:15px;font-weight:600;margin-bottom:4px}.contact-name-row{align-items:center;display:flex;gap:8px;margin-bottom:4px}.primary-star-btn{background:none;border:none;cursor:pointer;font-size:18px;line-height:1;opacity:.3;padding:0;transition:all .2s}.primary-star-btn:hover{opacity:1;transform:scale(1.2)}.primary-star-btn.starred{opacity:1}.contact-link{color:#3b82f6;text-decoration:none;transition:all .2s}.contact-link:hover{color:#2563eb;text-decoration:underline}.contact-role{color:#6b7280;font-size:13px;margin-bottom:8px;min-height:20px}.contact-detail{color:#4b5563;font-size:13px;margin-bottom:4px;white-space:nowrap}.contact-detail,.contact-notes{overflow:hidden;text-overflow:ellipsis}.contact-notes{-webkit-line-clamp:2;-webkit-box-orient:vertical;border-top:1px solid #f3f4f6;color:#9ca3af;display:-webkit-box;font-size:12px;line-height:1.4;margin-top:8px;max-height:40px;padding-top:8px}.contact-actions{display:flex;flex-direction:column;gap:8px}.contact-actions button{align-items:center;background:#f9fafb;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;padding:6px;transition:all .2s;width:32px}.contact-actions button:hover{background:#e5e7eb;transform:scale(1.1)}.see-more-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#3b82f6;cursor:pointer;display:block;font-size:14px;font-weight:500;padding:12px;transition:all .2s;width:100%}.see-more-btn:hover{background:#f0f9ff;border-color:#3b82f6}.contacts-page-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.back-btn{background:#fff;border:1px solid #d1d5db;color:#6b7280;font-weight:500;padding:10px 16px;transition:all .2s}.back-btn:hover{background:#f9fafb;border-color:#3b82f6;color:#3b82f6}.contacts-page-header h1{color:#1f2937;flex:1 1;font-size:28px;font-weight:600;margin:0}.contacts-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.contacts-table{border-collapse:collapse;width:100%}.contacts-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.contacts-table th{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.contacts-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s}.contacts-table tbody tr:hover{background:#f9fafb}.contacts-table td{color:#374151;font-size:14px;padding:14px 16px}.contact-name-cell{color:#1f2937;font-weight:500}.error-message{color:#ef4444;font-size:16px;font-weight:500;padding:40px 20px;text-align:center}.modal-overlay{padding:20px;z-index:9999}.modal-content{border-radius:12px;box-shadow:0 20px 50px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-content.supplier-modal{max-width:1100px;min-width:900px}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 24px}.modal-header h2{color:#1f2937;font-size:18px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;font-size:28px;font-weight:300;height:32px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:32px}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-body{flex:1 1;padding:20px 24px}.supplier-form-grid{grid-gap:10px 30px;display:grid;gap:10px 30px;grid-template-columns:1fr 1fr}.supplier-form-grid .form-group{margin-bottom:0}.supplier-form-grid .form-group label{margin-bottom:4px}.supplier-form-grid .form-group .location-autocomplete-input,.supplier-form-grid .form-group .tag-input-field,.supplier-form-grid .form-group input{min-height:44px}.supplier-form-grid .form-group .location-autocomplete-input,.supplier-form-grid .form-group input:not(.tag-input-inline){height:44px}.supplier-form-grid .form-group .tag-input-field{height:auto;min-height:44px;padding:8px 14px}.supplier-form-grid .form-group .phone-number-input{height:44px;min-height:44px}.supplier-form-grid .form-group:has(.tags-input-container),.supplier-form-grid .form-group:has(textarea){grid-column:1/-1}@media (max-width:768px){.supplier-form-grid{grid-template-columns:1fr}}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{min-height:80px;resize:vertical}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-cancel,.btn-save{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-cancel{background:#fff;border:1px solid #d1d5db;color:#6b7280}.btn-cancel:hover{background:#f9fafb;border-color:#9ca3af}.btn-save{background:#3b82f6;border:none;color:#fff}.btn-save:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d}.tags-input-container{position:relative}.tag-input-field{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;display:flex;flex-wrap:wrap;gap:6px;min-height:44px;padding:8px 14px;transition:border-color .2s}.tag-input-field:focus-within{border-color:#3b82f6}.tag-chip{align-items:center;border-radius:16px;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;position:relative;white-space:nowrap}.tag-chip-default{background:#e5e7eb;color:#374151}.tag-chip-gray{background:#e5e7eb;color:#6b7280}.tag-chip-brown{background:#fef3c7;color:#92400e}.tag-chip-orange{background:#fed7aa;color:#c2410c}.tag-chip-yellow{background:#fef08a;color:#854d0e}.tag-chip-green{background:#bbf7d0;color:#166534}.tag-chip-blue{background:#bfdbfe;color:#1e40af}.tag-chip-purple{background:#e9d5ff;color:#6b21a8}.tag-chip-pink{background:#fbcfe8;color:#9f1239}.tag-chip-red{background:#fecaca;color:#991b1b}.tag-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:16px;line-height:1;opacity:.6;padding:0;transition:opacity .2s}.tag-remove:hover{opacity:1}.tag-input-inline{background:#0000!important;border:none!important;box-shadow:none!important;flex:1 1;font-family:inherit;font-size:14px;margin:0;min-width:150px;outline:none!important;padding:0}.tag-input-inline::placeholder{color:#9ca3af}.tag-input-inline:focus{border:none!important;box-shadow:none!important;outline:none!important}.tag-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #00000026;left:0;max-height:300px;overflow-y:auto;padding:4px 0;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.tag-dropdown-empty{color:#9ca3af;font-size:14px;padding:12px 16px;text-align:center}.tag-dropdown-item{align-items:center;display:flex;font-size:14px;justify-content:space-between;padding:10px 14px;position:relative;transition:background .15s}.tag-dropdown-item:hover{background:#f3f4f6}.tag-dropdown-content{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:8px}.tag-icon{flex-shrink:0;font-size:16px}.tag-color-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.tag-color-indicator-default{background:#9ca3af}.tag-color-indicator-gray{background:#6b7280}.tag-color-indicator-brown{background:#92400e}.tag-color-indicator-orange{background:#ea580c}.tag-color-indicator-yellow{background:#ca8a04}.tag-color-indicator-green{background:#16a34a}.tag-color-indicator-blue{background:#2563eb}.tag-color-indicator-purple{background:#7c3aed}.tag-color-indicator-pink{background:#db2777}.tag-color-indicator-red{background:#dc2626}.tag-dropdown-create{color:#3b82f6;font-weight:500}.tag-dropdown-menu-btn{background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;flex-shrink:0;font-size:18px;font-weight:700;line-height:1;padding:4px 8px;transition:all .2s}.tag-dropdown-menu-btn:hover{background:#e5e7eb;color:#374151}.tag-color-menu{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;box-sizing:border-box;max-height:410px;max-width:220px;overflow-y:auto;padding:8px 0;pointer-events:auto!important;position:fixed;width:220px;z-index:99999}.tag-menu-header{border-bottom:1px solid #e5e7eb;padding:8px 12px}.tag-menu-name{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;max-width:100%;outline:none;padding:8px;width:100%}.tag-menu-name:focus{border-color:#3b82f6}.tag-menu-delete{align-items:center;background:none;border:none;border-bottom:1px solid #e5e7eb;color:#ef4444;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 12px;text-align:left;transition:background .15s;width:100%}.tag-menu-delete:hover{background:#fee2e2}.tag-menu-section{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 12px 6px;text-transform:uppercase}.tag-color-options{padding:4px 0;pointer-events:auto!important}.tag-color-option{align-items:center;background:#0000;border:none;cursor:pointer!important;display:flex;font-size:14px;gap:10px;padding:8px 12px;pointer-events:auto!important;position:relative;text-align:left;transition:background .15s;width:100%;z-index:1}.tag-color-option:hover{background:#f9fafb}.tag-color-swatch{border-radius:4px;flex-shrink:0;height:18px;width:18px}.tag-color-swatch-default{background:#9ca3af}.tag-color-swatch-gray{background:#6b7280}.tag-color-swatch-brown{background:#92400e}.tag-color-swatch-orange{background:#ea580c}.tag-color-swatch-yellow{background:#ca8a04}.tag-color-swatch-green{background:#16a34a}.tag-color-swatch-blue{background:#2563eb}.tag-color-swatch-purple{background:#7c3aed}.tag-color-swatch-pink{background:#db2777}.tag-color-swatch-red{background:#dc2626}.tag-color-check{color:#3b82f6;font-weight:700;margin-left:auto}@media (max-width:1200px){.contacts-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){.supplier-contacts-container,.supplier-list-container{padding:16px}.contacts-page-header,.supplier-list-header{align-items:flex-start;flex-direction:column;gap:12px}.search-filter-row{flex-direction:column}.filter-btn{width:100%}.filter-dropdown{left:0;right:0;width:100%}.contacts-table-wrapper,.supplier-table-wrapper{overflow-x:auto}.contacts-table,.supplier-table{min-width:800px}.contacts-list{grid-template-columns:1fr}.modal-content{border-radius:0;max-height:100vh;max-width:100%}}.focused-inspection-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#000000eb;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.focused-inspection-container{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.focused-controls-top{align-items:center;background:linear-gradient(180deg,#00000080,#0000);display:flex;justify-content:space-between;left:0;padding:20px 30px;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:10}.focused-controls-top.visible{opacity:1}.focused-controls-top.hidden{opacity:0;pointer-events:none}.focused-image-counter{color:#fff;font-size:16px;font-weight:500;text-shadow:0 1px 3px #00000080}.focused-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:22px;color:#fff;cursor:pointer;display:flex;font-size:32px;height:44px;justify-content:center;transition:background-color .2s ease;width:44px}.focused-close-btn:hover{background:#ffffff4d}.focused-image-wrapper{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.focused-image{max-height:100%;max-width:100%;object-fit:contain;transform-origin:center center;transition:transform .1s ease-out;-webkit-user-select:none;user-select:none}.focused-nav-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:30px;color:#fff;cursor:pointer;display:flex;font-size:48px;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10}.focused-nav-btn:hover{background:#ffffff4d;transform:translateY(-50%) scale(1.1)}.focused-nav-btn.visible{opacity:1}.focused-nav-btn.hidden{opacity:0;pointer-events:none}.focused-nav-prev{left:30px}.focused-nav-next{right:30px}.focused-controls-bottom{align-items:center;background:linear-gradient(0deg,#00000080,#0000);bottom:0;display:flex;gap:20px;justify-content:space-between;left:0;padding:20px 30px;position:absolute;right:0;transition:opacity .3s ease;z-index:10}.focused-controls-bottom.visible{opacity:1}.focused-controls-bottom.hidden{opacity:0;pointer-events:none}.focused-zoom-indicator{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:20px;color:#fff;font-size:14px;font-weight:500;padding:8px 16px;text-shadow:0 1px 3px #00000080}.focused-edit-btn{background:#007aff;border:none;border-radius:24px;box-shadow:0 2px 8px #007aff66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:10px 24px;transition:all .2s ease}.focused-edit-btn:hover{background:#0051d5;box-shadow:0 4px 12px #007aff80;transform:translateY(-1px)}.focused-edit-btn:active{transform:translateY(0)}@media (max-width:768px){.focused-controls-bottom,.focused-controls-top{padding:15px 20px}.focused-nav-btn{font-size:40px;height:50px;width:50px}.focused-nav-prev{left:15px}.focused-nav-next{right:15px}.focused-image-counter{font-size:14px}.focused-close-btn{font-size:28px;height:40px;width:40px}}.annotation-toolbar-container{align-items:flex-end;bottom:20px;display:flex;flex-direction:column;gap:10px;position:absolute;right:20px;z-index:9}.annotation-toolbar-main{align-items:center;animation:slideUp .3s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:24px;box-shadow:0 4px 20px #00000026;display:flex;gap:12px;padding:12px 16px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.toolbar-section{align-items:center;display:flex;gap:8px}.toolbar-divider{background:#0000001a;height:32px;width:1px}.toolbar-btn{align-items:center;background:#0000;border:none;border-radius:12px;color:#000;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:50px;padding:8px 12px;transition:all .2s ease}.toolbar-btn:hover{background:#0000000d}.toolbar-btn.active{background:#007aff;color:#fff}.toolbar-btn.disabled{cursor:not-allowed;opacity:.3}.toolbar-btn.disabled:hover{background:#0000}.toolbar-btn-label{font-size:10px;font-weight:500;white-space:nowrap}.color-btn{position:relative}.color-preview{border:2px solid #0000001a;border-radius:12px;box-shadow:0 1px 3px #0003;height:24px;width:24px}.annotation-toolbar-secondary{align-items:center;animation:slideUp .2s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:20px;box-shadow:0 2px 12px #0000001a;display:flex;gap:10px;padding:10px 14px}.secondary-section{align-items:center;display:flex;gap:6px}.toolbar-divider-small{background:#0000001a;height:24px;width:1px}.secondary-btn{align-items:center;background:#0000000d;border:none;border-radius:10px;color:#000;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.secondary-btn:hover{background:#00000014}.secondary-btn.active{background:#007aff;color:#fff}.secondary-btn svg{stroke:currentColor}.thickness-btn{align-items:center;background:#0000;border:none;border-radius:10px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.thickness-btn:hover{background:#0000000d}.thickness-btn.active{background:#007aff1a}.thickness-dot{background:#000;border-radius:50%}.thickness-btn.active .thickness-dot{background:#007aff}.thickness-thin{height:4px;width:4px}.thickness-medium{height:8px;width:8px}.thickness-thick{height:12px;width:12px}.color-picker-popup{animation:scaleIn .2s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:20px;box-shadow:0 4px 20px #00000026;padding:12px}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.color-picker-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.color-swatch{align-items:center;border:3px solid #0000001a;border-radius:22px;cursor:pointer;display:flex;height:44px;justify-content:center;position:relative;transition:all .2s ease;width:44px}.color-swatch:hover{box-shadow:0 2px 8px #0003;transform:scale(1.1)}.color-swatch.selected{border-color:#007aff;border-width:4px}@media (max-width:768px){.annotation-toolbar-container{bottom:15px;right:15px}.annotation-toolbar-main{gap:8px;padding:10px 12px}.toolbar-btn{min-width:44px;padding:6px 8px}.toolbar-btn-label{font-size:9px}.secondary-btn{font-size:12px;padding:5px 10px}.color-swatch{height:40px;width:40px}}.annotation-canvas-container{align-items:center;display:flex;justify-content:center;max-height:90%;max-width:90%;position:relative}.annotation-base-image{display:block;max-height:100%;max-width:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.annotation-canvas-layer,.annotation-canvas-overlay{height:100%;left:0;object-fit:contain;position:absolute;top:0;width:100%}.annotation-canvas-layer{pointer-events:none}.annotation-canvas-overlay{cursor:crosshair}.annotation-text-input-container{align-items:center;display:flex;gap:5px;position:absolute;z-index:100}.annotation-text-input-container input{background:#0000;border:2px dashed #ffffff80;border-radius:4px;color:inherit;font-family:sans-serif;font-size:inherit;min-width:200px;padding:6px 10px}.annotation-text-input-container input:focus{border-color:#007aff;border-style:solid;outline:none}.annotation-text-input-container button{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.annotation-text-input-container button:hover{background:#fff3;transform:scale(1.1)}.annotation-edit-overlay{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-color:#000000f2;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:10001}.annotation-edit-container{display:flex;flex-direction:column;height:100%;position:relative;width:100%}.annotation-top-bar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;display:flex;justify-content:space-between;padding:12px 20px;z-index:10}.annotation-close-btn{background:#ff3b30e6;border:none;border-radius:20px;box-shadow:0 2px 8px #ff3b304d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:8px 16px;transition:all .2s ease}.annotation-close-btn:hover{background:#ff3b30;box-shadow:0 4px 12px #ff3b3066;transform:translateY(-1px)}.annotation-image-counter{color:#fff;font-size:16px;font-weight:500}.annotation-done-btn{background:#007aff;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:8px 20px;transition:all .2s ease}.annotation-done-btn:hover{background:#0051d5;transform:translateY(-1px)}.annotation-done-btn:active{transform:translateY(0)}.annotation-zoom-controls{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;border-radius:20px;display:flex;gap:8px;padding:8px 12px;position:absolute;right:20px;top:80px;z-index:15}.annotation-zoom-controls button{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;width:32px}.annotation-zoom-controls button:hover{background:#fff3;transform:scale(1.1)}.annotation-zoom-controls span{color:#fff;font-size:14px;font-weight:500;min-width:50px;text-align:center}.annotation-canvas-area{flex:1 1;overflow:hidden;position:relative}.annotation-canvas-area,.annotation-nav-btn{align-items:center;display:flex;justify-content:center}.annotation-nav-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:30px;color:#fff;cursor:pointer;font-size:48px;height:60px;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:60px;z-index:5}.annotation-nav-btn:hover{background:#ffffff4d;transform:translateY(-50%) scale(1.1)}.annotation-nav-prev{left:20px}.annotation-nav-next{right:20px}.color-picker-backdrop{animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000004d;bottom:0;left:0;position:fixed;right:0;top:0;z-index:8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.annotation-top-bar{padding:10px 15px}.annotation-nav-btn{font-size:40px;height:50px;width:50px}.annotation-nav-prev{left:10px}.annotation-nav-next{right:10px}}.defect-tracker-container{background:#f5f7fa;min-height:100vh;padding:32px}.defect-tracker-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.defect-tracker-header h1{color:#1a1a1a;font-size:36px;font-weight:700;margin:0}.header-left{align-items:center;display:flex;gap:16px}.back-btn{background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease}.back-btn:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateX(-2px)}.create-defect-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.create-defect-btn:hover{background-color:#2563eb;box-shadow:0 4px 6px #3b82f64d}.loading-state{color:#6b7280;font-size:18px;padding:64px;text-align:center}.projects-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;padding:24px}.projects-section h2{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 20px}.projects-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:none;overflow:visible}.projects-grid.expanded{max-height:600px;overflow-y:auto;padding-right:8px}.projects-grid.expanded::-webkit-scrollbar{width:8px}.projects-grid.expanded::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.projects-grid.expanded::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.projects-grid.expanded::-webkit-scrollbar-thumb:hover{background:#94a3b8}.show-more-container{display:flex;justify-content:center;margin-top:20px}.show-more-btn{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:2px solid #cbd5e1;border-radius:8px;color:#475569;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.show-more-btn:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border-color:#94a3b8;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.show-more-btn:active{transform:translateY(0)}.project-tile{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:20px;transition:all .2s ease}.project-tile:hover{border-color:#3b82f6;box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.project-name{color:#1a1a1a;font-size:18px;font-weight:600;margin-bottom:8px}.project-location{color:#6b7280;font-size:14px;margin-bottom:4px}.project-client{color:#9ca3af;font-size:12px;margin-top:8px}.recently-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.recently-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.recently-section h2{color:#1a1a1a;font-size:18px;font-weight:600;margin:0}.defect-lists-table{border-collapse:collapse;width:100%}.defect-lists-table thead tr{border-bottom:2px solid #e5e7eb}.defect-lists-table th{color:#374151;font-weight:600;padding:12px;text-align:left}.defect-lists-table td{border-bottom:1px solid #f3f4f6;padding:12px}.defect-lists-table td.actions-cell,.defect-lists-table th:last-child{text-align:center}.defect-lists-table .actions-cell{align-items:center;display:flex;gap:12px;justify-content:center}.defect-lists-table .edit-btn{align-items:center;background:#f3f4f6!important;border:1px solid #d1d5db!important;border-radius:6px!important;cursor:pointer;display:flex;font-size:16px!important;height:36px!important;justify-content:center;min-width:36px!important;padding:8px!important;transition:all .2s ease;width:36px!important}.defect-lists-table .edit-btn:hover{background:#e5e7eb!important;border-color:#9ca3af!important}.defect-lists-table .delete-btn{align-items:center;background-color:#ef4444!important;border:none!important;border-radius:6px!important;color:#fff!important;cursor:pointer;display:flex;font-size:16px!important;font-weight:700;height:36px!important;justify-content:center;min-width:36px!important;padding:8px!important;transition:all .2s ease;width:36px!important}.defect-lists-table .delete-btn:hover{background-color:#dc2626!important}.empty-state{color:#9ca3af;padding:24px;text-align:center}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:32px;width:90%}.modal-content h3{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 24px}.modal-form{gap:20px}.form-group,.modal-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#374151;font-size:14px;font-weight:500}.form-group input,.form-group select{border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.cancel-btn,.save-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.cancel-btn{background:#f3f4f6;color:#374151}.cancel-btn:hover{background:#e5e7eb}.save-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.save-btn:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.defect-list-row{cursor:pointer;transition:background-color .2s ease}.defect-list-row:hover{background-color:#f9fafb}.defect-list-row td:first-child{color:#3b82f6;font-weight:500}.defect-entries-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;padding:20px}.defect-entries-header{margin-bottom:20px}.defect-entries-section h2{color:#1a1a1a;font-size:18px;font-weight:600;margin:0}.defect-entries-table{border-collapse:collapse;min-width:900px;table-layout:auto;width:100%}.defect-entries-table thead tr{border-bottom:2px solid #e5e7eb}.defect-entries-table th{color:#374151;font-size:15px;font-weight:600;letter-spacing:.025em;padding:16px 20px;text-align:left}.defect-entries-table th:last-child{text-align:center;width:80px}.defect-entries-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.defect-entries-table tbody tr:hover{background-color:#f9fafb}.defect-entries-table tbody tr:last-child{border-bottom:none}.row-drop-zone,.row-drop-zone td{display:none}.drop-zone-cell.drag-over:before{background:#3b82f6;border-radius:2px;box-shadow:0 0 8px #3b82f680;content:"";height:3px;left:50px;position:absolute;right:50px;top:50%;transform:translateY(-50%);z-index:1}.drop-zone-cell.drag-over:after{background:#3b82f6;border-radius:4px;box-shadow:0 2px 8px #3b82f666;color:#fff;content:"Drop here to insert row";font-size:11px;font-weight:600;left:50%;padding:4px 12px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:10}.drop-zone-indicator{display:none;height:8px;left:0;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.drop-zone-cell.drag-over .drop-zone-indicator{display:block}.drop-zone-indicator:before{left:40px}.drop-zone-indicator:after,.drop-zone-indicator:before{background:#3b82f6;border-radius:50%;box-shadow:0 0 6px #3b82f699;content:"";height:8px;position:absolute;top:50%;transform:translateY(-50%);width:8px}.drop-zone-indicator:after{right:40px}.drag-over-row{background:#3b82f61a!important;box-shadow:0 0 0 4px #3b82f626;outline:2px solid #3b82f6;outline-offset:-2px}.defect-entries-table tbody tr.dragging-row{background:#f3f4f6!important;opacity:.5}.drag-handle-header{min-width:40px;padding:12px 8px!important;width:40px}.drag-handle-cell{min-width:40px;padding:16px 8px!important;text-align:center;vertical-align:middle;width:40px}.row-drag-handle{align-items:center;border-radius:4px;color:#9ca3af;cursor:grab;display:inline-flex;font-size:16px;height:28px;justify-content:center;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:28px}.row-drag-handle:hover{background:#f3f4f6;color:#3b82f6;transform:scale(1.1)}.row-drag-handle:active{background:#e5e7eb;cursor:grabbing}.defect-entries-table td{color:#1f2937;padding:16px 20px;vertical-align:top}.defect-entries-table td.actions-cell{padding:16px 8px;text-align:center;vertical-align:middle;width:80px}.defect-entries-table .actions-cell{align-items:center;display:flex;justify-content:center}.images-cell{width:180px}.location-cell{width:35%}.main-image-container{cursor:move;display:flex;flex-direction:column;gap:8px;position:relative}.main-image-container[draggable=true]{cursor:grab}.main-image-container[draggable=true]:active{cursor:grabbing}.main-image-container.dragging{cursor:grabbing;opacity:.5}.image-hover-container{position:relative}.image-hover-overlay{align-items:flex-start;bottom:0;display:flex;justify-content:space-between;left:0;opacity:0;padding:8px;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s ease;z-index:10}.image-hover-container:hover .image-hover-overlay{opacity:1;pointer-events:auto}.image-delete-btn,.image-edit-btn{align-items:center;background:#000000bf;border:none;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:0;pointer-events:auto;transition:all .2s ease;width:28px;z-index:11}.image-edit-btn{font-size:13px}.image-edit-btn:hover{background:#000000e6;box-shadow:0 4px 12px #0006;transform:scale(1.1)}.image-delete-btn{font-size:16px;font-weight:600;line-height:1}.image-delete-btn:hover{background:#000000e6;box-shadow:0 4px 12px #0006;transform:scale(1.1)}.main-image-wrapper{cursor:grab;position:relative}.main-image-wrapper:active{cursor:grabbing}.drag-hint{background:#000000b3;border-radius:4px;bottom:4px;color:#fff;font-size:10px;left:4px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;right:4px;text-align:center;transition:all .2s ease;-webkit-user-select:none;user-select:none}.drag-hint.drag-handle{align-items:center;background:#000000bf;border-radius:6px;box-shadow:0 2px 8px #0000004d;cursor:grab;display:flex;font-size:11px;font-weight:600;gap:6px;justify-content:center;opacity:0;padding:8px 12px;pointer-events:auto;transition:all .2s ease;z-index:10}.drag-hint.drag-handle:hover{background:#000000e6;box-shadow:0 4px 12px #00000080;transform:translateY(-2px)}.drag-hint.drag-handle:active{cursor:grabbing;transform:translateY(0)}.drag-handle-icon{font-size:14px;font-weight:700;letter-spacing:-2px;line-height:1}.main-image-container:hover .drag-hint{opacity:1}.additional-image-wrapper{cursor:grab;position:relative}.additional-image-wrapper:active{cursor:grabbing}.additional-image-item:hover .drag-hint{opacity:1}.main-image-container.drag-over{background:#3b82f60d;border:2px dashed #3b82f6;border-radius:8px;box-shadow:0 0 0 3px #3b82f61a}.main-image-container.empty-main-image{align-items:center;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:8px;display:flex;justify-content:center;min-height:120px}.main-image-container.empty-main-image.drag-over{background:#3b82f60d;border-color:#3b82f6}.empty-main-placeholder{padding:20px;text-align:center;transition:all .2s ease}.main-image-container.empty-main-image:hover .empty-main-placeholder{background:#f9fafb;border-radius:8px}.main-image{-webkit-user-drag:none;height:auto;object-fit:cover}.main-image,.main-image video{border-radius:8px;max-height:200px;max-width:180px;-webkit-user-select:none;user-select:none;width:100%}.description-cell{min-width:300px}.description-content{border-radius:4px;cursor:pointer;padding:8px;transition:background-color .2s ease}.description-content:hover{background:#f9fafb}.location-text{color:#1a1a1a;font-weight:600;margin-bottom:4px}.description-text{color:#6b7280;font-size:14px}.placeholder-text{color:#9ca3af;font-size:14px;font-style:italic}.edit-form{display:flex;flex-direction:column;gap:8px}.description-textarea,.location-input,.who-input{word-wrap:break-word;background:#fff;border:2px solid #e5e7eb;border-radius:6px;font-family:inherit;font-size:14px;overflow:hidden;padding:8px;resize:none;transition:border-color .2s ease;white-space:pre-wrap;width:100%}.location-input.auto-expand,.who-input.auto-expand{line-height:1.5;min-height:38px}.description-textarea:focus,.location-input:focus,.who-input:focus{border-color:#3b82f6;outline:none}.description-textarea:disabled,.location-input:disabled,.who-input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.7}.description-textarea{min-height:60px;resize:vertical}.delete-entry-btn{align-items:center;background-color:#ef4444!important;border:none!important;border-radius:6px!important;color:#fff!important;cursor:pointer;display:flex;font-size:16px!important;font-weight:700;height:36px!important;justify-content:center;line-height:1;min-width:36px!important;padding:8px!important;transition:all .2s ease;width:36px!important}.delete-entry-btn:hover{background-color:#dc2626!important}.who-in-charge-cell{min-width:120px;width:15%}.who-content{border-radius:4px;cursor:pointer;padding:8px;transition:background-color .2s ease}.who-content:hover{background:#f9fafb}.additional-images-cell{width:220px}.additional-images-grid{grid-gap:8px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);min-height:100px;padding:8px;position:relative;transition:all .2s ease}.additional-images-grid.clickable{cursor:pointer}.additional-images-grid.clickable:hover,.additional-images-grid.drag-over{background:#eff6ff;border-color:#3b82f6}.additional-images-grid.drag-over{border-style:solid}.drag-hint-additional{background:#3b82f6f2;border-radius:4px;bottom:8px;color:#fff;font-size:11px;font-weight:500;left:50%;opacity:0;padding:4px 10px;pointer-events:none;position:absolute;text-align:center;transform:translateX(-50%);transition:opacity .2s ease;white-space:nowrap;z-index:10}.additional-image-item:hover .drag-hint-additional{opacity:1}.additional-image-item{aspect-ratio:1;border-radius:6px;cursor:move;overflow:hidden;position:relative;width:100%}.additional-image-item[draggable=true]{cursor:grab}.additional-image-item[draggable=true]:active{cursor:grabbing}.additional-image{-webkit-user-drag:none}.additional-image,.additional-image video{height:100%;object-fit:cover;pointer-events:auto;-webkit-user-select:none;user-select:none;width:100%}.image-upload-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.image-upload-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}.image-upload-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.image-upload-header h3{color:#1a1a1a;font-size:20px;font-weight:600;margin:0}.close-modal-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;padding:4px 8px;transition:all .2s ease}.close-modal-btn:hover{background:#f3f4f6;color:#1a1a1a}.image-upload-content{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:24px}.defect-name-input-group{display:flex;flex-direction:column;gap:8px}.defect-name-input-group label{color:#374151;font-size:14px;font-weight:500}.defect-name-input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .2s ease;width:100%}.defect-name-input:focus{border-color:#3b82f6;outline:none}@media (max-width:768px){.defect-tracker-container{padding:16px}.defect-tracker-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px}.defect-tracker-header h1{font-size:24px}.header-left{flex-wrap:wrap;width:100%}.back-btn{font-size:13px;padding:6px 12px}.create-defect-btn{font-size:14px;padding:10px 20px;width:100%}.projects-section,.recently-section{margin-bottom:20px;padding:16px}.projects-section h2,.recently-section h2{font-size:20px;margin-bottom:16px}.projects-grid{gap:12px;grid-template-columns:1fr}.project-tile{padding:16px}.project-name{font-size:16px}.defect-lists-table{border-radius:8px;font-size:14px}.defect-lists-table th{font-size:11px;padding:12px 10px}.defect-lists-table td{padding:12px 10px}.defect-lists-table td:first-child,.defect-lists-table th:first-child{min-width:120px}.defect-lists-table td:nth-child(2),.defect-lists-table th:nth-child(2){min-width:100px}.defect-entries-section{padding:16px}.defect-entries-section h2{font-size:20px;margin-bottom:16px}.defect-entries-table{font-size:12px}.defect-entries-table td,.defect-entries-table th{padding:8px 4px}.additional-images-cell,.main-image-cell{min-width:80px}.main-image-cell img,.main-image-cell video{height:60px;width:60px}.additional-image-item{height:50px;width:50px}.location-input,.who-in-charge-input{font-size:12px;padding:6px}.image-upload-modal{max-height:90vh;max-width:100%;padding:16px;width:95%}.image-upload-header h3{font-size:18px}.defect-name-input-group{margin-bottom:12px}.defect-name-input{font-size:14px;padding:10px}.upload-area{padding:40px 20px}.upload-placeholder-content{gap:12px}.upload-icon{font-size:3rem}.images-preview-grid{gap:8px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));max-height:250px}.image-preview-item{height:100px;width:100px}.preview-media{height:100%;width:100%}.upload-actions{flex-direction:column;gap:10px}.add-more-btn,.submit-defects-btn{font-size:14px;padding:10px;width:100%}.modal-overlay{padding:16px}.modal-content{max-width:100%;padding:20px;width:95%}.modal-content h3{font-size:18px}.form-group{margin-bottom:16px}.form-group label{font-size:14px}.form-group input,.form-group select{font-size:14px;padding:10px}.modal-actions{flex-direction:column;gap:10px}.cancel-btn,.save-btn{padding:10px;width:100%}.defect-lists-table .actions-cell{display:flex;gap:8px}}@media (max-width:480px){.defect-tracker-container{padding:12px}.defect-tracker-header h1{font-size:20px}.defect-entries-section h2,.projects-section h2,.recently-section h2{font-size:18px}.defect-lists-table{-webkit-overflow-scrolling:touch;border-radius:8px;display:block;font-size:12px;overflow-x:auto}.defect-lists-table th{font-size:10px;padding:10px 8px}.defect-lists-table td{padding:10px 8px}.defect-entries-table{-webkit-overflow-scrolling:touch;display:block;font-size:11px;overflow-x:auto}.defect-entries-table td,.defect-entries-table th{padding:6px 3px}.main-image-cell img,.main-image-cell video{height:50px;width:50px}.additional-image-item{height:40px;width:40px}.images-preview-grid{gap:6px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.image-preview-item{height:80px;width:80px}}.upload-area{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;display:block;display:flex;justify-content:center;min-height:300px;transition:all .2s ease;width:100%}.upload-area:hover{background:#eff6ff;border-color:#3b82f6}.upload-placeholder-content{color:#6b7280;text-align:center}.upload-icon{display:block;font-size:48px;margin-bottom:12px}.upload-placeholder-content p{font-size:16px;margin:4px 0}.upload-hint{color:#9ca3af;font-size:14px}.images-preview-container{display:flex;flex-direction:column;gap:16px}.images-preview-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-height:400px;overflow-y:auto;padding:8px}.images-vertical-list{flex-direction:column;max-height:500px;overflow-y:auto}.image-row,.images-vertical-list{display:flex;gap:12px;padding:8px}.image-row{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s ease}.image-row:hover{background:#f3f4f6;border-color:#d1d5db}.image-row.drag-over-row-target{background:#3b82f60d;border:2px dashed #3b82f6;box-shadow:0 0 0 4px #3b82f61a}.image-row.dragging-row{border:2px dashed #9ca3af;opacity:.5}.image-row.drop-target-row{background:#3b82f61a;border:2px solid #3b82f6;box-shadow:0 0 0 4px #3b82f626}.upload-row-drag-handle{align-items:center;border-radius:4px;color:#9ca3af;cursor:grab;display:flex;flex-shrink:0;font-size:16px;height:100px;justify-content:center;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:28px}.upload-row-drag-handle:hover{background:#e5e7eb;color:#3b82f6}.upload-row-drag-handle:active{background:#d1d5db;cursor:grabbing}.add-to-row-btn{align-items:center;background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;display:flex;flex-shrink:0;height:100px;justify-content:center;transition:all .2s ease;width:100px}.add-to-row-btn span{color:#9ca3af;font-size:32px;font-weight:300}.add-to-row-btn:hover{background:#f3f4f6;border-color:#3b82f6}.add-to-row-btn:hover span{color:#3b82f6;transform:scale(1.1)}.image-row-item{align-items:center;display:flex;flex-shrink:0;gap:12px;position:relative}.image-row-item.dragging{opacity:.5}.image-row-item.drag-over{border:2px dashed #3b82f6;border-radius:8px}.toggle-container{align-items:center;display:flex;justify-content:center;min-width:50px}.toggle-switch{cursor:pointer;display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#cbd5e1;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0003;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#3b82f6}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch:hover .toggle-slider{box-shadow:0 0 0 4px #3b82f61a}.image-preview-wrapper{border:2px solid #e5e7eb;border-radius:8px;cursor:move;height:120px;overflow:hidden;position:relative;transition:all .2s ease;width:120px}.image-row-item:hover .image-preview-wrapper{border-color:#3b82f6;transform:scale(1.02)}.image-preview-wrapper img,.image-preview-wrapper video{height:100%;object-fit:cover;width:100%}.image-preview-item{aspect-ratio:1;border:2px solid #e5e7eb;border-radius:8px;cursor:move;overflow:hidden;position:relative;transition:all .2s ease}.image-preview-item:hover{border-color:#3b82f6;transform:scale(1.05)}.image-preview-item.dragging{opacity:.5}.image-preview-item.drag-over{background:#eff6ff;border-color:#3b82f6;border-style:dashed}.preview-media,.preview-media video{height:100%;object-fit:cover;width:100%}.remove-image-btn{align-items:center;background:#ef4444e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s ease;width:24px}.remove-image-btn:hover{background:#dc2626;transform:scale(1.1)}.image-number{background:#000000b3;border-radius:4px;bottom:4px;color:#fff;font-size:12px;font-weight:600;left:4px;padding:2px 6px;position:absolute}.upload-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.image-upload-modal .add-more-btn,.images-preview-container .add-more-btn,.upload-actions .add-more-btn{align-items:center;-webkit-appearance:none;appearance:none;background:#fff!important;border:2px solid #1a1a1a!important;border-radius:8px!important;box-sizing:border-box;color:#1a1a1a!important;cursor:pointer;display:inline-flex!important;font-size:14px!important;font-weight:600!important;height:auto!important;justify-content:center;line-height:1.5;margin:0;max-width:none!important;min-height:auto;min-width:auto!important;padding:10px 24px!important;text-align:center;text-decoration:none;transition:all .2s ease;width:auto!important}.image-upload-modal .add-more-btn:hover,.images-preview-container .add-more-btn:hover,.upload-actions .add-more-btn:hover{background:#f9fafb!important;border-color:#1a1a1a!important;box-shadow:0 4px 12px #0000001a;color:#1a1a1a!important;transform:translateY(-2px)}.submit-defects-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.submit-defects-btn:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.entry-viewer-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:3000!important}.entry-viewer-content{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;height:90vh;max-height:90vh;max-width:1400px;overflow:hidden;position:relative;width:95vw}.entry-viewer-header{background:#fff;border-bottom:1px solid #e5e7eb;border-radius:16px 16px 0 0;display:flex;justify-content:flex-end;padding:16px 20px}.close-entry-viewer-btn{align-items:center;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;line-height:1;padding:4px 12px;transition:all .2s ease;width:40px}.close-entry-viewer-btn:hover{background-color:#f3f4f6;color:#1a1a1a}.entry-viewer-body{display:flex;flex:1 1;gap:24px;overflow:hidden;padding:24px 24px 0}.entry-viewer-main-image-container{background:#f9fafb;border-radius:12px;flex:1 1;min-height:0;overflow:hidden;position:relative}.entry-viewer-main-image{border-radius:12px;max-height:100%;max-width:100%;object-fit:contain}.entry-viewer-text-panel{display:flex;flex-direction:column;gap:20px;overflow-y:auto;width:400px}.entry-viewer-text-group{display:flex;flex-direction:column;gap:8px}.entry-viewer-text-group label{color:#374151;font-size:14px;font-weight:600}.entry-viewer-textarea{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:15px;max-width:100%;overflow-y:auto;padding:12px 16px;resize:vertical;transition:border-color .2s ease;width:100%}.entry-viewer-textarea[rows="6"]{max-height:200px;min-height:140px}.entry-viewer-textarea[rows="3"]{max-height:120px;min-height:90px}.entry-viewer-textarea:focus{border-color:#3b82f6;outline:none}.entry-viewer-textarea:disabled{background-color:#f9fafb;cursor:not-allowed}.entry-viewer-save-btn{background:#f3f4f6;border:2px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:15px;font-weight:600;margin-top:8px;padding:14px 24px;transition:all .2s ease;width:100%}.entry-viewer-save-btn.has-changes{background:#3b82f6;border-color:#3b82f6;color:#fff}.entry-viewer-save-btn.has-changes:hover{background:#2563eb;border-color:#2563eb;box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.entry-viewer-save-btn:disabled{cursor:not-allowed;opacity:.6}.entry-viewer-thumbnails{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:center;min-height:140px;padding:20px 24px}.entry-viewer-thumbnail{background:#fff}.entry-viewer-thumbnail:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.entry-viewer-thumbnail.active{box-shadow:0 0 0 2px #3b82f633}.image-viewer-overlay{align-items:center;background-color:#000000f2;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:3000}.image-viewer-content{background:#1a1a1a;border-radius:16px;box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;height:95vh;max-height:95vh;max-width:1400px;overflow:hidden;position:relative;width:95vw}.image-viewer-header{padding:16px;position:absolute;right:0;top:0;z-index:10}.close-viewer-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;transition:all .2s ease;width:40px}.close-viewer-btn:hover{background:#fff3;transform:scale(1.1)}.image-viewer-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:60px 20px 20px}.main-image-display{align-items:center;background:#000;border-radius:12px;display:flex;flex:1 1;justify-content:center;margin-bottom:20px;min-height:0;overflow:hidden;position:relative}.viewer-canvas,.viewer-main-image,.viewer-main-media{border-radius:8px;max-height:100%;max-width:100%;object-fit:contain}.viewer-canvas{cursor:crosshair}.crop-overlay{background:#3b82f61a;border:2px dashed #3b82f6;pointer-events:none;position:absolute;z-index:5}.edit-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px}.cancel-edit-btn,.edit-btn,.save-edit-btn,.toggle-original-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.toggle-original-btn{align-items:center;display:flex;font-size:18px;justify-content:center;padding:10px 16px}.edit-btn:hover,.save-edit-btn:hover,.toggle-original-btn:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px)}.edit-btn.active{background:#3b82f6;border-color:#3b82f6}.save-edit-btn{background:#10b981;border-color:#10b981}.save-edit-btn:hover{background:#059669;border-color:#059669}.cancel-edit-btn{background:#ef444433;border-color:#ef444466}.cancel-edit-btn:hover{background:#ef44444d;border-color:#ef444499}.image-carousel{background:#00000080;border-radius:12px;gap:12px;overflow-x:auto;overflow-y:hidden;padding:12px}.carousel-nav,.image-carousel{align-items:center;display:flex}.carousel-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;flex-shrink:0;font-size:24px;font-weight:700;height:40px;justify-content:center;transition:all .2s ease;width:40px}.carousel-nav:hover{background:#fff3;transform:scale(1.1)}.carousel-images{display:flex;flex:1 1;gap:12px;overflow-x:auto;overflow-y:hidden;padding:4px;scroll-behavior:smooth}.carousel-images::-webkit-scrollbar{height:6px}.carousel-images::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.carousel-images::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.carousel-images::-webkit-scrollbar-thumb:hover{background:#ffffff80}.carousel-thumb{background:#ffffff1a;border:3px solid #0000;border-radius:8px;cursor:pointer;flex-shrink:0;height:100px;overflow:hidden;position:relative;transition:all .2s ease;width:100px}.carousel-thumb:hover{border-color:#ffffff4d;transform:scale(1.05)}.carousel-thumb.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f680;transform:scale(1.1)}.carousel-thumb-image,.carousel-thumb-media{height:100%;object-fit:cover;width:100%}@media (max-width:768px){.image-viewer-content{border-radius:0;height:100vh;max-height:100vh;max-width:100vw;padding:0;width:100vw}.image-viewer-body{padding:50px 10px 10px}.edit-controls{gap:8px}.cancel-edit-btn,.edit-btn,.save-edit-btn{font-size:12px;padding:8px 16px}.carousel-thumb{height:70px;width:70px}.carousel-nav{font-size:20px;height:32px;width:32px}}.entry-viewer-footer{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:16px;justify-content:center;padding:16px 24px}.edit-image-btn-footer{background:#3b82f6;border:none;border-radius:8px;box-shadow:0 2px 8px #3b82f64d;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.edit-image-btn-footer:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.footer-divider{background:linear-gradient(180deg,#ef4444,#dc2626);border-radius:2px;box-shadow:0 2px 6px #ef44444d;flex-shrink:0;height:70px;width:3px}.entry-viewer-thumbnails{align-items:center;display:flex;gap:12px;min-height:108px;overflow-x:auto;overflow-y:hidden;padding:4px 0;scrollbar-gutter:stable}.entry-viewer-thumbnail{border:3px solid #0000;border-radius:8px;cursor:pointer;flex-shrink:0;height:100px;overflow:hidden;transition:all .2s ease;width:100px}.entry-viewer-thumbnail:hover{border-color:#3b82f6;transform:scale(1.05)}.entry-viewer-thumbnail.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f64d}.entry-viewer-thumbnail.add-image-btn{align-items:center;background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;display:flex;height:60px;justify-content:center;transition:all .2s ease;width:60px}.entry-viewer-thumbnail.add-image-btn span{align-items:center;color:#9ca3af;display:flex;font-size:28px;font-weight:300;justify-content:center}.entry-viewer-thumbnail.add-image-btn:hover{background:#f3f4f6;border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:scale(1.05)}.entry-viewer-thumbnail.add-image-btn:hover span{color:#3b82f6;transform:scale(1.1)}.thumbnail-media{height:100%;object-fit:cover;width:100%}.entry-viewer-main-section{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.annotation-toolkit{background:#f9fafb;padding:16px 20px}.toolkit-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.toolkit-divider{background:linear-gradient(90deg,#ef4444,#dc2626);box-shadow:0 2px 6px #ef44444d;height:3px}.annotation-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.annotation-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.annotation-btn.active,.annotation-btn.primary{background:#3b82f6;border-color:#3b82f6;color:#fff}.annotation-btn.primary{padding:10px 20px}.annotation-btn.primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.annotation-btn.success{background:#10b981;border-color:#10b981;color:#fff}.annotation-btn.success:hover:not(:disabled){background:#059669;border-color:#059669}.annotation-btn.cancel{background:#ef4444;border-color:#ef4444;color:#fff}.annotation-btn.cancel:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.annotation-btn:disabled{cursor:not-allowed;opacity:.4}.annotation-divider{background:#d1d5db;height:32px;margin:0 4px;width:1px}.color-picker-container{align-items:center;display:flex;gap:4px}.quick-colors{align-items:center;display:flex;gap:6px}.color-btn{border:2px solid #0000;border-radius:6px;cursor:pointer;height:28px;transition:all .2s ease;width:28px}.color-btn:hover{transform:scale(1.15)}.color-btn.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f64d;transform:scale(1.2)}.custom-color-input{border:1px solid #d1d5db;border-radius:6px;cursor:pointer;height:28px;padding:0;width:32px}.custom-color-input::-webkit-color-swatch-wrapper{padding:2px}.custom-color-input::-webkit-color-swatch{border:none;border-radius:4px}.size-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;padding:8px 12px;transition:all .2s ease}.size-select:hover{background:#f9fafb;border-color:#9ca3af}.size-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.annotation-canvas{height:100%;left:0;pointer-events:auto;position:absolute;top:0;width:100%}.entry-viewer-main-image-container{align-items:center;display:flex;justify-content:center;position:relative!important}.annotation-click-overlay{align-items:center;background:#3b82f61a;border:3px dashed #3b82f6;bottom:0;cursor:pointer;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.annotation-click-overlay:hover{background:#3b82f626;border-color:#2563eb}.click-to-edit-box{background:#3b82f6f2;border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 8px 24px #3b82f666;color:#fff;padding:24px 40px;text-align:center;transition:all .3s ease}.annotation-click-overlay:hover .click-to-edit-box{box-shadow:0 12px 32px #3b82f680;transform:scale(1.05)}
/*# sourceMappingURL=main.403da78c.css.map*/