@charset "UTF-8";@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.css";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);background-size:400% 400%;animation:gradientShift 15s ease infinite;padding:var(--space-lg);position:relative;overflow:hidden}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.login-container:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}.login-container:after{content:"";position:absolute;bottom:-50%;left:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);animation:float 25s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.login-box{background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:var(--space-3xl);border-radius:var(--radius-2xl);box-shadow:0 20px 60px #0000004d;width:100%;max-width:440px;position:relative;z-index:1;animation:slideInUp .5s ease-out;border:1px solid rgba(255,255,255,.3)}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:var(--space-2xl)}.login-logo{width:72px;height:72px;margin:0 auto var(--space-lg);filter:drop-shadow(0 4px 12px rgba(102,126,234,.3));animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.login-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);color:var(--color-gray-900);margin-bottom:var(--space-sm);letter-spacing:-.03em;background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-primary-700) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{font-size:var(--font-size-base);color:var(--color-gray-600);font-weight:var(--font-weight-medium);letter-spacing:-.01em}.login-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);letter-spacing:-.01em}.form-group input{padding:14px 16px;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:inherit;transition:all var(--transition-base);background:#fff;color:var(--color-gray-800);box-shadow:0 1px 2px #00000005}.form-group input:hover{border-color:var(--border-medium);box-shadow:0 2px 4px #0000000d}.form-group input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px #8b5cf61f}.form-group input::placeholder{color:var(--color-gray-400)}.error-message{padding:12px 16px;background:var(--color-error-bg);border:1.5px solid var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-lg);color:#991b1b;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-sm);animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.remember-me{display:flex;align-items:center;gap:var(--space-sm)}.remember-me input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary-600)}.remember-me label{font-size:var(--font-size-sm);color:var(--color-gray-700);cursor:pointer;-webkit-user-select:none;user-select:none}.login-button{padding:14px 24px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 12px #8b5cf64d;letter-spacing:-.01em;margin-top:var(--space-sm)}.login-button:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf666}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-footer{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-gray-200);text-align:center}.login-footer p{font-size:var(--font-size-sm);color:var(--color-gray-500);margin:0}.login-footer a{color:var(--color-primary-600);text-decoration:none;font-weight:var(--font-weight-semibold);transition:color var(--transition-fast)}.login-footer a:hover{color:var(--color-primary-700);text-decoration:underline}.version-info{position:absolute;bottom:var(--space-lg);right:var(--space-lg);color:#fffc;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:6px 12px;background:#ffffff26;border-radius:var(--radius-full);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1}@media (max-width: 768px){.login-box{padding:var(--space-2xl);max-width:380px}.login-title{font-size:var(--font-size-2xl)}}@media (max-width: 480px){.login-container{padding:var(--space-md)}.login-box{padding:var(--space-xl)}.login-title{font-size:var(--font-size-xl)}.login-subtitle{font-size:var(--font-size-sm)}.version-info{bottom:var(--space-sm);right:var(--space-sm)}}.sidebar{width:260px;background:var(--bg-sidebar);color:#fff;display:flex;flex-direction:column;transition:all var(--transition-slow);box-shadow:2px 0 12px #00000014;position:relative;z-index:20}.sidebar.collapsed{width:70px}.sidebar-header{padding:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:var(--space-md);justify-content:space-between;min-height:80px;position:relative;transition:all var(--transition-base)}.sidebar-logo{width:36px;height:36px;flex-shrink:0;transition:transform var(--transition-slow);filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.sidebar-logo:hover{transform:rotate(10deg) scale(1.1)}.sidebar.collapsed .sidebar-header{justify-content:center;padding:var(--space-md) var(--space-sm)}.sidebar.collapsed .sidebar-logo{width:42px;height:42px;cursor:pointer}.sidebar-title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:#fff;transition:opacity var(--transition-base);flex:1;letter-spacing:-.02em);text-shadow:0 2px 4px rgba(0,0,0,.2)}.sidebar.collapsed .sidebar-title{opacity:0;width:0;overflow:hidden}.collapse-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fffc;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-base);flex-shrink:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.collapse-btn:hover{background:#fff3;color:#fff;border-color:#ffffff4d;transform:scale(1.05)}.sidebar.collapsed .collapse-btn{display:none}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-md) 0}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--radius-sm)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.menu-list{list-style:none;margin:0;padding:0}.menu-item{margin:2px var(--space-sm)}.menu-link{display:flex;align-items:center;justify-content:space-between;padding:12px var(--space-md);color:#ffffffbf;text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);position:relative;letter-spacing:-.01em}.menu-icon-label{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.menu-icon-label svg{flex-shrink:0;transition:transform var(--transition-base)}.menu-link:hover{background:#ffffff1f;color:#fff;transform:translate(2px)}.menu-link:hover .menu-icon-label svg{transform:scale(1.1)}.menu-link.active{background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:#fff;box-shadow:0 4px 12px #8b5cf666;font-weight:var(--font-weight-semibold)}.menu-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:70%;background:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.menu-parent{cursor:pointer}.menu-parent .menu-link{padding-right:12px}.submenu{list-style:none;margin:4px 0 8px;padding:0;overflow:hidden;animation:slideDown var(--transition-slow) ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:400px}}.submenu-link{display:block;padding:10px var(--space-md) 10px 52px;color:#ffffffa6;text-decoration:none;border-radius:var(--radius-lg);margin:2px var(--space-sm);transition:all var(--transition-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);position:relative;letter-spacing:-.01em}.submenu-link:before{content:"";position:absolute;left:24px;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#fff6;border-radius:50%;transition:all var(--transition-base)}.submenu-link:hover{background:#ffffff14;color:#ffffffd9;padding-left:56px}.submenu-link:hover:before{width:6px;height:6px;background:#fffc}.submenu-link.active{background:#8b5cf640;color:var(--color-primary-200);font-weight:var(--font-weight-semibold)}.submenu-link.active:before{width:8px;height:8px;background:var(--color-primary-200);box-shadow:0 0 8px #8b5cf699}.sidebar.collapsed .menu-icon-label span,.sidebar.collapsed .submenu{display:none}.sidebar.collapsed .menu-link{justify-content:center;padding:12px}.sidebar.collapsed .menu-link:before{display:none}.menu-divider{height:1px;background:#ffffff1a;margin:var(--space-md) var(--space-lg)}.sidebar-footer{padding:var(--space-md);border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.sidebar.collapsed .sidebar-footer{padding:var(--space-sm)}@media (max-width: 1024px){.sidebar{width:70px}.sidebar-header{justify-content:center;padding:var(--space-md) var(--space-sm)}.sidebar-title,.collapse-btn{display:none}.menu-link{justify-content:center;padding:12px}.menu-icon-label span,.submenu{display:none}}@media (max-width: 768px){.sidebar{position:fixed;left:-280px;top:0;bottom:0;width:280px!important;z-index:999;transition:left var(--transition-slow)}.sidebar.open{left:0;box-shadow:4px 0 24px #00000040}.sidebar.open .sidebar-title{display:block}.sidebar.open .collapse-btn{display:flex}.sidebar.open .sidebar-header{justify-content:space-between;padding:var(--space-lg)}.sidebar.open .menu-link{justify-content:flex-start;padding:12px var(--space-md)}.sidebar.open .menu-icon-label span,.sidebar.open .submenu{display:block}}.menu-tooltip{position:absolute;left:100%;margin-left:var(--space-sm);padding:6px 12px;background:#1f2937f2;color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:1000;box-shadow:var(--shadow-lg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sidebar.collapsed .menu-link:hover .menu-tooltip{opacity:1}.settings-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99;animation:fadeIn .2s ease}.settings-panel{position:fixed;right:0;top:0;bottom:0;width:420px;background:#fff;box-shadow:-4px 0 20px #00000026;z-index:100;display:flex;flex-direction:column;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2)}.panel-header h2{margin:0;font-size:20px;font-weight:700;color:#fff}.close-button{background:none;border:none;cursor:pointer;color:#fff;padding:0;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-button:hover{opacity:.8;transform:rotate(90deg)}.panel-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb;padding:0}.tab-button{flex:1;padding:12px 16px;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.tab-button:hover{color:#374151}.tab-button.active{color:#667eea;border-bottom-color:#667eea;background:#f9fafb}.panel-content{flex:1;overflow-y:auto;padding:24px}.panel-section{margin-bottom:24px}.panel-section h3{margin:0 0 8px;font-size:16px;font-weight:600;color:#1f2937}.section-description{margin:0 0 16px;color:#6b7280;font-size:13px;line-height:1.6}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.form-group input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;transition:all .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:36px}.toggle-password{position:absolute;right:10px;background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center;padding:0;width:20px;height:20px;transition:all .2s}.toggle-password:hover{color:#374151}.preview-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:12px;margin:16px 0}.preview-label{margin:0 0 6px;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase}.preview-path{margin:0;padding:8px;background:#fff;border:1px solid #e5e7eb;border-radius:4px;font-family:Courier New,monospace;font-size:12px;color:#374151;word-break:break-all;max-height:60px;overflow-y:auto}.submit-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.submit-button:disabled{opacity:.6;cursor:not-allowed}.alert{padding:10px 12px;border-radius:6px;font-size:12px;margin-top:16px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.panel-content::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar-track{background:#f9fafb}.panel-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.panel-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width: 768px){.settings-panel{width:100%;max-width:100%}}.messages-section{display:flex;flex-direction:column;height:calc(100vh - 250px)}.messages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.msg-tabs{display:flex;gap:4px}.msg-sub-tab{padding:5px 12px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.msg-sub-tab.active{background:#667eea;color:#fff;border-color:#667eea}.msg-sub-tab .badge{display:inline-block;margin-left:5px;padding:1px 5px;background:#ef4444;color:#fff;border-radius:10px;font-size:10px}.msg-header-actions{display:flex;align-items:center;gap:6px}.icon-action-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;transition:all .15s}.icon-action-btn:hover{background:#f3f4f6;color:#374151}.msg-loading{padding:30px;text-align:center;color:#9ca3af;font-size:13px}.msg-delete-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:4px;border:none;background:transparent;color:#d1d5db;cursor:pointer;flex-shrink:0;transition:all .15s;align-self:center}.msg-delete-btn:hover{background:#fee2e2;color:#ef4444}.compose-button{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.compose-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.message-search{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:16px}.message-search input{flex:1;border:none;background:transparent;outline:none;font-size:13px;color:#374151}.message-search input::placeholder{color:#9ca3af}.tab-button .badge{display:inline-block;margin-left:6px;padding:2px 6px;background:#ef4444;color:#fff;border-radius:10px;font-size:11px;font-weight:700}.message-list{flex:1;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;background:#fff;max-height:400px}.message-list::-webkit-scrollbar{width:6px}.message-list::-webkit-scrollbar-track{background:#f9fafb}.message-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.message-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.message-item{display:flex;gap:12px;padding:12px;border-bottom:1px solid #e5e7eb;cursor:pointer;transition:all .2s}.message-item:hover{background:#f9fafb}.message-item.selected{background:#ede9fe;border-left:3px solid #667eea}.message-item.unread,.message-item.unread:hover{background:#fef3c7}.message-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#e0e7ff;color:#667eea;flex-shrink:0}.message-item.unread .message-icon{background:#fef3c7;color:#f59e0b}.message-info{flex:1;min-width:0}.message-sender{font-size:13px;font-weight:600;color:#1f2937;margin-bottom:4px}.message-subject{font-size:13px;color:#374151;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-date{font-size:11px;color:#9ca3af}.no-messages{padding:40px 20px;text-align:center;color:#9ca3af;font-size:14px}.message-detail{margin-top:16px;padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;max-height:300px;overflow-y:auto}.message-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.message-detail-header h4{margin:0;font-size:15px;font-weight:600;color:#1f2937;flex:1}.close-detail-button{background:none;border:none;cursor:pointer;color:#9ca3af;padding:0;display:flex;align-items:center;transition:color .2s}.close-detail-button:hover{color:#374151}.message-detail-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:12px;color:#6b7280}.message-detail-meta strong{color:#374151;font-weight:600}.message-detail-content{font-size:13px;color:#374151;line-height:1.6;white-space:pre-wrap}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90%;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease}.compose-modal{max-width:300px;width:100%}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:14px;font-weight:600;color:#1f2937;margin:0}.compose-form{padding:14px 16px}.compose-form .form-group{margin-bottom:10px}.compose-form .form-group label{display:block;margin-bottom:4px;font-size:12px;font-weight:600;color:#374151}.compose-form .form-group input,.compose-form .form-group select,.compose-form .form-group textarea{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;font-family:inherit;transition:all .2s;box-sizing:border-box}.compose-form .form-group input:focus,.compose-form .form-group select:focus,.compose-form .form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.compose-form .form-group textarea{resize:vertical;min-height:80px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.cancel-button,.send-button{padding:7px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:5px}.send-button{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff}.send-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.menu-settings-section h3{margin:0 0 6px;font-size:15px;font-weight:700;color:#1f2937}.menu-toggle-list{display:flex;flex-direction:column;gap:8px;margin:16px 0 20px}.menu-toggle-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:10px;border:1.5px solid #e5e7eb;background:#f9fafb;cursor:pointer;transition:all .15s}.menu-toggle-item:hover:not(.disabled){border-color:#a78bfa;background:#f5f3ff}.menu-toggle-item.checked{border-color:#c4b5fd;background:#faf5ff}.menu-toggle-item.disabled{opacity:.6;cursor:default}.menu-toggle-left{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#374151}.menu-toggle-item.checked .menu-toggle-left{color:#6d28d9}.menu-toggle-switch{position:relative;width:40px;height:22px;flex-shrink:0}.menu-toggle-switch input{opacity:0;width:0;height:0;position:absolute}.menu-toggle-switch .slider{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:11px;background:#d1d5db;transition:background .2s;cursor:pointer}.menu-toggle-switch .slider:before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .2s;box-shadow:0 1px 3px #0003}.menu-toggle-switch.on .slider{background:linear-gradient(135deg,#667eea,#764ba2)}.menu-toggle-switch.on .slider:before{transform:translate(18px)}.header{height:64px;background:var(--bg-header);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-xl);box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;position:sticky;top:0;z-index:10;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all var(--transition-base)}.header-left{display:flex;align-items:center;gap:var(--space-md)}.header-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);letter-spacing:-.02em);display:flex;align-items:center;gap:var(--space-sm)}.header-version{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-gray-500);padding:4px 10px;background:var(--color-gray-100);border-radius:var(--radius-full);letter-spacing:.02em)}.header-right{display:flex;align-items:center;gap:var(--space-md)}.user-info{display:flex;align-items:center;gap:var(--space-sm);padding:8px 14px;background:var(--color-gray-100);border-radius:var(--radius-lg);color:var(--color-gray-700);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-base);border:1px solid transparent}.user-info:hover{background:var(--color-gray-200);border-color:var(--border-light)}.user-info-btn{cursor:pointer}.user-info-btn:hover{background:var(--color-gray-200);border-color:var(--color-primary-300);color:var(--color-primary-700)}.user-name-text{font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.header-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:#ef4444;color:#fff;border-radius:9px;font-size:10px;font-weight:700;margin-left:5px;vertical-align:middle}.admin-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 18px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:0 2px 8px #8b5cf640;letter-spacing:-.01em}.admin-button:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 4px 16px #8b5cf666}.admin-button:active{transform:translateY(0)}.logout-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 18px;background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:0 2px 8px #ef444440;letter-spacing:-.01em}.logout-button:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 4px 16px #ef444466}.logout-button:active{transform:translateY(0)}.hamburger-btn{display:none;align-items:center;justify-content:center;width:38px;height:38px;background:var(--color-gray-100);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--color-gray-700);cursor:pointer;flex-shrink:0;transition:all var(--transition-base)}.hamburger-btn:hover{background:var(--color-gray-200)}@media (max-width: 768px){.hamburger-btn{display:flex}}@media (max-width: 1024px){.header{padding:0 var(--space-lg)}.header-title{font-size:var(--font-size-lg)}.header-version{display:none}}@media (max-width: 768px){.header{padding:0 var(--space-md);height:56px}.header-left{gap:var(--space-sm)}.header-title{font-size:var(--font-size-base);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-button,.logout-button{padding:8px 12px;font-size:var(--font-size-sm)}.user-info{padding:6px 10px;font-size:var(--font-size-sm)}}@media (max-width: 480px){.header{padding:0 var(--space-sm);gap:var(--space-xs);height:52px}.header-title{max-width:100px;font-size:13px}.admin-button span,.logout-button span{display:none}.admin-button,.logout-button{padding:8px;width:36px;height:36px;justify-content:center}.user-info{padding:6px 8px}.user-name-text{display:none}}.main-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg-page);position:relative}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;transition:margin-left var(--transition-slow)}.page-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-xl);background:var(--bg-page);position:relative;animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-content::-webkit-scrollbar{width:10px}.page-content::-webkit-scrollbar-track{background:var(--color-gray-100);border-left:1px solid var(--border-light)}.page-content::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-sm);border:2px solid var(--color-gray-100);transition:background var(--transition-base)}.page-content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.page-content::-webkit-scrollbar-thumb:active{background:var(--color-gray-600)}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.loading-spinner{width:50px;height:50px;border:4px solid var(--color-gray-200);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin .8s linear infinite}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:all var(--transition-slow)}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity var(--transition-fast)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:998;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:fadeIn .2s ease}@media (max-width: 1024px){.page-content{padding:var(--space-md)}}@media (max-width: 768px){.page-content{padding:var(--space-sm) var(--space-md);padding-bottom:90px}}@media (max-width: 480px){.page-content{padding:var(--space-sm);padding-bottom:80px}}.page-content.scrolled:before{content:"";position:sticky;top:0;left:0;right:0;height:1px;background:linear-gradient(to bottom,rgba(0,0,0,.1),transparent);z-index:1;pointer-events:none}.dashboard{padding:var(--space-xl);max-width:1800px;margin:0 auto;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-notification{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;padding:18px 24px;border-radius:var(--radius-xl);display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);cursor:pointer;box-shadow:0 4px 16px #8b5cf64d;transition:all var(--transition-base);animation:slideInDown .4s ease-out;border:1px solid rgba(255,255,255,.1)}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.message-notification:hover{box-shadow:0 8px 24px #8b5cf666;transform:translateY(-2px)}.message-icon{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#ffffff40;border-radius:var(--radius-lg);flex-shrink:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.message-badge{position:absolute;top:-6px;right:-6px;background:var(--color-error);color:#fff;border-radius:var(--radius-full);padding:3px 7px;font-size:10px;font-weight:var(--font-weight-bold);min-width:22px;text-align:center;box-shadow:0 2px 8px #ef444466;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.message-content{flex:1;display:flex;flex-direction:column;gap:4px}.message-content strong{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.message-content span{font-size:var(--font-size-sm);opacity:.95}.notices-section{margin-bottom:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}.notice-card{background:var(--bg-card);border-radius:var(--radius-xl);padding:20px 24px;box-shadow:var(--shadow-sm);display:flex;align-items:flex-start;gap:var(--space-md);border-left:4px solid;position:relative;transition:all var(--transition-base);border:1px solid var(--border-light);border-left-width:4px}.notice-card:hover{box-shadow:var(--shadow-md);transform:translate(4px)}.notice-card.urgent{border-left-color:var(--color-error);background:linear-gradient(135deg,#fff,#fef2f2)}.notice-card.warning{border-left-color:var(--color-warning);background:linear-gradient(135deg,#fff,#fffbeb)}.notice-card.info{border-left-color:var(--color-info);background:linear-gradient(135deg,#fff,#eff6ff)}.notice-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-lg);flex-shrink:0}.notice-card.urgent .notice-icon{background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%);color:#fff}.notice-card.warning .notice-icon{background:linear-gradient(135deg,var(--color-warning) 0%,#d97706 100%);color:#fff}.notice-card.info .notice-icon{background:linear-gradient(135deg,var(--color-info) 0%,#2563eb 100%);color:#fff}.notice-content{flex:1;min-width:0}.notice-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-sm);flex-wrap:wrap}.notice-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-900);line-height:var(--line-height-tight)}.notice-date{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:var(--font-weight-medium);white-space:nowrap}.notice-text{margin:0;font-size:var(--font-size-base);color:var(--color-gray-600);line-height:var(--line-height-relaxed)}.notice-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;color:var(--color-gray-400);transition:all var(--transition-fast);flex-shrink:0}.notice-close:hover{background:#0000000d;color:var(--color-gray-700)}.gantt-section{background:var(--bg-card);padding:var(--space-xl);border-radius:var(--radius-xl);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin-bottom:var(--space-2xl);transition:all var(--transition-base)}.gantt-section:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-200)}.gantt-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-primary-500)}.gantt-section-header h3{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);letter-spacing:-.01em}.schedule-link-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:8px 16px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-xs)}.schedule-link-btn:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.gantt-chart{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-light);overflow:hidden}.gantt-header{display:grid;grid-template-columns:200px 1fr;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:2px solid var(--color-primary-500)}.gantt-title-col{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-gray-900);text-transform:uppercase;letter-spacing:.05em;border-right:1px solid var(--border-light)}.gantt-timeline-col{position:relative}.gantt-months{display:flex}.gantt-month{flex:1;padding:var(--space-md);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-gray-700);border-right:1px solid var(--border-light)}.gantt-month:last-child{border-right:none}.gantt-body{position:relative}.gantt-row{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid var(--border-light);transition:background var(--transition-fast)}.gantt-row:hover{background:var(--color-gray-50)}.gantt-row:last-child{border-bottom:none}.gantt-row-title{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-800);border-right:1px solid var(--border-light);display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-row-timeline{position:relative;padding:var(--space-sm) 0;min-height:48px;display:flex;align-items:center}.gantt-bar{position:absolute;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:#fff;transition:all var(--transition-base);box-shadow:var(--shadow-xs)}.gantt-bar:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.gantt-bar.in-progress{background:linear-gradient(135deg,var(--color-info) 0%,#2563eb 100%)}.gantt-bar.pending{background:linear-gradient(135deg,var(--color-warning) 0%,#d97706 100%)}.gantt-bar.completed{background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%)}.gantt-bar-label{padding:0 var(--space-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--color-error);z-index:1;pointer-events:none}.gantt-today-line:before{content:"오늘";position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-error);background:#fff;padding:2px 6px;border-radius:var(--radius-sm);white-space:nowrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-xl);margin-bottom:var(--space-2xl)}.stat-card{background:linear-gradient(135deg,#fff,#fafbfc);padding:var(--space-xl);border-radius:var(--radius-xl);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--transition-base);position:relative;overflow:hidden;display:flex;align-items:center;gap:var(--space-lg);cursor:pointer}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);transition:width var(--transition-base)}.stat-card.primary:before{background:linear-gradient(180deg,#667eea,#764ba2)}.stat-card.success:before{background:linear-gradient(180deg,#10b981,#059669)}.stat-card.info:before{background:linear-gradient(180deg,#3b82f6,#2563eb)}.stat-card.warning:before{background:linear-gradient(180deg,#f59e0b,#d97706)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-200)}.stat-card:hover:before{width:6px}.stat-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-xl);flex-shrink:0}.stat-card.primary .stat-icon{background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#7c3aed}.stat-card.success .stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.stat-card.info .stat-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.stat-card.warning .stat-icon{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.stat-content{flex:1}.stat-label{margin:0 0 4px;font-size:var(--font-size-sm);color:var(--color-gray-500);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.04em}.stat-value{margin:0;font-size:32px;font-weight:var(--font-weight-extrabold);color:var(--color-gray-900);line-height:1.1;letter-spacing:-.02em}.stat-unit{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-500);margin-left:4px}.stat-sub{margin:4px 0 0;font-size:var(--font-size-xs);color:var(--color-gray-400)}.charts-section,.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:var(--space-2xl);margin-bottom:var(--space-xl)}.chart-card{background:var(--bg-card);padding:var(--space-xl);border-radius:var(--radius-xl);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.chart-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-200)}.chart-card h3{margin:0 0 var(--space-lg) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-primary-500);letter-spacing:-.01em}.recent-orders-table{overflow-x:auto}.simple-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.simple-table th,.simple-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-light)}.simple-table th{font-weight:var(--font-weight-semibold);color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;background:#f8fafc}.simple-table td{color:var(--color-gray-700)}.order-num{font-weight:var(--font-weight-semibold);color:var(--color-primary-600)}.status-badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}@media (max-width: 1280px){.stats-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard{padding:var(--space-md)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.charts-grid{gap:var(--space-md)}.chart-card{padding:var(--space-md)}.message-notification{padding:14px 16px;gap:12px}.notice-card{padding:14px 16px}.gantt-section{padding:var(--space-md)}.gantt-chart{overflow-x:auto;-webkit-overflow-scrolling:touch}.gantt-header,.gantt-body{min-width:500px}.recent-orders-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.simple-table{min-width:400px}}@media (max-width: 480px){.dashboard{padding:10px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:14px 12px;gap:10px}.stat-icon{width:40px;height:40px;border-radius:10px}.stat-value{font-size:22px}.stat-label{font-size:10px}.chart-card{padding:12px;border-radius:var(--radius-lg)}.chart-card h3{font-size:14px;margin-bottom:12px}.message-notification{padding:12px 14px;border-radius:var(--radius-lg)}.message-icon{width:38px;height:38px}.notice-card{padding:12px;border-radius:var(--radius-lg)}.notice-icon{width:36px;height:36px}.notice-title{font-size:13px}.notice-text{font-size:12px}.gantt-section{padding:12px;border-radius:var(--radius-lg)}.gantt-section-header h3{font-size:14px}.schedule-link-btn{padding:6px 12px;font-size:12px}}@media (max-width: 400px){.dashboard{padding:8px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:12px 10px;flex-direction:column;text-align:center;gap:6px}.stat-value{font-size:20px}.charts-grid{gap:8px}.chart-card{padding:10px}}.ext-dashboard{padding:24px 24px 60px;max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:28px}.ext-section-hd{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#374151;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.ext-notices-list{display:flex;flex-direction:column;gap:10px}.ext-notice-card{border-radius:10px;padding:14px 16px;border:1px solid #e5e7eb}.ext-notice-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.ext-notice-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.ext-notice-audience{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;white-space:nowrap}.ext-notice-title{font-size:14px;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ext-notice-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.ext-notice-date{font-size:12px;color:#9ca3af}.ext-notice-close{background:none;border:none;cursor:pointer;padding:2px;color:#9ca3af;display:flex;align-items:center}.ext-notice-close:hover{color:#374151}.ext-notice-content{font-size:13px;color:#374151;line-height:1.6;white-space:pre-line}.ext-company-card{display:flex;gap:24px;align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:28px 32px;color:#fff}.ext-company-logo{width:72px;height:72px;background:#fff3;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ext-company-info{flex:1}.ext-company-name{font-size:26px;font-weight:800;margin:0 0 10px;letter-spacing:-.5px}.ext-company-desc{font-size:14px;line-height:1.7;opacity:.9;margin:0 0 16px}.ext-company-contacts{display:flex;gap:20px;flex-wrap:wrap}.ext-contact-item{display:flex;align-items:center;gap:6px;font-size:13px;opacity:.85}.ext-guide-tabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:2px solid #e5e7eb;padding-bottom:0}.ext-guide-tab{display:flex;align-items:center;gap:6px;padding:10px 18px;background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s}.ext-guide-tab:hover{color:#374151}.ext-guide-tab.active{color:#4f46e5;border-bottom-color:#4f46e5;font-weight:700}.guide-panel{background:#f9fafb;border-radius:12px;padding:24px}.guide-panel-intro{display:flex;gap:16px;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.guide-panel-intro h3{font-size:17px;font-weight:700;color:#111827;margin:0 0 4px}.guide-panel-intro p{font-size:13px;color:#6b7280;margin:0}.guide-steps{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.guide-step{display:flex;gap:14px;align-items:flex-start}.guide-step-num{width:28px;height:28px;background:#4f46e5;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.guide-step-title{font-size:14px;font-weight:600;color:#111827;margin-bottom:4px}.guide-step-desc{font-size:13px;color:#4b5563;line-height:1.6}.guide-action{display:flex;justify-content:flex-end}.guide-action-row{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.guide-go-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.guide-go-btn:hover{background:#4338ca}.guide-go-billing{background:#0891b2}.guide-go-billing:hover{background:#0e7490}.guide-go-orders{background:#7c3aed}.guide-go-orders:hover{background:#6d28d9}.guide-go-sample{background:#059669}.guide-go-sample:hover{background:#047857}.ext-quick-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.ext-quick-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;cursor:pointer;transition:all .15s;font-size:14px;font-weight:600;color:#374151;position:relative}.ext-quick-card:hover{border-color:#a5b4fc;background:#f5f3ff;transform:translateY(-2px);box-shadow:0 4px 12px #6366f11f}.ext-quick-card>svg:last-child{position:absolute;top:14px;right:14px;color:#9ca3af}@media (max-width: 900px){.ext-quick-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.ext-dashboard{padding:16px}.ext-company-card{flex-direction:column;padding:20px}.ext-quick-grid{grid-template-columns:repeat(2,1fr)}.ext-guide-tabs{flex-direction:column;border-bottom:none}.ext-guide-tab{border-bottom:none;border-left:3px solid transparent;border-radius:8px}.ext-guide-tab.active{border-bottom:none;border-left-color:#4f46e5}.guide-action-row{flex-direction:column;align-items:flex-end}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width: 767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px 0px rgba(51,51,51,.5);box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-month-row{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;-webkit-box-shadow:0 5px 15px rgba(0,0,0,.25);box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;position:absolute;right:0;margin-right:10px;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:-webkit-box;display:-ms-flexbox;display:flex;max-height:100%;min-height:20px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-width:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.schedule-management-page{padding:24px;background:#f9fafb;min-height:calc(100vh - 64px)}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.header-controls{display:flex;gap:12px}.view-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.view-btn:hover{background:#f3f4f6;border-color:#667eea;color:#667eea}.legend{display:flex;gap:20px;align-items:center}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280}.legend-color{width:16px;height:16px;border-radius:3px}.legend-color.delivery{background:#ef4444}.legend-color.equipment{background:#f59e0b}.legend-color.production{background:#10b981}.print-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.print-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.calendar-container{background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.rbc-calendar{font-family:inherit}.rbc-header{padding:12px 4px;font-weight:600;color:#374151;background:#f9fafb;border-bottom:2px solid #e5e7eb!important}.rbc-today{background-color:#ede9fe!important}.rbc-event{padding:2px 5px;font-size:13px}.rbc-event:focus{outline:none}.rbc-toolbar{padding:16px 0;margin-bottom:16px}.rbc-toolbar button{color:#374151;border:1px solid #e5e7eb;padding:8px 16px;border-radius:6px;background:#fff;font-weight:500;transition:all .2s}.rbc-toolbar button:hover{background:#f3f4f6;border-color:#667eea;color:#667eea}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background:#667eea;color:#fff;border-color:#667eea;box-shadow:none}.rbc-month-view,.rbc-time-view{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.rbc-date-cell{padding:6px}.rbc-off-range-bg{background:#f9fafb}.event-modal{max-width:500px;width:100%}.event-detail{padding:24px;display:flex;flex-direction:column;gap:16px}.detail-row{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:6px}.detail-row strong{min-width:80px;font-size:14px;color:#374151;font-weight:600}.detail-row span{font-size:14px;color:#6b7280}.event-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.event-badge.order,.event-badge.sample{background:#fee2e2;color:#ef4444}.event-badge.maintenance{background:#fef3c7;color:#f59e0b}.event-badge.production{background:#d1fae5;color:#10b981}@media print{.schedule-header{display:none}.calendar-container{box-shadow:none;border:1px solid #e5e7eb}.rbc-toolbar{display:none}}@media (max-width: 1024px){.schedule-header{flex-direction:column;gap:16px;align-items:flex-start}.legend{flex-wrap:wrap}}.at-root{display:flex;flex-direction:column;gap:12px}.at-wrap{background:#fff;border-radius:16px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.at-wrap>table{display:block;overflow-x:auto}.at-wrap>table{display:table}.at-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.at-th{background:linear-gradient(to bottom,#f9fafb,#f3f4f6);padding:11px 14px;text-align:left;font-size:11px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb;white-space:nowrap;position:sticky;top:0;z-index:1;-webkit-user-select:none;user-select:none}.at-th-sort{cursor:pointer;transition:background .14s}.at-th-sort:hover{background:linear-gradient(to bottom,#f3f4f6,#e5e7eb)!important;color:#111827}.at-th-inner{display:inline-flex;align-items:center;gap:5px}.at-sort-icon{flex-shrink:0}.at-sort-muted{color:#d1d5db}.at-sort-active{color:#4c1d95}.at-td{padding:11px 14px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle;transition:background .1s}.at-row:nth-child(2n) .at-td{background:#fafafa}.at-row:last-child .at-td{border-bottom:none}.at-row-clickable{cursor:pointer}.at-row-clickable:hover .at-td{background:#f3f4f6!important;color:#1f2937}.at-row-selected .at-td{background:#ede9fe!important;color:#1f2937}.at-state-cell{text-align:center;padding:56px 20px;color:#9ca3af;font-size:14px}.at-empty-icon{display:block;margin:0 auto 10px;color:#4c1d95}.at-spin{animation:at-rotate .8s linear infinite}@keyframes at-rotate{to{transform:rotate(360deg)}}.at-pagination{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;flex-wrap:wrap}.at-page-info{font-size:12px;color:#6b7280;font-weight:600;min-width:140px;text-align:center}.at-page-controls{display:flex;align-items:center;gap:3px}.at-pg-btn{min-width:30px;height:30px;padding:0 5px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .14s}.at-pg-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;color:#111827;transform:translateY(-1px)}.at-pg-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.at-pg-num.at-pg-active{background:linear-gradient(135deg,#4c1d95,#3b0764);border-color:#3b0764;color:#fff;font-weight:700;box-shadow:0 2px 8px #4c1d9559}.at-page-size{height:30px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:12px;background:#fff;cursor:pointer;outline:none;color:#374151;font-weight:600;transition:border-color .14s}.at-page-size:focus{border-color:#9ca3af}.at-toolbar{display:flex;justify-content:flex-end;padding:0 2px 2px}.at-reset-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .14s}.at-reset-btn:hover{color:#374151;background:#f3f4f6;border-color:#9ca3af}.at-drag-handle{display:inline-flex;align-items:center;color:#9ca3af;cursor:grab;flex-shrink:0;padding:0 2px;transition:color .12s}.at-drag-handle:hover{color:#4c1d95}.at-drag-handle:active{cursor:grabbing}.at-resize-handle{position:absolute;right:0;top:0;height:100%;width:5px;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;background:transparent;transition:background .14s}.at-resize-handle:hover,.at-resizing{background:#4c1d9559;border-radius:2px}.at-th{position:relative!important}.at-drag-overlay{background:#ede9fe;border:2px solid #7c3aed;border-radius:6px;padding:6px 14px;font-size:11px;font-weight:700;color:#4c1d95;pointer-events:none;box-shadow:0 8px 24px #4c1d9540}.at-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:.2px}.at-mono{font-family:Courier New,monospace;font-size:12px;color:#1e3a5f}.at-num-r{text-align:right;font-weight:700;color:#1d4ed8;display:block;font-variant-numeric:tabular-nums}.at-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:200px}.at-center{text-align:center}.at-muted{color:#9ca3af}.at-td:first-child{font-weight:600;color:#1f2937}@media (max-width: 768px){.at-wrap{border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.at-th{padding:9px 10px;font-size:10px}.at-td{padding:9px 10px;font-size:12px}.at-pagination{gap:6px;padding:6px 10px;border-radius:10px}.at-page-info{min-width:100px;font-size:11px}}@media (max-width: 480px){.at-wrap{border-radius:10px}.at-th{padding:8px;font-size:10px;letter-spacing:.3px}.at-td{padding:8px;font-size:12px}.at-state-cell{padding:36px 12px;font-size:13px}.at-pg-btn{min-width:28px;height:28px;font-size:11px}.at-page-size{height:28px;font-size:11px;padding:0 6px}}.list-page{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--space-xl);padding-bottom:100px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);height:calc(100vh - 140px);max-height:calc(100vh - 140px);display:flex;flex-direction:column;transition:all var(--transition-base);max-width:1800px;margin:0 auto}.list-page:hover{box-shadow:var(--shadow-md)}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-primary-500)}.list-header h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0;display:flex;align-items:center;gap:var(--space-sm);letter-spacing:-.02em}.header-buttons{display:flex;gap:12px;align-items:center}.add-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:12px 28px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:var(--shadow-sm);letter-spacing:-.01em;height:44px}.add-button:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf659}.add-button:active{transform:translateY(0)}.add-button.secondary{background:linear-gradient(135deg,var(--color-info) 0%,#2563eb 100%)}.add-button.secondary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 20px #3b82f659}.add-button.success{background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%)}.add-button.success:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 20px #10b98159}.list-grid{flex:1;width:100%;min-height:0;position:relative;overflow:hidden}.list-grid .ag-theme-alpine{height:100%;width:100%}.list-page .floating-action-bar{position:fixed;bottom:0;left:260px;right:0;height:80px;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1.5px solid var(--border-light);box-shadow:0 -4px 24px #00000014;display:flex;justify-content:flex-end;align-items:center;padding:0 var(--space-2xl);gap:14px;z-index:100;transition:all var(--transition-base)}.list-page .floating-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 32px;height:48px;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);border:none;white-space:nowrap;letter-spacing:-.01em;box-shadow:var(--shadow-sm)}.list-page .floating-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.list-page .floating-btn:not(:disabled):hover{transform:translateY(-2px)}.list-page .floating-btn:not(:disabled):active{transform:translateY(0)}.list-page .floating-btn-primary{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff}.list-page .floating-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);box-shadow:0 8px 24px #8b5cf666}.list-page .floating-btn-success{background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%);color:#fff}.list-page .floating-btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 24px #10b98166}.list-page .floating-btn-info{background:linear-gradient(135deg,var(--color-info) 0%,#2563eb 100%);color:#fff}.list-page .floating-btn-info:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 24px #3b82f666}.list-page .floating-btn-secondary,.list-page .floating-btn-cancel{background:#fff;border:1.5px solid var(--border-medium);color:var(--color-gray-700)}.list-page .floating-btn-secondary:hover,.list-page .floating-btn-cancel:hover{background:var(--color-gray-50);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.list-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.list-search{height:34px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;width:280px;outline:none;background:#fff;transition:border-color .15s}.list-search:focus{border-color:#6366f1}.list-icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;color:#6b7280;transition:all .15s}.list-icon-btn:hover{background:#f3f4f6}.list-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-3xl);color:var(--color-gray-500);text-align:center}.list-empty-state-icon{width:64px;height:64px;margin-bottom:var(--space-md);color:var(--color-gray-400)}.list-empty-state-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin-bottom:var(--space-sm)}.list-empty-state-description{font-size:var(--font-size-base);color:var(--color-gray-500);max-width:400px}@media (max-width: 1400px){.list-page{max-width:100%}}@media (max-width: 1024px){.list-page{padding:var(--space-lg);padding-bottom:90px}.list-header{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.header-buttons{width:100%;justify-content:flex-start}.list-page .floating-action-bar{left:70px;padding:0 var(--space-lg);height:72px}.list-page .floating-btn{padding:12px 24px;height:44px;font-size:var(--font-size-sm)}}@media (max-width: 768px){.list-page{padding:var(--space-md);padding-bottom:80px;border-radius:var(--radius-lg);height:auto;max-height:none;min-height:calc(100vh - 130px)}.list-header h2{font-size:var(--font-size-xl)}.add-button{padding:10px 20px;font-size:var(--font-size-sm);height:40px}.list-page .floating-action-bar{left:0!important;height:auto;min-height:64px;padding:10px 16px;flex-wrap:wrap;justify-content:flex-end;gap:8px}.list-page .floating-btn{flex:0 0 auto;min-width:calc(50% - 4px);max-width:200px;padding:10px 12px;height:40px;font-size:var(--font-size-sm)}}@media (max-width: 480px){.list-page{padding:var(--space-sm);height:auto;max-height:none;min-height:calc(100vh - 120px)}.header-buttons{flex-direction:column}.add-button{width:100%;justify-content:center}.list-page .floating-action-bar{left:0!important;padding:8px 12px;gap:6px}.list-page .floating-btn{min-width:calc(50% - 3px);max-width:none;padding:9px 8px;height:38px;font-size:12px}}@media (max-width: 400px){.list-page{padding:6px;border-radius:8px}.list-header h2{font-size:15px}.add-button{padding:8px 12px;font-size:12px;height:36px}.list-toolbar{gap:5px}.list-search{width:100%;height:32px;font-size:13px}.list-icon-btn{width:32px;height:32px}}.erp-error{padding:14px 18px;background:#fee2e2;border:1px solid #fca5a5;border-radius:10px;color:#991b1b;margin-bottom:14px;font-size:14px}.erp-section-hd h3{margin:0;font-size:15px;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:8px}.erp-info-grid.cols-2{grid-template-columns:repeat(2,1fr)}.val-mono{font-family:Inter,monospace!important;font-weight:700!important}.val-green{color:#16a34a!important}.val-amber{color:#d97706!important}.val-red{color:#dc2626!important}.val-purple{color:#7c3aed!important}.val-lg{font-size:17px!important;font-weight:800!important}.val-lg em{font-style:normal;font-size:12px;color:#9ca3af;margin-left:2px;font-weight:500}.erp-form-grid{display:grid;gap:12px}.erp-form-grid.cols-2{grid-template-columns:repeat(2,1fr)}.erp-form-field textarea{resize:vertical;min-height:80px}.erp-form-field input:disabled,.erp-form-field select:disabled,.erp-form-field textarea:disabled{background:#f9fafb;cursor:not-allowed;color:#6b7280}.erp-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #d1d5db;background:#fff;border-radius:7px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s;height:36px;white-space:nowrap}.erp-action-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.erp-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;box-shadow:0 2px 6px #667eea4d}.erp-action-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.erp-action-btn.ghost{background:#fff;border:1px solid #d1d5db}.erp-action-btn.ghost:hover:not(:disabled){background:#f3f4f6}.erp-action-btn.danger{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;border-color:transparent;box-shadow:0 2px 6px #ef444440}.erp-action-btn.danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #ef444459}.erp-action-btn.green{background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;border-color:transparent;box-shadow:0 2px 6px #22c55e40}.erp-action-btn.green:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #22c55e59}.erp-table .td-right{text-align:right}.erp-table .td-center{text-align:center}.erp-table .td-num{font-weight:700;color:#2563eb;font-family:Inter,monospace}.erp-table .td-num.green{color:#16a34a}.erp-table .td-num.amber{color:#d97706}.erp-table .td-note{color:#9ca3af;font-style:italic}.erp-kpi-card{flex:1;min-width:120px;padding:14px 18px;border-radius:10px;border:1px solid transparent}.erp-kpi-card.amber{background:#fffbeb;border-color:#fcd34d}.erp-kpi-card.purple{background:#f5f3ff;border-color:#c4b5fd}.erp-kpi-main{font-size:22px;font-weight:800;line-height:1;margin-bottom:4px;font-family:Inter,monospace}.erp-kpi-card.amber .erp-kpi-main{color:#d97706}.erp-kpi-card.purple .erp-kpi-main{color:#7c3aed}.erp-kpi-main em{font-style:normal;font-size:12px;color:#9ca3af;margin-left:4px;font-weight:500}.erp-kpi-lbl{font-size:11px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.erp-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}.erp-badge.green{background:#d1fae5;color:#065f46}.erp-badge.blue{background:#dbeafe;color:#1d4ed8}.erp-badge.amber{background:#fef3c7;color:#92400e}.erp-badge.red{background:#fee2e2;color:#991b1b}.erp-badge.purple{background:#ede9fe;color:#5b21b6}.erp-badge.gray{background:#f3f4f6;color:#374151}.erp-badge-latest{display:inline-block;margin-left:8px;padding:2px 8px;background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;border-radius:20px;font-size:11px;font-weight:700}.erp-empty{padding:28px;text-align:center;color:#9ca3af;font-size:13px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px}.erp-status-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:700}.erp-status-정상{background:#d1fae5;color:#065f46}.erp-status-점검필요{background:#fef3c7;color:#92400e}.erp-status-고장{background:#fee2e2;color:#991b1b}.erp-status-수리중{background:#ede9fe;color:#5b21b6}.erp-status-폐기{background:#f3f4f6;color:#6b7280}.erp-status-매출처{background:#dbeafe;color:#1d4ed8}.erp-status-매입처{background:#fef3c7;color:#92400e}.erp-status-매출매입혼합{background:#ede9fe;color:#5b21b6}@media (max-width: 768px){.erp-page{padding:10px 10px 100px}.erp-fab{left:0!important;padding:0 12px;height:60px}.erp-info-grid.cols-4,.erp-info-grid.cols-3{grid-template-columns:repeat(2,1fr)}.erp-form-grid.cols-4,.erp-form-grid.cols-3,.erp-form-grid.cols-2{grid-template-columns:1fr}.erp-info-grid .span-2,.erp-info-grid .span-3,.erp-info-grid .span-4,.erp-form-grid .span-2,.erp-form-grid .span-3,.erp-form-grid .span-4{grid-column:1 / -1}.erp-kpi-row{flex-direction:column}.erp-section{padding:14px}}@media (max-width: 480px){.erp-page{padding:8px 8px 90px}.erp-page-title-bar{gap:8px}.erp-page-title-bar h2{font-size:15px}.erp-section{padding:12px;border-radius:10px}.erp-section-hd h3{font-size:13px}.erp-info-grid.cols-4,.erp-info-grid.cols-3,.erp-info-grid.cols-2{grid-template-columns:1fr}.erp-info-grid.cols-2{grid-template-columns:repeat(2,1fr)}.erp-info-item{padding:9px 10px}.erp-info-item span{font-size:13px}.erp-inline-form{padding:10px 12px}.erp-inline-actions{flex-wrap:wrap}.erp-kpi-row{flex-direction:row;flex-wrap:wrap}.erp-kpi-card{flex:1 1 calc(50% - 6px);min-width:120px;padding:10px 12px}.erp-kpi-main{font-size:18px}.erp-form-actions{flex-wrap:wrap}.erp-action-btn{flex:1 1 calc(50% - 4px);justify-content:center}.erp-fab{padding:0 10px;height:56px;gap:8px}.erp-action-btn.primary{padding:8px 12px;font-size:12px}.erp-section>.erp-table,.erp-section-body>.erp-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}@media (max-width: 400px){.erp-page{padding:6px 6px 88px}.erp-section{padding:10px;border-radius:8px}.erp-back-btn{padding:6px 10px;font-size:12px}.erp-info-grid.cols-2{grid-template-columns:1fr}.erp-kpi-card{flex:1 1 100%}.erp-fab{padding:0 8px;gap:6px}}.pd-tier-desc{font-size:12.5px;color:#6b7280;margin-bottom:14px}.pd-tier-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:16px}.pd-tier-table th{background:#f3f4f6;color:#374151;font-weight:600;padding:8px 12px;text-align:left;border-bottom:2px solid #e5e7eb}.pd-tier-table td{padding:8px 12px;border-bottom:1px solid #f0f0f0;color:#374151}.pd-tier-table .td-num{font-variant-numeric:tabular-nums;color:#1d4ed8;font-weight:500}.pd-tier-table .td-price{font-weight:700;color:#059669}.pd-tier-del{background:none;border:none;cursor:pointer;color:#ef4444;padding:4px;border-radius:4px;display:flex;align-items:center}.pd-tier-del:hover{background:#fee2e2}.pd-tier-add-row{display:flex;align-items:flex-end;gap:10px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;padding:12px 14px;margin-bottom:14px}.pd-tier-add-field{display:flex;flex-direction:column;gap:4px;flex:1}.pd-tier-add-field label{font-size:11.5px;color:#6b7280;font-weight:600}.pd-tier-add-field input{border:1px solid #d1d5db;border-radius:6px;padding:6px 10px;font-size:13px;color:#111827;outline:none}.pd-tier-add-field input:focus{border-color:#667eea}.pd-tier-add-btn{display:flex;align-items:center;gap:5px;background:#667eea;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.pd-tier-add-btn:hover{background:#5a67d8}.pd-tier-example{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;background:#fffbeb;border-radius:8px;border:1px solid #fde68a}.pd-tier-ex-lbl{font-size:11.5px;font-weight:700;color:#92400e;margin-right:4px}.pd-tier-ex-chip{font-size:12px;color:#78350f;background:#fef3c7;padding:3px 10px;border-radius:12px}.pd-tier-ex-chip strong{color:#b45309}.company-info-container{padding:var(--space-xl);max-width:1400px;margin:0 auto;padding-bottom:100px}.company-info-form{display:flex;flex-direction:column;gap:var(--space-xl)}.section-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-primary-500)}.section-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-900);flex:1}.section-header svg{color:var(--color-primary-500)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.form-group label .required{color:var(--color-danger);margin-left:2px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 14px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:all var(--transition-base);background:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #8b5cf61a}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background:var(--bg-disabled);color:var(--color-gray-600);cursor:not-allowed}.btn-add-account{padding:8px 16px;background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.btn-add-account:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.accounts-list{display:flex;flex-direction:column;gap:var(--space-lg)}.account-card{position:relative;padding:var(--space-lg);background:#fff;border:2px solid var(--border-light);border-radius:var(--radius-lg);transition:all var(--transition-base)}.account-card.primary{border-color:var(--color-primary-500);background:linear-gradient(135deg,#faf5ff,#f3e8ff);box-shadow:0 2px 8px #8b5cf626}.primary-badge{position:absolute;top:-12px;left:20px;padding:4px 12px;background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);letter-spacing:.05em}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);align-items:end}.account-actions{display:flex;flex-direction:column;gap:var(--space-sm);justify-content:flex-end}.checkbox-label{display:flex;align-items:center;gap:var(--space-xs);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-700);margin-bottom:var(--space-xs)}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.btn-remove-account{padding:6px 12px;background:var(--color-danger);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.btn-remove-account:hover{background:#dc2626;transform:translateY(-1px)}@media (max-width: 768px){.company-info-container{padding:var(--space-md)}.form-grid,.account-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:1}}.searchable-select{position:relative;width:100%}.searchable-select.disabled{opacity:.6;cursor:not-allowed}.select-input{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;transition:all .2s;height:36px;box-sizing:border-box;font-size:13px}.searchable-select.disabled .select-input{cursor:not-allowed;background:#f3f4f6}.select-input:hover:not(.disabled){border-color:#9ca3af}.select-input.open{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.select-input span{flex:1;font-size:13px}.select-input .selected{color:#1f2937;font-weight:500}.select-input .placeholder{color:#9ca3af}.clear-btn{display:flex;align-items:center;justify-content:center;padding:4px;background:none;border:none;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s}.clear-btn:hover{background:#f3f4f6;color:#374151}.search-icon{color:#9ca3af;flex-shrink:0}.select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 10px 30px #00000026;z-index:1000;max-height:300px;display:flex;flex-direction:column;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-box{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #e5e7eb;background:#f9fafb;border-radius:6px 6px 0 0}.search-box svg{color:#9ca3af;flex-shrink:0}.search-box input{flex:1;border:none;background:none;outline:none;font-size:13px;color:#1f2937}.search-box input::placeholder{color:#9ca3af}.options-list{overflow-y:auto;max-height:250px}.option-item{padding:8px 12px;cursor:pointer;font-size:13px;color:#374151;transition:all .15s;height:36px;display:flex;align-items:center;box-sizing:border-box}.option-item:hover{background:#f3f4f6}.option-item.selected{background:#eef2ff;color:#667eea;font-weight:600}.no-options{padding:20px;text-align:center;color:#9ca3af;font-size:13px}.options-list::-webkit-scrollbar{width:6px}.options-list::-webkit-scrollbar-track{background:#f9fafb;border-radius:0 8px 8px 0}.options-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.options-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.detail-page{padding:var(--space-xl) var(--space-2xl);padding-bottom:120px;background:var(--bg-page);min-height:calc(100vh - 64px);max-width:1600px;margin:0 auto}.detail-header,.page-title{display:none}.back-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 18px;background:var(--bg-card);border:1.5px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;color:var(--color-gray-700);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-base);box-shadow:var(--shadow-xs)}.back-button:hover{background:var(--color-gray-50);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.delete-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 18px;background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%);border:none;border-radius:var(--radius-lg);cursor:pointer;color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.delete-button:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 8px 20px #ef444459}.delete-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.error-message{padding:16px 20px;background:var(--color-error-bg);border:1.5px solid var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-lg);color:#991b1b;margin-bottom:var(--space-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-sm)}.success-message{padding:16px 20px;background:var(--color-success-bg);border:1.5px solid var(--color-success-light);border-left:4px solid var(--color-success);border-radius:var(--radius-lg);color:#065f46;margin-bottom:var(--space-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-sm)}.loading{text-align:center;padding:var(--space-3xl);color:var(--color-gray-500);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.detail-form{display:flex;flex-direction:column;gap:var(--space-xl)}.form-section{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-base);position:relative}.form-section:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-200)}.form-section:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:transparent;border-radius:var(--radius-xl) 0 0 var(--radius-xl);transition:background var(--transition-base)}.form-section:hover:before{background:linear-gradient(180deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%)}.form-section h3{margin:0 0 var(--space-lg) 0;color:var(--color-gray-900);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-primary-500);display:flex;align-items:center;gap:var(--space-sm);letter-spacing:-.02em}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg) var(--space-xl);align-items:start}.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg) var(--space-xl);align-items:start}.form-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg) var(--space-xl);align-items:start}.form-group{display:flex;flex-direction:column;gap:8px;min-height:78px}.form-group.full-width{grid-column:1 / -1;min-height:auto}.form-group.col-span-2{grid-column:span 2}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);display:flex;align-items:center;gap:var(--space-xs);letter-spacing:-.01em;min-height:20px}.form-group label.required:after{content:"*";color:var(--color-error);font-weight:var(--font-weight-bold);margin-left:2px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);color:var(--color-gray-800);background:var(--bg-input);transition:all var(--transition-base);font-family:inherit;font-weight:var(--font-weight-regular);box-shadow:0 1px 2px #00000005;line-height:1.5}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=number],.form-group input[type=date],.form-group input[type=tel],.form-group select{height:44px;line-height:1.5}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-gray-400);font-weight:var(--font-weight-regular)}.form-group input:hover:not(:disabled),.form-group select:hover:not(:disabled),.form-group textarea:hover:not(:disabled){border-color:var(--border-medium);box-shadow:0 2px 4px #0000000d}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px #8b5cf61f;background:#fff}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--bg-disabled);color:var(--color-gray-500);cursor:not-allowed;border-color:var(--border-light);opacity:.7}.form-group input[type=number]{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;text-align:right;letter-spacing:-.02em;font-weight:var(--font-weight-medium)}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit;line-height:var(--line-height-relaxed);padding:14px 16px}.form-group select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-gray-200)}.cancel-button,.save-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:12px 28px;height:44px;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);letter-spacing:-.01em}.cancel-button{background:#fff;border:1.5px solid var(--border-medium);color:var(--color-gray-700)}.cancel-button:hover{background:var(--color-gray-50);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.save-button{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);border:none;color:#fff;box-shadow:var(--shadow-sm)}.save-button:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf659}.save-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.floating-action-bar{position:fixed;bottom:0;right:0;left:260px;height:80px;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1.5px solid var(--border-light);box-shadow:0 -4px 24px #00000014;display:flex;justify-content:flex-end;align-items:center;padding:0 var(--space-2xl);gap:14px;z-index:100;transition:left var(--transition-base)}.floating-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 32px;height:48px;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);border:none;white-space:nowrap;letter-spacing:-.01em;box-shadow:var(--shadow-sm)}.floating-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.floating-btn:not(:disabled):active{transform:translateY(0)!important}.floating-btn-primary{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff}.floating-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.floating-btn-save{background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%);color:#fff}.floating-btn-save:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 8px 24px #10b98166}.floating-btn-secondary{background:linear-gradient(135deg,var(--color-info) 0%,#2563eb 100%);color:#fff}.floating-btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 24px #3b82f666}.floating-btn-danger{background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%);color:#fff}.floating-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 8px 24px #ef444466}.floating-btn-cancel{background:#fff;border:1.5px solid var(--border-medium);color:var(--color-gray-700);box-shadow:var(--shadow-xs)}.floating-btn-cancel:hover{background:var(--color-gray-50);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}@media (max-width: 1400px){.detail-page{padding:var(--space-lg) var(--space-xl)}.form-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md) var(--space-lg)}.form-grid-4{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.detail-page{padding:var(--space-md) var(--space-lg);padding-bottom:100px}.form-section{padding:var(--space-lg)}.form-grid,.form-grid-2,.form-grid-4{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.floating-action-bar{left:70px;padding:0 var(--space-lg);height:72px}.floating-btn{padding:12px 24px;font-size:var(--font-size-sm);height:44px}}@media (max-width: 768px){.detail-page{padding:var(--space-sm) var(--space-md);padding-bottom:90px}.form-section{padding:var(--space-md);border-radius:var(--radius-lg)}.form-section h3{font-size:var(--font-size-lg);margin-bottom:var(--space-md)}.form-grid,.form-grid-2,.form-grid-4{grid-template-columns:1fr;gap:var(--space-sm)}.form-actions{flex-direction:column-reverse}.cancel-button,.save-button{width:100%;justify-content:center}.floating-action-bar{left:0!important;height:auto;min-height:64px;flex-wrap:wrap;justify-content:flex-end;padding:10px 16px;gap:8px}.floating-btn{flex:0 0 auto;padding:10px 18px;font-size:13px;height:42px}}@media (max-width: 480px){.detail-page{padding:6px 8px 84px}.form-section{padding:12px;border-radius:var(--radius-lg)}.form-section h3{font-size:14px;margin-bottom:var(--space-md)}.form-grid,.form-grid-2,.form-grid-4{grid-template-columns:1fr;gap:var(--space-sm)}.form-group.col-span-2{grid-column:span 1}.form-actions{flex-direction:column-reverse;gap:8px}.cancel-button,.save-button{width:100%;justify-content:center;height:40px;font-size:13px}.floating-action-bar{left:0!important;height:auto;min-height:60px;flex-wrap:wrap;justify-content:center;padding:8px 10px;gap:6px}.floating-btn{flex:1 1 calc(50% - 3px);padding:8px 10px;font-size:12px;height:38px;min-width:100px;justify-content:center}.back-button,.delete-button{padding:8px 12px;font-size:12px;height:36px}}@media (max-width: 400px){.detail-page{padding:4px 6px 80px}.form-section{padding:10px}.floating-btn{flex:1 1 100%}}.thumbnail-upload{display:flex;align-items:center;gap:12px}.thumbnail-preview{width:100px;height:100px;border:2px solid #e2e8f0;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:#f8fafc}.thumbnail-preview img{width:100%;height:100%;object-fit:cover}.upload-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.upload-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf64d}.tag-display{display:flex;flex-wrap:wrap;gap:6px}.tag-item{display:inline-flex;align-items:center;padding:4px 10px;background-color:var(--color-primary-100);color:var(--color-primary-700);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.basic-info-layout{display:grid;grid-template-columns:350px 1fr;gap:var(--space-xl);align-items:start}.basic-info-left{display:flex;flex-direction:column;gap:var(--space-sm)}.basic-info-left>label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.design-image-large{width:100%;aspect-ratio:1;border:2px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fafbfc,#f3f4f6);margin-bottom:var(--space-sm);box-shadow:var(--shadow-xs)}.design-image-large img{width:100%;height:100%;object-fit:cover}.design-image-empty{font-size:var(--font-size-base);color:var(--color-gray-400);font-weight:var(--font-weight-medium)}.image-upload-button-large{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:11px 18px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);white-space:nowrap;box-shadow:var(--shadow-sm)}.image-upload-button-large:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf659}.basic-info-right{display:flex;flex-direction:column;gap:var(--space-md)}.basic-info-right .form-group{gap:7px;display:flex;flex-direction:column}.basic-info-right .form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.basic-info-right .form-group input,.basic-info-right .form-group select,.basic-info-right .form-group textarea{padding:11px 14px;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);color:var(--color-gray-800);transition:all var(--transition-base)}.basic-info-right .form-group input:focus,.basic-info-right .form-group select:focus,.basic-info-right .form-group textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px #8b5cf61f}.basic-info-right .form-group textarea{resize:vertical;font-family:inherit;min-height:80px;line-height:var(--line-height-relaxed)}@media (max-width: 1024px){.basic-info-layout{grid-template-columns:1fr}.design-image-large{max-width:300px}}.confirmed-design-section{margin-bottom:var(--space-lg);padding:var(--space-lg);background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid var(--color-success);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.confirmed-design-section h4{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#065f46;display:flex;align-items:center;gap:var(--space-sm)}.confirmed-info-box{padding:var(--space-md);background:#fffffff2;border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:var(--space-md)}.confirmed-info-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.confirmed-info-item{display:flex;flex-direction:column;gap:6px}.confirmed-info-item.full-width{grid-column:1 / -1}.confirmed-info-item .label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em}.confirmed-info-item .value{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);padding:10px 12px;background:#fff;border-left:3px solid var(--color-success);border-radius:var(--radius-md);word-break:break-word;box-shadow:var(--shadow-xs)}.confirmed-info-item .value.profile-text{font-family:monospace;font-size:12px;font-weight:600;color:#0d47a1;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:3px solid #90caf9;padding:12px 14px}.revisions-list{margin-bottom:var(--space-lg)}.revisions-list h4{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-900);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-primary-500)}.revisions-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible;margin-bottom:var(--space-md);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.revisions-table{width:100%;min-width:1000px;border-collapse:collapse;background:#fff;border:1px solid var(--border-light)}.revisions-table thead{background:linear-gradient(180deg,#f8fafc,#f1f5f9)}.revisions-table th{padding:14px 16px;text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);border-bottom:2px solid var(--color-primary-500);white-space:nowrap}.revisions-table th:nth-child(1){width:140px}.revisions-table th:nth-child(2){width:120px}.revisions-table th:nth-child(3){width:110px}.revisions-table th:nth-child(4){width:400px;max-width:400px}.revisions-table th:nth-child(5){width:200px}.revisions-table th:nth-child(6){width:100px;text-align:center}.revisions-table td{padding:14px 16px;border-bottom:1px solid var(--color-gray-100);font-size:var(--font-size-base);color:var(--color-gray-700);vertical-align:middle}.revisions-table td:nth-child(4){font-family:monospace;font-size:11px;font-weight:600;color:#0d47a1;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:3px solid #90caf9;word-break:break-all}.revisions-table td:nth-child(5){font-weight:var(--font-weight-medium);color:var(--color-gray-900);line-height:var(--line-height-relaxed)}.revisions-table tbody tr{transition:all var(--transition-fast)}.revisions-table tbody tr:hover{background:var(--color-gray-50);box-shadow:inset 3px 0 0 var(--color-primary-500)}.revisions-table tr:last-child td{border-bottom:none}.revision-number-cell{display:flex;align-items:center;gap:var(--space-sm)}.revision-number{font-family:var(--font-numeric);font-weight:var(--font-weight-semibold);color:var(--color-primary-600);font-size:var(--font-size-base)}.copy-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:var(--color-gray-100);color:var(--color-gray-600);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.copy-btn:hover{background:var(--color-primary-100);color:var(--color-primary-600);transform:scale(1.1)}.actions{display:flex;gap:var(--space-sm);align-items:center;justify-content:center}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:var(--color-gray-100);color:var(--color-gray-600)}.action-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.confirm-btn{background:var(--color-success-bg);color:var(--color-success)}.confirm-btn:hover{background:var(--color-success);color:#fff}.delete-btn{background:var(--color-error-bg);color:var(--color-error)}.delete-btn:hover{background:var(--color-error);color:#fff}.confirmed-badge{display:inline-flex;align-items:center;padding:6px 12px;background:var(--color-gray-200);color:var(--color-gray-700);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.new-revision-section{padding:var(--space-lg);background:linear-gradient(135deg,#fefcf8,#fef3c7);border:2px dashed var(--color-warning);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.new-revision-section h4{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#92400e;display:flex;align-items:center;gap:var(--space-sm)}.revision-input-area{display:grid;grid-template-columns:140px 140px 350px 1fr auto;gap:var(--space-md);align-items:end}.revision-input-area .form-group{display:flex;flex-direction:column;gap:6px}.revision-input-area .form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);white-space:nowrap}.revision-input-area .form-group input,.revision-input-area .form-group select{padding:10px 12px;font-size:var(--font-size-base);border:1.5px solid var(--border-light);border-radius:var(--radius-lg);background:#fff;color:var(--color-gray-800);transition:all var(--transition-base);height:42px}.revision-input-area .form-group:nth-child(3) select{font-family:monospace;font-size:11px;font-weight:600;color:#0d47a1;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #90caf9}.revision-input-area .form-group input:hover,.revision-input-area .form-group select:hover{border-color:var(--border-medium)}.revision-input-area .form-group input:focus,.revision-input-area .form-group select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px #8b5cf61f}.revision-input-area .form-group input:disabled,.revision-input-area .form-group select:disabled{background:var(--bg-disabled);cursor:not-allowed;opacity:.6}.add-revision-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:11px 20px;height:42px;background:linear-gradient(135deg,var(--color-success) 0%,#059669 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);white-space:nowrap;box-shadow:var(--shadow-sm)}.add-revision-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98159}.add-revision-btn:active{transform:translateY(0)}.add-revision-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.folder-path-input-group{display:flex;align-items:center;gap:var(--space-sm)}.folder-path-input-group input{flex:1;padding:11px 14px;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);color:var(--color-gray-800);transition:all var(--transition-base)}.folder-path-input-group input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px #8b5cf61f}.folder-open-btn{display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);flex-shrink:0;box-shadow:var(--shadow-sm)}.folder-open-btn:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-800) 100%);transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf659}.folder-open-btn:active{transform:translateY(0)}.folder-open-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 1280px){.revision-input-area{grid-template-columns:1fr 1fr;gap:var(--space-md)}.revision-input-area .form-group:nth-child(4){grid-column:1 / -1}.add-revision-btn{grid-column:1 / -1;width:100%}}@media (max-width: 768px){.revisions-table{font-size:var(--font-size-sm)}.revisions-table th,.revisions-table td{padding:10px 12px}.revision-input-area{grid-template-columns:1fr}.revision-input-area .form-group:nth-child(4),.add-revision-btn{grid-column:1}}.detail-page .floating-action-bar{position:fixed;bottom:0;left:260px;right:0;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1.5px solid var(--border-light);padding:0 var(--space-xl);display:flex;justify-content:flex-end;align-items:center;gap:12px;box-shadow:0 -4px 24px #00000014;z-index:100;height:72px}.fabric-stock-detail{padding:24px 24px 100px;background:#f9fafb;min-height:calc(100vh - 64px)}.detail-section h3{margin:0 0 12px;color:#1f2937;font-size:18px;font-weight:600;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.action-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;cursor:pointer;color:#fff;font-size:13px;font-weight:600;transition:all .2s;height:36px}.inbound-info-container{display:flex;flex-direction:column;gap:12px}.inbound-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;padding:10px 12px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;gap:2px}.inbound-row .info-item{padding:14px 16px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;min-height:48px;width:100%}.info-item label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;height:13px;line-height:13px}.info-item span{font-size:14px;color:#1f2937;font-weight:500}.inbound-row .info-item span{font-size:14px;color:#1f2937;text-align:left;line-height:1.4;margin:0;padding:0;white-space:normal;word-break:break-word}.inbound-row .info-item span strong{font-weight:700;color:#374151;margin-right:4px}.info-item span.highlight{color:#667eea;font-weight:700;font-size:14px}.inbound-row .info-item span.highlight{font-size:14px;color:#667eea;text-align:left;margin:0;padding:0}.inbound-row .info-item span.highlight strong{color:#667eea;font-weight:700;margin-right:4px}.inbound-row .info-item span.highlight-kg,.inbound-row .info-item span.highlight-kg strong{color:#3b82f6}.inbound-row .info-item span.highlight-yds,.inbound-row .info-item span.highlight-yds strong{color:#f59e0b}.inbound-row .info-item span.highlight-stock,.inbound-row .info-item span.highlight-stock strong{color:#10b981}.lots-container{display:flex;flex-direction:column;gap:12px}.lot-item{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fafafa}.lot-header{display:flex;align-items:center;padding:16px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.lot-header:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db)}.lot-header.expanded{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-bottom-color:#3b82f6}.lot-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-right:12px;color:#6b7280;transition:color .2s}.lot-header.expanded .lot-toggle{color:#3b82f6}.lot-info{flex:1;display:flex;flex-direction:column;gap:8px}.lot-main{display:flex;align-items:center;gap:8px}.lot-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase}.lot-value{font-size:16px;font-weight:700;color:#1f2937}.lot-details{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.lot-date{font-size:13px;color:#6b7280}.lot-quantity{font-size:14px;font-weight:600;color:#3b82f6}.lot-notes{font-size:13px;color:#f59e0b;font-weight:500}.lot-details-container{padding:20px;background:#fff;border-top:1px solid #e5e7eb}.transaction-section{margin-bottom:16px}.transaction-title{font-size:14px;font-weight:600;margin:0 0 12px;padding:8px 12px;border-radius:6px;display:inline-block}.transaction-title.input{background:#dbeafe;color:#1e40af}.transaction-title.outbound{background:#fef3c7;color:#92400e}.transaction-table .quantity{font-weight:600}.transaction-table .quantity.input{color:#3b82f6}.no-transactions{padding:24px;text-align:center;color:#9ca3af;font-size:14px;background:#f9fafb;border-radius:6px;border:1px dashed #d1d5db}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@media (max-width: 768px){.info-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.button-group{width:100%}.action-button{flex:1}.modal-content{width:95%;max-height:95vh}.form-row{grid-template-columns:1fr}}.fabric-stock-detail .floating-action-bar{position:fixed;bottom:0;left:280px;right:0;background:#fff;border-top:2px solid #e5e7eb;padding:16px 24px;display:flex;justify-content:flex-end;align-items:center;gap:12px;box-shadow:0 -4px 12px #0000001a;z-index:100}.ol-page{padding:20px 24px 80px;min-height:100%;background:#f8fafc}.ol-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.ol-header-left{display:flex;align-items:center;gap:10px}.ol-header-left h2{font-size:20px;font-weight:700;color:#111827;margin:0}.ol-count-badge{background:#ede9fe;color:#4c1d95;font-size:12px;font-weight:700;padding:2px 10px;border-radius:99px}.ol-header-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ol-search{height:34px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;width:260px;outline:none;background:#fff;transition:border-color .15s}.ol-search:focus{border-color:#9ca3af}.ol-filter-select{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff;cursor:pointer;outline:none;color:#374151;transition:border-color .15s}.ol-filter-select:focus{border-color:#9ca3af}.ol-status-filter-group{display:flex;align-items:center;gap:4px;flex-wrap:wrap;background:#f3f4f6;border-radius:8px;padding:3px}.ol-status-chip{padding:4px 12px;border-radius:6px;border:1px solid transparent;font-size:12px;font-weight:600;cursor:pointer;color:#6b7280;background:transparent;transition:all .15s}.ol-status-chip:hover{background:#e5e7eb;color:#374151}.ol-status-chip.active{background:#fff;color:#111827;box-shadow:0 1px 3px #0000001f}.ol-status-chip-quick{padding:4px 10px;border-radius:6px;border:none;font-size:11px;font-weight:700;cursor:pointer;color:#9ca3af;background:transparent;transition:all .15s;letter-spacing:.02em}.ol-status-chip-quick:hover{background:#e5e7eb;color:#374151}.ol-status-chip-quick.active{background:#6366f1;color:#fff;box-shadow:0 1px 3px #6366f14d}.ol-status-chip-divider{width:1px;height:18px;background:#d1d5db;margin:0 2px;flex-shrink:0}.ol-date-range{display:flex;align-items:center;gap:6px}.ol-date-input{height:34px;padding:0 8px;border:1px solid #d1d5db;border-radius:8px;font-size:12px;background:#fff;outline:none;color:#374151;cursor:pointer}.ol-date-input:focus{border-color:#9ca3af}.ol-date-sep{font-size:12px;color:#9ca3af}.ol-icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;color:#6b7280;transition:all .15s}.ol-icon-btn:hover{background:#f3f4f6;color:#374151}.ol-spin{animation:ol-rotate .8s linear infinite}@keyframes ol-rotate{to{transform:rotate(360deg)}}.ol-table-wrap{background:#fff;border-radius:16px;border:1px solid #e5e7eb;overflow:auto;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;margin-bottom:12px}.ol-toolbar{display:flex;justify-content:flex-end;padding:8px 12px 0}.ol-reset-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .14s}.ol-reset-btn:hover{color:#374151;background:#f3f4f6;border-color:#9ca3af}.ol-drag-handle{display:inline-flex;align-items:center;color:#9ca3af;cursor:grab;flex-shrink:0;padding:0 2px;transition:color .12s}.ol-drag-handle:hover{color:#4c1d95}.ol-drag-handle:active{cursor:grabbing}.ol-resize-handle{position:absolute;right:0;top:0;height:100%;width:5px;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;background:transparent;transition:background .14s}.ol-resize-handle:hover,.ol-resizing{background:#4c1d9559;border-radius:2px}.ol-drag-overlay{background:#ede9fe;border:2px solid #7c3aed;border-radius:6px;padding:6px 14px;font-size:11px;font-weight:700;color:#4c1d95;pointer-events:none;box-shadow:0 8px 24px #4c1d9540}.ol-table{width:100%;border-collapse:collapse;font-size:13px;min-width:960px;table-layout:fixed}.ol-table th{background:linear-gradient(to bottom,#f9fafb,#f3f4f6);padding:11px 14px;text-align:left;font-size:11px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb;white-space:nowrap;position:sticky;top:0;z-index:1;-webkit-user-select:none;user-select:none;position:relative}.ol-th-sortable{cursor:pointer;transition:background .14s}.ol-th-sortable:hover{background:linear-gradient(to bottom,#f3f4f6,#e5e7eb)!important;color:#111827}.ol-th-inner{display:inline-flex;align-items:center;gap:5px}.ol-sort-icon{flex-shrink:0}.ol-sort-icon.muted{color:#d1d5db}.ol-sort-icon.active{color:#4c1d95}.ol-table td{padding:11px 14px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .1s}.ol-row{cursor:pointer}.ol-row:nth-child(2n) td{background:#fafafa}.ol-row:hover td{background:#f3f4f6!important;color:#1f2937}.ol-row:last-child td{border-bottom:none}.ol-table th:first-child,.ol-table td:first-child{text-align:center;padding:6px 8px}.ol-thumb{width:92px;height:92px;object-fit:cover;border-radius:8px;display:block;margin:0 auto;border:1px solid #dbeafe;background:#eff6ff}.ol-thumb-empty{width:92px;height:92px;background:#eff6ff;border-radius:8px;margin:0 auto;border:1px solid #dbeafe;display:flex;align-items:center;justify-content:center}.ol-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:.2px}.has-due{color:#dc2626;font-weight:600}.ol-mono{font-family:Courier New,monospace;font-size:12px;color:#1e3a5f}.ol-num-right{display:block;text-align:right;font-weight:700;color:#1d4ed8;font-variant-numeric:tabular-nums}.ol-ellipsis{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ol-loading-cell,.ol-empty-cell{text-align:center;padding:56px 20px;color:#9ca3af;font-size:14px}.ol-pagination{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;flex-wrap:wrap}.ol-page-info{font-size:12px;color:#6b7280;font-weight:600;min-width:140px;text-align:center}.ol-page-controls{display:flex;align-items:center;gap:3px}.ol-pg-btn{min-width:30px;height:30px;padding:0 5px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .14s}.ol-pg-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;color:#111827;transform:translateY(-1px)}.ol-pg-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.ol-pg-btn.ol-pg-num.active{background:linear-gradient(135deg,#4c1d95,#3b0764);border-color:#3b0764;color:#fff;font-weight:700;box-shadow:0 2px 8px #4c1d9559}.ol-page-size{height:30px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:12px;background:#fff;cursor:pointer;outline:none;color:#374151;font-weight:600;transition:border-color .14s}.ol-page-size:focus{border-color:#9ca3af}@media (max-width: 768px){.ol-page{padding:12px 12px 80px}.ol-table-wrap{border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.ol-table{min-width:800px}.ol-table th{padding:9px 10px;font-size:10px}.ol-table td{padding:9px 10px;font-size:12px}.ol-search{width:180px}.ol-pagination{gap:6px;padding:6px 10px;border-radius:10px}.ol-page-info{min-width:100px;font-size:11px}.ol-header{gap:8px;margin-bottom:10px}.ol-header-left h2{font-size:16px}}@media (max-width: 480px){.ol-page{padding:8px 8px 80px}.ol-table-wrap{border-radius:10px}.ol-table{min-width:720px}.ol-table th{padding:8px;font-size:10px}.ol-table td{padding:8px;font-size:12px}.ol-thumb,.ol-thumb-empty{width:60px;height:60px;border-radius:6px}.ol-search{width:140px;font-size:12px}.ol-header-right{gap:5px}.ol-pg-btn{min-width:26px;height:26px;font-size:11px}.ol-page-size{height:26px;font-size:11px;padding:0 6px}}.erp-page{padding:20px 28px 120px;background:#f0f2f5;min-height:calc(100vh - 64px)}.erp-loading{padding:60px;text-align:center;color:#6b7280;font-size:14px}.erp-error{padding:18px 22px;background:#fee2e2;border:1px solid #fca5a5;border-radius:10px;color:#991b1b;margin-bottom:16px}.erp-page-title-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px}.erp-page-title-bar h2{font-size:18px;font-weight:700;color:#1f2937;margin:0}.erp-back-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.erp-back-btn:hover{background:#f3f4f6;border-color:#9ca3af}.erp-order-banner{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 24px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 1px 3px #00000014}.erp-banner-left{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.erp-banner-thumb-wrap{flex-shrink:0}.erp-banner-thumb{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.erp-banner-thumb-empty{width:56px;height:56px;background:#f3f4f6;border-radius:8px;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;color:#d1d5db}.erp-banner-info{flex:1;min-width:0}.erp-banner-num{font-size:22px;font-weight:800;color:#1f2937;letter-spacing:.02em;font-family:Inter,monospace}.erp-banner-sub{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;margin-top:3px;flex-wrap:wrap}.erp-dot{color:#d1d5db}.erp-banner-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.erp-kpi-strip{display:flex;align-items:center;gap:0;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.erp-kpi-item{display:flex;flex-direction:column;align-items:center;padding:10px 20px;gap:1px}.erp-kpi-divider{width:1px;height:36px;background:#e5e7eb}.erp-kpi-num{font-size:20px;font-weight:800;font-family:Inter,monospace;line-height:1}.erp-kpi-unit{font-size:10px;color:#9ca3af;font-weight:600;text-transform:uppercase}.erp-kpi-lbl{font-size:11px;color:#6b7280;font-weight:500}.kpi-blue{color:#3b82f6}.kpi-green{color:#10b981}.kpi-orange{color:#f59e0b}.kpi-red{color:#ef4444}.erp-status-tag{display:inline-flex;align-items:center;padding:5px 14px;border-radius:9999px;font-size:12px;font-weight:700;letter-spacing:.02em}.erp-status-clickable{cursor:pointer;transition:opacity .15s,transform .1s}.erp-status-clickable:hover{opacity:.8;transform:scale(1.04)}.erp-status-접수{background:#dbeafe;color:#1d4ed8}.erp-status-대기{background:#f3e8ff;color:#7c3aed}.erp-status-진행{background:#fef9c3;color:#92400e}.erp-status-생산중{background:#fef3c7;color:#92400e}.erp-status-완료{background:#d1fae5;color:#065f46}.erp-status-취소{background:#fee2e2;color:#991b1b}.erp-status-wrap{position:relative;display:inline-flex;align-items:center}.erp-status-picker{position:absolute;top:calc(100% + 8px);right:0;z-index:400;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 28px #00000021;padding:6px;min-width:170px}.erp-status-picker-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 11px;border:none;background:transparent;border-radius:7px;font-size:13px;font-weight:500;color:#1e293b;cursor:pointer;transition:background .13s;text-align:left;white-space:nowrap}.erp-status-picker-item:hover{background:#f1f5f9}.erp-status-picker-item.active{background:#eff6ff;color:#1d4ed8;font-weight:700}.erp-status-picker-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.dot-접수{background:#1d4ed8}.dot-대기{background:#7c3aed}.dot-공정{background:#f59e0b}.dot-완료{background:#059669}.erp-status-picker-divider{height:1px;background:#f1f5f9;margin:4px}.erp-status-picker-group-label{font-size:10px;font-weight:700;color:#94a3b8;letter-spacing:.06em;padding:3px 11px 2px;text-transform:uppercase}.od-pdf-dropzone{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 20px;border:2px dashed #d1d5db;border-radius:12px;background:#fafbff;color:#9ca3af;transition:border-color .18s,background .18s}.od-pdf-dropzone.drag-over{border-color:#667eea;background:#f0f3ff;color:#667eea}.od-pdf-dropzone:hover{border-color:#a5b4fc;background:#f5f7ff}.od-pdf-drop-title{margin:0;font-size:13px;font-weight:600;color:#334155}.od-pdf-dropzone.drag-over .od-pdf-drop-title{color:#667eea}.od-pdf-drop-hint{margin:0;font-size:11px;color:#94a3b8}.od-pdf-panel{display:flex;flex-direction:column;position:relative}.od-pdf-panel.drag-over{outline:2px dashed #667eea;outline-offset:2px;border-radius:8px}.od-pdf-drag-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:#667eea1a;border:2px dashed #667eea;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:none;color:#667eea;font-size:14px;font-weight:600}.od-pdf-tabbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;padding-bottom:8px;margin-bottom:12px;gap:8px;flex-wrap:wrap}.od-pdf-tabs{display:flex;gap:6px;flex-wrap:wrap}.od-pdf-tab{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;font-size:12px;cursor:pointer;color:#374151;max-width:180px;white-space:nowrap;overflow:hidden}.od-pdf-tab.active{background:#667eea;color:#fff;border-color:#667eea}.od-pdf-tab-name{overflow:hidden;text-overflow:ellipsis;max-width:130px}.od-pdf-tab-del{display:flex;align-items:center;padding:2px;border-radius:4px;opacity:.6;cursor:pointer}.od-pdf-tab-del:hover{opacity:1;background:#0000001a}.od-pdf-tab-actions{display:flex;align-items:center;gap:8px}.od-pdf-viewer{background:#f3f4f6;border-radius:10px;overflow:hidden}.od-pdf-loading{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px;color:#6b7280;font-size:13px}.od-pdf-toolbar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border-bottom:1px solid #e5e7eb;font-size:13px;color:#374151}.od-pdf-download{margin-left:auto;color:#667eea;font-size:12px;text-decoration:none}.od-pdf-download:hover{text-decoration:underline}.od-pdf-iframe{display:block;width:100%;height:600px;border:none}.erp-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:16px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.erp-section-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.erp-section-hd.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.erp-section-hd h3{margin:0;font-size:15px;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:10px}.erp-section-body{margin-top:4px}.erp-section-actions{display:flex;align-items:center;gap:8px}.erp-chevron{color:#9ca3af}.erp-info-grid{display:grid;gap:10px}.erp-info-grid.cols-4{grid-template-columns:repeat(4,1fr)}.erp-info-grid.cols-3{grid-template-columns:repeat(3,1fr)}.erp-info-grid .span-2{grid-column:span 2}.erp-info-grid .span-3{grid-column:span 3}.erp-info-grid .span-4{grid-column:1 / -1}.erp-info-item{display:flex;flex-direction:column;gap:4px;padding:11px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.erp-info-item label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.erp-info-item span{font-size:14px;font-weight:600;color:#1f2937}.val-blue{color:#3b82f6!important}.val-lg{font-size:16px!important;font-weight:800!important}.val-lg em{font-style:normal;font-size:12px;font-weight:500;color:#9ca3af;margin-left:2px}.val-notes{font-size:13px!important;font-weight:400!important;color:#374151!important;white-space:pre-wrap;line-height:1.6}.erp-badge-ok{font-size:11px;font-weight:600;background:#d1fae5;color:#065f46;padding:2px 8px;border-radius:9999px;margin-left:8px}.erp-edit-layout{display:flex;gap:20px;align-items:flex-start}.erp-edit-thumb-col{flex-shrink:0}.erp-edit-thumb{width:150px;height:150px;border-radius:10px;border:1px solid #e5e7eb;background:#f9fafb;overflow:hidden;display:flex;align-items:center;justify-content:center}.erp-edit-thumb img{width:100%;height:100%;object-fit:contain}.erp-thumb-ph{display:flex;flex-direction:column;align-items:center;gap:6px;color:#9ca3af;font-size:11px;text-align:center}.erp-form-grid{display:grid;gap:12px;flex:1}.erp-form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.erp-form-grid.cols-4{grid-template-columns:repeat(4,1fr)}.erp-form-grid .span-2{grid-column:span 2}.erp-form-grid .span-3{grid-column:span 3}.erp-form-grid .span-4{grid-column:1 / -1}.erp-form-field{display:flex;flex-direction:column;gap:5px}.erp-form-field label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.4px}.erp-form-field label em{color:#ef4444;font-style:normal}.erp-form-field input,.erp-form-field select,.erp-form-field textarea{padding:9px 12px;border:1px solid #d1d5db;border-radius:7px;font-size:13px;color:#1f2937;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit}.erp-form-field input:focus,.erp-form-field select:focus,.erp-form-field textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1f}.erp-form-field textarea{resize:vertical;min-height:72px}.erp-form-actions{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #f3f4f6}.erp-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;height:36px;white-space:nowrap}.erp-action-btn.sm{padding:6px 12px;font-size:12px;height:32px}.erp-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 6px #667eea4d}.erp-action-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.erp-action-btn.primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.erp-action-btn.ghost{background:#fff;border:1px solid #d1d5db;color:#374151}.erp-action-btn.ghost:hover{background:#f3f4f6;border-color:#9ca3af}.erp-action-btn.danger{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;box-shadow:0 2px 6px #ef444440}.erp-action-btn.danger:hover{transform:translateY(-1px);box-shadow:0 4px 10px #ef444459}.erp-action-btn:not(.primary):not(.ghost):not(.danger):not(.sm){background:#fff;border:1px solid #d1d5db;color:#374151}.erp-action-btn:not(.primary):not(.ghost):not(.danger):not(.sm):hover{background:#f3f4f6}.erp-kpi-row{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.erp-kpi-card{flex:1;min-width:120px;padding:16px 20px;border-radius:10px;border:1px solid transparent}.erp-kpi-card.green{background:#f0fdf4;border-color:#86efac}.erp-kpi-card.blue{background:#eff6ff;border-color:#93c5fd}.erp-kpi-card.orange{background:#fffbeb;border-color:#fcd34d}.erp-kpi-card.red{background:#fef2f2;border-color:#fca5a5}.erp-kpi-main{font-size:24px;font-weight:800;color:#1f2937;line-height:1;margin-bottom:4px;font-family:Inter,monospace}.erp-kpi-card.green .erp-kpi-main{color:#16a34a}.erp-kpi-card.blue .erp-kpi-main{color:#2563eb}.erp-kpi-card.orange .erp-kpi-main{color:#d97706}.erp-kpi-card.red .erp-kpi-main{color:#dc2626}.erp-kpi-main em{font-style:normal;font-size:13px;color:#9ca3af;margin-left:4px;font-weight:500}.erp-kpi-lbl{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.erp-inline-form{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:9px;padding:14px 16px;margin-bottom:14px}.erp-inline-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #e5e7eb}.erp-note-row{display:flex;gap:10px;align-items:flex-start}.erp-note-textarea{flex:1;border:1px solid #d1d5db;border-radius:7px;padding:9px 12px;font-size:13px;resize:vertical;color:#1f2937;outline:none;min-height:80px;font-family:inherit}.erp-note-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.erp-note-btns{display:flex;flex-direction:column;gap:6px}.erp-table{width:100%;border-collapse:collapse;font-size:13px}.erp-table thead tr{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #e5e7eb}.erp-table th{padding:10px 14px;font-weight:600;font-size:11px;color:#374151;text-transform:uppercase;letter-spacing:.5px;text-align:left}.erp-table td{padding:11px 14px;border-bottom:1px solid #f3f4f6;color:#374151;font-size:13px}.erp-table tbody tr:last-child td{border-bottom:none}.erp-table tbody tr:hover{background:#fafbff}.tr-confirmed{background:#f0fdf4!important}.td-qty.blue{color:#2563eb;font-weight:700;font-family:Inter,monospace}.td-qty.green{color:#16a34a;font-weight:700;font-family:Inter,monospace}.td-qty.orange{color:#d97706;font-weight:700;font-family:Inter,monospace}.erp-confirm-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid #d1d5db;background:transparent;color:#6b7280;transition:all .15s}.erp-confirm-btn:hover{background:#f0fdf4;border-color:#86efac;color:#16a34a}.erp-confirm-btn.active{background:#dcfce7;border-color:#86efac;color:#166534}.erp-icon-del{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#9ca3af;transition:all .15s}.erp-icon-del:hover{background:#fee2e2;color:#ef4444}.erp-notes-list{display:flex;flex-direction:column;gap:10px}.erp-note-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:background .12s}.erp-note-item:hover{background:#f3f4f6}.erp-note-dot{width:8px;height:8px;background:#667eea;border-radius:50%;flex-shrink:0;margin-top:5px}.erp-note-body{flex:1;min-width:0}.erp-note-content{margin:0 0 4px;font-size:13px;color:#1f2937;white-space:pre-wrap;line-height:1.6}.erp-note-time{font-size:11px;color:#9ca3af}.erp-empty{padding:24px;text-align:center;color:#9ca3af;font-size:13px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px}.erp-fab{position:fixed;bottom:0;right:0;left:260px;height:68px;background:#fffffff7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #e5e7eb;box-shadow:0 -4px 20px #0000000f;display:flex;align-items:center;justify-content:flex-end;padding:0 28px;gap:12px;z-index:100}.erp-fab-back{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.erp-fab-back:hover{background:#f3f4f6;border-color:#9ca3af}.erp-fab-edit{display:flex;align-items:center;gap:6px;padding:9px 20px;background:#667eea;border:none;border-radius:8px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .2s,transform .1s}.erp-fab-edit:hover{background:#5a67d8;transform:translateY(-1px)}@media (max-width: 1024px){.erp-fab{left:70px}.erp-info-grid.cols-4,.erp-form-grid.cols-4,.erp-form-grid.cols-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.erp-page{padding:10px 10px 100px}.erp-fab{left:0!important;padding:0 12px;height:60px}.erp-order-banner{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 16px}.erp-banner-right{width:100%;justify-content:flex-start}.erp-kpi-strip{flex-wrap:wrap;width:100%}.erp-kpi-item{flex:1 1 calc(33% - 1px);padding:8px 10px}.erp-info-grid.cols-4{grid-template-columns:repeat(2,1fr)}.erp-form-grid.cols-3,.erp-form-grid.cols-4{grid-template-columns:1fr}.erp-edit-layout{flex-direction:column}.erp-edit-thumb{width:100%;height:140px}.erp-section{padding:14px}.erp-proc-pipeline{gap:0}.erp-proc-box{min-width:90px;padding:10px 10px 8px}}@media (max-width: 480px){.erp-page{padding:8px 8px 90px}.erp-section{padding:12px;border-radius:10px}.erp-section-hd h3{font-size:13px}.erp-order-banner{padding:12px;gap:8px}.erp-banner-num{font-size:18px}.erp-kpi-strip{border-radius:8px}.erp-kpi-item{flex:1 1 calc(50% - 1px);padding:8px}.erp-kpi-num{font-size:16px}.erp-info-grid.cols-4,.erp-info-grid.cols-3{grid-template-columns:repeat(2,1fr)}.erp-info-grid .span-2,.erp-info-grid .span-3,.erp-info-grid .span-4{grid-column:1 / -1}.erp-proc-pipeline{flex-direction:column;align-items:flex-start;gap:0}.erp-proc-pipeline-item{flex-direction:column;align-items:flex-start;width:100%}.erp-proc-arrow{transform:rotate(90deg);margin:2px 0 2px 16px}.erp-proc-box{width:100%;min-width:unset;text-align:left;padding:10px 12px 8px;display:flex;align-items:center;gap:10px}.erp-proc-box-name{margin-bottom:0;flex:1;font-size:13px}.erp-proc-box-status{font-size:11px}.erp-proc-box-price{margin-top:0}.erp-proc-lock-icon{position:static;margin-left:auto}.erp-proc-summary{padding:10px 12px}.erp-proc-summary-lbl{min-width:60px;font-size:11px}.erp-proc-cost-grand{font-size:14px}.erp-kpi-row{flex-direction:row;flex-wrap:wrap}.erp-kpi-card{flex:1 1 calc(50% - 6px);min-width:120px;padding:10px 12px}.erp-kpi-main{font-size:18px}.erp-section-body .erp-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.erp-fab{padding:0 10px;height:56px;gap:8px}}@media (max-width: 400px){.erp-page{padding:6px 6px 88px}.erp-section{padding:10px;border-radius:8px}.erp-back-btn{padding:6px 10px;font-size:12px}.erp-info-grid.cols-4,.erp-info-grid.cols-3{grid-template-columns:1fr}.erp-kpi-item,.erp-kpi-card{flex:1 1 100%}.erp-banner-right{flex-direction:column;align-items:flex-start;gap:8px}.erp-fab{padding:0 8px;gap:6px;height:52px}}.erp-proc-help{font-size:12px;color:#6b7280;margin:0 0 14px}.erp-proc-pipeline{display:flex;flex-wrap:wrap;align-items:center;gap:0;padding:8px 0}.erp-proc-pipeline-item{display:flex;align-items:center}.erp-proc-box-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:center}.erp-proc-del-btn{position:absolute;top:-7px;right:-7px;width:18px;height:18px;border-radius:50%;border:none;background:#ef4444;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s;z-index:10;padding:0}.erp-proc-box-wrap:hover .erp-proc-del-btn{opacity:1}.erp-proc-add-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;margin-bottom:16px}.erp-proc-add-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.erp-proc-add-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}.erp-proc-add-field.narrow{flex:0 0 110px;min-width:90px}.erp-proc-add-field label{font-size:11px;font-weight:600;color:#6b7280}.erp-proc-add-field input,.erp-proc-add-field select{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:7px;font-size:13px;background:#fff}.erp-proc-add-field input:focus,.erp-proc-add-field select:focus{outline:none;border-color:#6366f1}.erp-proc-add-actions{display:flex;gap:6px;align-items:flex-end;padding-bottom:0}.erp-proc-arrow{color:#d1d5db;margin:0 6px;flex-shrink:0;transition:color .2s}.erp-proc-arrow.arrow-done{color:#10b981}.erp-proc-box{position:relative;min-width:110px;padding:14px 16px 12px;border-radius:12px;text-align:center;border:2px solid transparent;transition:transform .15s,box-shadow .15s,border-color .2s;-webkit-user-select:none;user-select:none}.erp-proc-box.proc-clickable{cursor:pointer}.erp-proc-box.proc-clickable:hover{transform:translateY(-2px);box-shadow:0 6px 18px #0000001f}.erp-proc-box.proc-locked{cursor:not-allowed;opacity:.5}.erp-proc-box.proc-updating{opacity:.7;pointer-events:none}.erp-proc-box.proc-gray{background:#f3f4f6;border-color:#e5e7eb;color:#6b7280}.erp-proc-box.proc-yellow{background:#fef9c3;border-color:#fcd34d;color:#92400e}.erp-proc-box.proc-green{background:#dcfce7;border-color:#4ade80;color:#166534}.erp-proc-box-name{font-size:13px;font-weight:600;margin-bottom:4px}.erp-proc-box-status{font-size:11px;font-weight:500;letter-spacing:.3px}.erp-proc-box-price{font-size:11px;color:#374151;margin-top:4px}.erp-proc-lock-icon{position:absolute;top:4px;right:6px;font-size:10px}.erp-proc-total{margin-top:14px;padding:10px 16px;background:#f8fafc;border-radius:8px;font-size:13px;color:#374151;text-align:right}.erp-proc-total strong{color:#1d4ed8;font-size:15px}.erp-cost-table .td-qty{text-align:right}.erp-cost-table .td-price{text-align:right;font-weight:500}.erp-cost-table .bold{font-weight:700}.erp-cost-table .tr-total{background:#f8fafc}.erp-section-cost-summary{border-left:4px solid #6366f1}.erp-cost-summary-grid{display:flex;gap:24px;flex-wrap:wrap}.erp-cs-block{flex:1;min-width:220px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 18px}.erp-cs-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:10px}.erp-cs-breakdown{display:flex;flex-direction:column;gap:6px}.erp-cs-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#374151}.erp-cs-row-lbl{color:#6b7280}.erp-cs-row-val{font-weight:500}.erp-cs-total-row{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:8px;border-top:1px solid #e2e8f0;font-size:14px;font-weight:700}.erp-cs-total-row .erp-cs-row-lbl{color:#374151;font-weight:700}.erp-cs-grand{font-size:20px;font-weight:800;color:#4f46e5}.erp-cs-billing-wrap{display:flex;gap:10px;margin-bottom:10px}.erp-cs-billing-card{flex:1;border:1px solid #e2e8f0;border-radius:8px;padding:10px 8px;text-align:center;background:#fff;display:flex;flex-direction:column;gap:3px}.erp-cs-billing-card.billed{border-color:#6ee7b7;background:#f0fdf4}.erp-cs-billing-card.unbilled{border-color:#fca5a5;background:#fff5f5}.erp-cs-billing-card.total{border-color:#c7d2fe;background:#eef2ff}.erp-cs-billing-count{font-size:22px;font-weight:800;color:#1e293b;line-height:1}.erp-cs-billing-card.billed .erp-cs-billing-count{color:#059669}.erp-cs-billing-card.unbilled .erp-cs-billing-count{color:#dc2626}.erp-cs-billing-card.total .erp-cs-billing-count{color:#4f46e5}.erp-cs-billing-desc{font-size:11px;color:#6b7280;font-weight:500}.erp-cs-billing-notice{font-size:12px;color:#b45309;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;padding:6px 10px;margin-top:4px}.erp-cs-billing-done{font-size:12px;color:#059669;background:#f0fdf4;border:1px solid #6ee7b7;border-radius:6px;padding:6px 10px;margin-top:4px}.erp-cs-block-prod{border-color:#fbbf24;background:#fffbeb}.erp-cs-block-prod .erp-cs-label{color:#92400e}.erp-cs-unbilled-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:8px 10px;border-radius:6px;background:#fef3c7;border:1px solid #fbbf24;font-size:13px;font-weight:700}.erp-cs-unbilled-row .erp-cs-row-lbl{color:#92400e;font-weight:600}.erp-cs-unbilled-amt{font-size:16px;font-weight:800;color:#d97706}.erp-cs-extra-row,.erp-cs-extra-row .erp-cs-row-lbl{color:#7c3aed}.erp-cs-extra-amt{display:flex;align-items:center;gap:4px;color:#7c3aed;font-weight:600}.erp-extra-del{width:16px!important;height:16px!important;padding:0!important;border-radius:3px!important;color:#9ca3af!important;background:transparent!important;border:none!important;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.erp-extra-del:hover{color:#ef4444!important;background:#fee2e2!important}.erp-extra-cost-form{background:#f5f3ff;border:1px solid #c4b5fd;border-radius:8px;margin-bottom:12px}.od-attach-grid{display:flex;flex-wrap:wrap;gap:10px;padding:4px 0}.od-attach-card{display:flex;flex-direction:column;align-items:center;width:120px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;text-decoration:none;color:inherit;background:#fafafa;transition:box-shadow .15s,border-color .15s;cursor:pointer}.od-attach-card:hover{box-shadow:0 2px 12px #7c3aed1f;border-color:#a78bfa}.od-attach-thumb{width:120px;height:90px;object-fit:cover;background:#f3f4f6}.od-attach-icon-wrap{width:120px;height:90px;display:flex;align-items:center;justify-content:center}.od-attach-icon-wrap.img{background:#eef2ff}.od-attach-icon-wrap.pdf{background:#fef2f2}.od-attach-icon-wrap.default{background:#f3f4f6}.od-attach-meta{width:100%;padding:6px 8px 8px;display:flex;flex-direction:column;gap:2px;background:#fff}.od-attach-name{font-size:11px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:104px}.od-attach-size{font-size:10px;color:#9ca3af}.od-attach-dl{font-size:10px;color:#7c3aed;display:flex;align-items:center;gap:3px;margin-top:2px}.production-page{display:flex;flex-direction:column;height:100vh;background:#f9fafb;overflow:hidden;position:relative}.production-header{background:#fff;padding:20px 24px;border-bottom:2px solid #e5e7eb;box-shadow:0 2px 4px #0000000d}.production-header h1{margin:0 0 15px;font-size:24px;font-weight:700;color:#1f2937;padding-bottom:15px;border-bottom:2px solid #e9ecef}.order-info-detail{display:flex;flex-direction:column}.order-info-detail .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 16px;padding:12px 0}.order-info-detail .info-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:linear-gradient(135deg,#f8f9fa,#f1f3f5);border-radius:6px;border:1px solid #e9ecef;min-width:0}.order-info-detail .info-item.full-width{grid-column:1 / -1}.order-info-detail .info-label{font-size:11px;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-info-detail .info-value{font-size:14px;color:#212529;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lot-selector{padding:16px 24px;background:#fff;border-bottom:2px solid #e5e7eb}.lot-selector h3{margin:0 0 12px;font-size:14px;font-weight:700;color:#1f2937}.lot-buttons{display:flex;gap:8px;flex-wrap:wrap}.lot-button{padding:10px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;font-size:13px}.lot-button:hover{border-color:#3b82f6;background:#eff6ff}.lot-button.selected{border-color:#3b82f6;background:#3b82f6;color:#fff;font-weight:600}.lot-info{display:flex;flex-direction:column;gap:2px;text-align:left}.lot-number{font-weight:700}.lot-detail{font-size:11px;color:#6b7280}.lot-button.selected .lot-detail{color:#dbeafe}.lot-button.completed{background:#f3f4f6;border-color:#9ca3af;opacity:.6;cursor:not-allowed}.lot-button.completed:hover{background:#f3f4f6;border-color:#9ca3af}.completed-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:#10b981;color:#fff;font-size:10px;font-weight:600;border-radius:4px}.no-lot-message{background:#fef3c7;border:2px dashed #f59e0b;border-radius:8px;padding:32px 24px;text-align:center;margin:12px 0}.no-lot-message p{margin:0;font-size:15px;font-weight:600;color:#92400e}.no-lot-message .help-text{margin-top:8px;font-size:13px;font-weight:400;color:#b45309}.production-content{flex:1;padding:20px 24px 120px;overflow:auto}.table-section{display:flex;flex-direction:column;gap:16px}.table-container{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow-x:auto}.production-table{width:100%;border-collapse:collapse}.production-table thead th{background:#f3f4f6;padding:12px 8px;text-align:center;font-size:13px;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;position:sticky;top:0;z-index:10}.production-table tbody tr{border-bottom:1px solid #f3f4f6}.production-table tbody tr:hover{background:#f9fafb}.production-table tbody tr.even-row{background:#fafbfc}.production-table tbody tr.odd-row{background:#fff}.production-table tbody td{padding:8px;text-align:center;vertical-align:middle}.production-table tbody td.roll-number{font-weight:700;color:#1f2937;font-size:14px}.production-table input[type=number],.production-table input[type=text]{width:100%;padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;text-align:center;box-sizing:border-box}.production-table input[type=number]:focus,.production-table input[type=text]:focus{outline:none;border-color:#3b82f6;background:#eff6ff}.defect-cell{text-align:left!important;padding:4px!important}.defect-button-cell{width:100%;padding:6px 10px;background:#fef3c7;border:1px solid #f59e0b;border-radius:4px;font-size:12px;color:#92400e;cursor:pointer;transition:all .2s;margin-bottom:4px}.defect-button-cell:hover{background:#fde68a;border-color:#d97706}.defect-cell{display:flex;align-items:center;justify-content:flex-start;padding:12px 16px!important;min-width:0}.defect-inline{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;justify-content:center;min-width:0}.defect-tags-inline{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;min-width:0}.defect-tags{display:flex;flex-wrap:wrap;gap:4px;padding:4px}.defect-tag{display:inline-block;padding:4px 10px;background:#dbeafe;border:1px solid #3b82f6;border-radius:3px;font-size:11px;color:#1e40af;flex-shrink:0;white-space:nowrap}.defect-list{padding:6px 8px;font-size:12px;color:#1f2937;line-height:1.4;word-wrap:break-word;white-space:normal;font-weight:500}.actions-cell{display:flex;gap:4px;justify-content:center;padding:4px!important}.print-label-btn,.edit-roll-btn,.delete-roll-btn{padding:6px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.print-label-btn{background:#10b981;color:#fff}.print-label-btn:hover{background:#059669}.edit-roll-btn{background:#8b5cf6;color:#fff}.edit-roll-btn:hover{background:#7c3aed}.edit-roll-btn.saving{background:#3b82f6}.edit-roll-btn.saving:hover{background:#2563eb}.delete-roll-btn{background:#ef4444;color:#fff}.delete-roll-btn:hover{background:#dc2626}.production-table input:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.production-table input:disabled::placeholder{color:#d1d5db}.summary-bar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-top:2px solid #e5e7eb;box-shadow:0 -4px 12px #00000014;z-index:100}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;flex:1;max-width:600px}.summary-item{display:flex;flex-direction:column;gap:4px;padding:10px 16px;background:linear-gradient(135deg,#f8f9fa,#f1f3f5);border-radius:6px;border:1px solid #e9ecef}.summary-label{font-size:11px;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.summary-value{font-size:18px;font-weight:700;color:#1f2937}.summary-buttons{display:flex;gap:36px;margin-left:auto;flex:0;justify-self:flex-end}.cancel-btn,.save-btn{flex:0;padding:30px 60px;border:none;border-radius:6px;font-size:42px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;min-height:auto;height:120px;width:180px;white-space:nowrap}.cancel-btn{background:#6b7280;color:#fff}.cancel-btn:hover{background:#4b5563}.save-btn{background:#3b82f6;color:#fff}.save-btn:hover{background:#2563eb}.loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:18px;color:#6b7280}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.defect-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:90%;max-width:700px;max-height:80vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid #e5e7eb}.modal-header h3{margin:0;font-size:18px;font-weight:700;color:#1f2937}.modal-close{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#1f2937}.modal-body{padding:20px 24px;overflow-y:auto;flex:1}.defect-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.defect-option{padding:12px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;font-weight:500;color:#374151}.defect-option:hover{border-color:#3b82f6;background:#eff6ff}.defect-option.selected{background:#3b82f6;border-color:#3b82f6;color:#fff;font-weight:600}.modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.modal-confirm-btn{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.modal-confirm-btn:hover{background:#2563eb}@media (max-width: 1200px){.defect-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.order-info-detail .info-row,.defect-grid{grid-template-columns:repeat(2,1fr)}}.bm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center}.bm-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;width:90vw;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.bm-large{max-width:820px}.bm-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.bm-title{display:flex;align-items:center;gap:8px}.bm-title h3{font-size:16px;font-weight:700;color:#111827;margin:0}.bm-close{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:#f3f4f6;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .1s}.bm-close:hover{background:#e5e7eb}.bm-body{flex:1;overflow-y:auto;padding:20px}.bm-step1{display:flex;flex-direction:column;gap:12px;max-width:320px}.bm-label{font-size:13px;font-weight:600;color:#374151}.bm-input{height:38px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none}.bm-input:focus{border-color:#6366f1}.bm-step-hd{display:flex;align-items:center;gap:10px;margin-bottom:14px}.bm-month-tag{background:#e0e7ff;color:#3730a3;font-size:12px;font-weight:700;padding:3px 10px;border-radius:99px}.bm-count{font-size:13px;color:#6b7280}.bm-empty{padding:32px;text-align:center;color:#9ca3af;font-size:14px}.bm-cust-card{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;overflow:hidden}.bm-cust-hd{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.bm-cust-name{font-weight:700;font-size:14px;color:#111827}.bm-cust-total{margin-left:auto;font-size:13px;font-weight:600;color:#2563eb}.bm-cust-actions{display:flex;gap:6px}.bm-btn-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:7px;background:#fff;cursor:pointer;color:#6b7280;transition:all .1s}.bm-btn-icon:hover{background:#f3f4f6}.bm-table{width:100%;border-collapse:collapse;font-size:12px}.bm-table th{background:#f9fafb;padding:6px 10px;border-bottom:1px solid #e5e7eb;text-align:left;font-size:11px;font-weight:600;color:#6b7280;white-space:nowrap}.bm-table td{padding:6px 10px;border-bottom:1px solid #f3f4f6;color:#374151}.bm-table .td-r{text-align:right}.bm-table .tr-total{background:#f8fafc;font-weight:700}.bm-table .tr-selected{background:#f0f9ff}.bm-cust-foot{padding:10px 14px;display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.bm-pdf-upload{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6b7280}.bm-pdf-label{display:flex;align-items:center;gap:4px;cursor:pointer}.bm-pdf-name{font-size:11px;color:#374151;background:#f3f4f6;padding:2px 6px;border-radius:4px}.bm-notes{flex:1;min-width:180px;height:52px;border:1px solid #d1d5db;border-radius:8px;padding:6px 10px;font-size:12px;resize:none;outline:none}.bm-notes:focus{border-color:#6366f1}.bm-confirmed{display:flex;align-items:center;gap:6px;font-size:12px;color:#10b981;font-weight:600}.bm-btn-confirm{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#4f46e5;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .1s}.bm-btn-confirm:hover{background:#4338ca}.bm-btn-confirm:disabled{opacity:.6;cursor:not-allowed}.bm-btn-primary{display:flex;align-items:center;gap:6px;padding:0 20px;height:38px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.bm-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.bm-btn-primary:disabled{opacity:.6;cursor:not-allowed}.bm-cust-select-section{margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.bm-cust-search{display:flex;align-items:center;gap:8px;border:1px solid #d1d5db;border-radius:8px;padding:0 10px;height:34px}.bm-search-inp{flex:1;border:none;outline:none;font-size:13px;background:transparent}.bm-cust-list{max-height:160px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px}.bm-cust-item{padding:8px 12px;font-size:13px;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background .1s}.bm-cust-item:hover{background:#f0f9ff}.bm-cust-item.selected{background:#e0e7ff;color:#3730a3;font-weight:600}.bm-cust-item:last-child{border-bottom:none}.bm-sel-customer{font-size:14px;font-weight:600;color:#111827;margin-bottom:12px;padding:10px 14px;background:#f9fafb;border-radius:8px}.bm-sel-name{color:#4f46e5}.bm-loading{display:flex;align-items:center;gap:8px;padding:20px;color:#6b7280}.bm-bulk-actions{display:flex;align-items:center;gap:8px;margin-bottom:8px}.bm-btn-sm{padding:4px 10px;border:1px solid #d1d5db;border-radius:6px;background:#f9fafb;cursor:pointer;font-size:12px;transition:all .1s}.bm-btn-sm:hover{background:#e5e7eb}.bm-sel-count{font-size:12px;color:#6b7280;margin-left:auto}.bm-invoice-foot{margin-top:14px;display:flex;justify-content:flex-end}.bm-done{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 32px;text-align:center}.bm-done h3{font-size:20px;font-weight:700;color:#111827;margin:0}.bm-spin{animation:bm-rotate 1s linear infinite;display:inline-block}@keyframes bm-rotate{to{transform:rotate(360deg)}}.bd-page{padding:20px 28px 120px;background:#f0f2f5;min-height:calc(100vh - 64px)}.bd-loading{padding:60px;text-align:center;color:#6b7280}.bd-title-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px}.bd-title-bar h2{font-size:18px;font-weight:700;color:#1f2937;margin:0}.bd-back-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.bd-back-btn:hover{background:#f3f4f6;border-color:#9ca3af}.bd-banner{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 24px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 1px 3px #00000014}.bd-banner-left{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.bd-banner-icon{width:52px;height:52px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff;flex-shrink:0}.bd-banner-info{flex:1;min-width:0}.bd-inv-num{font-size:20px;font-weight:800;color:#1f2937;font-family:Inter,monospace}.bd-inv-sub{font-size:13px;color:#6b7280;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-banner-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.bd-amount-display{display:flex;flex-direction:column;align-items:flex-end;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:10px 20px}.bd-amount-num{font-size:22px;font-weight:800;color:#667eea;font-family:Inter,monospace;line-height:1}.bd-amount-lbl{font-size:11px;color:#9ca3af;font-weight:600;text-transform:uppercase;margin-top:2px}.bd-payment-tag{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:9999px;font-size:13px;font-weight:700}.bd-payment-tag.sm{padding:4px 10px;font-size:12px}.bd-tag-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.bd-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:16px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.bd-section-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.bd-section-hd h3{margin:0;font-size:15px;font-weight:700;color:#1f2937}.bd-section-acts{display:flex;align-items:center;gap:8px}.bd-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.bd-info-grid .span-2{grid-column:span 2}.bd-info-grid .span-4{grid-column:1 / -1}.bd-info-item{display:flex;flex-direction:column;gap:4px;padding:11px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.bd-info-item label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.bd-info-item span{font-size:14px;font-weight:600;color:#1f2937}.val-mono{font-family:Inter,monospace!important;font-size:15px!important;font-weight:700!important}.val-amount{font-size:18px!important;font-weight:800!important;color:#667eea!important;font-family:Inter,monospace!important}.val-notes{font-size:13px!important;font-weight:400!important;white-space:pre-wrap;line-height:1.6;color:#374151!important}.bd-pay-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bd-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.bd-form-grid .span-2{grid-column:span 2}.bd-form-grid .span-4{grid-column:1 / -1}.bd-form-field{display:flex;flex-direction:column;gap:5px}.bd-form-field label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.4px}.bd-form-field label em{color:#ef4444;font-style:normal}.bd-form-field input,.bd-form-field select,.bd-form-field textarea{padding:9px 12px;border:1px solid #d1d5db;border-radius:7px;font-size:13px;color:#1f2937;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit}.bd-form-field input:focus,.bd-form-field select:focus,.bd-form-field textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1f}.bd-form-field textarea{resize:vertical;min-height:80px}.bd-form-actions{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #f3f4f6}.bd-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #d1d5db;background:#fff;border-radius:7px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s;height:36px;white-space:nowrap}.bd-action-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.bd-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;box-shadow:0 2px 6px #667eea4d}.bd-action-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.bd-action-btn.primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.bd-action-btn.ghost{background:#fff}.bd-action-btn.danger{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;border-color:transparent;box-shadow:0 2px 6px #ef444440}.bd-action-btn.danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #ef444459}.bd-pdf-attach{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bd-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #d1d5db;border-radius:7px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s}.bd-upload-btn:hover:not(:disabled){background:#f3f4f6}.bd-upload-btn:disabled{opacity:.5;cursor:not-allowed}.bd-pdf-name{display:flex;align-items:center;gap:5px;font-size:13px;color:#374151;background:#f0fdf4;border:1px solid #86efac;padding:4px 10px;border-radius:6px}.bd-pdf-clear{background:none;border:none;cursor:pointer;color:#9ca3af;padding:1px;display:flex;align-items:center}.bd-toggle-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid #d1d5db;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s}.bd-toggle-btn:hover{background:#f3f4f6;border-color:#9ca3af}.bd-pdf-panel{display:flex;flex-direction:column;gap:0}.bd-pdf-tabbar{display:flex;align-items:center;gap:8px;border-bottom:2px solid #e5e7eb;margin-bottom:0;padding-bottom:0;flex-wrap:wrap}.bd-pdf-tabs{display:flex;gap:2px;flex:1;flex-wrap:wrap}.bd-pdf-tab{display:flex;align-items:center;gap:5px;padding:7px 14px 7px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-bottom:none;border-radius:6px 6px 0 0;font-size:12px;color:#4b5563;cursor:pointer;max-width:180px;transition:background .15s}.bd-pdf-tab:hover{background:#e8eaf0}.bd-pdf-tab.active{background:#fff;border-color:#e5e7eb;color:#1f2937;font-weight:600;position:relative;top:1px;border-bottom:2px solid #fff}.bd-pdf-tab-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.bd-pdf-tab-del{display:flex;align-items:center;margin-left:2px;color:#9ca3af;border-radius:3px;padding:1px;transition:color .15s,background .15s}.bd-pdf-tab-del:hover{color:#ef4444;background:#fee2e2}.bd-pdf-tab-actions{padding-bottom:4px}.bd-pdf-viewer{border:1px solid #e5e7eb;border-top:none;border-radius:0 0 8px 8px;background:#fff;min-height:400px}.bd-pdf-toolbar{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#1f2937;padding:10px 14px;border-bottom:1px solid #f3f4f6;background:#f9fafb;border-radius:0}.bd-pdf-open{margin-left:auto;font-size:12px;color:#667eea;text-decoration:none;font-weight:600}.bd-pdf-open:hover{text-decoration:underline}.bd-pdf-iframe{width:100%;height:620px;border:none;border-radius:0 0 8px 8px;display:block}.bd-pdf-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:50px 20px;color:#9ca3af;font-size:14px}.bd-pdf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:80px 20px;color:#9ca3af;font-size:14px}.bd-pending-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.bd-pdf-name{display:inline-flex;align-items:center;gap:6px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;padding:4px 10px;font-size:12px;color:#0369a1;max-width:360px}.bd-pdf-clear{background:none;border:none;cursor:pointer;color:#6b7280;display:flex;align-items:center;padding:1px}.bd-pdf-clear:hover{color:#ef4444}.bd-pdf-hint{font-size:12px;color:#9ca3af}.bd-action-btn.sm{padding:5px 10px;font-size:12px}.bd-fab{position:fixed;bottom:0;right:0;left:260px;height:68px;background:#fffffff7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #e5e7eb;box-shadow:0 -4px 20px #0000000f;display:flex;align-items:center;justify-content:flex-end;padding:0 28px;gap:12px;z-index:100}.bd-fab-back{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.bd-fab-back:hover{background:#f3f4f6;border-color:#9ca3af}@media (max-width: 1024px){.bd-fab{left:70px}.bd-info-grid{grid-template-columns:repeat(2,1fr)}.bd-info-grid .span-2,.bd-info-grid .span-4{grid-column:1 / -1}.bd-form-grid{grid-template-columns:repeat(2,1fr)}.bd-form-grid .span-2,.bd-form-grid .span-4{grid-column:1 / -1}}@media (max-width: 768px){.bd-page{padding:12px 14px 100px}.bd-fab{left:0!important;padding:0 16px}.bd-banner{flex-direction:column;align-items:flex-start;gap:12px}.bd-info-grid,.bd-form-grid{grid-template-columns:1fr}.bd-info-grid .span-2,.bd-info-grid .span-4,.bd-form-grid .span-2,.bd-form-grid .span-4{grid-column:1 / -1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:#1f2937}.modal-close{background:none;border:none;font-size:28px;color:#9ca3af;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-form{padding:24px}.modal-form .form-group{margin-bottom:20px}.modal-form .form-group:last-of-type{margin-bottom:24px}.modal-form label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#374151}.modal-form input,.modal-form select,.modal-form textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s;box-sizing:border-box}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-form textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-cancel,.btn-submit{flex:1;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media (max-width: 768px){.modal-content{width:95%;max-height:95vh}.form-row{grid-template-columns:1fr}}.material-inventory-detail{padding:24px 24px 100px;background:#f9fafb;min-height:calc(100vh - 64px)}.mid-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px}.spin-icon{animation:spinAnim .8s linear infinite}@keyframes spinAnim{to{transform:rotate(360deg)}}.back-btn-sm{padding:8px 20px;border-radius:8px;border:1px solid #d1d5db;background:#fff;cursor:pointer;font-size:13px;color:#374151}.detail-header{display:none}.back-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;color:#374151;font-size:14px;font-weight:500;transition:all .2s}.back-button:hover{background:#f3f4f6;border-color:#9ca3af}.detail-header h2{margin:0;color:#1f2937;font-size:24px;font-weight:600}.detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.detail-section h3{margin:0 0 20px;color:#1f2937;font-size:18px;font-weight:600;border-bottom:2px solid #e5e7eb;padding-bottom:12px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0;border:none;padding:0}.button-group{display:flex;gap:10px}.action-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;cursor:pointer;color:#fff;font-size:14px;font-weight:500;transition:all .2s}.action-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.action-button.secondary{background:linear-gradient(135deg,#4facfe,#00f2fe)}.action-button.secondary:hover{box-shadow:0 4px 12px #4facfe66}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:24px}.info-item{display:flex;flex-direction:column;padding:12px 16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.info-item.full-width{grid-column:1 / -1}.info-item label{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:15px;color:#1f2937;font-weight:500}.info-item span.highlight{color:#667eea;font-weight:700;font-size:17px}.info-item span.stock-quantity{color:#3b82f6;font-weight:700;font-size:17px}.info-item span.supplier-name{color:#8b5cf6;font-weight:700;font-size:16px}.info-item span.unit-price{color:#059669;font-weight:700;font-size:16px}.stock-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.summary-item{display:flex;flex-direction:column;align-items:center;padding:20px;border-radius:12px;border:2px solid}.summary-item.inbound{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6}.summary-item.outbound{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.summary-item.stock{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.summary-label{font-size:13px;font-weight:600;color:#6b7280;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:22px;font-weight:700;color:#1f2937}.transaction-section{margin-bottom:16px;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.transaction-section:last-child{margin-bottom:0}.transaction-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;transition:all .2s}.transaction-header.inbound{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:2px solid transparent}.transaction-header.inbound:hover,.transaction-header.inbound.expanded{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-bottom-color:#3b82f6}.transaction-header.outbound{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-bottom:2px solid transparent}.transaction-header.outbound:hover,.transaction-header.outbound.expanded{background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom-color:#f59e0b}.header-left,.header-right{display:flex;align-items:center;gap:12px}.toggle-icon{display:flex;align-items:center;color:#6b7280}.transaction-header h4{margin:0;font-size:16px;font-weight:600;color:#1f2937}.transaction-header .count{font-size:13px;color:#6b7280;font-weight:500}.transaction-header .total{font-size:15px;font-weight:700;color:#1f2937}.transaction-list{background:#fff;padding:16px}.transaction-filter{display:flex;align-items:flex-end;gap:16px;padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.date-range{display:flex;align-items:center;gap:8px}.date-range span{color:#9ca3af;font-weight:600}.filter-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#374151;background:#fff;transition:all .2s}.filter-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-input::placeholder{color:#9ca3af}.filter-reset-btn{padding:8px 16px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;white-space:nowrap}.filter-reset-btn:hover{background:#e5e7eb;border-color:#9ca3af;color:#374151}.transaction-table{width:100%;border-collapse:collapse;font-size:13px}.transaction-table thead th{background:#f9fafb;padding:10px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.transaction-table tbody td{padding:10px 12px;border-bottom:1px solid #f3f4f6;color:#6b7280}.transaction-table tbody tr:last-child td{border-bottom:none}.transaction-table tbody tr:hover{background:#f9fafb}.transaction-table .empty-row{text-align:center;padding:40px 12px;color:#9ca3af;font-style:italic}.transaction-table .quantity{font-weight:700;font-size:14px}.transaction-table .quantity.inbound{color:#3b82f6}.transaction-table .quantity.outbound{color:#f59e0b}.transaction-table .reference{font-family:Courier New,monospace;color:#6366f1;font-weight:500}.outbound-type-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.outbound-type-badge.작업투입{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.outbound-type-badge.반품{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.outbound-type-badge.기타{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.outbound-type-badge .other-reason{font-size:11px;color:#6b7280;font-weight:500;margin-left:4px}.transaction-list .ag-theme-alpine{--ag-font-size: 13px;--ag-header-height: 44px;--ag-header-foreground-color: #374151;--ag-header-background-color: #f9fafb;--ag-odd-row-background-color: #ffffff;--ag-row-hover-color: #f0f9ff;--ag-border-color: #e5e7eb;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.transaction-list .ag-theme-alpine .ag-header-cell{font-weight:600}.transaction-list .ag-theme-alpine .ag-cell{display:flex;align-items:center;padding:0 12px}.transaction-list .ag-theme-alpine .ag-root-wrapper{border-radius:8px}.transaction-list .ag-theme-alpine .ag-paging-panel{border-top:1px solid #e5e7eb;padding:10px 12px;background:#f9fafb}.ag-cell .outbound-type-badge{margin:0}@media (max-width: 768px){.info-grid,.stock-summary{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.button-group{width:100%}.action-button{flex:1}.transaction-table{font-size:11px}.transaction-table thead th,.transaction-table tbody td{padding:8px}}.material-inventory-detail .floating-action-bar{position:fixed;bottom:0;left:280px;right:0;background:#fff;border-top:2px solid #e5e7eb;padding:16px 24px;display:flex;justify-content:flex-end;align-items:center;gap:12px;box-shadow:0 -4px 12px #0000001a;z-index:100}.inbound-po-banner{display:flex;align-items:center;gap:10px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;padding:10px 16px;margin:0 0 4px;font-size:13px;color:#3730a3}.inbound-po-banner strong{color:#1e1b4b}.inbound-po-clear{display:flex;align-items:center;gap:4px;margin-left:auto;padding:4px 10px;border-radius:6px;border:1px solid #a5b4fc;background:#fff;color:#6366f1;font-size:11px;cursor:pointer;font-weight:600;transition:all .15s}.inbound-po-clear:hover{background:#eef2ff}.inbound-mat-wrap{position:relative}.inbound-mat-input-box{display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:hidden;transition:border-color .15s}.inbound-mat-input-box:focus-within{border-color:#6366f1}.inbound-mat-input-box input{flex:1;padding:9px 12px;border:none;outline:none;font-size:13px;background:transparent}.inbound-mat-badge{background:#eef2ff;color:#4f46e5;font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;margin-right:6px;white-space:nowrap}.inbound-mat-arrow{padding:0 10px;cursor:pointer;color:#94a3b8;transition:color .15s}.inbound-mat-arrow:hover{color:#475569}.inbound-mat-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;max-height:260px;overflow-y:auto}.inbound-mat-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s;border-bottom:1px solid #f1f5f9}.inbound-mat-item:last-child{border-bottom:none}.inbound-mat-item:hover{background:#f8fafc}.inbound-mat-item svg{color:#94a3b8;flex-shrink:0}.inbound-mat-info{flex:1;min-width:0}.inbound-mat-name{display:block;font-size:13px;font-weight:600;color:#1e293b}.inbound-mat-sub{display:block;font-size:11px;color:#94a3b8}.inbound-mat-price{font-size:12px;font-weight:700;color:#6366f1;white-space:nowrap}.inbound-mat-empty{padding:16px;text-align:center;font-size:13px;color:#94a3b8}.prt-root{min-height:100vh;background:#e5e7eb;display:flex;flex-direction:column;align-items:center;padding-bottom:60px;font-family:Malgun Gothic,Apple SD Gothic Neo,Noto Sans KR,sans-serif}.prt-toolbar{width:100%;max-width:820px;display:flex;align-items:center;gap:12px;padding:14px 20px}.prt-back{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:7px;border:1px solid #d1d5db;background:#fff;font-size:13px;cursor:pointer;color:#374151}.prt-back:hover{background:#f9fafb}.prt-hint{flex:1;display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.prt-hint kbd{padding:1px 5px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;font-size:11px}.prt-print-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;background:#1e293b;color:#fff;border:none;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.prt-print-btn:hover{background:#0f172a}.prt-doc{width:100%;max-width:820px;background:#fff;border-radius:4px;box-shadow:0 4px 24px #00000026;margin:0 16px;padding:48px 52px}.prt-doc-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.prt-company-name{font-size:22px;font-weight:800;color:#1e293b;letter-spacing:-.03em}.prt-company-sub{font-size:11px;color:#94a3b8;margin-top:2px;letter-spacing:.05em}.prt-doc-title-block{text-align:right}.prt-doc-title{font-size:28px;font-weight:900;color:#1e293b;letter-spacing:.12em;margin:0}.prt-doc-title-en{font-size:10px;color:#94a3b8;letter-spacing:.15em;text-transform:uppercase;margin:2px 0 0}.prt-divider{height:2px;background:linear-gradient(90deg,#1e293b 0%,#6366f1 60%,transparent 100%);margin-bottom:20px}.prt-meta-row{display:flex;gap:32px;margin-bottom:20px}.prt-meta-item{display:flex;flex-direction:column;gap:2px}.prt-meta-label{font-size:10px;color:#94a3b8;font-weight:600;letter-spacing:.05em}.prt-meta-value{font-size:13px;color:#1e293b;font-weight:600}.prt-receiver{display:flex;align-items:baseline;gap:12px;padding:12px 16px;background:#f8fafc;border-left:4px solid #6366f1;margin-bottom:24px;border-radius:0 6px 6px 0}.prt-receiver-label{font-size:11px;font-weight:700;color:#6366f1;white-space:nowrap}.prt-receiver-name{font-size:16px;font-weight:700;color:#1e293b}.prt-table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:12px}.prt-table thead tr{background:#1e293b;color:#fff}.prt-table th{padding:9px 10px;text-align:left;font-weight:600;font-size:11px;letter-spacing:.03em}.prt-th-no{width:36px;text-align:center}.prt-th-r{text-align:right}.prt-table td{padding:8px 10px;border-bottom:1px solid #e2e8f0;color:#334155;vertical-align:middle}.prt-td-center{text-align:center;color:#94a3b8}.prt-td-strong{font-weight:600;color:#0f172a}.prt-td-r{text-align:right}.prt-td-amount{font-weight:700;color:#1e293b}.prt-empty-row td{height:30px;color:#d1d5db;font-size:11px}.prt-total-row{background:#1e293b}.prt-total-label{padding:10px;text-align:right;font-weight:700;font-size:12px;color:#e2e8f0}.prt-total-amount{padding:10px;text-align:right;font-weight:800;font-size:15px;color:#fff}.prt-notes{display:flex;gap:10px;align-items:baseline;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;font-size:12px;margin-bottom:24px}.prt-notes-label{font-weight:700;color:#92400e;white-space:nowrap}.prt-sign-section{display:flex;justify-content:flex-end;gap:32px;margin-bottom:32px}.prt-sign-box{width:140px;text-align:center;border:1px solid #cbd5e1;border-radius:8px;padding:12px}.prt-sign-title{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}.prt-sign-name{font-size:14px;font-weight:700;color:#1e293b;margin-bottom:20px}.prt-sign-line{font-size:11px;color:#94a3b8;border-top:1px solid #e2e8f0;padding-top:8px}.prt-footer{text-align:center;font-size:10px;color:#94a3b8;border-top:1px solid #e2e8f0;padding-top:14px}.prt-empty{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.prt-empty button{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px}@media print{@page{size:A4;margin:15mm}body{background:#fff!important}.no-print{display:none!important}.prt-root{background:#fff!important;padding:0}.prt-doc{box-shadow:none!important;border-radius:0!important;margin:0!important;padding:0!important;max-width:none!important}}.po-page{min-height:100vh;background:#f1f5f9;display:flex;flex-direction:column;align-items:center;padding-bottom:60px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.po-header{width:100%;max-width:780px;display:flex;align-items:center;gap:20px;padding:18px 20px 10px}.po-back-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:13px;font-weight:500;cursor:pointer;color:#475569;white-space:nowrap;transition:all .15s;flex-shrink:0}.po-back-btn:hover{background:#f8fafc;border-color:#94a3b8}.po-header-title{display:flex;align-items:center;gap:12px}.po-header-icon{color:#6366f1;flex-shrink:0}.po-header-title h1{font-size:18px;font-weight:700;color:#0f172a;margin:0;line-height:1.2}.po-header-title p{font-size:12px;color:#94a3b8;margin:0}.po-form-wrap{width:100%;max-width:780px;display:flex;flex-direction:column;gap:0;margin:0 16px;background:#fff;border-radius:16px;box-shadow:0 1px 3px #00000014,0 8px 24px #0000000f;overflow:hidden}.po-section{padding:20px 28px;border-bottom:1px solid #f1f5f9}.po-section:last-of-type{border-bottom:none}.po-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:14px}.po-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.po-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.po-field-full{width:100%}.po-field{display:flex;flex-direction:column;gap:5px}.po-field label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#374151}.po-field label svg{color:#9ca3af;flex-shrink:0}.po-field input,.po-field textarea{height:40px;padding:0 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;color:#0f172a;outline:none;transition:border-color .15s,box-shadow .15s;background:#fafafa}.po-field input:focus,.po-field textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;background:#fff}.po-field textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.5}.po-req{color:#ef4444;margin-left:2px;font-weight:700}.po-total-box{height:40px;display:flex;align-items:center;gap:4px;padding:0 12px;background:linear-gradient(135deg,#eff6ff,#eef2ff);border:1.5px solid #c7d2fe;border-radius:8px;font-size:16px;font-weight:700;color:#3730a3}.po-total-currency{font-size:13px;color:#6366f1}.po-total-placeholder{font-size:13px;color:#94a3b8;font-weight:400}.po-mat-wrap{position:relative}.po-mat-input-box{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1.5px solid #e2e8f0;border-radius:8px;background:#fafafa;transition:border-color .15s,box-shadow .15s}.po-mat-input-box:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;background:#fff}.po-mat-search-icon{color:#9ca3af;flex-shrink:0}.po-mat-input-box input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:#0f172a;height:100%;padding:0}.po-mat-badge{font-size:10px;font-weight:600;color:#059669;background:#d1fae5;border-radius:5px;padding:2px 7px;white-space:nowrap;flex-shrink:0}.po-mat-dropdown{position:absolute;top:calc(100% + 5px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 32px #0000001f;z-index:300;overflow:hidden}.po-mat-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;text-align:left;border:none;background:transparent;cursor:pointer;border-bottom:1px solid #f8fafc;transition:background .1s}.po-mat-item:hover{background:#f0f9ff}.po-mat-item:last-child{border-bottom:none}.po-mat-item-icon{color:#6366f1;flex-shrink:0}.po-mat-item-info{flex:1;min-width:0}.po-mat-item-name{display:block;font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.po-mat-item-sub{display:block;font-size:11px;color:#94a3b8;margin-top:1px}.po-mat-item-price{font-size:12px;font-weight:600;color:#059669;flex-shrink:0}.po-mat-empty{padding:16px;text-align:center;font-size:13px;color:#94a3b8}.po-error-banner{margin:0 28px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:13px;color:#dc2626;display:flex;align-items:center;gap:8px}.po-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:20px 28px;background:#f8fafc;border-top:1px solid #f1f5f9}.po-btn-primary{display:flex;align-items:center;gap:7px;padding:0 24px;height:44px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #6366f14d}.po-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #6366f166}.po-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.po-btn-outline{display:flex;align-items:center;gap:7px;padding:0 20px;height:44px;background:#fff;color:#374151;border:1.5px solid #d1d5db;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.po-btn-outline:hover{background:#f9fafb;border-color:#9ca3af}.po-btn-print{display:flex;align-items:center;gap:7px;padding:0 20px;height:44px;background:#fff;color:#0369a1;border:1.5px solid #7dd3fc;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.po-btn-print:hover{background:#f0f9ff;border-color:#38bdf8}.po-done-wrap{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;margin:20px 16px 0;background:#fff;border-radius:20px;box-shadow:0 1px 3px #00000014,0 8px 24px #0000000f;padding:40px 36px 32px}.po-done-icon{color:#10b981}.po-done-title{font-size:22px;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.02em}.po-done-sub{font-size:13px;color:#94a3b8;margin:0}.po-done-card{width:100%;border:1.5px solid #e2e8f0;border-radius:12px;overflow:hidden;text-align:left}.po-done-row{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;border-bottom:1px solid #f1f5f9;font-size:13px}.po-done-row:last-child{border-bottom:none}.po-done-row span{color:#64748b}.po-done-row strong{color:#0f172a;font-weight:600}.po-done-total{background:linear-gradient(135deg,#eff6ff,#eef2ff)}.po-done-total span{color:#4338ca;font-weight:600}.po-done-total strong{color:#3730a3;font-size:16px;font-weight:800}.po-done-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.po-spin{animation:po-rotate .85s linear infinite;display:inline-flex}@keyframes po-rotate{to{transform:rotate(360deg)}}@media (max-width: 600px){.po-grid-2,.po-grid-3{grid-template-columns:1fr}.po-form-wrap{margin:0 8px}.po-section,.po-form-actions{padding:16px}.po-done-wrap{padding:28px 20px 24px;margin:12px 8px 0}}.pol-page{min-height:100vh;background:#f1f5f9;display:flex;flex-direction:column;padding-bottom:80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.pol-header{display:flex;align-items:center;gap:16px;padding:16px 24px 12px;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f}.pol-back-btn{display:flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:13px;font-weight:500;cursor:pointer;color:#475569;white-space:nowrap;transition:all .15s;flex-shrink:0}.pol-back-btn:hover{background:#f8fafc;border-color:#94a3b8}.pol-header-title{display:flex;align-items:center;gap:12px;flex:1}.pol-header-icon{color:#6366f1;flex-shrink:0}.pol-header-title h1{font-size:18px;font-weight:700;color:#0f172a;margin:0}.pol-header-title p{font-size:12px;color:#94a3b8;margin:0}.pol-refresh-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;color:#64748b;transition:all .15s;flex-shrink:0}.pol-refresh-btn:hover{background:#f1f5f9}.pol-spin{animation:polSpin .8s linear infinite}@keyframes polSpin{to{transform:rotate(360deg)}}.pol-summary-row{display:flex;gap:12px;padding:16px 24px 0}.pol-stat-card{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:12px 18px;cursor:pointer;transition:all .15s;flex:1;min-width:0}.pol-stat-card:hover{border-color:#94a3b8;box-shadow:0 2px 8px #00000014}.pol-stat-card.active{border-color:#6366f1;background:#eef2ff}.pol-stat-card.pending.active{border-color:#f59e0b;background:#fffbeb}.pol-stat-card.partial.active{border-color:#3b82f6;background:#eff6ff}.pol-stat-card.done.active{border-color:#10b981;background:#ecfdf5}.pol-stat-num{font-size:22px;font-weight:800;color:#1e293b;line-height:1}.pol-stat-label{font-size:12px;color:#64748b}.pol-stat-card svg{flex-shrink:0}.pol-stat-card.pending svg{color:#f59e0b}.pol-stat-card.partial svg{color:#3b82f6}.pol-stat-card.done svg{color:#10b981}.pol-toolbar{display:flex;align-items:center;gap:10px;padding:14px 24px}.pol-search{flex:1;height:38px;padding:0 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;background:#fff;outline:none;transition:border-color .15s}.pol-search:focus{border-color:#6366f1}.pol-btn-new,.pol-btn-inbound{display:flex;align-items:center;gap:6px;padding:0 16px;height:38px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;transition:all .15s}.pol-btn-new{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.pol-btn-new:hover{opacity:.9}.pol-btn-inbound{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.pol-btn-inbound:hover{opacity:.9}.pol-table-wrap{flex:1;padding:0 24px;overflow:auto}.pol-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.pol-badge-pending{background:#fef3c7;color:#92400e}.pol-badge-partial{background:#dbeafe;color:#1e40af}.pol-badge-done{background:#d1fae5;color:#065f46}.pol-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#94a3b8}.pol-empty p{margin:0;font-size:15px}.equipment-page{padding:24px;background:#f9fafb;min-height:100vh}.maintenance-schedule-section{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.maintenance-schedule-section h3{margin:0 0 20px;color:#1f2937;font-size:16px;font-weight:600;border-bottom:2px solid #e5e7eb;padding-bottom:12px}.schedule-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.schedule-card{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:1px solid #e5e7eb;border-radius:8px;padding:16px;border-top:4px solid;transition:all .3s ease;position:relative}.schedule-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.schedule-card.editing{background:#eff6ff;border-color:#bfdbfe;box-shadow:0 4px 12px #3b82f626}.schedule-header-wrapper{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px}.schedule-header{display:flex;align-items:center;gap:12px;font-weight:600;font-size:15px}.edit-schedule-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s}.edit-schedule-btn:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.edit-tasks{display:flex;flex-direction:column;gap:12px}.current-tasks h4{margin:0 0 8px;font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.editable-task{display:flex;align-items:center;gap:8px;padding:6px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151}.editable-task span:first-of-type{flex-shrink:0}.editable-task span:nth-of-type(2){flex:1}.remove-task-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background-color:#fee2e2;border:1px solid #fecaca;border-radius:4px;color:#ef4444;cursor:pointer;transition:all .2s;flex-shrink:0}.remove-task-btn:hover{background-color:#fca5a5;border-color:#f87171}.add-task{display:flex;gap:6px}.add-task input{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151;transition:all .2s}.add-task input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-task-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background-color:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;transition:all .2s}.add-task-btn:hover{background-color:#2563eb}.edit-actions{display:flex;gap:8px}.save-btn,.cancel-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.save-btn{background-color:#10b981;color:#fff}.save-btn:hover{background-color:#059669}.cancel-btn{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.cancel-btn:hover{background-color:#e5e7eb}.schedule-icon{font-size:24px}.schedule-period{font-weight:600}.schedule-tasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.schedule-tasks li{display:flex;align-items:center;gap:8px;font-size:13px;color:#4b5563;line-height:1.4}.task-dot{display:inline-block;width:6px;height:6px;background-color:currentColor;border-radius:50%;flex-shrink:0;opacity:.6}.log-section{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;flex:1;display:flex;flex-direction:column;overflow:hidden}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb;flex-shrink:0}.log-title{margin:0;color:#1f2937;font-size:16px;font-weight:600}.toggle-form-btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px #8b5cf64d!important}.inline-log-form{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:2px solid #e5e7eb;border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl);box-shadow:var(--shadow-md);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.equipment-log-form .form-section{margin-bottom:24px;padding:20px;background:#fff;border-radius:var(--radius-lg);border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}.equipment-log-form .section-title{margin:0 0 16px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);padding-bottom:12px;border-bottom:2px solid var(--color-gray-200)}.equipment-log-form .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.equipment-log-form .form-row:last-child{margin-bottom:0}.equipment-log-form .form-group{display:flex;flex-direction:column}.equipment-log-form .form-group.full-width{grid-column:1 / -1}.equipment-log-form label{margin-bottom:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.equipment-log-form input,.equipment-log-form select,.equipment-log-form textarea{padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-gray-800);background:#fff;transition:all var(--transition-base)}.equipment-log-form input:focus,.equipment-log-form select:focus,.equipment-log-form textarea:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #8b5cf61a}.equipment-log-form textarea{resize:vertical;min-height:80px;font-family:inherit}.parts-input-row{display:flex;gap:12px;margin-bottom:16px}.parts-input-row input{flex:1}.add-part-btn{padding:10px 16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;display:flex;align-items:center;gap:6px;transition:all var(--transition-base);white-space:nowrap}.add-part-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.parts-list{margin-top:16px}.parts-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.parts-table thead{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.parts-table th{padding:12px;text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);border-bottom:2px solid var(--border-color)}.parts-table td{padding:12px;font-size:var(--font-size-sm);color:var(--color-gray-800);border-bottom:1px solid var(--border-light)}.parts-table tbody tr:hover{background-color:var(--color-gray-50)}.parts-table tfoot td{padding:12px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-top:2px solid var(--border-color);font-size:var(--font-size-sm)}.remove-part-btn{padding:6px;background:#ef4444;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.remove-part-btn:hover{background:#dc2626;transform:scale(1.1)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:2px solid var(--border-light)}.cancel-button,.submit-button{padding:12px 24px;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;gap:8px}.cancel-button{background:var(--color-gray-200);color:var(--color-gray-700)}.cancel-button:hover{background:var(--color-gray-300);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.submit-button{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:var(--shadow-md)}.submit-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #8b5cf64d}@media (max-width: 1024px){.equipment-log-form .form-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.equipment-log-form .form-row{grid-template-columns:1fr}.log-header{flex-direction:column;align-items:stretch;gap:12px}.toggle-form-btn{width:100%;justify-content:center}.parts-input-row{flex-direction:column}.parts-input-row input{width:100%!important}}.log-section .list-grid{flex:1;width:100%;min-height:400px}.equipment-grid-wrapper{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.log-section .ag-theme-alpine{--ag-font-size: 13px;--ag-row-height: 40px;--ag-header-height: 44px;width:100%;height:100%;border:none}.log-section .ag-theme-alpine .ag-root{border:none}.log-section .ag-theme-alpine .ag-header-cell{background-color:#f3f4f6;border-color:#e5e7eb;font-weight:600;color:#374151}.log-section .ag-theme-alpine .ag-row{border-color:#e5e7eb}.log-section .ag-theme-alpine .ag-row:hover{background-color:#f9fafb}@media (max-width: 1200px){.schedule-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.schedule-cards{grid-template-columns:1fr}.equipment-page,.maintenance-schedule-section{padding:16px}.schedule-card{padding:12px}.schedule-header{font-size:14px}.schedule-icon{font-size:20px}.schedule-tasks li{font-size:12px}.log-section .list-grid{min-height:350px}}.equipment-log-modal{max-width:900px;max-height:90vh;overflow-y:auto}.equipment-log-modal .form-section{margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.equipment-log-modal .section-title{margin:0 0 16px;font-size:15px;font-weight:600;color:#1f2937;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.equipment-log-modal .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.equipment-log-modal .form-row:last-child{margin-bottom:0}.equipment-log-modal .form-group{display:flex;flex-direction:column;gap:6px}.equipment-log-modal .form-group.full-width{grid-column:1 / -1}.equipment-log-modal .form-group label{font-size:13px;font-weight:600;color:#374151}.equipment-log-modal .form-group input,.equipment-log-modal .form-group select,.equipment-log-modal .form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1f2937;transition:all .2s;background:#fff}.equipment-log-modal .form-group input:focus,.equipment-log-modal .form-group select:focus,.equipment-log-modal .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.equipment-log-modal .form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.parts-input-row{display:flex;gap:10px;align-items:center;margin-bottom:16px}.parts-input-row input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s}.parts-input-row input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-part-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.add-part-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.parts-list{margin-top:16px;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.parts-table{width:100%;border-collapse:collapse;background:#fff}.parts-table thead{background:#f3f4f6}.parts-table th{padding:10px 12px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb}.parts-table td{padding:10px 12px;font-size:13px;color:#374151;border-bottom:1px solid #f3f4f6}.parts-table tbody tr:last-child td{border-bottom:none}.parts-table tbody tr:hover{background:#f9fafb}.parts-table tfoot td{padding:12px;font-size:14px;background:#f9fafb;border-top:2px solid #e5e7eb}.remove-part-btn{display:flex;align-items:center;justify-content:center;padding:4px;background:#fee2e2;border:1px solid #fecaca;border-radius:4px;color:#ef4444;cursor:pointer;transition:all .2s}.remove-part-btn:hover{background:#fca5a5;border-color:#f87171}.equipment-log-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:2px solid #e5e7eb}.equipment-log-modal .cancel-button,.equipment-log-modal .submit-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.equipment-log-modal .cancel-button{background:#fff;border:1px solid #d1d5db;color:#6b7280}.equipment-log-modal .cancel-button:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.equipment-log-modal .submit-button{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff}.equipment-log-modal .submit-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@media (max-width: 768px){.equipment-log-modal{max-width:95vw}.equipment-log-modal .form-row{grid-template-columns:1fr}.parts-input-row{flex-direction:column;align-items:stretch}.parts-input-row input{width:100%}.parts-table{font-size:12px}.parts-table th,.parts-table td{padding:8px}}.admin-dashboard{padding:40px;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.admin-header{text-align:center;color:#fff;margin-bottom:60px}.admin-header .back-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;margin-bottom:30px}.admin-header .back-button:hover{background:#ffffff4d;transform:translateY(-2px)}.admin-header h1{margin:0 0 12px;font-size:48px;font-weight:700;text-shadow:0 4px 12px rgba(0,0,0,.2)}.admin-header p{margin:0;font-size:18px;opacity:.9}.admin-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;max-width:1200px;margin:0 auto}.module-card{background:#fff;border-radius:16px;padding:40px;cursor:pointer;transition:all .3s;box-shadow:0 4px 20px #0000001a;position:relative;overflow:hidden}.module-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--module-color)}.module-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #00000026}.module-icon{width:80px;height:80px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:var(--module-color);background:linear-gradient(135deg,color-mix(in srgb,var(--module-color) 10%,white),color-mix(in srgb,var(--module-color) 5%,white))}.module-card h2{margin:0 0 12px;font-size:24px;font-weight:700;color:#1f2937}.module-card p{margin:0 0 24px;font-size:15px;color:#6b7280;line-height:1.6}.module-button{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--module-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.module-button:hover{transform:translate(4px);box-shadow:0 4px 12px #00000026}@media (max-width: 768px){.admin-dashboard{padding:24px}.admin-header h1{font-size:36px}.admin-modules{grid-template-columns:1fr}}.user-management-page{padding:24px;background:#f9fafb;min-height:calc(100vh - 64px)}.user-management-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.user-management-page .page-header .header-left{display:flex;align-items:center;gap:16px}.user-management-page .page-header h2{font-size:24px;font-weight:600;color:#1f2937;margin:0}.user-management-page .back-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:14px;cursor:pointer;transition:all .2s}.user-management-page .back-button:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.user-management-page .add-button{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #667eea33}.user-management-page .add-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.user-management-page .user-grid{width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a;padding:16px}.user-management-page .ag-theme-alpine{--ag-font-size: 14px;--ag-row-height: 50px;--ag-header-height: 50px;--ag-header-foreground-color: #374151;--ag-header-background-color: #f9fafb;--ag-odd-row-background-color: #ffffff;--ag-row-hover-color: #f0f9ff;--ag-border-color: #e5e7eb}.user-management-page .ag-theme-alpine .ag-header-cell{font-weight:600}.user-management-page .ag-theme-alpine .ag-cell{display:flex;align-items:center;padding:0 12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:20px;font-weight:600;color:#1f2937;margin:0}.modal-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s}.modal-close:hover{color:#374151}.user-modal{max-width:500px}.perm-modal{max-width:680px;width:100%}.modal-form-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.modal-form-cols.cols-3{grid-template-columns:1fr 1fr 1fr}.cols-full{grid-column:1 / -1}.form-group-inline{justify-content:center}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:600;color:#374151}.extra-info-section{border:1.5px solid #e5e7eb;border-radius:10px;padding:14px 16px;background:#fafafa}.extra-info-title{font-size:13px;font-weight:700;color:#374151;margin-bottom:12px;display:flex;align-items:center;gap:8px}.optional-tag{font-size:11px;font-weight:600;color:#9ca3af;background:#f3f4f6;padding:2px 7px;border-radius:10px;letter-spacing:.03em}.perm-section{border:1.5px solid #e0e7ff;border-radius:10px;padding:16px;background:#fafafe}.perm-section-title{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:#4f46e5;margin-bottom:12px}.perm-custom-toggle{margin-left:auto;display:flex;align-items:center;gap:8px;cursor:pointer}.perm-custom-label{font-size:12px;font-weight:600;color:#6b7280}.perm-toggle-sw{position:relative;width:36px;height:20px;border-radius:10px;background:#d1d5db;cursor:pointer;transition:background .2s;flex-shrink:0}.perm-toggle-sw.on{background:linear-gradient(135deg,#667eea,#764ba2)}.perm-toggle-knob{position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .2s;box-shadow:0 1px 3px #0003}.perm-toggle-sw.on .perm-toggle-knob{transform:translate(16px)}.perm-presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.perm-preset-label{font-size:12px;color:#6b7280;white-space:nowrap}.perm-preset-btn{padding:5px 12px;border:1.5px solid;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.perm-preset-staff{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.perm-preset-staff:hover{background:#3b82f6;color:#fff}.perm-preset-customer{border-color:#10b981;color:#10b981;background:#f0fdf4}.perm-preset-customer:hover{background:#10b981;color:#fff}.perm-preset-viewer{border-color:#8b5cf6;color:#8b5cf6;background:#f5f3ff}.perm-preset-viewer:hover{background:#8b5cf6;color:#fff}.perm-checkboxes{display:flex;flex-direction:column;gap:10px;transition:opacity .2s}.perm-checkboxes.perm-disabled{opacity:.4;pointer-events:none}.perm-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:6px}.perm-items{display:flex;flex-wrap:wrap;gap:6px}.perm-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;border:1.5px solid #d1d5db;background:#f9fafb;color:#6b7280;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.perm-chip:hover:not(:disabled){border-color:#a78bfa;background:#f5f3ff;color:#6d28d9}.perm-chip-on{border-color:#4f46e5;background:#eef2ff;color:#4f46e5}.perm-chip-dot{width:7px;height:7px;border-radius:50%;background:#d1d5db;flex-shrink:0;transition:background .15s}.perm-chip-dot.on{background:#4f46e5}.perm-hint{margin-top:10px;font-size:12px;color:#6b7280;background:#f3f4f6;padding:8px 12px;border-radius:6px;line-height:1.6}.modal-form{padding:24px;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#374151}.form-group input,.form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1f2937;background:#fff;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed;color:#9ca3af}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.cancel-button,.submit-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.cancel-button{background:#fff;border:1px solid #d1d5db;color:#6b7280}.cancel-button:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.submit-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}@media (max-width: 768px){.user-management-page{padding:16px}.user-management-page .page-header{flex-direction:column;align-items:flex-start;gap:16px}.user-management-page .page-header .header-left{flex-direction:column;align-items:flex-start;gap:12px}.modal-content{max-width:95%}.user-modal{max-width:100%}}.log-preset-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.log-preset-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border:1px solid #e5e7eb;border-radius:20px;background:#f9fafb;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.log-preset-btn:hover{background:#f3f4f6;border-color:#d1d5db}.log-preset-btn.active{background:#ede9fe;border-color:#8b5cf6;color:#6d28d9}.log-preset-btn.security{border-color:#fca5a5;color:#dc2626;background:#fff5f5}.log-preset-btn.security.active{background:#fee2e2;border-color:#ef4444;color:#b91c1c}.log-filters{display:flex;gap:12px;margin-bottom:20px;padding:16px;background:#f9fafb;border-radius:8px;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:6px;flex:1}.filter-group label{font-size:12px;font-weight:600;color:#6b7280}.filter-group input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.search-button{padding:8px 16px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:6px;transition:all .2s}.search-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.report-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.report-type-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;color:#6b7280}.report-type-btn:hover{border-color:var(--type-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.report-type-btn.active{border-color:var(--type-color);background:color-mix(in srgb,var(--type-color) 10%,white);color:var(--type-color)}.date-range-selector{display:flex;gap:12px;margin-bottom:24px;padding:16px;background:#f9fafb;border-radius:8px;align-items:flex-end}.generate-button{padding:10px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .2s}.generate-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.stat-card{padding:24px;background:linear-gradient(135deg,#fff,#f9fafb);border-radius:12px;border:1px solid #e5e7eb}.stat-label{font-size:13px;color:#6b7280;font-weight:600;margin-bottom:8px}.stat-value{font-size:32px;font-weight:700;color:#1f2937;margin-bottom:8px}.stat-value.warning{color:#f59e0b}.stat-change{font-size:13px;color:#6b7280}.stat-change.positive{color:#10b981}.stat-change.negative{color:#ef4444}.export-actions{display:flex;gap:12px;justify-content:flex-end}.export-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.export-btn.print{background:linear-gradient(135deg,#3b82f6,#2563eb)}.export-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.generate-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.chart-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:20px}.chart-section h3{font-size:15px;font-weight:600;color:#374151;margin:0 0 16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.log-filters,.date-range-selector{flex-direction:column;align-items:stretch}.report-types,.stats-grid{grid-template-columns:1fr}.export-actions{flex-direction:column}} .notice-mgmt{padding:24px 24px 80px;max-width:1100px;margin:0 auto}.list-page-header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.list-page-header h1{font-size:1.4rem;font-weight:700;color:#1e293b;margin:0}.back-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid #d1d5db;border-radius:8px;padding:6px 12px;font-size:.85rem;color:#374151;cursor:pointer;transition:background .15s}.notice-list-wrap{background:#fff;border-radius:12px;box-shadow:0 1px 4px #00000014;overflow:hidden}.notice-table{width:100%;border-collapse:collapse;font-size:.88rem}.notice-table thead tr{background:#f8fafc}.notice-table th,.notice-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #f1f5f9}.notice-table th{font-weight:600;color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.notice-row.inactive td{opacity:.5}.type-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;white-space:nowrap}.notice-title-cell{cursor:pointer;color:#1e293b;font-weight:500}.notice-title-cell:hover{color:#3b82f6;text-decoration:underline}.status-toggle{padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:600;border:none;cursor:pointer}.status-toggle.active{background:#dcfce7;color:#16a34a}.status-toggle.inactive{background:#fee2e2;color:#dc2626}.row-actions{display:flex;gap:6px}.icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:none;cursor:pointer;transition:background .15s}.icon-btn.edit{background:#eff6ff;color:#3b82f6}.icon-btn.edit:hover{background:#dbeafe}.icon-btn.delete{background:#fef2f2;color:#ef4444}.icon-btn.delete:hover{background:#fee2e2}.notice-expand-row{background:#f8fafc}.notice-expand-content{padding:12px 16px;white-space:pre-wrap;color:#374151;font-size:.88rem;line-height:1.6}.notice-loading,.notice-empty{padding:60px;text-align:center;color:#94a3b8}.floating-action-bar{position:fixed;bottom:0;left:260px;right:0;background:#fff;border-top:1px solid #e2e8f0;padding:12px 24px;display:flex;justify-content:flex-end;gap:10px;z-index:100;transition:left .2s}.floating-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s}.floating-btn.primary{background:#3b82f6;color:#fff}.floating-btn.primary:hover{opacity:.85}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.notice-modal{background:#fff;border-radius:14px;width:100%;max-width:560px;box-shadow:0 8px 32px #0000002e;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.05rem;font-weight:700;color:#1e293b}.modal-close-btn{background:none;border:none;font-size:1.2rem;color:#64748b;cursor:pointer;padding:4px 8px;border-radius:6px}.modal-close-btn:hover{background:#f1f5f9}.notice-form{padding:20px 22px;display:flex;flex-direction:column;gap:16px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row label{font-size:.85rem;font-weight:600;color:#374151}.form-row input[type=text],.form-row textarea{border:1px solid #d1d5db;border-radius:8px;padding:9px 12px;font-size:.9rem;color:#1e293b;resize:vertical;outline:none;transition:border-color .15s}.form-row input[type=text]:focus,.form-row textarea:focus{border-color:#3b82f6}.type-select-row{display:flex;gap:10px}.type-radio{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:8px;border:2px solid #e2e8f0;cursor:pointer;font-size:.85rem;font-weight:600;transition:border-color .15s,background .15s}.type-radio input{display:none}.type-radio.selected{border-color:currentColor;background:#f8fafc}.checkbox-row label{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#374151;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.btn-cancel{padding:8px 18px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:.9rem;cursor:pointer}.btn-save{padding:8px 18px;border-radius:8px;border:none;background:#3b82f6;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer}.btn-save:disabled{opacity:.6;cursor:not-allowed}.audience-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;white-space:nowrap}.audience-desc{font-size:11px;color:#6b7280;margin-left:4px}@media (max-width: 768px){.notice-mgmt{padding:16px}.floating-action-bar{left:0!important}.notice-table{font-size:.8rem}.notice-table th,.notice-table td{padding:8px 10px}}.trash-page{max-width:1100px;margin:0 auto;padding:24px 20px}.trash-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.trash-back-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid #e5e7eb;border-radius:8px;padding:8px 14px;font-size:13px;color:#6b7280;cursor:pointer;transition:all .15s}.trash-back-btn:hover{background:#f3f4f6;color:#111827}.trash-header-title{display:flex;align-items:center;gap:10px;flex:1}.trash-header-title h1{font-size:20px;font-weight:700;color:#111827;margin:0}.trash-count{background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:600;padding:2px 8px;border-radius:12px}.trash-refresh-btn{background:none;border:1px solid #e5e7eb;border-radius:8px;padding:8px;cursor:pointer;color:#6b7280;display:flex;align-items:center;transition:all .15s}.trash-refresh-btn:hover{background:#f3f4f6}.trash-refresh-btn svg.spinning{animation:spin .8s linear infinite}.trash-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:12px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.trash-filter-group{display:flex;align-items:center;gap:6px;color:#9ca3af;flex-wrap:wrap}.trash-filter-btn{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:4px 12px;font-size:12px;color:#6b7280;cursor:pointer;transition:all .15s}.trash-filter-btn:hover{border-color:#6366f1;color:#6366f1}.trash-filter-btn.active{background:#6366f1;border-color:#6366f1;color:#fff;font-weight:600}.trash-bulk-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.trash-sel-count{font-size:12px;color:#6b7280;font-weight:600}.trash-btn-restore,.trash-btn-purge{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:all .15s}.trash-btn-restore{background:#d1fae5;color:#065f46}.trash-btn-restore:hover{background:#a7f3d0}.trash-btn-purge{background:#fee2e2;color:#991b1b}.trash-btn-purge:hover{background:#fecaca}.trash-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#9ca3af;font-size:15px}.trash-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px}.trash-table{width:100%;border-collapse:collapse;font-size:13px}.trash-table thead{background:#f9fafb}.trash-table th{padding:10px 12px;text-align:left;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb;white-space:nowrap}.trash-th-check{width:36px}.trash-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .1s}.trash-table tbody tr:hover{background:#f9fafb}.trash-table tbody tr.selected{background:#eff6ff}.trash-table td{padding:10px 12px;vertical-align:middle}.trash-td-check{width:36px}.trash-type-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:11px;font-weight:700;color:#fff;white-space:nowrap}.trash-td-title{display:flex;align-items:center;gap:10px;font-weight:600;color:#111827}.trash-thumb{width:36px;height:36px;object-fit:cover;border-radius:6px;border:1px solid #e5e7eb}.trash-td-sub{color:#6b7280;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-td-date{color:#9ca3af;white-space:nowrap;font-size:12px}.trash-td-actions{display:flex;gap:6px;white-space:nowrap}.trash-action-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:all .15s}.trash-action-btn.restore{background:#d1fae5;color:#065f46}.trash-action-btn.restore:hover{background:#a7f3d0}.trash-action-btn.purge{background:#fee2e2;color:#991b1b}.trash-action-btn.purge:hover{background:#fecaca}.trash-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9000}.trash-modal{background:#fff;border-radius:16px;padding:32px 28px;width:360px;max-width:90vw;text-align:center;box-shadow:0 20px 40px #0000002e}.trash-modal-icon{width:60px;height:60px;background:#fee2e2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.trash-modal h2{font-size:18px;font-weight:700;color:#111827;margin:0 0 10px}.trash-modal p{font-size:14px;color:#6b7280;line-height:1.6;margin:0 0 24px}.trash-modal-actions{display:flex;gap:10px;justify-content:center}.trash-modal-cancel{flex:1;padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-size:14px;font-weight:600;cursor:pointer;color:#6b7280;transition:all .15s}.trash-modal-cancel:hover{background:#f3f4f6}.trash-modal-confirm{flex:1;padding:10px;border:none;border-radius:10px;background:#ef4444;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s}.trash-modal-confirm:hover{background:#dc2626}.bulk-upload-page{max-width:960px;margin:0 auto;padding:24px 20px 48px;font-family:inherit}.bulk-upload-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.bulk-upload-header h2{font-size:20px;font-weight:700;color:#1e1b4b;margin:0}.bulk-header-hint{font-size:11px;background:#ede9fe;color:#6d28d9;border-radius:20px;padding:2px 10px;font-weight:600}.bulk-next-number{margin-left:auto;font-size:12px;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:3px 10px}.bulk-next-number strong{color:#4f46e5;font-weight:700}.bulk-back-btn{display:flex;align-items:center;gap:4px;background:none;border:1px solid #e5e7eb;border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer;color:#374151;transition:background .15s}.bulk-back-btn:hover{background:#f9fafb}.bulk-drop-zone{border:2px dashed #c4b5fd;border-radius:16px;padding:40px 24px;text-align:center;cursor:pointer;background:#faf5ff;color:#7c3aed;transition:background .15s,border-color .15s;display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:20px}.bulk-drop-zone:hover{background:#f3e8ff;border-color:#7c3aed}.bulk-drop-zone p{margin:0;font-size:14px;font-weight:500}.bulk-drop-hint{font-size:12px;color:#9ca3af;font-weight:400!important}.bulk-drop-hint code{background:#ede9fe;border-radius:4px;padding:1px 6px;color:#7c3aed}.bulk-stats-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:13px;color:#374151}.bulk-stat-pending{color:#6366f1;font-weight:600}.bulk-stat-done{color:#16a34a;font-weight:600}.bulk-stat-error{color:#dc2626;font-weight:600}.bulk-stat-progress{color:#7c3aed;font-weight:600}.bulk-stats-actions{margin-left:auto;display:flex;gap:8px}.bulk-clear-btn{border:1px solid #e5e7eb;background:#fff;border-radius:8px;padding:6px 14px;font-size:13px;cursor:pointer;color:#6b7280;transition:background .15s}.bulk-clear-btn:hover:not(:disabled){background:#f3f4f6}.bulk-upload-btn{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;border:none;border-radius:8px;padding:7px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.bulk-upload-btn:disabled{opacity:.5;cursor:not-allowed}.bulk-upload-btn:hover:not(:disabled){opacity:.9}.bulk-item-list{display:flex;flex-direction:column;gap:10px}.bulk-item{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;transition:border-color .15s}.bulk-item--uploading{border-color:#a5b4fc;background:#faf5ff}.bulk-item--done{border-color:#86efac;background:#f0fdf4}.bulk-item--error{border-color:#fca5a5;background:#fff1f2}.bulk-item--skip{border-color:#fcd34d;background:#fffbeb}.bulk-item-thumb{width:72px;height:72px;object-fit:cover;border-radius:8px;flex-shrink:0;border:1px solid #e5e7eb;background:#f3f4f6}.bulk-item-info{flex:1;min-width:0}.bulk-item-filename{font-size:12px;color:#6b7280;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulk-item-fields{display:flex;gap:12px;flex-wrap:wrap}.bulk-item-fields label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#6b7280;font-weight:600}.bulk-item-fields input{border:1px solid #d1d5db;border-radius:6px;padding:5px 8px;font-size:13px;outline:none;width:180px;transition:border-color .15s}.bulk-item-fields input:focus{border-color:#6366f1}.bulk-item-fields input:disabled{background:#f9fafb;color:#9ca3af}.bulk-item-progress-bar{margin-top:8px;height:4px;background:#e5e7eb;border-radius:99px;overflow:hidden}.bulk-item-progress-bar>div{height:100%;background:linear-gradient(90deg,#6366f1,#7c3aed);border-radius:99px;transition:width .2s}.bulk-item-message{margin-top:6px;font-size:11px;border-radius:4px}.bulk-item-message--done{color:#16a34a}.bulk-item-message--error{color:#dc2626}.bulk-item-message--skip{color:#d97706}.bulk-item-actions{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.bulk-item-remove{background:none;border:1px solid #e5e7eb;border-radius:50%;width:22px;height:22px;font-size:14px;line-height:1;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.bulk-item-remove:hover:not(:disabled){background:#fee2e2;color:#dc2626;border-color:#fca5a5}.bulk-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 0;color:#9ca3af;font-size:14px}.spin{animation:spin .8s linear infinite}.selected-info{font-size:var(--font-size-sm);color:var(--color-gray-600);padding:0 var(--space-md);white-space:nowrap}.db-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.db-modal{background:#fff;border-radius:var(--radius-xl);box-shadow:0 20px 60px #0003;width:560px;max-width:96vw;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.db-modal-sm{width:400px}.db-modal-lg{width:760px}.db-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-light)}.db-modal-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0}.db-modal-close{background:none;border:none;cursor:pointer;color:var(--color-gray-500);padding:4px;border-radius:var(--radius-md);transition:all var(--transition-fast)}.db-modal-close:hover{background:var(--color-gray-100);color:var(--color-gray-900)}.db-modal-body{padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}.db-modal-item-info{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--color-gray-700);margin:0}.db-modal-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--border-light);margin-top:var(--space-sm)}.db-form-row{display:flex;flex-direction:column;gap:6px}.db-form-row label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.db-form-row input,.db-form-row select,.db-form-row textarea{padding:9px 12px;border:1.5px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast);width:100%;box-sizing:border-box}.db-form-row input:focus,.db-form-row select:focus,.db-form-row textarea:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #8b5cf61a}.db-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.db-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 22px;border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.db-btn:disabled{opacity:.5;cursor:not-allowed}.db-btn-primary{background:var(--color-primary-600);color:#fff}.db-btn-primary:hover:not(:disabled){background:var(--color-primary-700)}.db-btn-success{background:var(--color-success);color:#fff}.db-btn-success:hover:not(:disabled){background:#059669}.db-btn-info{background:var(--color-info);color:#fff}.db-btn-info:hover:not(:disabled){background:#2563eb}.db-btn-danger{background:var(--color-danger);color:#fff}.db-btn-danger:hover:not(:disabled){background:#dc2626}.db-btn-cancel{background:#fff;border:1.5px solid var(--border-medium);color:var(--color-gray-700)}.db-btn-cancel:hover{background:var(--color-gray-50)}.mockup-link-box{background:var(--color-gray-50);border:1.5px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm)}.mockup-link-box a{color:var(--color-primary-600);text-decoration:none;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mockup-link-box a:hover{text-decoration:underline}.status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.status-접수{background:#dbeafe;color:#1d4ed8}.status-출고{background:#d1fae5;color:#065f46}.status-취소{background:#fee2e2;color:#991b1b}.status-대기{background:#fef9c3;color:#854d0e}.status-확정{background:#d1fae5;color:#065f46}.status-수정요청{background:#fee2e2;color:#991b1b}.stock-check-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.stock-check-table th{background:var(--color-gray-100);padding:8px 12px;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-gray-700);border-bottom:1.5px solid var(--border-medium)}.stock-check-table td{padding:8px 12px;border-bottom:1px solid var(--border-light)}.stock-check-table tr:hover td{background:var(--color-gray-50)}.stock-shortage{color:#ef4444;font-weight:700}.stock-ok{color:#10b981;font-weight:700}.mockup-preview-img{max-width:100%;max-height:300px;border-radius:var(--radius-md);object-fit:contain;border:1px solid var(--border-light)}.mockup-history-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mockup-history-item{background:var(--color-gray-50);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.mockup-history-item .version-badge{background:var(--color-primary-100);color:var(--color-primary-700);padding:2px 8px;border-radius:12px;font-size:var(--font-size-xs);font-weight:700}.mockup-confirm-page{min-height:100vh;background:linear-gradient(135deg,#f8f7ff,#ede9fe);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px}.mockup-confirm-card{background:#fff;border-radius:16px;box-shadow:0 8px 40px #0000001f;width:600px;max-width:100%;padding:40px}.mockup-confirm-card h1{font-size:22px;font-weight:700;color:#1a1a1a;margin:0 0 4px}.mockup-confirm-brand{font-size:13px;color:#8b5cf6;font-weight:600;letter-spacing:.05em;margin:0 0 24px}.mockup-confirm-meta{background:#f8f7ff;border-radius:8px;padding:12px 16px;margin-bottom:20px;font-size:14px;color:#4b5563;display:flex;gap:16px;flex-wrap:wrap}.mockup-confirm-meta span strong{color:#1a1a1a}.mockup-confirm-actions{display:flex;gap:12px;margin-top:20px}.mockup-action-btn{flex:1;padding:14px;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}.mockup-action-btn.confirm{background:#10b981;color:#fff}.mockup-action-btn.confirm:hover{background:#059669}.mockup-action-btn.request{background:#f59e0b;color:#fff}.mockup-action-btn.request:hover{background:#d97706}.mockup-action-btn:disabled{opacity:.5;cursor:not-allowed}.mockup-notes-input{width:100%;padding:10px 14px;border:1.5px solid #d1d5db;border-radius:8px;font-size:14px;margin-top:12px;box-sizing:border-box;resize:vertical}.mockup-notes-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.mockup-result-banner{padding:16px 20px;border-radius:10px;text-align:center;font-size:18px;font-weight:700;margin-top:20px}.mockup-result-banner.confirmed{background:#d1fae5;color:#065f46}.mockup-result-banner.revision{background:#fef3c7;color:#92400e}.design-gallery-page{height:auto!important;max-height:none!important}.viewer-design-protection{-webkit-user-select:none;user-select:none}.viewer-design-protection .design-card-img,.viewer-design-protection .watermark-wrap img{-webkit-user-drag:none;user-drag:none;pointer-events:auto}.gallery-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:17px;flex-wrap:wrap;flex-shrink:0}.gallery-toolbar-left{display:flex;align-items:center;gap:8px;flex:1}.gallery-toolbar-right{display:flex;align-items:center;gap:8px}.my-company-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #6366f1;border-radius:8px;background:#eef2ff;color:#4f46e5;cursor:pointer;font-size:14px;font-weight:500;transition:all .15s;white-space:nowrap}.my-company-btn:hover,.my-company-btn.active{background:#4f46e5;color:#fff;border-color:#4f46e5}.fav-filter-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#9ca3af;cursor:pointer;transition:all .15s;flex-shrink:0}.fav-filter-btn:hover{border-color:#f59e0b;color:#f59e0b}.fav-filter-btn.active{background:#fef3c7;border-color:#f59e0b;color:#d97706}.tag-toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;transition:all .15s;white-space:nowrap}.tag-toggle-btn:hover,.tag-toggle-btn.active{background:#4f46e5;color:#fff;border-color:#4f46e5}.clear-filter-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #fca5a5;border-radius:8px;background:#fef2f2;color:#dc2626;cursor:pointer;font-size:13px;transition:all .15s}.clear-filter-btn:hover{background:#fee2e2}.gallery-search-form{display:flex;gap:6px}.gallery-search-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;width:220px;outline:none;transition:border-color .15s}.gallery-search-input:focus{border-color:#4f46e5}.gallery-search-btn{display:flex;align-items:center;justify-content:center;padding:8px 12px;background:#4f46e5;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .15s}.gallery-search-btn:hover{background:#4338ca}.tag-filter-bar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;margin-bottom:8px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.tag-filter-chip{padding:5px 14px;border:1px solid #d1d5db;border-radius:20px;background:#fff;cursor:pointer;font-size:13px;transition:all .15s}.tag-filter-chip:hover{background:#ede9fe;border-color:#a5b4fc}.tag-filter-chip.selected{background:#4f46e5;color:#fff;border-color:#4f46e5}.active-filter-info{display:flex;align-items:center;gap:6px;font-size:13px;color:#4f46e5;margin-bottom:10px;flex-shrink:0}.design-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;padding-bottom:8px}.design-card{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;cursor:pointer;background:#fff;transition:box-shadow .2s,transform .2s}.design-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.design-card-thumb{position:relative;width:100%;padding-top:100%;background:#f3f4f6;overflow:hidden}.design-card-thumb>*{position:absolute;top:0;left:0;width:100%;height:100%}.design-card-img{object-fit:cover}.design-card-thumb .design-card-watermark-wrap{overflow:hidden}.design-card-thumb .design-card-watermark-wrap img.design-card-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.design-card-placeholder{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:13px}.design-card-info{padding:10px 12px}.design-card-number-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.design-card-number{font-weight:600;font-size:14px;color:#1f2937}.design-card-colorway-count{font-size:11px;font-weight:600;color:#4f46e5;background:#ede9fe;border-radius:10px;padding:2px 8px;white-space:nowrap}.design-card-company{display:flex;align-items:center;gap:3px;font-size:11px;color:#6366f1;font-weight:500;margin-top:3px;margin-bottom:1px}.design-star-btn{position:absolute;top:7px;right:7px;z-index:10;width:28px;height:28px;border-radius:50%;border:none;background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#9ca3af;transition:all .18s;box-shadow:0 1px 4px #0000002e;padding:0}.design-star-btn:hover{background:#fff;color:#f59e0b;transform:scale(1.1)}.design-star-btn.is-fav{color:#f59e0b;background:#fff}.design-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.design-tag-chip{padding:2px 8px;background:#ede9fe;color:#5b21b6;border-radius:10px;font-size:11px}.gallery-loading,.gallery-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:80px 20px;color:#6b7280}.gallery-empty p{margin-bottom:16px;font-size:15px}.gallery-count{font-size:13px;color:#6b7280;white-space:nowrap}.gallery-load-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:20px;color:#6b7280;font-size:14px}.gallery-end-message{text-align:center;padding:20px;font-size:13px;color:#9ca3af}.scroll-sentinel{height:1px;width:100%}@keyframes gallery-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:gallery-spin .8s linear infinite}.watermark-wrap{display:block}.css-watermark{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:repeating-linear-gradient(45deg,transparent 0px,transparent 28px,rgba(100,100,100,.12) 28px,rgba(100,100,100,.12) 29px),repeating-linear-gradient(-45deg,transparent 0px,transparent 28px,rgba(100,100,100,.12) 28px,rgba(100,100,100,.12) 29px),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Ctext x='50%25' y='50%25' dominant-baseline='middle' text-anchor='middle' font-size='10' font-family='Verdana,Geneva,sans-serif' fill='rgba(100,100,100,0.30)' transform='rotate(-45 45 45)'%3EUE Corporation%3C/text%3E%3C/svg%3E");background-size:58px 58px,58px 58px,90px 90px;mix-blend-mode:multiply}@media (max-width: 768px){.gallery-toolbar{gap:8px;margin-bottom:12px}.gallery-search-input{width:140px;font-size:16px}.design-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}}@media (max-width: 480px){.gallery-toolbar{flex-wrap:wrap;gap:6px}.gallery-toolbar-left,.gallery-search-form{width:100%}.gallery-search-input{flex:1;width:auto;font-size:16px}.design-grid{grid-template-columns:repeat(2,1fr);gap:10px}.design-card-info{padding:8px 10px}.design-card-number{font-size:13px}}.design-detail-page{padding:16px 24px 120px}.design-detail-page .back-button,.design-detail-page .detail-topbar{margin-bottom:12px}.print-header,.print-area{display:none}@media print{.header,.sidebar,.screen-area,.floating-action-bar{display:none!important}.print-header{display:flex!important;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:2px solid #1f2937;margin-bottom:20px;font-size:13pt}.print-header-left{font-size:15pt;font-weight:700}.print-header-right{font-size:11pt;color:#374151}.print-area{display:block!important;padding:0 20px 20px}.print-design-number{font-size:18pt;font-weight:700;margin-bottom:4px}.print-meta{font-size:10pt;color:#6b7280;margin-bottom:16px}.print-main-img{max-width:100%;max-height:220mm;object-fit:contain;page-break-inside:avoid}.print-colorway{margin-top:16px;page-break-inside:avoid}.print-colorway img{max-width:50%;max-height:100mm;object-fit:contain}.print-colorway-label{font-weight:700;font-size:11pt;margin-bottom:6px}.print-notes{margin-top:12px;font-size:10pt;color:#374151}}.detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:22px 24px;margin-bottom:20px}.section-label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.design-section .section-label{color:#4f46e5}.design-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.design-number-badge{font-size:22px;font-weight:800;color:#1f2937;letter-spacing:.02em}.design-date{font-size:14px;color:#6b7280}.tag-chip{padding:3px 12px;background:#ede9fe;color:#5b21b6;border-radius:12px;font-size:12px;font-weight:500}.detail-fav-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:1.5px solid #d1d5db;border-radius:20px;background:#fff;color:#9ca3af;font-size:13px;font-weight:500;cursor:pointer;transition:all .18s;margin-left:auto}.detail-fav-btn:hover{border-color:#f59e0b;color:#f59e0b;background:#fffbeb}.detail-fav-btn.is-fav{border-color:#f59e0b;color:#d97706;background:#fef3c7}.design-notes-text{font-size:14px;color:#4b5563;margin-bottom:16px;background:#f9fafb;padding:10px 14px;border-radius:8px;border-left:3px solid #a5b4fc}.image-viewer{display:flex;gap:16px}.ruler-outer{flex:1 1 0;min-width:0;aspect-ratio:1;max-height:520px;display:grid;grid-template-columns:24px 1fr;grid-template-rows:24px 1fr;border-radius:10px;overflow:hidden;border:1px solid #e5e7eb}.ruler-corner{background:#f8f8f8;border-right:1px solid #ddd;border-bottom:1px solid #ddd}.ruler-h-canvas,.ruler-v-canvas{display:block;width:100%;height:100%;background:#f8f8f8}.main-image-wrap{position:relative;min-width:0;min-height:0;background:#f3f4f6;overflow:hidden;cursor:zoom-in}.main-image-tiled{width:100%;height:100%;background-color:#f3f4f6}.main-image{width:100%;height:100%;object-fit:contain}.no-image{display:flex;align-items:center;justify-content:center;height:100%;color:#9ca3af;font-size:14px}.zoom-hint{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;gap:4px;padding:4px 10px;background:#00000080;color:#fff;border-radius:8px;font-size:12px;pointer-events:none}.thumb-list{display:flex;flex-direction:column;gap:8px;width:96px;flex-shrink:0;max-height:520px;overflow-y:auto;padding-right:2px}.thumb-list::-webkit-scrollbar{width:4px}.thumb-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:2px}.thumb-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.thumb-item{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border:2px solid transparent;border-radius:8px;padding:3px;transition:border-color .15s,transform .1s;flex-shrink:0}.thumb-item:hover{border-color:#a5b4fc;transform:scale(1.03)}.thumb-item.active{border-color:#4f46e5;background:#f5f3ff}.thumb-img{width:80px;height:80px;object-fit:cover;border-radius:6px}.thumb-placeholder{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border-radius:6px;font-size:11px;color:#9ca3af}.thumb-label{font-size:11px;color:#6b7280;text-align:center;width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;z-index:9999;overflow:hidden}.lightbox-tile-area{position:fixed;top:24px;left:24px;right:0;bottom:0;overflow:hidden;-webkit-user-select:none;user-select:none}.lb-tile-canvas{display:block;width:100%;height:100%}.lb-tile-bg{width:100%;height:100%}.lb-ruler-corner{position:fixed;top:0;left:0;width:24px;height:24px;background:#f8f8f8;border-right:1px solid #ddd;border-bottom:1px solid #ddd;z-index:10001}.lb-ruler-h{position:fixed;top:0;left:24px;width:calc(100vw - 24px);height:24px;display:block;background:#f8f8f8;z-index:10001}.lb-ruler-v{position:fixed;left:0;top:24px;width:24px;height:calc(100vh - 24px);display:block;background:#f8f8f8;z-index:10001}.lightbox-close{position:fixed;top:4px;right:8px;background:#282828bf;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10002;transition:background .15s}.lightbox-close:hover{background:#dc3c3cd9;border-color:#fff6}.lightbox-content{position:relative;will-change:transform}.lightbox-img{max-width:90vw;max-height:90vh;display:block;border-radius:4px;pointer-events:none}.lightbox-hint{position:fixed;bottom:20px;left:50%;transform:translate(-50%);color:#ffffff8c;font-size:13px;pointer-events:none;white-space:nowrap}.order-section{border-top:3px solid #4f46e5}.order-section .section-label{color:#4f46e5}.order-col-headers{display:grid;grid-template-columns:1.4fr 1.2fr 90px 1fr 34px;gap:8px;padding:0 2px 6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;border-bottom:1px solid #f3f4f6;margin-bottom:8px}.order-rows-wrap{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.order-row{display:grid;grid-template-columns:1.4fr 1.2fr 90px 1fr 34px;gap:8px;align-items:start}.order-fabric-wrap{display:flex;flex-direction:column;gap:5px}.order-fabric-direct-input{padding:7px 10px;border:1.5px solid #6366f1;border-radius:8px;font-size:13px;outline:none;width:100%;background:#f5f3ff;transition:border-color .15s,background .15s}.order-fabric-direct-input:focus{border-color:#4f46e5;background:#fff;box-shadow:0 0 0 3px #6366f11a}.order-fabric-direct-input::placeholder{color:#a5b4fc}.order-select,.order-qty-input,.order-note-input{padding:8px 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;outline:none;width:100%;background:#fafafa;transition:border-color .15s,background .15s}.order-select:focus,.order-qty-input:focus,.order-note-input:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11a}.order-row-remove{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #fecaca;border-radius:7px;background:#fef2f2;color:#dc2626;cursor:pointer;flex-shrink:0;transition:background .15s}.order-row-remove:hover{background:#fee2e2}.add-row-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border:1.5px dashed #a5b4fc;border-radius:8px;background:#f5f3ff;color:#4f46e5;cursor:pointer;font-size:13px;margin-bottom:8px;transition:background .15s}.add-row-btn:hover{background:#ede9fe}.order-no-permission{display:flex;align-items:center;gap:10px;padding:16px;background:#f3f4f6;border-radius:8px;color:#6b7280;font-size:14px;border:1px solid #e5e7eb}.order-no-company{background:#fffbeb;color:#92400e;border-color:#fde68a}.order-success-banner{padding:12px 16px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-radius:10px;margin-bottom:8px;font-size:14px;font-weight:500;border:1px solid #6ee7b7}@media (max-width: 768px){.design-detail-page{padding:12px 12px 90px}.design-number-badge{font-size:18px}.detail-section{padding:16px;border-radius:10px}.image-viewer{flex-direction:column}.ruler-outer{flex:none;width:100%;aspect-ratio:1;max-height:75vw}.main-image-wrap{min-width:0;min-height:0}.thumb-list{flex-direction:row;width:100%;max-height:none;overflow-x:auto;overflow-y:visible;padding-right:0;padding-bottom:4px}.thumb-img,.thumb-placeholder{width:68px;height:68px}.thumb-label{width:68px}.order-col-headers{display:none}.order-row{grid-template-columns:1fr 1fr;gap:6px}.order-qty-input,.order-select,.order-note-input{font-size:16px}}@media (max-width: 480px){.design-detail-page{padding:10px 10px 80px}.order-row{grid-template-columns:1fr;gap:5px;padding-bottom:10px;border-bottom:1px solid #f3f4f6}.order-row-remove{margin-left:auto}.lightbox-hint{font-size:11px;bottom:12px}.lightbox-close{top:4px;right:6px;width:28px;height:28px}}.design-detail-viewer .viewer-design-protection{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.design-detail-viewer .viewer-design-protection canvas,.design-detail-viewer .viewer-design-protection .main-image-wrap{-webkit-user-drag:none}.design-company-badge{display:inline-flex;align-items:center;gap:4px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:20px;padding:3px 10px;font-size:12px;color:#4338ca;font-weight:600}.design-register-page{max-width:900px;margin:0 auto;padding:0 4px 40px}.register-header{display:flex;align-items:center;gap:16px;margin-bottom:28px}.register-header h2{font-size:20px;font-weight:700;color:#1f2937;margin:0}.back-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;transition:background .15s}.back-btn:hover{background:#f3f4f6}.register-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:28px 32px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.form-row label{font-size:14px;font-weight:600;color:#374151}.required{color:#dc2626}.form-input{padding:9px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:border-color .15s;max-width:360px}.form-input:focus{border-color:#4f46e5}.form-input.readonly{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.design-number-row{display:flex;align-items:center;gap:10px}.design-number-row .form-input{flex:1;min-width:0}.manual-number-toggle{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:13px;color:#4f46e5;font-weight:500;cursor:pointer;padding:6px 10px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;transition:background .15s;-webkit-user-select:none;user-select:none}.manual-number-toggle:hover{background:#e0e7ff}.manual-number-toggle input[type=checkbox]{accent-color:#4f46e5;width:14px;height:14px;cursor:pointer}.form-textarea{padding:9px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;resize:vertical;width:100%;max-width:640px;transition:border-color .15s}.form-textarea:focus{border-color:#4f46e5}.form-hint{font-size:12px;color:#9ca3af}.form-section-title{font-size:15px;font-weight:700;color:#1f2937;margin:24px 0 16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.images-upload-grid{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.image-upload-box{display:flex;flex-direction:column;gap:6px;width:160px}.image-upload-label{font-size:12px;font-weight:600;color:#374151;min-height:16px}.image-upload-area{position:relative;width:160px;height:160px;border:2px dashed #d1d5db;border-radius:10px;cursor:pointer;overflow:hidden;background:#f9fafb;transition:border-color .15s}.image-upload-area:hover{border-color:#6366f1;background:#f5f3ff}.image-upload-area.has-image{border-style:solid;border-color:#a5b4fc}.upload-preview-img{width:100%;height:100%;object-fit:cover}.upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#4f46e58c;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:13px;opacity:0;transition:opacity .15s}.image-upload-area:hover .upload-overlay{opacity:1}.upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:#9ca3af;font-size:12px}.image-remove-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #fca5a5;border-radius:6px;background:#fef2f2;color:#dc2626;cursor:pointer;font-size:12px;align-self:flex-start}.image-remove-btn:hover{background:#fee2e2}.colorway-upload-item{display:flex;flex-direction:column;gap:6px}.colorway-upload-header{display:flex;align-items:center;gap:6px}.colorway-label-input{padding:5px 9px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;outline:none;width:100px}.colorway-label-input:focus{border-color:#4f46e5}.colorway-remove-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #fca5a5;border-radius:6px;background:#fef2f2;color:#dc2626;cursor:pointer}.add-colorway-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:160px;height:160px;border:2px dashed #a5b4fc;border-radius:10px;background:#f5f3ff;color:#4f46e5;cursor:pointer;font-size:13px;margin-top:22px;transition:background .15s}.add-colorway-btn:hover{background:#ede9fe}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid #e5e7eb}.cancel-btn{padding:7px 16px;border:1px solid #d1d5db;border-radius:7px;background:#fff;cursor:pointer;font-size:13px;transition:background .15s}.cancel-btn:hover{background:#f3f4f6}.save-btn{padding:7px 20px;background:#4f46e5;color:#fff;border:none;border-radius:7px;cursor:pointer;font-size:13px;font-weight:600;transition:background .15s}.save-btn:hover:not(:disabled){background:#4338ca}.save-btn:disabled{opacity:.6;cursor:not-allowed}.register-loading{text-align:center;padding:80px;color:#6b7280}.image-upload-area.is-loading{cursor:not-allowed;border-color:#a5b4fc;background:#f5f3ff}.upload-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px;color:#4f46e5;font-size:12px}.upload-spinner{width:28px;height:28px;border:3px solid #e0e7ff;border-top-color:#4f46e5;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.company-search-wrap{position:relative;flex:1}.company-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #0000001f;list-style:none;margin:0;padding:4px 0;z-index:200;max-height:200px;overflow-y:auto}.company-dropdown li{padding:8px 14px;cursor:pointer;font-size:14px;color:#374151;transition:background .15s}.company-dropdown li:hover{background:#f0f4ff;color:#4f46e5}.company-selected-badge{display:inline-flex;align-items:center;gap:6px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:20px;padding:6px 12px;font-size:14px;color:#4338ca;font-weight:500}.company-clear-btn{background:none;border:none;cursor:pointer;color:#6b7280;display:flex;align-items:center;padding:0;margin-left:2px;transition:color .15s}.company-clear-btn:hover{color:#ef4444}.exclusive-check-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.exclusive-check-label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none}.exclusive-check-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#4f46e5}.exclusive-company-badge{display:inline-flex;align-items:center;gap:4px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:20px;padding:4px 10px;font-size:13px;color:#4338ca;font-weight:500}.exclusive-no-company-warn{font-size:13px;color:#dc2626;font-weight:500}.op-page{padding:20px 28px 80px;background:#f0f2f5;min-height:calc(100vh - 64px)}.op-loading{display:flex;align-items:center;gap:12px;padding:60px 28px;color:#6b7280;font-size:15px}.op-page-hd{margin-bottom:20px}.op-page-hd-left{display:flex;align-items:center;gap:10px;margin-bottom:6px}.op-page-hd-left h2{font-size:20px;font-weight:700;color:#1f2937;margin:0}.op-total-badge{padding:3px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:12px;font-weight:700}.op-desc{font-size:13px;color:#6b7280;margin:0}.op-empty-page{display:flex;flex-direction:column;align-items:center;gap:12px;padding:80px 20px;color:#9ca3af}.op-list{display:flex;flex-direction:column;gap:14px}.op-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;transition:box-shadow .2s}.op-card:hover{box-shadow:0 4px 12px #00000014}.op-card-hd{display:flex;align-items:center;gap:14px;padding:16px 20px;cursor:pointer;transition:background .12s}.op-card-hd:hover{background:#fafbff}.op-thumb{width:52px;height:52px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb;flex-shrink:0}.op-thumb-empty{width:52px;height:52px;background:#f3f4f6;border-radius:8px;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;color:#9ca3af;flex-shrink:0}.op-card-main{flex-shrink:0;min-width:160px}.op-order-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.op-order-num{font-size:16px;font-weight:800;color:#1f2937;letter-spacing:.02em}.op-design-num{font-size:12px;color:#6b7280}.op-status{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}.op-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.op-hd-tiles{display:flex;gap:8px;flex:1;flex-wrap:wrap}.op-tile{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:7px;min-width:80px}.op-tile-lbl{font-size:10px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px}.op-tile-val{font-size:13px;font-weight:600;color:#1f2937}.op-tile-val.val-blue{color:#3b82f6;font-family:Inter,monospace}.op-chevron{color:#9ca3af;flex-shrink:0;margin-left:auto}.op-items-wrap{border-top:1px solid #f3f4f6}.op-items-table{width:100%;border-collapse:collapse;font-size:13px}.op-items-table th{text-align:left;padding:8px 16px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:1px solid #e5e7eb;font-size:11px;color:#374151;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.op-items-table td{padding:9px 16px;border-bottom:1px solid #f3f4f6;color:#374151}.op-items-table tbody tr:last-child td{border-bottom:none}.op-items-table tbody tr:hover{background:#fafbff}.td-center{text-align:center}.td-qty-blue{color:#2563eb;font-weight:700}.op-extra-form{border-top:2px solid #f3f4f6;padding:18px 20px 20px;background:#f8f9fa}.op-extra-hd{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#374151;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.op-extra-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 14px;margin-bottom:14px}.op-extra-grid .span-4{grid-column:1 / -1}.op-extra-field{display:flex;flex-direction:column;gap:5px}.op-extra-field label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.4px}.op-extra-field input,.op-extra-field textarea{padding:8px 12px;border:1px solid #d1d5db;border-radius:7px;font-size:13px;outline:none;resize:vertical;transition:border-color .15s;font-family:inherit;background:#fff}.op-extra-field input:focus,.op-extra-field textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.op-extra-actions{display:flex;justify-content:flex-end;gap:10px}.op-btn-save{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .15s}.op-btn-save:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.op-btn-register{display:flex;align-items:center;gap:6px;padding:9px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;font-size:13px;font-weight:700;color:#fff;cursor:pointer;box-shadow:0 2px 8px #667eea4d;transition:all .2s}.op-btn-register:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.op-btn-delete{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#fff;border:1px solid #fca5a5;border-radius:8px;font-size:13px;font-weight:600;color:#dc2626;cursor:pointer;transition:all .15s}.op-btn-delete:hover:not(:disabled){background:#fef2f2;border-color:#ef4444}.op-btn-save:disabled,.op-btn-register:disabled,.op-btn-delete:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes op-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.op-spin{animation:op-spin .8s linear infinite}@media (max-width: 900px){.op-page{padding:12px 12px 60px}.op-hd-tiles{display:none}.op-extra-grid{grid-template-columns:repeat(2,1fr)}.op-extra-grid .span-4{grid-column:1 / -1}}@media (max-width: 600px){.op-page{padding:10px 10px 60px}.op-extra-grid{grid-template-columns:1fr}.op-card-main{min-width:auto}.op-card-hd{padding:12px 14px;gap:10px}.op-thumb,.op-thumb-empty{width:44px;height:44px}.op-order-row{gap:6px;flex-wrap:wrap}.op-order-num{font-size:14px}.op-items-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.op-items-table{min-width:500px}.op-items-table th,.op-items-table td{padding:8px 10px;font-size:12px}.op-extra-form{padding:14px 12px}.op-extra-actions{flex-wrap:wrap;gap:8px}.op-btn-save,.op-btn-register,.op-btn-delete{flex:1 1 calc(50% - 4px);justify-content:center}.op-proc-row{flex-direction:column;align-items:stretch;gap:6px;padding:10px 0}.op-proc-name,.op-proc-qty,.op-proc-up,.op-proc-total,.op-proc-notes{min-width:unset;flex:none;width:100%}.op-proc-del{align-self:flex-end}}@media (max-width: 480px){.op-page{padding:8px 8px 68px}.op-page-hd-left h2{font-size:16px}.op-card{border-radius:10px}.op-card-hd{padding:10px 12px}.op-thumb,.op-thumb-empty{width:40px;height:40px}.op-items-table{min-width:440px}.op-extra-form{padding:12px 10px}.op-btn-save,.op-btn-register{flex:1 1 100%;height:38px;font-size:13px}.op-type-pill{font-size:11px;padding:3px 10px}}@media (max-width: 400px){.op-page{padding:6px 6px 68px}.op-card-hd{padding:8px 10px;gap:8px}.op-thumb,.op-thumb-empty{width:36px;height:36px}.op-order-num{font-size:13px}.op-extra-form{padding:10px 8px}.op-extra-grid{gap:8px}.op-proc-rows{padding:0 8px}}.op-proc-section{margin-top:16px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.op-proc-hd{display:flex;align-items:center;gap:7px;background:#f8faff;border-bottom:1px solid #e5e7eb;padding:9px 14px;font-size:13px;font-weight:700;color:#374151}.op-proc-grand-total{margin-left:auto;font-size:14px;font-weight:800;color:#059669}.op-proc-rows{padding:0 12px}.op-proc-row{display:flex;align-items:flex-end;gap:8px;padding:10px 0;border-bottom:1px dashed #f0f0f0}.op-proc-row:last-child{border-bottom:none}.op-proc-field{display:flex;flex-direction:column;gap:4px}.op-proc-field label{font-size:11px;font-weight:600;color:#6b7280;display:flex;align-items:center;gap:4px}.op-proc-field input,.op-proc-field select{border:1px solid #d1d5db;border-radius:6px;padding:6px 9px;font-size:13px;color:#111827;outline:none;background:#fff}.op-proc-field input:focus,.op-proc-field select:focus{border-color:#667eea}.op-proc-name{flex:2;min-width:150px}.op-proc-qty{flex:1;min-width:90px}.op-proc-up{flex:1;min-width:110px}.op-proc-total{flex:1;min-width:120px}.op-proc-notes{flex:1.5;min-width:100px}.op-proc-qty-wrap{display:flex;align-items:center;gap:4px}.op-proc-qty-wrap input{flex:1}.op-proc-unit{font-size:12px;color:#6b7280;white-space:nowrap}.op-proc-auto-lbl{background:#dbeafe;color:#1d4ed8;font-size:10px;padding:1px 5px;border-radius:8px}.op-proc-total-val{display:block;padding:7px 0 6px;font-size:14px;font-weight:700;color:#059669}.op-proc-del{background:none;border:none;cursor:pointer;color:#9ca3af;padding:6px;margin-bottom:2px;border-radius:4px;flex-shrink:0}.op-proc-del:hover{color:#ef4444;background:#fee2e2}.op-proc-add-btn{display:flex;align-items:center;gap:5px;background:none;border:1px dashed #667eea;color:#667eea;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;margin:10px 12px 12px}.op-proc-add-btn:hover{background:#eef2ff}.op-items-table .th-price,.op-items-table .td-right{text-align:right}.op-items-table .td-price-blue{color:#1d4ed8;font-weight:600}.op-items-table .td-price-green{color:#059669;font-weight:600}.op-items-table .td-price-total{color:#7c3aed;font-weight:700}.op-items-total-row td{background:#f5f3ff;padding:8px 12px;border-top:2px solid #e5e7eb}.op-unit-price-lbl{display:inline-block;font-size:11px;color:#10b981;background:#f0fdf4;padding:1px 6px;border-radius:8px;margin-top:2px}.op-tile-type-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600}.op-tile-type-badge.otype-샘플{background:#ede9fe;color:#5b21b6}.op-tile-type-badge.otype-본작업{background:#dcfce7;color:#166534}.op-tile-type-badge.otype-재작업{background:#fef3c7;color:#92400e}.op-tile-type-badge.otype-디자인발주{background:#e0f2fe;color:#0369a1}.op-extra-field-full{grid-column:1 / -1}.op-search-wrap{position:relative}.op-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.op-search-input{width:100%;padding:8px 12px 8px 30px!important;border:1px solid #d1d5db;border-radius:7px;font-size:13px;outline:none;background:#fff;box-sizing:border-box;font-family:inherit;transition:border-color .15s}.op-search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.op-search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001a;z-index:200;margin:0;padding:4px 0;list-style:none;max-height:220px;overflow-y:auto}.op-search-dropdown li{padding:8px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .1s}.op-search-dropdown li:hover{background:#f0f4ff}.op-dd-company{font-size:13px;font-weight:600;color:#1e293b}.op-dd-contact{font-size:11px;color:#6b7280}.op-type-select-wrap{display:flex;gap:6px;flex-wrap:wrap;padding:4px 0}.op-type-pill{padding:4px 12px;border-radius:99px;border:1.5px solid #d1d5db;background:#f9fafb;color:#6b7280;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.op-type-pill:hover{border-color:#9ca3af;background:#f3f4f6}.op-type-pill.active.type-all{border-color:#9ca3af;background:#f3f4f6;color:#374151}.op-type-pill.active.type-sample{border-color:#8b5cf6;background:#ede9fe;color:#5b21b6}.op-type-pill.active.type-main{border-color:#10b981;background:#dcfce7;color:#166534}.op-type-pill.active.type-redo{border-color:#f59e0b;background:#fef3c7;color:#92400e}.op-type-pill.active.type-design{border-color:#0ea5e9;background:#e0f2fe;color:#0369a1}.op-work-type-select{height:34px;padding:0 10px;border:1.5px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff;color:#374151;cursor:pointer;outline:none;width:100%;transition:border-color .15s}.op-work-type-select:focus{border-color:#667eea}.op-item-edit-wrap{overflow-x:auto}.op-item-edit-table{width:100%;border-collapse:collapse;font-size:13px}.op-item-edit-table thead tr{background:#f0fdf4}.op-item-edit-table th{padding:7px 10px;text-align:left;font-weight:600;color:#374151;border-bottom:1.5px solid #a7f3d0;font-size:12px}.op-item-edit-table td{padding:5px 6px;border-bottom:1px solid #f0f0f0;vertical-align:middle}.op-item-edit-table tbody tr:hover{background:#f9fffe}.op-item-select{width:100%;min-width:160px;height:32px;padding:0 8px;border:1.5px solid #d1d5db;border-radius:6px;font-size:12px;background:#fff;cursor:pointer}.op-item-select:focus{border-color:#10b981;outline:none}.op-item-input{width:100%;height:32px;padding:0 8px;border:1.5px solid #d1d5db;border-radius:6px;font-size:12px;background:#fff}.op-item-input:focus{border-color:#10b981;outline:none}.op-item-input.op-item-qty{max-width:90px;text-align:right}.op-item-add-btn{margin-top:8px;background:#f0fdf4;color:#059669;border:1.5px dashed #6ee7b7;border-radius:7px;padding:6px 14px;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.op-item-add-btn:hover{background:#d1fae5;border-color:#34d399}.op-attach-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:9999px;background:#f3e8ff;color:#7c3aed;font-size:11px;font-weight:600;margin-right:6px}.op-attach-loading{display:flex;align-items:center;gap:6px;font-size:12px;color:#9ca3af;padding:10px 0}.op-attach-section{padding:14px 18px;background:#faf5ff;border-radius:10px;border:1px solid #e9d5ff;margin-bottom:12px}.op-attach-hd{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#7c3aed;margin-bottom:12px}.op-attach-grid{display:flex;flex-wrap:wrap;gap:10px}.op-attach-card{display:flex;flex-direction:column;align-items:center;width:110px;border:1px solid #e9d5ff;border-radius:10px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;transition:box-shadow .15s,transform .1s;cursor:pointer}.op-attach-card:hover{box-shadow:0 4px 16px #7c3aed26;transform:translateY(-2px);border-color:#a78bfa}.op-attach-thumb{width:110px;height:80px;object-fit:cover;display:block}.op-attach-icon-wrap{width:110px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:0}.op-attach-icon-wrap.pdf{background:#fef2f2}.op-attach-icon-wrap.img{background:#eef2ff}.op-attach-icon-wrap.default{background:#f9fafb}.op-attach-meta{padding:7px 8px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:2px}.op-attach-name{font-size:11px;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:94px}.op-attach-size{font-size:10px;color:#9ca3af}.op-attach-dl{display:flex;align-items:center;gap:3px;font-size:10px;color:#7c3aed;font-weight:600;margin-top:2px}.sr-page{padding:24px;min-height:100%;background:#f1f5f9;display:flex;justify-content:center}.sr-form-card{background:#fff;border-radius:20px;border:1px solid #e2e8f0;box-shadow:0 4px 24px #00000014;padding:0;width:100%;max-width:820px;overflow:hidden}.sr-header{display:flex;align-items:center;gap:14px;padding:22px 28px;background:linear-gradient(135deg,#6366f1,#4f46e5,#7c3aed);color:#fff}.sr-header-icon{width:44px;height:44px;border-radius:12px;background:#fff3;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sr-header-text{flex:1}.sr-header-text h2{font-size:18px;font-weight:700;margin:0 0 2px;color:#fff}.sr-header-text p{font-size:12px;color:#fffc;margin:0}.sr-badge-sample{padding:4px 12px;background:#fff3;border:1px solid rgba(255,255,255,.35);border-radius:20px;font-size:12px;font-weight:600;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);flex-shrink:0}.sr-section{padding:22px 28px;border-bottom:1px solid #f1f5f9;position:relative}.sr-section:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 2px 2px 0}.sr-section-blue:before{background:#3b82f6}.sr-section-green:before{background:#10b981}.sr-section-purple:before{background:#8b5cf6}.sr-section-amber:before{background:#f59e0b}.sr-section-head{display:flex;align-items:center;gap:9px;margin-bottom:16px}.sr-section-head h3{font-size:14px;font-weight:700;color:#1e293b;margin:0}.sr-section-sub{font-size:11px;color:#94a3b8;margin-left:auto}.sr-section-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sr-icon-blue{background:#eff6ff;color:#3b82f6}.sr-icon-green{background:#f0fdf4;color:#10b981}.sr-icon-purple{background:#faf5ff;color:#8b5cf6}.sr-icon-amber{background:#fffbeb;color:#f59e0b}.sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sr-field{display:flex;flex-direction:column;gap:6px}.sr-field-wide{grid-column:1 / -1}.sr-field label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#475569}.sr-field label svg{opacity:.7}.sr-field input,.sr-field select{height:38px;padding:0 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:13px;outline:none;background:#f8fafc;color:#1e293b;transition:border-color .15s,background .15s,box-shadow .15s}.sr-field input:focus,.sr-field select:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11f}.sr-field input.error,.sr-field select.error{border-color:#ef4444;background:#fff5f5}.sr-required{color:#ef4444;margin-left:2px}.sr-optional{font-size:11px;color:#94a3b8;font-weight:400}.sr-err-msg{display:flex;align-items:center;gap:4px;font-size:11px;color:#ef4444}.sr-fabric-preview{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border:1.5px solid #a7f3d0;border-radius:10px;font-size:13px;color:#065f46}.sr-fabric-code{background:#10b981;color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:.3px}.sr-fabric-name{font-weight:600;flex:1}.sr-fabric-unit{font-size:11px;color:#6b7280;padding:2px 6px;background:#f0fdf4;border:1px solid #d1fae5;border-radius:4px}.sr-dropzone{border:2px dashed #cbd5e1;border-radius:14px;padding:32px 20px;text-align:center;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:10px;background:#fafbff}.sr-dropzone:hover,.sr-dropzone.drag-over{border-color:#8b5cf6;background:#faf5ff}.sr-drop-icon-wrap{width:54px;height:54px;border-radius:14px;background:#f3e8ff;color:#8b5cf6;display:flex;align-items:center;justify-content:center;transition:transform .2s}.sr-dropzone:hover .sr-drop-icon-wrap,.sr-dropzone.drag-over .sr-drop-icon-wrap{transform:translateY(-3px);background:#ede9fe}.sr-drop-title{margin:0;font-size:14px;font-weight:600;color:#334155}.sr-drop-types{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.sr-type-tag{padding:2px 8px;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:.3px}.sr-type-ai{background:#fef3c7;color:#d97706;border:1px solid #fde68a}.sr-type-psd{background:#ede9fe;color:#7c3aed;border:1px solid #ddd6fe}.sr-type-pdf{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.sr-type-img{background:#d1fae5;color:#059669;border:1px solid #a7f3d0}.sr-type-zip{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.sr-drop-hint{margin:0;font-size:11px;color:#94a3b8}.sr-file-count{margin-left:auto;font-size:11px;color:#8b5cf6;font-weight:600;background:#f5f3ff;padding:2px 8px;border-radius:10px;border:1px solid #ddd6fe}.sr-file-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.sr-file-item{display:flex;align-items:center;gap:10px;padding:9px 14px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;font-size:13px;transition:border-color .15s,background .15s}.sr-file-item:hover{background:#f1f5f9;border-color:#cbd5e1}.sr-file-type-badge{display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;flex-shrink:0}.sr-file-name{flex:1;color:#334155;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.sr-file-size{color:#94a3b8;font-size:11px;flex-shrink:0;font-variant-numeric:tabular-nums}.sr-file-del{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:#94a3b8;border-radius:6px;transition:all .1s;flex-shrink:0}.sr-file-del:hover{background:#fee2e2;color:#ef4444}.sr-textarea{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:13px;resize:vertical;outline:none;box-sizing:border-box;background:#f8fafc;color:#1e293b;transition:border-color .15s,background .15s;font-family:inherit}.sr-textarea:focus{border-color:#f59e0b;background:#fff;box-shadow:0 0 0 3px #f59e0b1a}.sr-upload-progress{margin:0 28px 4px;padding:14px 16px;background:#f5f3ff;border:1.5px solid #ddd6fe;border-radius:12px}.sr-progress-info{display:flex;align-items:center;gap:8px;font-size:12px;color:#5b21b6;font-weight:600;margin-bottom:8px}.sr-progress-filename{color:#7c3aed;font-weight:400;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-progress-pct{margin-left:auto;font-variant-numeric:tabular-nums;color:#6d28d9;font-weight:700}.sr-progress-bar-wrap,.sr-progress-file-wrap{height:6px;background:#ede9fe;border-radius:3px;overflow:hidden;margin-bottom:4px}.sr-progress-file-wrap{height:3px;margin-bottom:6px}.sr-progress-bar{height:100%;background:linear-gradient(90deg,#8b5cf6,#6366f1);border-radius:3px;transition:width .15s ease}.sr-progress-file-bar{height:100%;background:#a78bfa;border-radius:2px;transition:width .1s ease}.sr-progress-labels{display:flex;justify-content:space-between;font-size:10px;color:#a78bfa}.sr-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px 28px}.sr-btn-primary{display:flex;align-items:center;gap:7px;padding:0 24px;height:42px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .18s;box-shadow:0 2px 8px #6366f140}.sr-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #6366f159}.sr-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.sr-btn-ghost{display:flex;align-items:center;gap:6px;padding:0 20px;height:42px;background:#f1f5f9;color:#475569;border:1.5px solid #e2e8f0;border-radius:11px;font-size:14px;cursor:pointer;transition:all .1s}.sr-btn-ghost:hover:not(:disabled){background:#e2e8f0}.sr-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.sr-btn-outline{display:flex;align-items:center;gap:7px;padding:0 20px;height:42px;background:transparent;color:#6366f1;border:1.5px solid #a5b4fc;border-radius:11px;font-size:14px;cursor:pointer;font-weight:500;transition:all .15s}.sr-btn-outline:hover{background:#eef2ff}.sr-done-card{background:#fff;border-radius:20px;border:1px solid #e2e8f0;box-shadow:0 4px 24px #00000014;padding:56px 40px;text-align:center;max-width:480px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.sr-done-icon-wrap{width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,#d1fae5,#a7f3d0);display:flex;align-items:center;justify-content:center;color:#059669}.sr-done-card h3{font-size:20px;font-weight:700;color:#111827;margin:0}.sr-done-card p{color:#6b7280;margin:0;font-size:14px}.sr-done-btns{display:flex;gap:10px;margin-top:8px}.sr-section-notice:before{background:#64748b}.sr-icon-notice{background:#f1f5f9;color:#64748b}.sr-notice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.sr-notice-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#475569;line-height:1.6;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;transition:background .15s}.sr-notice-list li:hover{background:#f1f5f9}.sr-notice-list li strong{color:#334155;font-weight:600}.sr-notice-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;border-radius:50%;background:#64748b;color:#fff;font-size:10px;font-weight:700;margin-top:1px}.sr-notice-footer{display:flex;align-items:center;gap:6px;margin-top:12px;padding:8px 14px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;font-size:12px;color:#c2410c;font-weight:500}.sr-notice-footer svg{color:#ea580c;flex-shrink:0}.sr-spin{animation:sr-rotate 1s linear infinite}@keyframes sr-rotate{to{transform:rotate(360deg)}}@media (max-width: 640px){.sr-page{padding:12px}.sr-grid{grid-template-columns:1fr}.sr-form-card{border-radius:16px}.sr-header,.sr-section{padding:18px 20px}.sr-actions{padding:16px 20px}.sr-upload-progress{margin:0 20px 4px}.sr-done-card{padding:40px 24px}.sr-done-btns{flex-direction:column;width:100%}}.my-page-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:16px;box-shadow:0 1px 6px #0000000d}.my-page-title{display:flex;align-items:center;gap:14px}.my-page-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.my-page-title h2{font-size:16px;font-weight:700;color:#1e293b;margin:0 0 2px}.my-page-title p{font-size:12px;color:#64748b;margin:0}.my-page-secure{display:flex;align-items:center;gap:5px;font-size:11px;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;padding:4px 10px;border-radius:20px;font-weight:500}@media (max-width: 640px){.my-page-header{flex-direction:column;align-items:flex-start;gap:10px}}:root{font-family:Pretendard Variable,Inter,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 30px;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-numeric: "Inter", "Roboto Mono", monospace;font-feature-settings:"tnum";--color-primary-50: #f5f3ff;--color-primary-100: #ede9fe;--color-primary-200: #ddd6fe;--color-primary-300: #c4b5fd;--color-primary-400: #a78bfa;--color-primary-500: #8b5cf6;--color-primary-600: #7c3aed;--color-primary-700: #6d28d9;--color-primary-800: #5b21b6;--color-primary-900: #4c1d95;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-success: #10b981;--color-success-light: #34d399;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-light: #f87171;--color-error-bg: #fee2e2;--color-info: #3b82f6;--color-info-light: #60a5fa;--color-info-bg: #dbeafe;--bg-page: #f5f7fa;--bg-card: #ffffff;--bg-sidebar: linear-gradient(180deg, #1f2937 0%, #111827 100%);--bg-header: #ffffff;--bg-input: #ffffff;--bg-disabled: #f3f4f6;--border-light: #e5e7eb;--border-medium: #d1d5db;--border-strong: #9ca3af;--border-focus: #8b5cf6;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .4s cubic-bezier(.4, 0, .2, 1);color-scheme:light;color:var(--color-gray-800);background-color:var(--bg-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:-webkit-fill-available;overscroll-behavior-y:none}#root{width:100%;min-height:100vh}@media (max-width: 768px){*{-webkit-tap-highlight-color:transparent}.page-content,.at-wrap,.ol-table-wrap,.erp-section,.op-items-wrap{-webkit-overflow-scrolling:touch}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{border:none}button,a,[role=button]{min-height:36px}input,select,textarea{font-size:16px!important}}@media (max-width: 480px){:root{--font-size-xs: 10px;--font-size-sm: 11px;--font-size-base: 13px;--font-size-lg: 14px;--font-size-xl: 16px;--font-size-2xl: 18px;--space-xl: 20px;--space-lg: 16px;--space-md: 12px}}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all var(--transition-base)}input,select,textarea{font-family:inherit;outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-gray-100);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-sm);border:2px solid var(--color-gray-100);transition:background var(--transition-base)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}::-webkit-scrollbar-thumb:active{background:var(--color-gray-600)}.numeric{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.text-muted{color:var(--color-gray-500)}.text-primary{color:var(--color-primary-600)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-gray{background:var(--color-gray-200);color:var(--color-gray-700)}.ag-theme-alpine{--ag-font-family: "Pretendard Variable", "Inter", sans-serif;--ag-font-size: 13px;--ag-background-color: #ffffff;--ag-header-background-color: #f8fafc;--ag-subheader-background-color: #f1f5f9;--ag-control-panel-background-color: #fafbfc;--ag-odd-row-background-color: #ffffff;--ag-even-row-background-color: #fafbfc;--ag-foreground-color: #374151;--ag-header-foreground-color: #111827;--ag-secondary-foreground-color: #6b7280;--ag-disabled-foreground-color: #9ca3af;--ag-row-hover-color: #f0f7ff;--ag-selected-row-background-color: #dbeafe;--ag-range-selection-background-color: rgba(147, 197, 253, .3);--ag-range-selection-border-color: #3b82f6;--ag-border-color: #e5e7eb;--ag-row-border-color: #f3f4f6;--ag-border-radius: 8px;--ag-header-height: 48px;--ag-header-cell-hover-background-color: #f1f5f9;--ag-header-cell-moving-background-color: #e0e7ff;--ag-row-height: 44px;--ag-list-item-height: 36px;--ag-cell-horizontal-padding: 16px;--ag-grid-size: 5px;--ag-icon-size: 18px;--ag-input-focus-border-color: #8b5cf6;--ag-checkbox-checked-color: #8b5cf6;--ag-accent-color: #8b5cf6;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000000f;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-light)}.ag-theme-alpine .ag-header{border-bottom:2px solid var(--color-primary-500);background:linear-gradient(180deg,#f8fafc,#f1f5f9);font-weight:var(--font-weight-semibold)}.ag-theme-alpine .ag-header-cell{font-weight:var(--font-weight-semibold);font-size:14px;color:var(--color-gray-900);letter-spacing:-.01em;padding:0 16px}.ag-theme-alpine .ag-header-cell-label{justify-content:center;text-align:center}.ag-theme-alpine .ag-header-cell:hover{background-color:#f1f5f9}.ag-theme-alpine .ag-cell{display:flex;align-items:center;line-height:var(--line-height-normal);border-right:1px solid #f9fafb;padding:0 14px}.ag-theme-alpine .ag-cell.numeric-cell,.ag-theme-alpine .ag-cell[col-id*=price],.ag-theme-alpine .ag-cell[col-id*=amount],.ag-theme-alpine .ag-cell[col-id*=quantity],.ag-theme-alpine .ag-cell[col-id*=total]{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;justify-content:flex-end;font-weight:var(--font-weight-medium);color:var(--color-gray-900)}.ag-theme-alpine .ag-cell.status-cell{font-weight:var(--font-weight-semibold);font-size:12px}.ag-theme-alpine .ag-row-hover{background-color:#f0f7ff!important;box-shadow:inset 3px 0 0 var(--color-primary-500);transition:all var(--transition-fast);transform:scale(1.001)}.ag-theme-alpine .ag-row-hover .ag-cell{background-color:transparent}.ag-theme-alpine .ag-row-selected{background-color:#dbeafe!important;border-left:3px solid var(--color-primary-600);font-weight:var(--font-weight-medium)}.ag-theme-alpine .ag-row-selected .ag-cell{background-color:transparent}.ag-theme-alpine .ag-row-odd{background-color:#fff}.ag-theme-alpine .ag-row-even{background-color:#fafbfc}.ag-theme-alpine .ag-paging-panel{border-top:1px solid var(--border-light);padding:12px 16px;background:linear-gradient(180deg,#fafbfc,#f5f7fa);font-size:var(--font-size-sm);color:var(--color-gray-700);height:48px}.ag-theme-alpine .ag-paging-button{color:var(--color-gray-600);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:4px 8px;margin:0 2px;transition:all var(--transition-fast)}.ag-theme-alpine .ag-paging-button:hover:not([disabled]){background:#fff;color:var(--color-primary-600);border-color:var(--color-primary-300);transform:translateY(-1px)}.ag-theme-alpine .ag-paging-button[disabled]{opacity:.4;cursor:not-allowed}.ag-theme-alpine .ag-icon-filter{color:var(--color-primary-500)}.ag-theme-alpine .ag-header-icon{color:var(--color-primary-600);opacity:.7}.ag-theme-alpine .ag-icon-menu{color:var(--color-gray-600)}.ag-theme-alpine .ag-icon-menu:hover{color:var(--color-primary-600)}.ag-theme-alpine .ag-header-cell-sorted-asc,.ag-theme-alpine .ag-header-cell-sorted-desc{background-color:#f1f5f9}.ag-theme-alpine .ag-icon-asc,.ag-theme-alpine .ag-icon-desc{color:var(--color-primary-600);font-weight:var(--font-weight-bold)}.ag-theme-alpine .ag-checkbox-input-wrapper{border-radius:var(--radius-sm);border-width:2px}.ag-theme-alpine .ag-checkbox-input-wrapper.ag-checked{background-color:var(--color-primary-600);border-color:var(--color-primary-600)}.ag-theme-alpine .ag-checkbox-input-wrapper:hover{border-color:var(--color-primary-500)}.ag-theme-alpine .ag-cell-focus,.ag-theme-alpine .ag-cell-no-focus{border:none!important}.ag-theme-alpine .ag-cell-focus:not(.ag-cell-range-selected){border:2px solid var(--color-primary-500)!important;border-radius:var(--radius-sm)}.ag-theme-alpine .ag-overlay-loading-wrapper{background-color:#fffffff2}.ag-theme-alpine .ag-overlay-loading-center{color:var(--color-primary-600);font-weight:var(--font-weight-semibold)}.ag-theme-alpine .ag-overlay-no-rows-wrapper{padding:40px}.ag-theme-alpine .ag-overlay-no-rows-center{color:var(--color-gray-500);font-size:var(--font-size-base)}
