html,body,#root{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;overscroll-behavior-x:none}input,textarea,[contenteditable=true]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:text}:root{--color-primary: #2878f0;--color-secondary: #475569;--color-text-dark: #101828;--color-text-light: #ffffff;--color-background-light: #f7f9fc;--color-background-dark: #f8fafc;--color-border: #e7ecf2;--color-success: #28a745;--color-warning: #ffc107;--color-error: #dc3545;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-h1: 2rem;--font-size-h2: 1.75rem;--font-size-h3: 1.5rem;--font-size-h4: 1.25rem;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--border-radius-sm: 6px;--border-radius-md: 8px;--border-radius-lg: 12px;--box-shadow-sm: 0 2px 6px rgba(16,24,40,.04);--box-shadow-md: 0 8px 24px rgba(16,24,40,.08)}.page-wrapper{max-width:1920px;width:100%;margin:0 auto;padding:var(--spacing-lg);display:flex;flex-direction:column;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-background-light);border-bottom:1px solid var(--color-border);border-radius:var(--border-radius-md) var(--border-radius-md) 0 0}.page-title{font-size:var(--font-size-h4);color:var(--color-text-dark);font-weight:700}.page-actions{display:flex;gap:var(--spacing-sm)}.page-content{flex-grow:1;background-color:var(--color-background-light);padding:var(--spacing-md);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);box-shadow:var(--box-shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-md)}.page-section{background-color:var(--color-background-light);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-md);transition:border-color .2s ease-in-out}.page-section.active-basic-info,.page-section.active-process-info,.page-section.active-bom{border-color:var(--color-primary)}.sidebar-container{overflow-x:hidden}.sidebar-nav-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%}.data-table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-md);background-color:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius-md);overflow:hidden}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.data-table th{background-color:var(--color-background-dark);color:#667085;font-weight:600;font-size:var(--font-size-sm);white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:var(--color-background-dark)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.pagination-button{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-background-light);cursor:pointer;font-size:var(--font-size-sm)}.pagination-button:hover{background-color:var(--color-background-dark)}.pagination-button.active{background-color:var(--color-primary);color:var(--color-text-light);border-color:var(--color-primary)}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border:1px solid transparent;border-radius:var(--border-radius-sm);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none}.btn-primary{background-color:var(--color-primary);color:var(--color-text-light);border-color:var(--color-primary)}.btn-primary:hover{background-color:color-mix(in srgb,var(--color-primary) 80%,black);border-color:color-mix(in srgb,var(--color-primary) 80%,black)}.btn-secondary{background-color:var(--color-background-dark);color:var(--color-text-dark);border-color:var(--color-border)}.btn-secondary:hover{background-color:var(--color-border)}.btn-danger{background-color:var(--color-error);color:var(--color-text-light);border-color:var(--color-error)}.btn-danger:hover{background-color:color-mix(in srgb,var(--color-error) 80%,black);border-color:color-mix(in srgb,var(--color-error) 80%,black)}.btn-outline-primary{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline-primary:hover{background-color:var(--color-primary);color:var(--color-text-light)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-dark);font-weight:500}.toggle-button-group-wrapper{margin-bottom:var(--spacing-md)}.MuiToggleButtonGroup-root{background-color:var(--color-background-light);border-radius:var(--border-radius-md);border:1px solid var(--color-border);display:inline-flex}.toggle-button.MuiToggleButton-root{min-width:120px;border-color:transparent;font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm)}.toggle-button.MuiToggleButton-root.Mui-selected{background-color:var(--color-primary);color:var(--color-text-light);border-color:var(--color-primary)}.toggle-button.MuiToggleButton-root.Mui-selected:hover{background-color:color-mix(in srgb,var(--color-primary) 80%,black);border-color:color-mix(in srgb,var(--color-primary) 80%,black)}.toggle-button.MuiToggleButton-root:hover{background-color:var(--color-background-dark)}.auto-selected-field .MuiInputBase-input.Mui-disabled{-webkit-text-fill-color:rgba(0,0,0,.78)!important}.auto-selected-field .MuiInputLabel-root.Mui-disabled{color:#0000008c!important}.auto-selected-field .MuiOutlinedInput-root.Mui-disabled{background-color:#edf5ff!important}.auto-selected-field .MuiOutlinedInput-root.Mui-disabled .MuiOutlinedInput-notchedOutline{border-color:#64a0e666!important}.compact-date-picker .MuiInputAdornment-root .MuiIconButton-root{padding:2px}.compact-date-picker .MuiSvgIcon-root{font-size:1.1rem}.lineos-login{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;background:#eef3f7;color:#101b2a}.lineos-login:before{content:"";position:absolute;z-index:-2;inset:0;background:url(/images/lineos-sewing-floor.webp) center right / cover no-repeat}.lineos-login:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#f8fafdfc,#f8fafdf2 28%,#f0f5fab8 52%,#e0eaf221)}.lineos-login-header{position:absolute;top:42px;left:clamp(24px,5vw,80px);right:clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;gap:16px}.lineos-login-brand{font-size:28px;font-weight:800;letter-spacing:-1.2px;line-height:1.2}.lineos-login-brand-caption{margin-top:5px;font-size:9px;letter-spacing:2px;color:#65778d}.lineos-login-content{min-height:100svh;width:100%;max-width:1320px;margin:0 auto;padding:156px clamp(24px,5vw,72px) 112px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,424px);align-items:center;gap:clamp(48px,7vw,112px)}.lineos-login-intro h1{font-size:clamp(36px,3.5vw,52px);font-weight:700;line-height:1.28;letter-spacing:-1.8px;margin:0;white-space:pre-line}.lineos-login-introduction{margin:24px 0 0;color:#526276;font-size:15px;line-height:1.9;white-space:pre-line}.lineos-login-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:64px;max-width:480px}.lineos-login-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #dce5ee;border-radius:11px;background:#fffc;color:#334963;box-shadow:0 2px 5px #243d5510;margin-bottom:14px}.lineos-login-feature-title{font-size:13px;font-weight:600;line-height:1.5}.lineos-login-feature-detail{font-size:11px;line-height:1.7;margin-top:3px;color:#6b7a8c}.lineos-login-card{padding:44px 36px 36px;background:#fffffff7;border:1px solid rgba(255,255,255,.9);border-radius:18px;box-shadow:0 24px 80px #2039501c,0 2px 8px #20395008;text-align:center}.lineos-login-card h2{font-size:22px;line-height:1.5;letter-spacing:-.7px;font-weight:650;margin:0}.lineos-login-subtitle{font-size:14px;color:#6a7a8e;line-height:1.8;margin:12px 0 32px;white-space:pre-line}.lineos-login .lineos-google-button{height:48px;border:1px solid #dce3ec;border-radius:8px;background:#fff;color:#172536;font-size:14px;font-weight:600;text-transform:none;box-shadow:0 1px 3px #152b4010}.lineos-login .lineos-google-button:hover{background:#f6f9fc;border-color:#b8c8d9;box-shadow:0 3px 9px #152b4010}.lineos-login .lineos-google-button .MuiButton-startIcon{position:absolute;left:22px;margin:0}.lineos-login-destination{color:#8390a0;font-size:11px;line-height:1.8;margin:24px 0 0}.lineos-login-footer{position:absolute;left:clamp(24px,5vw,80px);right:clamp(24px,5vw,80px);bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#78899b;font-size:11px}@media(min-width:761px){.lineos-login-header,.lineos-login-footer{left:50%;right:auto;width:100%;max-width:1320px;transform:translate(-50%);padding:0 clamp(24px,5vw,72px)}}@media(max-width:1000px){.lineos-login-content{gap:36px;grid-template-columns:minmax(0,1fr) minmax(320px,380px)}.lineos-login-intro h1{font-size:38px}.lineos-login-features{gap:12px;margin-top:44px}.lineos-login-card{padding:36px 24px}}@media(max-width:760px){.lineos-login-header{top:24px;left:24px;right:24px}.lineos-login-brand{font-size:24px}.lineos-login-brand-caption{font-size:7px;letter-spacing:1.4px}.lineos-login-content{grid-template-columns:minmax(0,1fr);gap:36px;padding:132px 24px 104px;max-width:540px}.lineos-login-intro h1{font-size:34px;line-height:1.25;letter-spacing:-1.3px}.lineos-login-introduction{margin-top:16px;font-size:14px}.lineos-login-features{display:none}.lineos-login-card{padding:32px 24px}.lineos-login-card h2{font-size:20px}.lineos-login:after{background:linear-gradient(180deg,#f8fafdf7,#f2f7fbd9)}.lineos-login-footer{left:24px;right:24px;bottom:22px;font-size:10px}}@media(prefers-reduced-motion:reduce){.lineos-login *{transition:none!important}}
