:root{font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100vh}*{box-sizing:border-box}body{color:#1f2937;background:#f5f6f8;min-width:320px;min-height:100vh;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.app{min-height:100vh}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fff;background:#111827;flex-shrink:0;width:240px;min-height:100vh;padding:24px 18px}.brand{margin-bottom:32px}.brand h1{margin:0;font-size:24px}.brand span{color:#9ca3af;font-size:14px}.nav-menu{flex-direction:column;gap:8px;display:flex}.nav-menu a{color:#cbd5e1;border-radius:8px;padding:11px 12px;text-decoration:none;transition:background .15s,color .15s}.nav-menu a:hover{color:#fff;background:#1f2937}.nav-menu a.active{color:#fff;background:#374151;font-weight:600}.main-area{background:#f5f6f8;flex:1;min-width:0}.content{max-width:1500px;margin:0 auto;padding:32px}.placeholder-page{padding:32px}.placeholder-page h1{margin-top:0}.page-header{margin-bottom:24px}.page-header h1{color:#111827;margin:0;font-size:28px}.page-header p{color:#6b7280;margin:6px 0 0}.page-header-actions{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.primary-button,.secondary-button{cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:42px;padding:10px 18px;transition:background .15s,border-color .15s,opacity .15s}.primary-button{color:#fff;background:#111827}.primary-button:hover:not(:disabled){background:#1f2937}.secondary-button{color:#374151;background:#fff;border-color:#d1d5db}.secondary-button:hover:not(:disabled){background:#f9fafb}.primary-button:disabled,.secondary-button:disabled,.modal-close:disabled{opacity:.6;cursor:not-allowed}.filter-field{flex-direction:column;gap:7px;display:flex}.filter-field label{color:#4b5563;font-size:13px;font-weight:600}.filter-field input,.filter-field select{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;min-height:42px;padding:9px 11px}.filter-field input:focus,.filter-field select:focus{border-color:#6b7280}.filters-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;grid-template-columns:repeat(6,minmax(140px,1fr));align-items:end;gap:14px;margin-bottom:24px;padding:18px;display:grid}.filter-actions{grid-column:span 6;justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px;display:grid}.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.kpi-card span{color:#6b7280;margin-bottom:8px;font-size:14px;display:block}.kpi-card strong{font-size:24px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.panel h2{margin:0 0 20px;font-size:18px}.data-row{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;display:flex}.data-row:last-child{border-bottom:0}.data-row>div{text-align:right}.data-row strong,.data-row small{display:block}.data-row small{color:#6b7280;margin-top:4px}.screen-message{padding:50px}.screen-message.error{color:#b91c1c}.loading-area{color:#6b7280;padding:30px 0}.empty-state{color:#9ca3af;padding:20px 0}.customers-filters{background:#fff;border:1px solid #e5e7eb;border-radius:12px;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) auto;align-items:end;gap:14px;margin-bottom:24px;padding:18px;display:grid}.customer-search input{width:100%}.customer-filter-actions{align-items:end;display:flex}.customers-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.customers-table-header{border-bottom:1px solid #e5e7eb;padding:18px 20px}.customers-table-header>div{align-items:center;gap:10px;display:flex}.customers-table-header span{color:#6b7280;font-size:13px}.table-wrapper{width:100%;overflow-x:auto}.customers-table{border-collapse:collapse;width:100%}.customers-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 16px;font-size:12px}.customers-table td{vertical-align:middle;border-bottom:1px solid #f0f0f0;padding:14px 16px}.customers-table tbody tr:hover{background:#f9fafb}.customers-table tbody tr:last-child td{border-bottom:0}.customer-name-cell{flex-direction:column;gap:4px;display:flex}.customer-name-cell small{color:#9ca3af}.customers-empty{padding:30px 20px}.modal-backdrop{z-index:1000;background:#1118278c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000026,0 8px 10px -6px #0000001a}.modal-header{z-index:3;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;display:flex;position:sticky;top:0}.modal-header h2{color:#111827;margin:0;font-size:22px}.modal-header p{color:#6b7280;margin:5px 0 0}.modal-close{color:#6b7280;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;width:36px;height:36px;font-size:28px;line-height:1}.modal-close:hover:not(:disabled){color:#111827;background:#f3f4f6}.modal-card form{padding:24px}.customer-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.customer-form-full{grid-column:1/-1}.customer-form-grid textarea{resize:vertical;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:10px 11px}.customer-form-grid textarea:focus{border-color:#6b7280}.form-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-top:18px;padding:12px 14px;font-size:14px}.modal-actions{z-index:3;background:#fff;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:10px;margin:24px -24px -24px;padding:18px 24px;display:flex;position:sticky;bottom:-24px}@media (width<=1200px){.filters-panel{grid-template-columns:repeat(3,minmax(150px,1fr))}.filter-actions{grid-column:span 3}}@media (width<=900px){.sidebar{width:190px}.customers-filters{grid-template-columns:1fr}.page-header-actions{flex-direction:column}}@media (width<=800px){.dashboard-grid{grid-template-columns:1fr}.content{padding:20px}}@media (width<=700px){.filters-panel{grid-template-columns:1fr}.filter-actions{grid-column:span 1;justify-content:stretch}.filter-actions button{flex:1}.customer-form-grid{grid-template-columns:1fr}.customer-form-full{grid-column:auto}.modal-backdrop{padding:12px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.table-action-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:7px;padding:7px 12px;font-size:13px}.table-action-button:hover{background:#f3f4f6;border-color:#9ca3af}.opportunities-filters{background:#fff;border:1px solid #e5e7eb;border-radius:12px;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) minmax(180px,1.2fr) minmax(150px,1fr) minmax(150px,1fr) auto;align-items:end;gap:14px;margin-bottom:24px;padding:18px;display:grid}.opportunity-filter-actions{align-items:flex-end;display:flex}.opportunity-modal{max-width:760px}.status-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}.status-consultation{color:#1d4ed8;background:#eff6ff}.status-quoted{color:#92400e;background:#fffbeb}.status-won{color:#047857;background:#ecfdf5}.status-lost{color:#b91c1c;background:#fef2f2}.opportunities-table td{white-space:nowrap}@media (width<=1300px){.opportunities-filters{grid-template-columns:repeat(3,minmax(180px,1fr))}}@media (width<=800px){.opportunities-filters{grid-template-columns:1fr}}.mobile-topbar,.sidebar-close-button,.sidebar-backdrop{display:none}.production-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}@media (width<=1000px){.production-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.app-shell{width:100%;min-height:100vh;display:block}.main-area{width:100%;min-width:0}.mobile-topbar{z-index:900;box-sizing:border-box;color:#fff;background:#111827;border-bottom:1px solid #ffffff14;align-items:center;gap:14px;height:58px;padding:0 16px;display:flex;position:sticky;top:0}.mobile-menu-button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:25px;line-height:1;display:flex}.mobile-brand{letter-spacing:.03em;font-size:20px;font-weight:800}.sidebar{z-index:1100;box-sizing:border-box;height:100dvh;transition:transform .22s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);width:min(82vw,300px)!important}.sidebar.sidebar-open{transform:translate(0)}.sidebar-backdrop{z-index:1000;cursor:pointer;background:#00000073;border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}.sidebar-mobile-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.sidebar-close-button{color:#fff;cursor:pointer;background:#ffffff14;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:26px;display:flex}.app{width:100%;min-width:0;max-width:100%}.content{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:20px 16px}.page-header{min-width:0}.page-header h1{font-size:30px;line-height:1.15}.page-header h2{font-size:25px;line-height:1.2}.page-header p{font-size:15px;line-height:1.45}.page-header-actions{align-items:stretch;gap:16px}.page-header-actions>button{width:100%}.production-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}.opportunities-filters,.filters-panel,.customers-filters{box-sizing:border-box;gap:14px;width:100%;min-width:0;padding:14px;display:grid;grid-template-columns:minmax(0,1fr)!important}.filter-field{width:100%;min-width:0}.filter-field input:not([type=checkbox]),.filter-field select,.filter-field textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.filter-field input[type=checkbox]{flex:0 0 20px;width:20px;height:20px}.opportunity-filter-actions,.filter-actions,.opportunity-filter-actions button,.filter-actions button{width:100%}.customers-card{width:100%;min-width:0;max-width:100%;overflow:hidden}.table-wrapper{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;display:block;overflow:auto hidden}.customers-table{width:max-content;min-width:720px}.customers-table th,.customers-table td{white-space:nowrap}.modal-backdrop{padding:10px}.modal-card{box-sizing:border-box;width:100%;max-height:calc(100dvh - 20px);overflow-y:auto;max-width:calc(100vw - 20px)!important}.modal-header{gap:12px}.modal-header h2{font-size:22px}.customer-form-grid{grid-template-columns:minmax(0,1fr)}.modal-actions{flex-direction:column-reverse;margin:24px -24px -24px;position:static}.modal-actions button{width:100%}}@media (width<=480px){.content{padding:16px 12px}.production-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-kpi-grid>div{padding:14px!important}.production-kpi-grid>div>div{font-size:12px!important}.production-kpi-grid>div>strong{font-size:24px!important}.primary-button,.secondary-button{min-height:44px}}.sidebar-session{border-top:1px solid #374151;margin-top:28px;padding-top:20px}.sidebar-session-label{color:#9ca3af;margin-bottom:4px;font-size:13px}.sidebar-session-user{color:#fff;margin-bottom:14px;font-size:16px;font-weight:700}.sidebar-session-error{color:#fca5a5;margin-bottom:10px;font-size:12px}.sidebar-logout-button{color:#fff;width:100%;min-height:42px;font:inherit;cursor:pointer;background:0 0;border:1px solid #4b5563;border-radius:8px;padding:10px 14px;font-weight:600;transition:background .15s,border-color .15s}.sidebar-logout-button:hover:not(:disabled){background:#1f2937;border-color:#6b7280}.sidebar-logout-button:disabled{opacity:.6;cursor:not-allowed}@media (width<=800px){.sidebar{flex-direction:column;display:flex}.nav-menu{flex:1}.sidebar-session{margin-top:24px}}
