@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap";:root{--bg-dark:#121215;--bg-panel:#18181c;--bg-card:#1d1d22;--bg-card-hover:#25252b;--bg-hover:#ffffff0f;--primary:#ff6a00;--primary-light:#ff8533;--primary-dark:#e05d00;--primary-glow:#ff6a0026;--secondary:#9ca3af;--secondary-light:#d1d5db;--accent:#f97316;--accent-gradient:linear-gradient(135deg, #ff6a00 0%, #f97316 100%);--text-main:#fafafa;--text-light:#fff;--text-muted:#9ca3af;--text-inverse:#121215;--border-color:#ffffff14;--border-highlight:#ffffff29;--border-glow:#ff6a0033;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--info:#38bdf8;--shadow-sm:0 1px 2px 0 #0003;--shadow-md:0 4px 12px 0 #0000004d;--shadow-lg:0 12px 24px -3px #0006;--shadow-glow:none;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1);--transition-slow:all .35s cubic-bezier(.4, 0, .2, 1);--bg-blob-1:#ff6a000a;--bg-blob-2:#f973160a}[data-theme=light]{--bg-dark:#fafaf6;--bg-panel:#f3f3ed;--bg-card:#fff;--bg-card-hover:#fffdf9;--bg-hover:#1118270d;--primary:#ff6a00;--primary-light:#ff8533;--primary-dark:#e05d00;--primary-glow:#ff6a001f;--secondary:#687280;--secondary-light:#9ca3af;--accent:#f97316;--accent-gradient:linear-gradient(135deg, #ff6a00 0%, #f97316 100%);--text-main:#111827;--text-light:#030712;--text-muted:#687280;--text-inverse:#fff;--border-color:#ecebe4;--border-highlight:#dddccf;--border-glow:#ff6a0033;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--shadow-sm:0 1px 2px 0 #11182708;--shadow-md:0 2px 8px -1px #1118270f;--shadow-lg:0 8px 24px -4px #11182714;--shadow-glow:none;--bg-blob-1:#ff6a0008;--bg-blob-2:#f9731608}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text-main);font-family:Plus Jakarta Sans,sans-serif;font-weight:600}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}.glass{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md);border-radius:var(--radius-lg)}.app-container{background-color:var(--bg-dark);width:100%;height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--bg-card);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;width:70px;height:100vh;transition:width .25s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0}.sidebar.expanded{width:240px}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:center;align-items:center;gap:.75rem;height:64px;padding:0 12px;transition:padding .25s cubic-bezier(.4,0,.2,1);display:flex}.sidebar.expanded .sidebar-header{justify-content:space-between;padding:0 16px}.sidebar-toggle-btn{border-radius:var(--radius-md);width:2.75rem;height:2.75rem;color:var(--text-muted);transition:var(--transition);cursor:pointer;justify-content:center;align-items:center;display:flex}.sidebar-toggle-btn:hover{background:var(--bg-hover);color:var(--text-main)}.logo-brand{align-items:center;gap:10px;animation:.2s ease-out slideInFromLeft;display:flex}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-5px)}to{opacity:1;transform:translate(0)}}.logo-icon{width:28px;height:28px;color:var(--primary)}.logo-text{letter-spacing:-.03em;color:var(--text-main);font-family:Plus Jakarta Sans,sans-serif;font-size:22px;font-weight:700;line-height:1}.nav-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.85rem .75rem .35rem;font-size:.65rem;font-weight:700}.sidebar:not(.expanded) .nav-section-label{display:none}.nav-links{flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 8px;transition:padding .25s cubic-bezier(.4,0,.2,1);display:flex;overflow-y:auto}.sidebar.expanded .nav-links{align-items:stretch;padding:8px 12px}.nav-item{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-muted);border:1px solid #0000;justify-content:center;align-items:center;padding:0;font-size:.875rem;font-weight:500;transition:all .18s;display:flex;position:relative}.sidebar.expanded .nav-item{justify-content:flex-start;gap:12px;width:100%;height:42px;padding:0 14px}.nav-item span{white-space:nowrap;display:none}.sidebar.expanded .nav-item span{display:inline}.nav-item:hover{background:var(--bg-hover);color:var(--text-main)}.nav-item.active{font-weight:600;color:var(--primary)!important;background:#ff6a001a!important;border-color:#ff6a0040!important}.nav-item.active:before{content:"";background:var(--primary);border-radius:0 3px 3px 0;width:3px;height:64%;position:absolute;top:18%;left:-2px}.sidebar.expanded .nav-item.active:before{left:0}.nav-item.active .nav-icon{color:var(--primary)}.nav-icon{width:19px;height:19px;color:var(--text-muted);flex-shrink:0;transition:color .15s}.main-content{flex-direction:column;width:calc(100vw - 70px);height:100vh;margin-left:70px;transition:margin-left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sidebar-expanded .main-content{width:calc(100vw - 240px);margin-left:240px}.bg-blob{background:radial-gradient(circle, var(--bg-blob-1) 0%, transparent 70%);z-index:0;pointer-events:none;opacity:.5;border-radius:50%;width:500px;height:500px;position:absolute;top:-150px;right:-150px}.bg-blob-2{background:radial-gradient(circle, var(--bg-blob-2) 0%, transparent 70%);z-index:0;pointer-events:none;opacity:.4;border-radius:50%;width:400px;height:400px;position:absolute;bottom:-100px;left:10%}.header{border-bottom:1px solid var(--border-color);background:var(--bg-card);z-index:10;justify-content:space-between;align-items:center;height:64px;padding:0 1.75rem;display:flex}.header-title{letter-spacing:-.02em;color:var(--text-main);z-index:10;font-size:1.25rem;font-weight:600}.header-actions{align-items:center;gap:.75rem;display:flex}.icon-btn{border-radius:var(--radius-md);width:2.75rem;height:2.75rem;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-color);transition:var(--transition);justify-content:center;align-items:center;display:flex}.icon-btn:hover{background:var(--bg-hover);color:var(--text-main);border-color:var(--border-highlight)}.user-profile{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition);align-items:center;gap:.65rem;padding:.375rem 1rem .375rem .375rem;display:flex}.user-profile:hover{border-color:var(--border-highlight);background:var(--bg-hover)}.avatar{border-radius:var(--radius-full);background:var(--primary);color:#fff;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.85rem;font-weight:600;display:flex}.user-name{color:var(--text-main);font-size:.85rem;font-weight:600}.page-content{z-index:1;flex:1;padding:2rem;position:relative;overflow-y:auto}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-sm);padding:1.5rem}.card:hover{border-color:var(--border-highlight);box-shadow:var(--shadow-md)}.btn{border-radius:var(--radius-md);transition:var(--transition);letter-spacing:-.01em;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1.15rem;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary);box-shadow:var(--shadow-sm);border:1px solid #0000;color:#fff!important}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);color:#fff!important}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-highlight);color:var(--text-main)}.btn-secondary:active{transform:translateY(0)}.btn-danger{color:var(--danger);background:#ef44441a;border:1px solid #ef444433}.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:#fff!important}.btn-success{color:#22c55e;background:#22c55e1a;border:1px solid #22c55e33;transition:all .2s ease-in-out}.btn-success:hover:not(:disabled){color:#fff!important;background:#22c55e!important;border-color:#22c55e!important}.btn-success:disabled{opacity:.85;cursor:default;color:#22c55e!important;background:#22c55e26!important;border-color:#22c55e4d!important}.form-group{margin-bottom:1.25rem}.form-label{color:var(--text-muted);letter-spacing:-.01em;margin-bottom:.4rem;font-size:.8rem;font-weight:600;display:block}.form-control{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-main);transition:var(--transition);padding:.85rem .95rem;font-size:.875rem}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow);background:var(--bg-card);outline:none}.form-control::placeholder{color:var(--text-muted);opacity:.6}.table-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-card);width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border-color);padding:.95rem 1.15rem}.table.table-compact th,.table.table-compact td{padding:.6rem .75rem}.table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-panel);font-size:.75rem;font-weight:600}.table tbody tr{transition:var(--transition)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--bg-hover)}.badge{border-radius:var(--radius-full);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:center;padding:.25rem .65rem;font-size:.7rem;font-weight:600;display:inline-flex}.badge-success{color:var(--success);background:#22c55e1f;border:1px solid #22c55e40}.badge-warning{color:var(--warning);background:#f59e0b1f;border:1px solid #f59e0b40}.badge-danger{color:var(--danger);background:#ef44441f;border:1px solid #ef444440}.badge-info{color:var(--info);background:#3b82f61f;border:1px solid #3b82f640}.grid-2{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.kpi-card{border:1px solid var(--border-color);background:var(--bg-card);border-radius:var(--radius-lg);padding:1.35rem;position:relative;overflow:hidden}.kpi-card:before{content:"";background:var(--primary);opacity:.85;width:100%;height:3px;position:absolute;top:0;left:0}.kpi-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.kpi-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.775rem;font-weight:600}.kpi-icon{border-radius:var(--radius-md);width:2.25rem;height:2.25rem;color:var(--primary);background:#ff6a001a;justify-content:center;align-items:center;display:flex}.kpi-value{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-bottom:.35rem;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.25rem,3.5vw,1.85rem);font-weight:700;overflow:hidden}.kpi-trend{align-items:center;gap:.25rem;font-size:.8rem;font-weight:500;display:flex}.trend-up{color:var(--success)}.trend-down{color:var(--danger)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.kanban-board{gap:1.25rem;height:calc(100vh - 200px);padding-bottom:1rem;display:flex;overflow-x:auto}.kanban-column{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;width:310px;min-width:min(310px,85vw);max-width:85vw;display:flex}.kanban-column-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 1.125rem;display:flex}.kanban-column-title{color:var(--text-main);align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.kanban-count{background:var(--bg-hover);border-radius:var(--radius-full);color:var(--text-muted);padding:.15rem .5rem;font-size:.75rem;font-weight:600}.kanban-cards{flex-direction:column;flex:1;gap:1rem;padding:1rem;display:flex;overflow-y:auto}.kanban-card{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:grab;transition:var(--transition);padding:1rem}.kanban-card:hover{border-color:var(--border-highlight);box-shadow:var(--shadow-md);transform:translateY(-2px)}@media (hover:none) and (pointer:coarse),(max-width:768px){.kanban-card:hover{box-shadow:none;transform:none}.kanban-touch-status{display:block!important}}.kanban-card:active{cursor:grabbing}.hover-bg{transition:background-color .15s,color .15s}.hover-bg:hover{background-color:var(--bg-hover)!important;color:var(--text-main)!important}.tabs-header{border-bottom:1px solid var(--border-color);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000 100%)}.tabs-header::-webkit-scrollbar{display:none}.tab-btn{color:var(--text-muted);transition:var(--transition);white-space:nowrap;background:0 0;border-bottom:2px solid #0000;padding:.85rem 1rem;font-size:.875rem;font-weight:500}.tab-btn:hover{color:var(--text-main)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;box-sizing:border-box;background:#00000073;justify-content:center;align-items:center;width:100%;height:100vh;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);box-sizing:border-box;width:100%;max-width:580px;max-height:90vh;margin:auto;padding:1.5rem;position:relative;overflow-y:auto}.sidebar-backdrop{display:none}@media (max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.sidebar{z-index:1000;border-right:1px solid var(--border-color);height:100vh;transition:transform .25s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;transform:translate(-100%);opacity:1!important;width:260px!important}.sidebar.open{transform:translate(0)!important}.sidebar.closed,.sidebar.collapsed{width:260px!important;transform:translate(-100%)!important}.sidebar.expanded{width:260px!important}.sidebar .nav-links{align-items:stretch;padding:1rem .75rem}.sidebar .nav-item{justify-content:flex-start;gap:.75rem;width:100%;height:44px;padding:0 1rem}.sidebar .nav-item span{display:inline}.sidebar .sidebar-header{justify-content:space-between;padding:0 1rem}.sidebar-backdrop{z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;width:100%;height:100vh;display:block;position:fixed;top:0;left:0}.sidebar-expanded .main-content,.sidebar-collapsed .main-content,.main-content{width:100%!important;margin-left:0!important}.header{padding:0 1.25rem}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.header{padding:0 .85rem}.header-actions{gap:.5rem}.header-mobile-toggle{margin-right:.5rem;display:flex}.page-content{padding:1rem .75rem}.modal-content{width:calc(100% - 1rem)!important;max-width:calc(100% - 1rem)!important;margin:.5rem auto!important;padding:1rem!important}}.grid-dimensions-3{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (max-width:640px){.grid-dimensions-3{grid-template-columns:1fr;gap:.75rem}.card,.card.glass{padding:.85rem!important}.card .card,.card .card.glass{padding:.75rem!important}}@media (max-width:480px){.header-actions{gap:.4rem}.user-name{display:none}.user-profile{padding-right:.25rem}.header-title{font-size:1.05rem}}.dual-slider-input{pointer-events:none;-webkit-appearance:none;appearance:none;background:0 0;border:none;outline:none;width:100%;height:36px;position:absolute;top:0}.dual-slider-input::-webkit-slider-thumb{pointer-events:auto;z-index:10;-webkit-appearance:none;appearance:none;background:var(--primary);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:relative;box-shadow:0 1px 3px #0000004d}.dual-slider-input::-moz-range-thumb{pointer-events:auto;z-index:10;background:var(--primary);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:relative;box-shadow:0 1px 3px #0000004d}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:none;appearance:none}.header-search-input{width:260px;transition:var(--transition);padding-left:2.3rem!important}@media (max-width:1024px){.header-search-input{width:200px}}@media (max-width:768px){.header-search-input{width:150px}}@media (max-width:480px){.header-search-input{width:110px;font-size:.8rem;padding-left:2rem!important}}@keyframes simple-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-simple-spin{animation:1s linear infinite simple-spin}.btn-muted{background-color:var(--border-color)!important;color:var(--text-muted)!important;border:1px solid var(--border-color)!important;cursor:pointer!important;transition:all .2s!important}.btn-muted:hover{background-color:var(--bg-hover)!important;color:var(--text-main)!important}.auth-card,.public-form-card{padding:2.5rem}@media (max-width:480px){.auth-card,.public-form-card{padding:1.5rem 1rem!important}.auth-card .logo-text{font-size:1.5rem!important}}.quotation-item-row{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}@media (max-width:640px){.quotation-item-row{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffff08;flex-wrap:wrap;padding:.75rem}}@media (max-width:480px){.header-search-container{position:relative}.header-search-input{opacity:0;pointer-events:none;transition:width .2s,opacity .2s,padding .2s;position:absolute;top:50%;right:0;transform:translateY(-50%);border:none!important;width:0!important;padding:0!important}.header-search-input.expanded{opacity:1;pointer-events:auto;width:180px!important;padding:.6rem .75rem .6rem 2.2rem!important}.header-icon-hide-mobile{display:none!important}.header-actions .btn,.header-actions button{white-space:nowrap}}.header-actions .btn{white-space:nowrap}@media (max-width:768px){.table td .btn,.table td .icon-btn{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.table td button{min-height:36px;padding-top:.4rem;padding-bottom:.4rem}}@media (hover:none) and (pointer:coarse){.dual-slider-input::-webkit-slider-thumb{border-width:3px;width:28px;height:28px}.dual-slider-input::-moz-range-thumb{border-width:3px;width:28px;height:28px}}@media (max-width:640px){.table-responsive-cards thead{display:none}.table-responsive-cards tbody tr{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:.75rem;padding:.75rem;display:block}.table-responsive-cards tbody td{border-bottom:none;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.375rem 0;font-size:.875rem;display:flex}.table-responsive-cards tbody td:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;min-width:30%;font-size:.75rem;font-weight:600}.table-responsive-cards tbody td:first-child{padding-top:0}.table-responsive-cards tbody td:last-child{padding-bottom:0}}.toast-fixed{z-index:99999;border-radius:var(--radius-md);word-break:break-word;max-width:calc(100vw - 2rem);padding:.75rem 1rem;font-weight:500;position:fixed;top:1.5rem;right:1rem;box-shadow:0 4px 20px #0000004d}.grid-address-3{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (max-width:900px){.grid-address-3{grid-template-columns:repeat(2,1fr)}.grid-address-3>:nth-child(3){grid-column:1/-1}}@media (max-width:640px){.grid-address-3{grid-template-columns:1fr}.grid-address-3>:nth-child(3){grid-column:auto}}@media (max-width:768px){.quotations-layout{flex-direction:column;gap:1.5rem;display:flex}.quotations-preview-area{display:none}.quotations-preview-area.visible{display:block}}.kpi-card h3,.card.glass h3.kpi-currency{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (max-width:480px){.card h2,.card h3{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}.quotation-print-container{color:#333;background:#fff;border-radius:4px;min-height:600px;padding:3rem;position:relative;overflow-x:auto;box-shadow:0 4px 6px #0000001a}@media (max-width:768px){.quotation-print-container{padding:1.25rem!important}}@media (max-width:640px){.qty-rate-group{margin-top:.25rem;justify-content:space-between!important;width:100%!important}}@keyframes slideUpBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.table-wrapper{-webkit-overflow-scrolling:touch;max-width:100%}
