@charset "UTF-8";.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.idle-timeout-popup{background:#fff;border-radius:12px;padding:32px;text-align:center;width:390px;max-width:90vw;box-shadow:0 8px 32px #0003;position:relative}.idle-timeout-popup h2{margin:0 0 20px;font-size:24px;font-weight:600;color:#f59e0b}.idle-timeout-popup p{margin:0 0 24px;font-size:16px;line-height:1.6;color:#666}.idle-timeout-popup strong{color:#ef4444;font-size:1.5rem;font-weight:700}.modal-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.modal-actions button{padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;flex:1}.spinner-container{display:flex;justify-content:center;align-items:center;min-height:150px}.spinner{border:4px solid rgba(0,0,0,.1)!important;border-left-color:#007bff!important;border-radius:50%!important;width:30px!important;height:30px!important;animation:spin 1s linear infinite!important}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.auto-logout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000}.auto-logout-modal{background:#fff;border-radius:12px;padding:32px;max-width:460px;width:90%;box-shadow:0 8px 32px #0003;text-align:center}.auto-logout-icon{font-size:48px;margin-bottom:16px}.auto-logout-title{font-size:24px;font-weight:600;color:#333;margin-bottom:16px}.auto-logout-message{font-size:16px;color:#666;line-height:1.6;margin-bottom:24px;white-space:pre-line}.auto-logout-button{background-color:#007bff;color:#fff;border:none;border-radius:6px;padding:12px 32px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.auto-logout-button:hover{background-color:#0056b3}.layout{display:flex;flex-direction:column;height:100vh;background-color:#f5f5f5}.header{background-color:#2c3e50;color:#fff;padding:0 20px;height:60px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 4px #0000001a;z-index:1000}.header-left{display:flex;align-items:center;gap:15px}.sidebar-toggle{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s}.sidebar-toggle:hover{background-color:#ffffff1a}.header-title{font-size:20px;font-weight:600;margin:0;color:#64b5f6}.header-right{display:flex;align-items:center;gap:15px}.user-info{font-size:14px;color:#ecf0f1}.logout-btn{background-color:#e74c3c;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s}.logout-btn:hover{background-color:#c0392b}.main-container{display:flex;flex:1;overflow:hidden}.sidebar{background-color:#34495e;color:#fff;transition:width .3s ease;overflow-y:auto;box-shadow:2px 0 4px #0000001a}.sidebar.open{width:280px}.sidebar.closed{width:60px}.sidebar-nav{display:flex;flex-direction:column;height:100%;padding:0}.nav-section{flex:1;display:flex;flex-direction:column}.nav-section-top{border-bottom:2px solid rgba(255,255,255,.1)}.nav-section-bottom{background-color:#0000001a}.nav-divider{height:2px;background:linear-gradient(to right,transparent,rgba(255,255,255,.2),transparent);margin:10px 0}.nav-list{list-style:none;padding:0;margin:0}.nav-item{border-bottom:1px solid rgba(255,255,255,.05)}.nav-link,.nav-button{display:flex;align-items:center;padding:12px 20px;color:#ecf0f1;text-decoration:none;transition:all .2s;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-size:14px}.nav-link:hover,.nav-button:hover{background-color:#ffffff1a}.nav-link.active,.nav-button.active{background-color:#2c3e50;border-left:3px solid #3498db}.nav-icon{margin-right:12px;font-size:16px;min-width:20px;text-align:center}.nav-text{flex:1}.nav-arrow{font-size:10px;transition:transform .2s}.nav-arrow.expanded{transform:rotate(180deg)}.sub-nav-list{list-style:none;padding:0;margin:0;background-color:#0003}.sub-nav-item{border:none}.sub-nav-link{display:block;padding:10px 20px 10px 52px;color:#bdc3c7;text-decoration:none;transition:all .2s;font-size:13px}.sub-nav-link:hover{background-color:#ffffff0d;color:#ecf0f1}.sub-nav-link.active{background-color:#3498db33;color:#3498db;border-left:2px solid #3498db;padding-left:50px}.content{flex:1;padding:24px;background-color:#f8f9fa;overflow-y:auto}.sidebar.closed .sub-nav-list,.sidebar.closed .nav-arrow,.sidebar.closed .section-title{display:none}@media (max-width: 768px){.sidebar.open{width:100%;position:absolute;height:calc(100vh - 60px);z-index:999}.sidebar.closed{width:0;overflow:hidden}.content{padding:16px}.header-title{font-size:16px}.user-info{display:none}.logout-btn{padding:6px 12px;font-size:12px}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#2c3e50}.sidebar::-webkit-scrollbar-thumb{background:#34495e;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#3d566e}.nav-section{display:flex;flex-direction:column}.nav-section-main{flex:1}.nav-section-admin{background-color:#00000026;border-top:2px solid rgba(255,255,255,.1);margin-top:auto}.section-header{padding:12px 20px 8px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:5px}.section-title{font-size:11px;font-weight:600;color:#95a5a6;text-transform:uppercase;letter-spacing:.5px}.nav-divider{height:2px;background:linear-gradient(to right,transparent,rgba(255,255,255,.2),transparent);margin:10px 0;flex-shrink:0}.nav-section-admin .nav-link,.nav-section-admin .nav-button{background-color:#0000001a;border-left:3px solid transparent}.nav-section-admin .nav-link:hover,.nav-section-admin .nav-button:hover{background-color:#ffffff26;border-left-color:#e67e22}.nav-section-admin .nav-link.active,.nav-section-admin .nav-button.active{background-color:#e67e22;border-left-color:#f39c12}.nav-section-admin .sub-nav-list{background-color:#0000004d}.nav-section-admin .sub-nav-link.active{background-color:#e67e2233;color:#f39c12;border-left-color:#f39c12}.sidebar.closed .section-title,.sidebar.closed .section-header{display:none}.user-info-clickable{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.user-info-clickable:hover{color:#007bff}.notice-btn{background-color:#1890ff;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;gap:4px}.notice-btn:hover{background-color:#0070d9}.help-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:4px}.help-btn:hover{background:linear-gradient(135deg,#5568d3,#63408b);transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.help-btn:active{transform:translateY(0)}@media (max-width: 768px){.nav-section-admin{background-color:#0003}.nav-divider{margin:5px 0}}.notice-modal{background:#fff;border-radius:12px;max-width:700px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d}.notice-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:2px solid #f0f0f0}.notice-header h2{margin:0;font-size:24px;color:#333}.notice-close-btn{background:none;border:none;font-size:32px;cursor:pointer;color:#999;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.notice-close-btn:hover{background-color:#f5f5f5;color:#333}.notice-body{padding:20px 28px;overflow-y:auto;flex:1}.notice-item{margin-bottom:24px;padding:16px;border-left:4px solid #1890ff;background-color:#f8f9fa;border-radius:4px}.notice-item:last-child{margin-bottom:0}.notice-item h3{margin:0 0 8px;font-size:18px;color:#333}.notice-date{font-size:13px;color:#999;margin:0 0 12px}.notice-content{font-size:15px;line-height:1.6;color:#666;margin:0}.notice-guide-images{display:flex;flex-direction:column;gap:12px;margin-top:16px}.guide-image{width:100%;height:auto;border:1px solid #e0e0e0;border-radius:6px;object-fit:contain}.notice-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-top:1px solid #f0f0f0}.notice-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#666}.notice-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.notice-footer .btn-primary{padding:10px 32px;font-size:15px}.notice-indented-section{padding-left:20px;border-left:2px dashed #ccc;margin-left:10px;padding-top:5px;padding-bottom:5px}.notice-tabs{display:flex;border-bottom:1px solid #e0e0e0;background-color:#fafafa}.notice-tab-btn{flex:1;padding:16px;font-size:16px;font-weight:500;color:#666;background:none;border:none;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.notice-tab-btn:hover{background-color:#f0f0f0;color:#333}.notice-tab-btn.active{color:#1890ff;border-bottom:2px solid #1890ff;background-color:#fff;font-weight:600}.notification-list{display:flex;flex-direction:column;gap:12px}.notification-item{padding:16px;border:1px solid #eee;border-radius:8px;background-color:#fff;display:flex;align-items:flex-start;gap:12px}.notification-item.unread{background-color:#f0f7ff;border-color:#d6e4ff}.notification-icon{font-size:20px}.notification-content-wrapper{flex:1}.notification-title{font-size:15px;font-weight:600;color:#333;margin:0 0 4px}.notification-message{font-size:14px;color:#666;margin:0 0 8px;line-height:1.4}.notification-time{font-size:12px;color:#999}.notice-loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;height:100%;min-height:200px}.notice-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #1890ff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.notice-loading-text{color:#666;font-size:14px}.help-modal{background:#fff;border-radius:12px;max-width:800px;width:90%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d}.help-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.help-header h2{margin:0;font-size:24px}.help-close-btn{background:#fff3;border:none;font-size:32px;cursor:pointer;color:#fff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.help-close-btn:hover{background-color:#ffffff4d}.help-body{padding:28px;overflow-y:auto;flex:1;line-height:1.8}.help-section{margin-bottom:28px}.help-section:last-child{margin-bottom:0}.help-section h3{color:#667eea;font-size:20px;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #e0e0e0}.help-section p{color:#555;font-size:15px;margin-bottom:12px}.help-section ul{padding-left:24px;margin:12px 0}.help-section li{color:#666;font-size:15px;margin-bottom:8px}.help-section strong{color:#333;font-weight:600}.help-section code{background-color:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;color:#d63384;font-size:14px}.help-tip{background-color:#fff3cd;border-left:4px solid #ffc107;padding:12px 16px;margin:16px 0;border-radius:4px}.help-tip strong{color:#856404}.help-warning{background-color:#f8d7da;border-left:4px solid #dc3545;padding:12px 16px;margin:16px 0;border-radius:4px}.help-warning strong{color:#721c24}.help-footer{display:flex;justify-content:center;padding:20px 28px;border-top:1px solid #f0f0f0}.help-footer .btn-primary{padding:10px 40px;font-size:16px}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.login-box{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 10px 25px #0000001a;width:100%;max-width:400px}.login-title{text-align:center;color:#333;margin-bottom:2rem;font-size:1.5rem}.login-form{display:flex;flex-direction:column}.form-group label{display:block;margin-bottom:.5rem;color:#666;font-size:.9rem}.login-input{width:100%;height:48px;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;box-sizing:border-box;display:block;transition:border-color .3s}.login-input:focus{outline:none;border-color:#667eea}.error-message{background:#fee;color:#c33;padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.login-button{background:#667eea;color:#fff;border:none;padding:.75rem;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .3s}.login-button:hover:not(:disabled){background:#5a67d8}.login-button:disabled{opacity:.6;cursor:not-allowed}.loading-container{display:flex;justify-content:center;align-items:center;height:100vh}.spinner{color:#667eea;font-size:1.2rem}.mode-switch-link{margin-top:16px;color:#007bff;text-decoration:underline;cursor:pointer;text-align:center;font-size:14px}.mode-switch-link:hover{color:#0056b3}.close-button{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#666;cursor:pointer;line-height:1;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.login-box{position:relative;background:#fff;padding:2rem;border-radius:8px;box-shadow:0 10px 25px #0000001a;width:100%;max-width:400px}.change-password-container{display:flex;justify-content:center;padding-top:50px}.form-box{position:relative;width:100%;max-width:400px;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;background:linear-gradient(145deg,#f8f9fa,#eef4ff)}.form-box h2{text-align:center;margin-bottom:24px;color:#333}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#555}.form-group input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:16px;box-sizing:border-box}.submit-button{width:100%;padding:12px;border:none;border-radius:4px;background-color:#007bff;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s}.submit-button:hover{background-color:#0056b3}.submit-button:disabled{background-color:#ccc;cursor:not-allowed}.error-message{color:#d32f2f;background-color:#ffcdd2;border:1px solid #ef9a9a;padding:10px;border-radius:4px;text-align:center;margin-bottom:15px}.success-message{color:green;background-color:#e8f5e9;border:1px solid #c8e6c9;padding:10px;border-radius:4px;text-align:center;margin-bottom:15px}.close-button{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;font-weight:700;color:#888;cursor:pointer;line-height:1;padding:0}.tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:24px}.tab{flex:1;padding:12px;text-align:center;cursor:pointer;background:none;border:none;font-size:16px;color:#666;border-bottom:2px solid transparent;transition:all .3s ease}.tab:hover{background-color:#0000000d}.tab.active{color:#007bff;border-bottom:2px solid #007bff;font-weight:700}.form-header{display:flex;justify-content:center;align-items:center;position:relative;margin-bottom:24px}.form-header h2{margin:0;color:#333}.help-emoji-btn{position:absolute;right:0;background-color:#fff;border:1px solid #ccc;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;line-height:1;transition:all .2s;box-shadow:0 1px 3px #0000001a}.help-emoji-btn:hover{background-color:#f0f8ff;border-color:#007bff;transform:scale(1.05)}.dashboard{max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:32px;text-align:center}.dashboard-header h1{color:#333;margin-bottom:12px;font-size:32px;font-weight:700}.dashboard-header p{color:#666;font-size:18px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:40px}.stat-card{background:#fff;padding:28px;border-radius:12px;box-shadow:0 4px 12px #00000014;display:flex;align-items:center;gap:20px;transition:all .3s ease;border:1px solid #f1f3f4}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.stat-icon{font-size:40px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;flex-shrink:0}.stat-content{flex:1}.stat-content h3{color:#666;font-size:14px;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.stat-number{font-size:32px;font-weight:800;color:#333;margin-bottom:6px;line-height:1}.stat-sub{font-size:13px;color:#666;font-weight:500}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(600px,1fr));gap:24px;margin-bottom:40px}.chart-container{background:#fff;padding:32px;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #f1f3f4}.chart-container h3{color:#333;margin-bottom:24px;font-size:20px;font-weight:700}.quick-actions{background:#fff;padding:32px;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #f1f3f4}.quick-actions h3{color:#333;margin-bottom:24px;font-size:20px;font-weight:700}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.action-button{display:flex;flex-direction:column;align-items:center;padding:24px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #e9ecef;border-radius:12px;text-decoration:none;color:#495057;transition:all .3s ease;text-align:center}.action-button:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a;background:linear-gradient(135deg,#e9ecef,#dee2e6);border-color:#007bff;color:#007bff}.action-icon{font-size:28px;margin-bottom:12px}.action-text{font-size:15px;font-weight:600}.retry-button{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;margin-top:16px;font-weight:500}.retry-button:hover{background-color:#0056b3}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.charts-grid{grid-template-columns:1fr;gap:16px}.action-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-card{padding:20px;gap:16px}.stat-icon{font-size:32px;width:60px;height:60px}.stat-number{font-size:28px}.chart-container,.quick-actions{padding:20px}}@media (max-width: 480px){.dashboard-header h1{font-size:24px}.dashboard-header p{font-size:16px}.stat-card{flex-direction:column;text-align:center}.action-button{padding:20px}}.company-list{max-width:1400px;margin:0 auto}.company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px}.company-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;transition:all .3s ease;border:1px solid #f1f3f4}.company-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.company-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #f1f3f4}.company-header h3{color:#333;font-size:20px;font-weight:700;margin:0 16px 0 0;flex:1}.company-actions{display:flex;gap:8px}.company-details{padding:16px 24px}.company-details p{margin:10px 0;font-size:14px;color:#555;line-height:1.5}.company-details strong{color:#333;font-weight:600}.company-meta{padding:16px 24px;background-color:#f8f9fa;border-top:1px solid #f1f3f4}.company-meta small{color:#666;font-size:13px;font-weight:500}@media (max-width: 768px){.company-grid{grid-template-columns:1fr}.company-header{flex-direction:column;align-items:flex-start;gap:16px}.company-header h3{margin-right:0}.company-actions{width:100%;justify-content:flex-end}}.company-form{max-width:1000px;margin:0 auto;padding:20px;background-color:#fff;border-radius:12px;box-shadow:0 4px 16px #00000014}.page-header{margin-bottom:32px;border-bottom:3px solid #f8f9fa;padding-bottom:24px}.page-header h1{margin:0 0 12px;color:#1a202c;font-size:32px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.breadcrumb{font-size:14px;color:#718096;font-weight:500}.breadcrumb-link{color:#4299e1;cursor:pointer;text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:#3182ce;text-decoration:underline}.breadcrumb-separator{margin:0 10px;color:#cbd5e0;font-weight:400}.breadcrumb-current{color:#2d3748;font-weight:600}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid #f7fafc;border-top:4px solid #4299e1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.error-message{display:flex;align-items:flex-start;gap:14px;padding:18px;margin-bottom:28px;background:linear-gradient(135deg,#fff5f5,#fed7d7);border:2px solid #fc8181;border-radius:8px;color:#c53030;font-weight:500}.error-icon{font-size:20px;flex-shrink:0;margin-top:2px}.error-content{flex:1;line-height:1.6}.form{display:flex;flex-direction:column;gap:36px}.form-section{border:2px solid #e2e8f0;border-radius:12px;padding:28px;background:linear-gradient(135deg,#fff,#f8fafc);transition:all .3s ease}.form-section:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.section-title{margin:0 0 24px;color:#2d3748;font-size:20px;font-weight:700;padding-bottom:12px;border-bottom:3px solid #e2e8f0;position:relative}.section-title:after{content:"";position:absolute;bottom:-3px;left:0;width:60px;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:8px}label{font-weight:600;color:#2d3748;font-size:15px;display:flex;align-items:center;gap:6px;margin-bottom:4px}label.required:after{content:"*";color:#e53e3e;font-weight:700;font-size:16px}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],textarea,select{padding:14px 18px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;font-family:inherit;transition:all .3s ease;background-color:#fff;color:#2d3748;line-height:1.5}input:focus,textarea:focus,select:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 4px #4299e11a;transform:translateY(-1px)}input:disabled,textarea:disabled,select:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed;border-color:#e2e8f0}input.error,textarea.error,select.error{border-color:#e53e3e;background-color:#fff5f5}input.error:focus,textarea.error:focus,select.error:focus{border-color:#e53e3e;box-shadow:0 0 0 4px #e53e3e1a}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:44px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}select:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%234299e1' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e")}textarea{resize:vertical;min-height:120px;line-height:1.6;font-family:inherit}.field-help{font-size:13px;color:#718096;margin-top:4px;font-weight:500}.field-error{font-size:13px;color:#e53e3e;font-weight:600;margin-top:4px;display:flex;align-items:center;gap:6px}.field-error:before{content:"⚠";font-size:12px}.company-summary{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:8px;padding:20px;border:1px solid #e2e8f0}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#fff;border-radius:6px;border:1px solid #e2e8f0;transition:all .2s ease}.summary-item:hover{border-color:#cbd5e0;transform:translateY(-1px)}.summary-item .label{font-weight:600;color:#4a5568;font-size:14px}.summary-item .value{font-weight:700;color:#2d3748;font-size:14px;text-align:right}.form-actions{display:flex;justify-content:flex-end;gap:16px;padding-top:32px;border-top:2px solid #e2e8f0;margin-top:40px}.btn{padding:14px 28px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:10px;min-width:140px;justify-content:center;text-decoration:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn:hover:before{left:100%}.btn:disabled:before{display:none}.btn-primary{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;box-shadow:0 4px 12px #4299e14d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#3182ce,#2c5282);transform:translateY(-2px);box-shadow:0 6px 20px #4299e166}.btn-secondary{background:linear-gradient(135deg,#718096,#4a5568);color:#fff;box-shadow:0 4px 12px #7180964d}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#4a5568,#2d3748);transform:translateY(-2px);box-shadow:0 6px 20px #71809666}.btn-outline{background-color:transparent;color:#4a5568;border:2px solid #e2e8f0;box-shadow:0 2px 8px #7180961a}.btn-outline:hover:not(:disabled){background-color:#f7fafc;border-color:#cbd5e0;color:#2d3748;transform:translateY(-2px);box-shadow:0 4px 16px #71809633}.spinner{width:18px;height:18px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.dev-info{margin-top:48px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;border-radius:8px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.dev-info summary{cursor:pointer;font-weight:700;color:#6c757d;margin-bottom:12px;padding:8px 12px;background-color:#fff;border-radius:4px;transition:background-color .2s ease}.dev-info summary:hover{background-color:#f8f9fa}.dev-info pre{font-size:12px;background-color:#fff;padding:16px;border-radius:6px;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;border:1px solid #e9ecef;line-height:1.4}@media (max-width: 1024px){.company-form{max-width:100%;margin:10px;padding:20px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}}@media (max-width: 768px){.company-form{margin:8px;padding:16px;border-radius:8px}.page-header{margin-bottom:24px;padding-bottom:16px}.page-header h1{font-size:28px}.form-row{grid-template-columns:1fr;gap:16px}.form-section{padding:20px;gap:28px}.section-title{font-size:18px;margin-bottom:20px}.form-actions{flex-direction:column-reverse;gap:12px}.btn{width:100%;min-width:unset;padding:16px 24px;font-size:16px}.breadcrumb{font-size:13px}.summary-grid{grid-template-columns:1fr;gap:10px}.summary-item{flex-direction:column;align-items:flex-start;gap:4px;padding:12px}.summary-item .value{text-align:left;font-size:15px}}@media (max-width: 480px){.company-form{margin:4px;padding:12px}.page-header{margin-bottom:20px;padding-bottom:12px}.page-header h1{font-size:24px}.form-section{padding:16px}.section-title{font-size:16px;margin-bottom:16px}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],textarea,select{padding:12px 16px;font-size:16px}.btn{padding:16px 20px;font-size:16px}.form-actions{padding-top:24px;margin-top:32px}}@media (prefers-color-scheme: dark){.company-form{background-color:#1a202c;color:#e2e8f0}.form-section{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568}.section-title{color:#e2e8f0;border-color:#4a5568}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],textarea,select{background-color:#2d3748;border-color:#4a5568;color:#e2e8f0}input:focus,textarea:focus,select:focus{border-color:#63b3ed;background-color:#2d3748}.company-summary{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568}.summary-item{background-color:#1a202c;border-color:#4a5568}}.btn:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4299e1;outline-offset:2px}@media print{.company-form{box-shadow:none;border:2px solid #000;max-width:100%;margin:0}.form-actions,.dev-info,.breadcrumb{display:none}.error-message{border:2px solid #000;background-color:#f0f0f0;color:#000}.page-header h1{color:#000;-webkit-text-fill-color:#000}.form-section{background:#fff;border:1px solid #ccc;break-inside:avoid}.section-title{color:#000;border-color:#ccc}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.company-regist-form{max-width:1000px;margin:0 auto;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}input[type=text],select,textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;font-family:inherit;transition:all .2s ease;background-color:#fff}input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}input[type=text]:disabled,select:disabled,textarea:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}select{cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (max-width: 768px){.company-regist-form{margin:10px;padding:16px}.page-header h1{font-size:24px}.form-row{flex-direction:column;min-height:auto}.form-label{min-width:auto;max-width:none;border-right:none;border-bottom:1px solid #e0e0e0;padding:12px 16px 8px}.form-content{padding:8px 16px 16px}.form-actions{flex-direction:column-reverse}.btn{width:100%;min-width:unset}.breadcrumb{font-size:12px}}@media (max-width: 480px){.company-regist-form{margin:5px;padding:12px}.page-header{margin-bottom:20px;padding-bottom:16px}.page-header h1{font-size:20px}.form-label{padding:10px 12px 6px;font-size:13px}.form-content{padding:6px 12px 14px}input[type=text],select,textarea{padding:8px 10px;font-size:16px}.btn{padding:14px 20px}}.form-row:nth-child(3) .form-label{background-color:#fff2e8;font-weight:700}.form-row:nth-child(4) .form-content,.form-row:nth-child(6) .form-content,.form-row:nth-child(7) .form-content,.form-row:nth-child(8) .form-content{background-color:#fafbfc}.form-table .form-row:first-child{background-color:#f1f5f9;border-bottom:2px solid #2c3e50}.form-table .form-row:first-child .form-label{background-color:#e2e8f0;font-weight:700;color:#1e293b}textarea[name=contact_info]{min-height:100px}textarea[name=history]{min-height:120px}textarea[name=contact_report]{min-height:150px}textarea[name=memo]{min-height:80px}@media print{.company-regist-form{box-shadow:none;border:1px solid #000}.form-actions,.dev-info,.breadcrumb{display:none}.error-message{border:1px solid #000;background-color:#f0f0f0}.form-table{border:2px solid #000}.form-row{border-bottom:1px solid #000;page-break-inside:avoid}.form-label{background-color:#f5f5f5!important;border-right:1px solid #000}textarea{min-height:60px}}.company-profile-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.profile-writer{margin-top:10px;display:flex;justify-content:flex-end;padding-right:15px}.writer-form{display:flex;gap:30px;flex-wrap:wrap}.writer-form>div{text-align:right}.section-header-attached{margin-bottom:0;border-bottom:none;border-radius:4px 4px 0 0}.contact-detail-section .profile-table,.contact-report-section .profile-table{margin-top:0;border-top:none}.contact-detail-section .profile-table:first-of-type{border-top:1px solid #333}.profile-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.profile-textarea{width:100%;border:none;outline:none;resize:vertical;font-size:13px;font-family:inherit;color:#333!important}.profile-date-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.search-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;width:32px;height:32px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-btn:hover{background:#007bff;color:#fff;border-color:#007bff;transform:scale(1.05)}.search-btn:active{transform:scale(.95)}.contact-section{width:100%;min-height:150px}.contact-search-field{margin-bottom:15px;padding:10px;background-color:#f8f9fa;border-radius:5px;border:1px solid #e9ecef}.contact-search-field .profile-input{background-color:#fff}.contact-search-visible{display:block;animation:fadeIn .3s ease-in-out}.contact-search-hidden{display:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.contact-item{padding:12px 16px;background-color:#f8f9fa;border-radius:6px;border:2px solid #e9ecef;font-size:13px;line-height:1.4;cursor:pointer;transition:all .2s ease}.contact-item.selected{background-color:#e3f2fd;border-color:#007bff;box-shadow:0 2px 4px #007bff26}.contact-separator{color:#ddd;font-weight:700}.contact-name{font-weight:600;color:#333;display:flex;align-items:center}.primary-badge{background-color:#007bff;color:#fff;padding:2px 6px;border-radius:10px;font-size:11px;font-weight:500;margin-left:6px}.contact-position{color:#666;font-weight:500}.contact-department{color:#888}.contact-phone{color:#007bff;font-weight:500}.no-contacts{color:#999;font-style:italic;padding:16px;text-align:center;background-color:#f8f9fa;border-radius:4px;border:1px dashed #ddd;margin-bottom:15px}.add-contact-section{display:flex;justify-content:center;align-items:center;padding:12px 0;border-top:2px solid #e9ecef;margin-top:5px}.add-contact-btn{padding:10px 20px;background-color:#28a745;color:#fff;border:none;border-radius:5px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .3s}.add-contact-btn:hover:not(:disabled){background-color:#218838}.add-contact-btn:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.5}.readonly-field:focus{background-color:#f8f9fa!important;box-shadow:none}.existing-reports{margin-bottom:20px}.existing-reports h4{margin-bottom:10px;color:#333;font-size:14px}.report-item{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:12px;margin-bottom:8px}.report-date{font-weight:700;color:#007bff;margin-bottom:4px}.report-content{line-height:1.4;white-space:pre-line;color:#333}.report-actions{display:flex;justify-content:center;margin-top:15px}.add-report-btn{background-color:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:13px;cursor:pointer;transition:background-color .3s}.add-report-btn:hover:not(:disabled){background-color:#218838}.add-report-btn:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.5}.profile-actions{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:30px;padding-top:20px;border-top:2px solid #e9ecef}.action-group{display:flex;justify-content:center;gap:20px}.action-btn{padding:12px 24px;font-size:14px;font-weight:700;border:none;border-radius:5px;cursor:pointer;transition:all .3s ease;min-width:100px}.save-btn{background-color:#007bff;color:#fff}.save-btn:hover:not(:disabled){background-color:#0056b3;transform:translateY(-1px)}.cancel-btn{background-color:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background-color:#5a6268;transform:translateY(-1px)}.print-btn:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn:disabled:hover{transform:none}.dirty-indicator{background-color:#fff3cd;color:#856404;padding:8px 16px;border-radius:4px;border:1px solid #ffeaa7;font-size:13px;font-weight:500}.company-profile-container .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}.company-profile-container .modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px!important;max-height:80vh;overflow:hidden;box-shadow:0 4px 20px #00000026}.company-profile-container .modal-content.modal-content-wide{max-width:1100px!important}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.modal-close-btn:hover{background-color:#e9ecef}.search-info{margin-bottom:20px;padding:10px;background:#e3f2fd;border-radius:4px;border-left:4px solid #007bff}.search-info p{margin:0;font-weight:500;color:#0056b3}.search-table{width:100%;border-collapse:collapse;margin-bottom:20px;border:1px solid #e9ecef}.search-table th,.search-table td{padding:12px;text-align:left;border-bottom:1px solid #e9ecef}.search-table th{background:#f8f9fa;font-weight:600;font-size:13px;color:#333}.search-table td{font-size:13px}.search-table tr:hover{background-color:#f8f9fa}.select-btn{background:#007bff;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:20px}.page-btn{padding:8px 12px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px;font-size:13px;transition:all .2s}.page-btn:hover:not(:disabled){background:#f8f9fa;border-color:#007bff}.page-btn.active{background:#007bff;color:#fff;border-color:#007bff}.page-btn:disabled{opacity:.5;cursor:not-allowed}.loading,.no-results{text-align:center;padding:40px;color:#666;font-style:italic}.loading:before{content:"🔄 ";animation:spin 1s linear infinite}@media (max-width: 768px){.company-profile-container{padding:10px}.profile-header{flex-direction:column;gap:10px;text-align:center}.action-group{flex-direction:column;gap:10px}.action-btn{width:100%}.modal-content{width:95%;margin:10px}.search-table{font-size:12px}.search-table th,.search-table td{padding:8px}}@media (max-width: 480px){.profile-title{font-size:20px}.profile-subtitle{font-size:18px}.table-cell-label{width:80px;font-size:12px}.contact-item{padding:8px 12px;font-size:12px}}.search-table .primary-badge{background-color:#007bff;color:#fff;padding:2px 6px;border-radius:10px;font-size:10px;font-weight:500;margin-left:6px}.search-table tbody tr:hover{background-color:#f8f9fa}.search-table td strong{color:#007bff}.search-info{margin-bottom:20px;padding:12px;background:#e3f2fd;border-radius:6px;border-left:4px solid #007bff}.search-info p{margin:0;font-weight:600;color:#0056b3}.profile-input.input-modified,.profile-textarea.input-modified{border:1px solid #e53e3e;background-color:#fff5f5}.profile-input.input-modified:focus,.profile-textarea.input-modified:focus{border-color:#c53030;box-shadow:0 0 0 1px #c53030;outline:none}.form-section h3{color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:8px;margin-bottom:16px}.finance-access-denied{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:16px;margin:16px 0;text-align:center}.finance-access-denied p{color:#6c757d;margin:0;font-style:italic}.form-group input:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed;border-color:#dee2e6}.finance-field{position:relative}.finance-field:after{content:"🔒";position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none;opacity:.5}@media print{.company-profile-container{background-color:#fff;box-shadow:none;padding:0}.profile-actions,.modal-overlay,.search-btn,.add-contact-btn{display:none!important}.profile-table,.contact-item{break-inside:avoid}}.employee-list{max-width:1400px;margin:0 auto}.employee-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px}.employee-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;transition:all .3s ease;border:1px solid #f1f3f4}.employee-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.employee-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #f1f3f4}.employee-name{flex:1}.employee-name h3{color:#333;font-size:20px;font-weight:700;margin:0 0 4px}.employee-id{color:#666;font-size:14px;font-weight:500;font-family:monospace}.employee-status{flex-shrink:0}.employee-details{padding:16px 24px}.employee-details p{margin:10px 0;font-size:14px;color:#555;line-height:1.5}.employee-details strong{color:#333;font-weight:600}.employee-actions{padding:16px 24px;background-color:#f8f9fa;border-top:1px solid #f1f3f4;text-align:right}@media (max-width: 768px){.employee-grid{grid-template-columns:1fr}.employee-header{flex-direction:column;align-items:flex-start;gap:12px}.employee-status{align-self:flex-end}}.employee-form{max-width:800px;margin:0 auto;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.form{display:flex;flex-direction:column;gap:32px}.form-section{border:1px solid #e2e8f0;border-radius:8px;padding:24px;background-color:#fafafa}.section-title{margin:0 0 20px;color:#2d3748;font-size:18px;font-weight:600;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1 / -1}label{font-weight:600;color:#374151;font-size:14px;display:flex;align-items:center;gap:4px}label.required:after{content:"*";color:#e53e3e;font-weight:700}input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{padding:12px 16px;border:2px solid #e2e8f0;border-radius:6px;font-size:14px;font-family:inherit;transition:all .2s ease;background-color:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}input:disabled,select:disabled,textarea:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}input.error,select.error,textarea.error{border-color:#e53e3e;background-color:#fff5f5}input.error:focus,select.error:focus,textarea.error:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}select:disabled{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%9ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e")}textarea{resize:vertical;min-height:80px;line-height:1.5}.field-help{font-size:12px;color:#718096;margin-top:2px}.field-help.highlight{color:#3182ce;font-weight:500}.field-error{font-size:12px;color:#e53e3e;font-weight:500;margin-top:2px;display:flex;align-items:center;gap:4px}.employee-summary{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:16px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.summary-item .label{font-weight:500;color:#495057}.summary-item .value{font-weight:700;color:#212529}.status-active{color:#28a745}.status-inactive{color:#ffc107}.status-terminated{color:#dc3545}@media (max-width: 768px){.employee-form{margin:10px;padding:16px}.page-header h1{font-size:24px}.form-row{grid-template-columns:1fr;gap:16px}.form-section{padding:16px}.section-title{font-size:16px}.form-actions{flex-direction:column-reverse}.btn{width:100%;min-width:unset}.breadcrumb{font-size:12px}.summary-grid{grid-template-columns:1fr}}@media (max-width: 480px){.employee-form{margin:5px;padding:12px}.page-header{margin-bottom:20px;padding-bottom:16px}.page-header h1{font-size:20px}.form-section{padding:12px}.section-title{font-size:14px;margin-bottom:16px}input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{padding:10px 12px;font-size:16px}.btn{padding:14px 20px}.summary-item{flex-direction:column;align-items:flex-start;gap:2px}}input[type=date]{position:relative}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:4px;margin-right:2px;opacity:.6;filter:invert(.8)}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #3182ce;outline-offset:2px}@media print{.employee-form{box-shadow:none;border:1px solid #000}.form-actions,.dev-info{display:none}.error-message{border:1px solid #000;background-color:#f0f0f0}.form-section{break-inside:avoid}.page-header{break-after:avoid}}@media (prefers-color-scheme: dark){.employee-form{background-color:#2d3748;color:#e2e8f0}.form-section{background-color:#4a5568;border-color:#718096}.section-title{color:#e2e8f0;border-color:#718096}input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{background-color:#2d3748;border-color:#718096;color:#e2e8f0}input:focus,select:focus,textarea:focus{border-color:#63b3ed}.field-help{color:#a0aec0}.employee-summary{background-color:#4a5568;border-color:#718096}.summary-item .label{color:#a0aec0}.summary-item .value{color:#e2e8f0}}.hr-management-container{padding:20px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:30px}.page-header h1{font-size:28px;font-weight:700;color:#2c3e50;margin:0 0 8px}.page-header .subtitle{color:#7f8c8d;font-size:14px}.organization-section{margin-bottom:40px;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.management-section{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.tab-navigation{display:flex;gap:10px;border-bottom:2px solid #e0e0e0;margin-bottom:30px}.tab-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:15px;font-weight:500;color:#7f8c8d;transition:all .3s}.tab-button:hover{color:#2c3e50;background-color:#f8f9fa}.tab-button.active{color:#007bff;border-bottom-color:#007bff}.tab-icon{font-size:18px}.tab-content{animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.organization-chart{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.chart-header h2{font-size:20px;font-weight:700;color:#2c3e50;margin:0}.chart-stats{display:flex;gap:16px}.chart-stats span{padding:6px 12px;background-color:#f0f0f0;border-radius:4px;font-size:13px;color:#555}.chart-content{display:grid;grid-template-columns:1fr 350px;gap:24px}.tree-view{overflow-x:auto}.tree-root{min-width:400px}.company-node{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;font-weight:700;font-size:16px;margin-bottom:16px}.tree-node{margin-left:24px}.tree-node-content{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:6px;margin:4px 0;cursor:pointer;transition:all .2s}.tree-node-content:hover{background-color:#f8f9fa}.tree-node-content.division{background-color:#e3f2fd;font-weight:600;color:#1976d2}.tree-node-content.team{background-color:#fff3e0;font-weight:500;color:#f57c00}.tree-node-content.employee{background-color:#f5f5f5;color:#424242}.tree-icon{font-size:16px}.tree-children{margin-left:20px;border-left:2px dashed #ddd;padding-left:12px}.employee-detail-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;height:fit-content;position:sticky;top:20px}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.panel-header h3{font-size:16px;font-weight:600;color:#2c3e50;margin:0}.close-button{background:none;border:none;font-size:20px;color:#999;cursor:pointer;padding:4px 8px}.close-button:hover{color:#333}.panel-content{padding:16px}.detail-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-row .label{font-weight:500;color:#666;font-size:13px}.detail-row .value{color:#2c3e50;font-size:14px}.employee-management-tab,.department-management-tab{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.tab-header h2{font-size:20px;font-weight:700;color:#2c3e50;margin:0}.filters{display:flex;gap:12px;margin-bottom:20px}.search-input,.filter-select{padding:10px 14px;border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none}.search-input{flex:1;min-width:250px}.search-input:focus,.filter-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.filter-select{min-width:150px;cursor:pointer}.btn-primary,.btn-secondary,.btn-edit{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-edit{background-color:#17a2b8;color:#fff;padding:6px 12px;font-size:13px}.btn-edit:hover{background-color:#138496}.table-container{overflow-x:auto;border:1px solid #e0e0e0;border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead{background-color:#f8f9fa}.data-table th{padding:12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.data-table td{padding:12px;border-bottom:1px solid #e9ecef}.data-table tbody tr:hover{background-color:#f8f9fa}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;animation:slideUp .3s}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.modal-header h3{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.modal-close{background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.modal-close:hover{background-color:#f0f0f0;color:#333}.modal-content form{padding:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:13px;font-weight:500;color:#495057;margin-bottom:6px}.form-group input,.form-group select{padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;outline:none}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.department-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.department-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s}.department-card:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff26;transform:translateY(-2px)}.department-card.selected{border-color:#007bff;background-color:#f0f7ff}.department-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.department-card .card-header h3{font-size:18px;font-weight:700;color:#2c3e50;margin:0}.department-card .total-count{font-size:20px;font-weight:700;color:#007bff}.department-card .stat-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.stat-label{color:#666}.stat-value{font-weight:600;color:#2c3e50}.stat-value.active{color:#28a745}.stat-value.inactive{color:#dc3545}.department-card .card-footer{margin-top:16px;padding-top:16px;border-top:1px solid #e0e0e0}.teams{display:flex;flex-wrap:wrap;gap:6px}.team-badge{display:inline-block;padding:4px 10px;background-color:#e3f2fd;color:#1976d2;border-radius:12px;font-size:12px;font-weight:500}.division-detail{margin-top:30px}.division-detail h3{font-size:18px;font-weight:700;color:#2c3e50;margin-bottom:16px}.overall-stats{margin-top:40px;padding:24px;background:#f8f9fa;border-radius:12px}.overall-stats h3{font-size:18px;font-weight:700;color:#2c3e50;margin-bottom:20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.stat-box{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000000d}.stat-icon{font-size:36px}.stat-info .stat-value{font-size:28px;font-weight:700;color:#2c3e50}.stat-info .stat-label{font-size:13px;color:#7f8c8d;margin-top:4px}.loading{text-align:center;padding:60px 20px;color:#7f8c8d;font-size:16px}.project-list{max-width:1400px;margin:0 auto}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:24px}.project-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;transition:all .3s ease;border:1px solid #f1f3f4}.project-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.project-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #f1f3f4}.project-title{flex:1}.project-title h3{color:#333;font-size:20px;font-weight:700;margin:0 0 4px}.project-code{color:#666;font-size:14px;font-weight:500;font-family:monospace}.project-status{flex-shrink:0}.project-details{padding:16px 24px}.project-description{margin:0 0 16px;font-size:14px;color:#666;line-height:1.6;font-style:italic}.project-details p{margin:10px 0;font-size:14px;color:#555;line-height:1.5}.project-details strong{color:#333;font-weight:600}.project-dates{display:flex;gap:20px;margin-top:12px;font-size:13px}.project-dates span{color:#666}.project-actions{padding:16px 24px;background-color:#f8f9fa;border-top:1px solid #f1f3f4;text-align:right}@media (max-width: 768px){.project-grid{grid-template-columns:1fr}.project-header{flex-direction:column;align-items:flex-start;gap:12px}.project-status{align-self:flex-end}.project-dates{flex-direction:column;gap:8px}}.project-form{max-width:1000px;margin:0 auto}.project-form .form{margin-top:0}.project-form .form-group label[for=project_code]:after,.project-form .form-group label[for=project_name]:after{content:" *";color:#dc3545;font-weight:700}.project-form .form-group input[name=project_code]{font-family:Courier New,Monaco,monospace;font-weight:600;text-transform:uppercase}.project-form .form-group input[name=budget]{font-family:Courier New,Monaco,monospace;text-align:right}.field-help{display:block;margin-top:4px;font-size:12px;color:#666;font-style:italic}.project-summary{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;padding:20px;margin-top:10px}.project-summary h4{color:#333;margin:0 0 16px;font-size:16px;font-weight:600;display:flex;align-items:center}.project-summary h4:before{content:"📊";margin-right:8px;font-size:18px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.summary-item .label{font-weight:500;color:#555;font-size:14px}.summary-item .value{font-weight:700;color:#333;font-size:14px}.project-form .form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.project-form .form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:32px}.project-form .form-group input[type=date]{font-family:inherit}.project-form .form-group select[name=status]{font-weight:500}.project-form .form-group select[name=status][value=planning]{color:#06c}.project-form .form-group select[name=status][value=active]{color:#28a745}.project-form .form-group select[name=status][value=completed]{color:#6f42c1}.project-form .form-group select[name=status][value=cancelled]{color:#dc3545}.project-form .loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:16px;color:#666}.project-form .error-message{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #f5c6cb;color:#721c24;padding:16px;border-radius:8px;margin-bottom:24px;display:flex;align-items:center}.project-form .error-message:before{content:"⚠️";margin-right:8px;font-size:18px}.project-form .form-actions{background:#f8f9fa;margin:32px -30px -30px;padding:24px 30px;border-top:2px solid #e9ecef;border-radius:0 0 8px 8px}.project-form .btn{min-width:120px;font-weight:600;padding:12px 24px}.project-form .btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);border:none;box-shadow:0 2px 4px #007bff4d}.project-form .btn-primary:hover{box-shadow:0 4px 8px #007bff66;transform:translateY(-1px)}.project-form .btn-secondary{background:linear-gradient(135deg,#6c757d,#545b62);border:none;color:#fff}.project-form .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.project-form{margin:0 16px}.project-form .form{padding:20px}.summary-grid{grid-template-columns:1fr}.summary-item{flex-direction:column;align-items:flex-start;gap:4px}.project-form .form-actions{margin:24px -20px -20px;padding:20px}.project-form .form-actions{flex-direction:column;gap:12px}.project-form .btn{width:100%;min-width:unset}}@media (max-width: 480px){.project-summary{padding:16px}.project-summary h4{font-size:14px}.summary-item{padding:6px 10px}.summary-item .label,.summary-item .value{font-size:13px}}.project-regist-form{max-width:1200px;margin:0 auto;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.page-header{margin-bottom:30px;border-bottom:2px solid #f5f5f5;padding-bottom:20px}.page-header h1{margin:0 0 10px;color:#2c3e50;font-size:28px;font-weight:600}.breadcrumb{font-size:14px;color:#7f8c8d}.breadcrumb-link{color:#3498db;cursor:pointer;text-decoration:none}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-separator{margin:0 8px;color:#bdc3c7}.breadcrumb-current{color:#2c3e50;font-weight:500}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.error-message{display:flex;align-items:flex-start;gap:12px;padding:16px;margin-bottom:24px;background-color:#fff5f5;border:1px solid #fed7d7;border-radius:6px;color:#c53030}.error-icon{font-size:18px;flex-shrink:0;margin-top:1px}.error-content{flex:1;line-height:1.5}.regist-form{display:flex;flex-direction:column;gap:32px}.form-table{border:2px solid #2c3e50;border-radius:8px;overflow:hidden;background-color:#fff}.form-row{display:flex;border-bottom:1px solid #e0e0e0;min-height:60px}.form-row:last-child{border-bottom:none}.form-label{background-color:#f8f9fa;border-right:1px solid #e0e0e0;padding:15px 20px;min-width:200px;max-width:200px;display:flex;align-items:center;font-weight:600;color:#2c3e50;font-size:14px;line-height:1.4}.form-label.required{position:relative}.form-label.required:after{content:"*";color:#e53e3e;font-weight:700;margin-left:4px}.form-content{flex:1;padding:15px 20px;display:flex;flex-direction:column;justify-content:center;gap:8px;background-color:#fff}.form-content.multi-line{align-items:stretch}.form-content.date-range{flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}.date-separator{font-weight:600;color:#6b7280;margin:0 4px}.form-content.date-range input[type=date]{flex:1;min-width:150px}input[type=text],input[type=date],select,textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;font-family:inherit;transition:all .2s ease;background-color:#fff}input[type=text]:focus,input[type=date]:focus,select:focus,textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}input[type=text]:disabled,input[type=date]:disabled,select:disabled,textarea:disabled{background-color:#f7fafc;color:#a0aec0;cursor:not-allowed}input.error,textarea.error{border-color:#e53e3e;background-color:#fff5f5}input.error:focus,textarea.error:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}textarea{resize:vertical;line-height:1.5;min-height:80px}select{cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field-help{font-size:12px;color:#718096;margin-top:4px;line-height:1.4}.field-error{font-size:12px;color:#e53e3e;font-weight:500;margin-top:4px;display:flex;align-items:center;gap:4px}.field-error:before{content:"⚠";font-size:10px}.project-summary{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;margin-top:20px}.project-summary h3{margin:0 0 16px;color:#2c3e50;font-size:18px;font-weight:600;border-bottom:2px solid #e9ecef;padding-bottom:8px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.summary-item:last-child{border-bottom:none}.summary-item .label{font-weight:600;color:#495057;min-width:100px}.summary-item .value{font-weight:500;color:#212529;text-align:right;flex:1}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e2e8f0;margin-top:32px}.btn{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;min-width:120px;justify-content:center}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background-color:#3182ce;color:#fff}.btn-primary:hover:not(:disabled){background-color:#2c5282;transform:translateY(-1px);box-shadow:0 4px 8px #3182ce4d}.btn-secondary{background-color:#718096;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#4a5568;transform:translateY(-1px)}.btn-outline{background-color:transparent;color:#4a5568;border:2px solid #e2e8f0}.btn-outline:hover:not(:disabled){background-color:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.dev-info{margin-top:40px;padding:16px;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;font-family:Courier New,monospace}.dev-info summary{cursor:pointer;font-weight:700;color:#6c757d;margin-bottom:8px}.dev-info pre{font-size:12px;background-color:#fff;padding:12px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}.form-row:nth-child(1) .form-label{background-color:#e8f4fd;font-weight:700}.form-row:nth-child(2) .form-label{background-color:#fff2e8;font-weight:700}.form-row:nth-child(4) .form-label{background-color:#f0f9ff;font-weight:700}.form-row:nth-child(7) .form-content,.form-row:nth-child(8) .form-content,.form-row:nth-child(9) .form-content,.form-row:nth-child(10) .form-content,.form-row:nth-child(11) .form-content,.form-row:nth-child(12) .form-content{background-color:#fafbfc}.form-label.required{background-color:#fef7f0!important}textarea[name=project_scope]{min-height:120px}textarea[name=key_deliverables]{min-height:100px}textarea[name=stakeholders],textarea[name=risk_factors],textarea[name=success_criteria],textarea[name=memo]{min-height:80px}@media (max-width: 768px){.project-regist-form{margin:10px;padding:16px}.page-header h1{font-size:24px}.form-row{flex-direction:column;min-height:auto}.form-label{min-width:auto;max-width:none;border-right:none;border-bottom:1px solid #e0e0e0;padding:12px 16px 8px}.form-content{padding:8px 16px 16px}.form-content.date-range{flex-direction:column;align-items:stretch}.date-separator{display:none}.form-content.date-range input[type=date]{min-width:auto}.summary-grid{grid-template-columns:1fr}.summary-item{flex-direction:column;align-items:flex-start;gap:4px}.summary-item .value{text-align:left}.form-actions{flex-direction:column-reverse}.btn{width:100%;min-width:unset}.breadcrumb{font-size:12px}}@media (max-width: 480px){.project-regist-form{margin:5px;padding:12px}.page-header{margin-bottom:20px;padding-bottom:16px}.page-header h1{font-size:20px}.form-label{padding:10px 12px 6px;font-size:13px}.form-content{padding:6px 12px 14px}input[type=text],input[type=date],select,textarea{padding:8px 10px;font-size:16px}.btn{padding:14px 20px}.project-summary{padding:16px}.project-summary h3{font-size:16px}}.btn:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #3182ce;outline-offset:2px}input::placeholder,textarea::placeholder{color:#9ca3af;font-style:italic}@media print{.project-regist-form{box-shadow:none;border:1px solid #000}.form-actions,.dev-info,.breadcrumb{display:none}.error-message{border:1px solid #000;background-color:#f0f0f0}.form-table{border:2px solid #000}.form-row{border-bottom:1px solid #000;page-break-inside:avoid}.form-label{background-color:#f5f5f5!important;border-right:1px solid #000}.project-summary{border:1px solid #000;background-color:#f9f9f9;page-break-inside:avoid}textarea{min-height:60px}}.project-info-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.project-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.project-title{margin:0;font-size:24px;font-weight:700}.project-logo{font-size:18px;font-weight:700}.project-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.project-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.project-subtitle{margin:0;font-size:20px;font-weight:700}.project-writer{margin-top:10px}.project-section{margin-bottom:30px}.project-table{width:100%;border-collapse:collapse;border:1px solid #333}.contact-date-header{width:120px}.search-prefix{color:#007bff;font-weight:700;white-space:nowrap;margin-right:8px}.input-with-search{display:flex;align-items:center}.input-with-button{display:flex;gap:8px;align-items:center}.input-with-btn{flex:1}.profile-btn{padding:4px 12px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;white-space:nowrap;transition:background-color .3s}.profile-btn:hover{background-color:#0056b3}.profile-btn:focus{outline:none;box-shadow:0 0 0 2px #007bff40}.project-input,.project-textarea,.project-date-input{color:#333!important}.project-input{width:100%;border:none;outline:none;font-size:13px}.project-input[type=email]{background-color:#fff!important;border-color:#dcdcdc!important}.project-input:-webkit-autofill,.project-input:-webkit-autofill:hover,.project-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.project-textarea{width:100%;border:none;outline:none;resize:vertical;font-size:13px;font-family:inherit}.project-date-input{width:100%;border:none;outline:none;font-size:13px}.new-info-row{background-color:#fafafa}.info-content-container{position:relative}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:80vh;overflow:hidden}.modal-content.search-modal{max-width:1100px;width:95%}.modal-body{padding:20px;max-height:60vh;overflow-y:auto}.pagination{display:flex;justify-content:center;align-items:center;gap:8px}.pagination button{padding:8px 12px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination button:hover:not(:disabled){background:#f8f9fa}.page-info{margin:0 16px;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-width:800px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.modal-header h3{margin:0;color:#333}.modal-header button{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-header button:hover{color:#333;background-color:#f8f9fa;border-radius:4px}.modal-body{padding:20px}.search-input-container{margin-bottom:16px}.search-input-container input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.search-input-container input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.search-results{max-height:400px;overflow-y:auto;border:1px solid #ddd;border-radius:4px}.select-btn{background-color:#007bff;color:#fff;border:none;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:12px}.select-btn:hover{background-color:#0056b3}.input-with-inner-btn{width:100%;padding-right:90px}.status-badge{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500}.status-planning{background:#e3f2fd;color:#1976d2}.status-active{background:#e8f5e8;color:#2e7d32}.status-completed{background:#f3e5f5;color:#7b1fa2}.status-cancelled{background:#ffebee;color:#c62828}.writer-info-display{background-color:#f8f9fa;padding:12px;border-radius:6px;border:1px solid #e9ecef;margin-bottom:16px}.writer-info-display h4{margin:0 0 8px;color:#495057;font-size:14px}.writer-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;font-size:13px}.input-with-inner-btn{padding-right:80px}.writer-field-input.readonly-input{background-color:#f8f9fa;color:#6c757d}.writer-result-item{padding:8px 12px;border-bottom:1px solid #eee;cursor:pointer;display:flex;justify-content:space-between}.writer-result-item:hover{background-color:#f8f9fa}.inner-checklist-container{width:100%;margin-bottom:15px}.inner-checklist-table{width:100%;border-collapse:collapse;border:1px solid #333;font-size:12px;table-layout:fixed}.inner-table-header:nth-child(1){width:25%}.inner-table-header:nth-child(2){width:45%}.inner-table-header:nth-child(3){width:15%}.inner-table-header:nth-child(4){width:15%}.inner-table-cell:nth-child(1){width:25%}.inner-table-cell:nth-child(2){width:45%}.inner-table-cell:nth-child(3){width:15%}.inner-table-cell:nth-child(4){width:15%}.inner-table-header{background-color:#aae;color:#fff;padding:8px 12px;font-size:13px;font-weight:700;border:1px solid #77e;text-align:center}.inner-table-cell{padding:8px 12px;border:1px solid #aae;font-size:12px;vertical-align:middle}.inner-table-cell-label{background-color:#eef;text-align:center;font-weight:500}.inner-table-cell-content{padding:12px;line-height:1.4;text-align:left!important}.inner-table-cell-content .bullet-content{text-align:left;line-height:1.5}.inner-table-cell-weight{background-color:#dedeff;text-align:center;font-weight:700}.inner-table-cell-input{text-align:center}.inner-table-cell-merged{background-color:#ceceff;text-align:center;font-weight:700}.inner-table-cell-total{background-color:#fff3cd;text-align:center;font-weight:700;font-size:14px;color:#856404}.inner-table-cell-dash{background-color:#f8f9fa;text-align:center;color:#666}.inner-table-cell-grade{background-color:#f8f9fa;text-align:center;padding:8px}.writer-opinion-section{width:100%}.checklist-score-input{width:60px;border:1px solid #ddd;border-radius:4px;padding:4px 8px;text-align:center;font-size:12px;background-color:#fff;-moz-appearance:textfield}.checklist-score-input::-webkit-outer-spin-button,.checklist-score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.checklist-score-input::placeholder{color:#999;font-style:italic}@media print{.project-info-container{background-color:#fff;padding:0;margin:0;max-width:none}.project-header,.project-main{box-shadow:none;border-radius:0}.button-section{display:none}.project-table{page-break-inside:avoid}.project-section{page-break-inside:avoid;margin-bottom:20px}}.writer-display{font-size:13px;color:#555;text-align:right;padding:10px 15px 0 0;height:42px;display:flex;justify-content:flex-end;align-items:center}.writer-display span:first-child{font-weight:700;margin-right:5px}.contact-section{width:100%}.contact-list{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.contact-item{padding:12px 16px;background-color:#f8f9fa;border-radius:6px;border:2px solid #e9ecef;font-size:13px;cursor:pointer;transition:all .2s ease}.contact-item:hover{background-color:#e9ecef;border-color:#007bff}.contact-item.selected{background-color:#e3f2fd;border-color:#007bff}.contact-info-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contact-separator{color:#ddd}.contact-name{font-weight:600}.primary-badge{background-color:#007bff;color:#fff;padding:2px 6px;border-radius:10px;font-size:11px;margin-left:6px}.contact-position{color:#666}.contact-phone{color:#007bff}.no-contacts{color:#999;padding:16px;text-align:center;background-color:#f8f9fa;border-radius:4px;margin-bottom:15px}.add-contact-section{display:flex;justify-content:center;padding-top:12px;border-top:1px solid #e9ecef}.add-contact-btn{padding:10px 20px;background-color:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer}.add-contact-btn:disabled{background-color:#6c757d;cursor:not-allowed}.input-with-search .search-btn{flex-shrink:0}.selected-contact-btn{width:100%;padding:6px 10px;background-color:#e3f2fd;border:1px solid #007bff;color:#0056b3;border-radius:4px;text-align:left;font-weight:500;cursor:pointer;transition:background-color .2s}.selected-contact-btn:hover{background-color:#d1eaff}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-section h4{margin-top:0;margin-bottom:12px;font-size:16px;border-left:3px solid #007bff;padding-left:8px;color:#333}.detail-section p{margin:6px 0;font-size:14px;line-height:1.5}.report-list{max-height:200px;overflow-y:auto;border:1px solid #f0f0f0;border-radius:4px;padding:10px}.contact-search-placeholder{display:flex;align-items:center;justify-content:center;min-height:35px}.selected-contact-container{display:flex;align-items:center;min-height:35px;padding:2px 0}.contact-badge{background:#e3f2fd;color:#1976d2;font-weight:500;border:1px solid #bde0fe;cursor:pointer;transition:background-color .2s;padding:6px 12px;font-size:13px}.contact-badge:hover{background-color:#d1eaff}/*!* 담당자 항목의 새 컨테이너 스타일 *!*/.modal-content.wide-modal{max-width:800px}.detail-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.detail-section:last-child{border-bottom:none}.detail-section h4{margin-top:0;margin-bottom:12px;font-size:16px;border-left:3px solid #007bff;padding-left:8px}.detail-section p{margin:6px 0;font-size:14px}.report-list{max-height:200px;overflow-y:auto;border:1px solid #f0f0f0;padding:10px;border-radius:4px}.report-item{padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:13px}.report-item:last-child{border-bottom:none}.company-badge{background:#d4edda;color:#155724;border:1px solid #c3e6cb;cursor:pointer;font-weight:500;padding:6px 12px;font-size:13px;transition:background-color .2s;border-radius:16px}.company-badge:hover{background-color:#c3e6cb}.search-btn:disabled{cursor:not-allowed;opacity:.5}.readonly-field{background-color:#f8f9fa!important;color:#6c757d!important;cursor:not-allowed}.badge-container{display:flex;align-items:center;gap:6px}.reset-badge-btn{background:#6c757d;color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:14px;font-weight:700;line-height:20px;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.reset-badge-btn:hover{background-color:#dc3545}.company-badge.with-reset{display:flex;justify-content:space-between;align-items:center;width:auto;min-width:120px;padding:6px 8px 6px 12px}.badge-text{margin-right:8px}.badge-reset-icon{background:#0000001a;border-radius:50%;width:18px;height:18px;font-size:14px;font-weight:700;line-height:18px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.badge-reset-icon:hover{background-color:#dc3545cc;color:#fff}.search-results-table{width:100%;border-collapse:collapse;table-layout:fixed;border:1px solid #ddd}.search-results-table th,.search-results-table td{padding:8px 12px;border-bottom:1px solid #eee;border-right:1px solid #eee;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-results-table th:last-child,.search-results-table td:last-child{border-right:none}.search-results-table .col-project{width:30%}.search-results-table .col-client{width:20%}.search-results-table .col-status{width:10%}.search-results-table .col-writer,.search-results-table .col-dept{width:12%}.search-results-table .col-created{width:10%}.search-results-table .col-select{width:6%}.search-results-table thead th{background-color:#f8f9fa;font-weight:600;text-align:center}.search-results-table td:nth-last-child(1){text-align:center}@media (max-width: 768px){.project-info-container{padding:10px}.project-header{flex-direction:column;text-align:center;gap:10px}.writer-form{flex-direction:column;gap:15px}.writer-field{justify-content:center}.writer-field-input{width:200px}.project-table{font-size:12px}.table-cell-label,.contact-date-cell{width:100px}.button-section{flex-direction:column;align-items:center}.submit-btn,.print-btn{width:200px}}.kickoff-checklist-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.checklist-table{width:100%;border-collapse:collapse;border:1px solid #333}.weight-header,.score-header{width:80px}.table-cell{padding:8px 12px;border:1px solid #ddd;font-size:13px;vertical-align:middle}.table-cell-label{background-color:#f8f9fa;width:120px;text-align:center;font-weight:500}.table-cell-content{padding:12px;line-height:1.4}.table-cell-weight{background-color:#f0f0f0;text-align:center;font-weight:700;width:80px}.table-cell-input{padding:8px 12px;border:1px solid #ddd;text-align:center}.table-cell-merged{background-color:#e9ecef;text-align:center;font-weight:700}.table-cell-total{background-color:#fff3cd;text-align:center;font-weight:700;font-size:16px;color:#856404}.table-cell-dash{background-color:#f8f9fa;text-align:center;color:#666}.table-cell-grade{background-color:#f8f9fa;text-align:center;padding:8px}.bullet-content{font-size:13px;line-height:1.5}.checklist-score-input{width:60px;border:1px solid #ddd;border-radius:4px;padding:4px 8px;text-align:center;font-size:14px}.checklist-score-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.total-row,.grade-row{background-color:#f8f9fa;font-weight:700}.grade-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-weight:700;font-size:16px;min-width:30px;text-align:center}.grade-a{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.grade-b{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}.grade-c{background-color:#f8d7da;color:#721c24;border:1px solid #f1b0b7}.opinion-table{margin-top:15px}.opinion-label{width:150px}.checklist-textarea{width:100%;border:none;outline:none;resize:vertical;font-size:13px;font-family:inherit;padding:8px;border:1px solid #ddd;border-radius:4px}.checklist-textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}@media print{.kickoff-checklist-container{background-color:#fff;padding:0;margin:0;max-width:none}.checklist-header,.checklist-main{box-shadow:none;border-radius:0}.button-section{display:none}.checklist-table{page-break-inside:avoid}.checklist-section{page-break-inside:avoid;margin-bottom:20px}.grade-badge{border:1px solid #333!important}}@media (max-width: 768px){.kickoff-checklist-container{padding:10px}.checklist-header{flex-direction:column;text-align:center;gap:10px}.writer-form{flex-direction:column;gap:15px}.writer-field{justify-content:center}.writer-field-input{width:200px}.checklist-table{font-size:11px}.table-cell-label{width:80px}.weight-header,.score-header,.table-cell-weight{width:60px}.checklist-score-input{width:50px;font-size:12px}.bullet-content{font-size:11px}.opinion-label{width:100px}.button-section{flex-direction:column;align-items:center}.submit-btn,.print-btn{width:200px}.grade-badge{font-size:14px;padding:3px 10px}}.project-profile-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9fa;min-height:100vh}.profile-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.profile-title{margin:0;font-size:24px;font-weight:700}.profile-logo{font-size:18px;font-weight:700}.profile-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.profile-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.profile-subtitle{margin:0;font-size:20px;font-weight:700}.profile-writer{margin-top:10px}.profile-section{margin-bottom:30px}.section-header-margin{margin-top:20px}.profile-table{width:100%;border-collapse:collapse;border:1px solid #333}.section-table{margin-top:15px}.table-header-category{width:120px}.table-header-empty{background-color:#333}.blue-highlight-label{color:#00f;font-weight:900;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.table-cell-rowspan{vertical-align:middle;text-align:center;font-weight:700;background-color:#f0f0f0}.table-cell-top{vertical-align:middle}.input-container{position:relative;display:flex;align-items:center}.input-with-inner-btn{width:100%;padding-right:120px}.inner-profile-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);padding:3px 8px;background-color:#007bff;color:#fff;border:none;border-radius:3px;font-size:11px;cursor:pointer;white-space:nowrap;transition:background-color .3s;z-index:1}.inner-profile-btn:hover{background-color:#0056b3}.inner-profile-btn:focus{outline:none;box-shadow:0 0 0 2px #007bff40}.profile-input,.profile-textarea,.profile-date-input{color:#333!important}.profile-input{width:100%;border:none;outline:none;font-size:13px}.profile-input[type=email]{background-color:#fff!important;border-color:#dcdcdc!important}.profile-input:-webkit-autofill,.profile-input:-webkit-autofill:hover,.profile-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.profile-textarea{width:100%;border:none;outline:none;resize:vertical;font-size:13px;font-family:inherit}.profile-date-input{width:100%;border:none;outline:none;font-size:13px}.additional-info{margin-bottom:10px}.info-label{font-size:12px;margin-bottom:5px;font-weight:700}.info-textarea{width:100%;height:40px;border:1px solid #ddd;resize:vertical;font-size:13px;padding:4px;background-color:#fff!important;color:#333!important}.info-textarea:focus{background-color:#fff!important;color:#333!important;outline:none}.contact-date-cell{width:120px;text-align:center;vertical-align:middle}.contact-date{font-weight:700;color:#333}.contact-content{line-height:1.4;white-space:pre-line}.new-report-row{background-color:#fafafa}.new-report-container{position:relative}@media print{.project-profile-container{background-color:#fff;padding:0;margin:0;max-width:none}.profile-header,.profile-main{box-shadow:none;border-radius:0}.button-section{display:none}.profile-table{page-break-inside:avoid}.profile-section{page-break-inside:avoid;margin-bottom:20px}}@media (max-width: 768px){.project-profile-container{padding:10px}.profile-header{flex-direction:column;text-align:center;gap:10px}.writer-form{flex-direction:column;gap:15px}.writer-field{justify-content:center}.writer-field-input{width:200px}.profile-table{font-size:12px}.table-cell-label{width:100px;font-size:11px;font-weight:700;color:#00f}.profile-input,.profile-textarea{font-size:12px}.textarea-small{height:35px}.textarea-medium{height:50px}.textarea-large{height:70px}.textarea-xlarge{height:90px}.button-section{flex-direction:column;align-items:center}.submit-btn,.print-btn{width:200px}}.multi-line-label{line-height:1.2;font-size:12px}.profile-textarea::placeholder{color:#999;font-style:italic;line-height:1.4}.profile-input:focus,.profile-textarea:focus{background-color:#fff!important;outline:none;border:none}.writer-field-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.project-profile-container .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}.project-profile-container .modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px!important;max-height:80vh;overflow:hidden;box-shadow:0 4px 20px #00000026}.project-profile-container .modal-content.modal-content-wide{max-width:1100px!important}.readonly-mode{background-color:#f8f9fa;border-radius:5px;padding:5px}.readonly-mode input[readOnly],.readonly-mode textarea[readOnly]{background-color:#e9ecef!important;color:#495057;cursor:not-allowed;border-color:#ced4da}.readonly-mode .section-header{color:#6c757d}.toggle-profile-btn.active{background-color:#0056b3}.toggle-profile-btn.inactive{background-color:#6c757d}.toggle-profile-btn.active:hover{background-color:#00408f}.toggle-profile-btn.inactive:hover{background-color:#5a6268}.scroll-up-wrapper{text-align:right;padding:10px}.scroll-up-btn{background-color:#e9ecef;color:#495057;border:1px solid #ced4da;width:40px;height:40px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer;transition:background-color .2s,box-shadow .2s}.scroll-up-btn:hover{background-color:#dee2e6;box-shadow:0 2px 4px #0000001a}.modal-content{background:#fff;border-radius:8px;width:90%!important;max-width:800px!important;max-height:80vh;overflow:hidden;box-shadow:0 4px 20px #00000026}.modal-content.modal-content-wide{max-width:1100px!important}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee;background-color:#f8f9fa}.modal-header h3{margin:0;font-size:18px;font-weight:700}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d}.modal-close-btn:hover{color:#495057}.modal-body{padding:20px;overflow-y:auto;max-height:calc(80vh - 140px)}.search-input-container{margin-bottom:15px}.search-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.search-input:focus{outline:none;border-color:#007bff}.search-table{width:100%;border-collapse:collapse}.search-table th,.search-table td{padding:10px;text-align:left;border-bottom:1px solid #eee}.search-table th{background-color:#f8f9fa;font-weight:700;font-size:14px}.search-table tbody tr{cursor:pointer;transition:background-color .2s}.search-table tbody tr:hover{background-color:#f0f0f0}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #eee;background-color:#f8f9fa}.modal-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.modal-btn-primary{background-color:#007bff;color:#fff}.modal-btn-primary:hover{background-color:#0056b3}.modal-btn-secondary{background-color:#6c757d;color:#fff}.modal-btn-secondary:hover{background-color:#545b62}/*!* ProjectKickoff.css *!*//*!* 메인 컨테이너 *!*//*!* 헤더 *!*//*!* 메인 착수서 섹션 *!*//*!* 착수서 타이틀 영역 *!*//*!* 섹션 *!*//*!* 섹션 헤더 *!*//*!* 테이블 스타일 *!*//*!* 테이블 헤더 *!*//*!* 테이블 셀 *!*//*!* 입력 필드 *!*//*!* 입력 필드 안에 버튼이 있는 컨테이너 *!*//*!* 날짜 입력 필드 *!*//*!* bullet point가 자동으로 추가되는 텍스트 영역 *!*//*!* 부가 정보 섹션 *!*//*!* 컨택 리포트 특별 스타일 *!*//*!* 토글 애니메이션 효과 *!*//*!* 파일 업로드 섹션 *!*//*!* 반응형 파일 업로드 *!*//*!* 테이블 액션 버튼 섹션 *!*//*!* 버튼 섹션 *!*//*!* 파일 업로드 관련 추가 CSS - ProjectKickoff.css에 추가 *!*//*!* 파일 섹션 헤더 *!*//*!* 파일 업로드 컴포넌트 *!*//*!* 빈 상태 메시지 *!*//*!* 파일 리스트 *!*//*!* 업로드 액션 버튼 *!*//*!* 업로드된 파일 목록 *!*//*!* 파일 요약 섹션 *!*//*!* 업로드된 파일과 대기 중 파일 구분 *!*//*!* 파일 다운로드 링크 *!*//*!* 읽기전용 배지 *!*//*!* 파일 타입 배지 *!*//*!* 업로드 진행 상태 *!*//*!* RFP 첨부 버튼 비활성화 상태 *!*//*!* 파일 삭제 버튼 스타일 개선 *!*//*!* 파일 목록 스크롤 *!*//*!* 업로드 날짜 스타일 *!*//*!* 인쇄 스타일 *!*//*!* 반응형 디자인 *!*//*!* 특별한 텍스트 스타일 *!*//*!* 텍스트 영역 플레이스홀더 스타일 *!*//*!* 포커스 상태 *!*//*!* 프로젝트 경험 배지 *!*//*!* 추가 스타일링 *!*//*!* 멀티라인 라벨을 위한 특별 스타일 *!*//*!* ProjectKickoff.css에 추가할 스타일 *!*//*!* 섹션 헤더의 상하 마진 완전 제거 *!*//*!* kickoff-table의 상단 마진도 제거 *!*//*!* 토글 영역 내부의 섹션 헤더와 테이블 간격 제거 *!*//*!* kickoff-section 내부의 헤더와 테이블 사이 간격 제거 *!*//*!* h3 태그 자체의 기본 마진 제거 *!*//*!* 로컬 파일 (업로드 대기중) *!*//*!* 서버 파일 (업로드 완료) *!*//*!* 파일 상태 배지 *!*//*!* 업로드 안내 메시지 *!*/.project-kickoff-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.kickoff-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.kickoff-title{margin:0;font-size:24px;font-weight:700}.kickoff-logo{font-size:18px;font-weight:700}.kickoff-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.kickoff-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.kickoff-subtitle{margin:0;font-size:20px;font-weight:700}.kickoff-section{margin-bottom:30px}.section-header{background-color:#f8f9fa;color:#333;padding:8px 12px;margin:0!important;font-size:14px;font-weight:700}.kickoff-table{width:100%;border-collapse:collapse;border:1px solid #333;margin-top:0!important}.table-cell-label{background-color:#f8f9fa;width:120px;text-align:center;vertical-align:middle;font-weight:500;line-height:1.3}.table-cell-input{padding:8px 12px;border:1px solid #ddd}.kickoff-input,.kickoff-textarea{color:#333!important;font-size:13px;width:100%;border:none;outline:none}.kickoff-textarea{resize:vertical;font-family:inherit}.textarea-small{height:40px}.textarea-medium{height:60px}.textarea-large{height:80px}.textarea-xlarge{height:100px}.kickoff-input::placeholder,.kickoff-textarea::placeholder{color:#999;font-style:italic}.kickoff-textarea::placeholder{line-height:1.4}.kickoff-input:focus,.kickoff-textarea:focus{background-color:#fff!important;outline:none;border:none}.file-upload-section{margin:20px 0;padding:0 10px}.file-drop-zone{border:2px dashed #ddd;border-radius:8px;padding:20px;min-height:200px;max-height:400px;overflow-y:auto;background-color:#fafafa;cursor:pointer;transition:all .3s ease;position:relative}.file-drop-zone:hover{border-color:#007bff;background-color:#f0f8ff}.file-drop-zone.drag-over{border-color:#007bff;background-color:#e3f2fd;transform:scale(1.02)}.file-drop-zone.has-files{max-height:400px;overflow-y:auto}.drop-zone-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:160px;text-align:center}.drop-zone-icon{font-size:48px;margin-bottom:16px;opacity:.6}.drop-zone-text p{margin:4px 0;color:#666}.drop-zone-hint{font-size:12px;color:#999}.file-list{display:flex;flex-direction:column;gap:12px}.file-item{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;transition:box-shadow .2s ease}.file-item:hover{box-shadow:0 2px 8px #0000001a}.file-info{flex:1;display:flex;flex-direction:column;gap:4px}.file-name{font-weight:700;font-size:14px;color:#333;word-break:break-all}.file-details{display:flex;gap:16px;font-size:12px;color:#666;flex-wrap:wrap}.file-size{font-weight:500}.file-date{font-size:11px;color:#999}.file-item.local-file{background-color:#fff9e6;border-left:4px solid #ffc107}.file-item.server-file{background-color:#f0f8ff;border-left:4px solid #28a745}.file-status{margin-left:8px;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:600}.file-status.pending{background-color:#ffc107;color:#856404}.file-status.uploaded{background-color:#28a745;color:#fff}.file-remove-btn{background:none;border:none;color:#dc3545;font-size:16px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease;flex-shrink:0}.file-remove-btn:hover{background-color:#f8d7da}.drop-zone-add-more{display:flex;align-items:center;justify-content:center;padding:12px;border:1px dashed #007bff;border-radius:6px;background-color:#f8f9ff;color:#007bff;font-size:13px;cursor:pointer;transition:all .2s ease}.drop-zone-add-more:hover{background-color:#e3f2fd;border-color:#0056b3}.upload-progress{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:10px;color:#495057;font-size:14px}.upload-spinner{animation:spin 1s linear infinite}.upload-info{margin-top:10px;padding:12px;background-color:#e3f2fd;border:1px solid #90caf9;border-radius:4px;color:#1565c0;font-size:14px;text-align:center}.table-action-section{display:flex;justify-content:flex-end;margin:15px 0;padding:0 10px}.submit-btn{padding:10px 30px;font-size:16px;font-weight:700;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s;background-color:#007bff;color:#fff}@media print{.project-kickoff-container{background-color:#fff;padding:0;margin:0;max-width:none}.kickoff-header,.kickoff-main{box-shadow:none;border-radius:0}.button-section{display:none}.kickoff-table,.kickoff-section{page-break-inside:avoid}.kickoff-section{margin-bottom:20px}}@media (max-width: 768px){.project-kickoff-container{padding:10px}.kickoff-header{flex-direction:column;text-align:center;gap:10px}.writer-form{flex-direction:column;gap:15px}.kickoff-table{font-size:12px}.table-cell-label{width:100px;font-size:11px}.kickoff-input,.kickoff-textarea{font-size:12px}.textarea-small{height:35px}.textarea-medium{height:50px}.textarea-large{height:70px}.textarea-xlarge{height:90px}.button-section{flex-direction:column;align-items:center}.submit-btn{width:200px}.drop-zone-icon{font-size:36px}.drop-zone-message{height:120px}}.pt-postmortem-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.table-cell-label{background-color:#f8f9fa;padding:8px 12px;font-size:13px;font-weight:700;width:150px;text-align:center;line-height:1.3}.table-action-section{display:flex;justify-content:flex-end;gap:10px;margin:15px 0;padding:0 10px}.toggle-profile-btn{padding:8px 20px;background-color:#007bff;color:#fff;border:none;border-radius:5px;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .3s;white-space:nowrap}@media print{.pt-postmortem-container{background-color:#fff;padding:0;margin:0;max-width:none}.postmortem-header,.table-action-section,.button-section{display:none}.postmortem-main{padding:0;box-shadow:none;background-color:#fff}.postmortem-table{border:2px solid #000}.table-header,.table-cell{border:1px solid #000}.section-header{background-color:#f0f0f0!important;-webkit-print-color-adjust:exact}.table-cell-label{background-color:#f8f8f8!important;-webkit-print-color-adjust:exact}}@media (max-width: 768px){.pt-postmortem-container{padding:10px}.postmortem-header{flex-direction:column;gap:10px;text-align:center}.writer-form{flex-direction:column;gap:15px}.writer-field{justify-content:center}.table-action-section{flex-direction:column;gap:10px}.toggle-profile-btn{width:100%}.button-section{flex-direction:column;gap:10px}.submit-btn,.print-btn{width:100%}.postmortem-table{font-size:12px}.table-cell-label{width:120px;padding:6px 8px}.postmortem-input,.postmortem-textarea{font-size:12px}}@media (max-width: 576px){.postmortem-section{overflow-x:auto}.postmortem-table{min-width:600px}}.project-postmortem-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.postmortem-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.postmortem-title{margin:0;font-size:24px;font-weight:700}.postmortem-logo{font-size:18px;font-weight:700}.postmortem-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.postmortem-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.postmortem-subtitle{margin:0;font-size:20px;font-weight:700}.postmortem-writer{margin-top:10px}.writer-form{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.writer-field-label{font-size:14px;font-weight:700;min-width:80px}.postmortem-section{margin-bottom:30px}.section-header-margin{margin-top:15px}.table-header-empty{background-color:#333;width:15%}.postmortem-table{width:100%;border-collapse:collapse;border:1px solid #333}.postmortem-table-customized{width:100%;border-collapse:collapse;border:1px solid #333;table-layout:fixed}.postmortem-table .dropdown-cell{width:50px!important}.table-cell{border:1px solid #333;vertical-align:top}.table-cell-label{background-color:#f8f9fa;padding:8px 12px;font-size:13px;font-weight:700;width:80px;text-align:center;line-height:1.3}.table-cell-input{padding:4px;background-color:#fff}.table-cell-rowspan{vertical-align:middle;text-align:center;font-weight:700;background-color:#f0f0f0;width:100px}.dropdown-cell{width:20px}.add-button-cell,.input-with-button{position:relative}.postmortem-select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;background-color:#fff;color:#333}.postmortem-select:focus{outline:none;border-color:#007bff}.add-row-btn{position:absolute;top:5px;right:5px;background-color:#28a745;color:#fff;border:none;padding:4px 8px;border-radius:4px;font-size:12px;cursor:pointer;font-weight:500;z-index:1}.add-row-btn:hover{background-color:#218838}.add-row-btn:disabled{background-color:#6c757d;cursor:not-allowed}.postmortem-input{width:100%;border:none;outline:none;font-size:13px;padding:4px;background-color:#fff!important;color:#333!important}.postmortem-input:focus{background-color:#fff!important;color:#333!important}.postmortem-textarea{width:100%;border:none;outline:none;resize:vertical;font-size:13px;padding:4px;line-height:1.4;background-color:#fff!important;color:#333!important}.postmortem-textarea:focus{background-color:#fff!important;color:#333!important}.textarea-small{height:30px;min-height:30px}.textarea-medium{height:60px;min-height:60px}.textarea-large{height:100px;min-height:100px}.postmortem-date-input{width:100%;border:none;outline:none;font-size:13px}.bullet-textarea{line-height:1.4}.table-action-section{display:flex;justify-content:flex-end;gap:10px;margin:15px 0;padding:0 10px;flex-wrap:wrap}.toggle-profile-btn{padding:8px 20px;background-color:#007bff;color:#fff;border:none;border-radius:5px;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .3s;white-space:nowrap;min-width:140px}.toggle-profile-btn:hover{background-color:#0056b3}.button-section{display:flex;justify-content:center;gap:20px;margin-top:30px;padding-top:20px;border-top:1px solid #ddd}.submit-btn,.print-btn{padding:10px 30px;font-size:16px;font-weight:700;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.submit-btn{background-color:#007bff;color:#fff}.submit-btn:hover{background-color:#0056b3}.print-btn{background-color:#28a745;color:#fff}.print-btn:hover{background-color:#218838}.profile-tables-container{transition:all 1s ease-in-out;overflow:hidden}.profile-tables-enter{opacity:0;max-height:0;transform:translateY(-20px)}.profile-tables-enter-active,.profile-tables-exit{opacity:1;max-height:2000px;transform:translateY(0)}.profile-tables-exit-active{opacity:0;max-height:0;transform:translateY(-20px)}.postmortem-section .dropdown-cell{width:50px}@media print{.project-postmortem-container{background-color:#fff;padding:0;margin:0;max-width:none}.postmortem-header,.table-action-section,.button-section{display:none}.postmortem-main{padding:0;box-shadow:none;background-color:#fff}.postmortem-table{border:2px solid #000}.table-header,.table-cell{border:1px solid #000}.section-header{background-color:#f0f0f0!important;-webkit-print-color-adjust:exact}.table-cell-label{background-color:#f8f8f8!important;-webkit-print-color-adjust:exact}}@media (max-width: 1024px){.table-action-section{justify-content:center}}@media (max-width: 768px){.project-postmortem-container{padding:10px}.postmortem-header{flex-direction:column;gap:10px;text-align:center}.writer-form{flex-direction:column;gap:15px}.writer-field{justify-content:center}.table-action-section{flex-direction:column;gap:10px;align-items:center}.toggle-profile-btn{width:200px;min-width:auto}.button-section{flex-direction:column;gap:10px}.submit-btn,.print-btn{width:100%}.postmortem-table{font-size:12px}.table-cell-label{width:120px;padding:6px 8px}.postmortem-input,.postmortem-textarea{font-size:12px}}@media (max-width: 576px){.postmortem-section{overflow-x:auto}.postmortem-table{min-width:600px}.table-action-section{padding:0 5px}.toggle-profile-btn{font-size:12px;padding:6px 15px;width:180px}}.pt-checklist-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.checklist-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.checklist-title{margin:0;font-size:24px;font-weight:700}.checklist-logo{font-size:18px;font-weight:700}.checklist-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.checklist-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.checklist-subtitle{margin:0;font-size:20px;font-weight:700}.checklist-writer{margin-top:10px}.checklist-section{margin-bottom:30px}.checklist-table{width:100%;border-collapse:collapse;border:1px solid #333;margin-top:0}.checklist-item-cell{padding:12px}.checklist-item{display:flex;flex-direction:column;gap:8px}.checklist-label{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;font-weight:500;cursor:pointer;color:#333}.checklist-checkbox{margin:0;flex-shrink:0;width:16px;height:16px;cursor:pointer;accent-color:#007bff}.checklist-checkbox:checked{background-color:#007bff}.checklist-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.checklist-input:focus{background-color:#fff!important;color:#333!important}.checklist-textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:6px 8px;font-size:13px;font-family:inherit;color:#333!important;line-height:1.4;resize:vertical;min-height:40px;background-color:#fafafa}.checklist-textarea:focus{background-color:#fff!important;color:#333!important;outline:2px solid #007bff;outline-offset:-2px;border-color:#007bff}.checklist-textarea::placeholder{color:#999;font-style:italic}.checklist-actions{display:flex;justify-content:center;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}@media print{.pt-checklist-container{background-color:#fff;box-shadow:none;padding:0}.checklist-header,.checklist-main{box-shadow:none;border-radius:0}.checklist-actions{display:none}.checklist-textarea{background-color:#fff!important;border:1px solid #ddd}}.checklist-input:-webkit-autofill,.checklist-input:-webkit-autofill:hover,.checklist-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.checklist-textarea:-webkit-autofill,.checklist-textarea:-webkit-autofill:hover,.checklist-textarea:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important}.checklist-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:16px;height:16px;border:2px solid #007bff;border-radius:3px;background-color:#fff;position:relative;cursor:pointer}.checklist-checkbox:checked{background-color:#007bff;border-color:#007bff}.checklist-checkbox:checked:after{content:"✓";position:absolute;top:-2px;left:1px;color:#fff;font-size:12px;font-weight:700}.checklist-checkbox:hover{border-color:#0056b3}.checklist-checkbox:focus{outline:2px solid #007bff;outline-offset:2px}.checklist-checkbox:checked+.checklist-label{color:#007bff}.checklist-label{-webkit-user-select:none;user-select:none;transition:color .2s ease}.checklist-label:hover{color:#007bff}.checklist-label br{line-height:1.6}@media (max-width: 768px){.pt-checklist-container{padding:10px}.writer-form{flex-direction:column;gap:15px}.checklist-table{font-size:12px}.table-cell{padding:6px 8px}.checklist-item-cell{padding:8px}.checklist-label{font-size:12px}.checklist-textarea{min-height:35px;font-size:12px}.table-cell-rowspan{writing-mode:vertical-rl;text-orientation:mixed;width:60px}}.checklist-item.completed{background-color:#f8f9fa;border-left:4px solid #28a745;padding-left:12px}.checklist-textarea{transition:border-color .2s ease,box-shadow .2s ease}.checklist-textarea:focus{box-shadow:0 0 0 3px #007bff1a}.checklist-checkbox:focus-visible{outline:2px solid #007bff;outline-offset:2px}.checklist-label:focus-within{background-color:#007bff0d;border-radius:4px;padding:2px}.checklist-label{align-items:flex-start;margin-top:2px}.checklist-checkbox{margin-top:2px}.checklist-table tbody tr{border-bottom:1px solid #eee}.checklist-table tbody tr:last-child{border-bottom:none}.checklist-textarea::-webkit-scrollbar{width:8px}.checklist-textarea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.checklist-textarea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.checklist-textarea::-webkit-scrollbar-thumb:hover{background:#a8a8a8}._noticeManagementContainer_13sxl_3{max-width:1400px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;position:relative}._noticeHeader_13sxl_15{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:16px;border-bottom:1px solid #e5e7eb}._noticeHeaderTitle_13sxl_23 h1{font-size:24px;font-weight:700;color:#111827;margin:0}._noticeBreadcrumb_13sxl_30{margin:4px 0 0;color:#6b7280;font-size:14px}._noticeAuthorInfo_13sxl_36{color:#6b7280;font-size:14px;font-weight:500}._editorLayout_13sxl_43{display:flex;gap:32px;align-items:flex-start;flex-wrap:wrap}@media (max-width: 1200px){._editorLayout_13sxl_43{flex-direction:column}._simulatedModal_13sxl_54{width:100%!important;max-width:700px!important;margin:0 auto}._controlPanel_13sxl_59{width:100%}}._simulatedModal_13sxl_54{width:700px;flex:none;max-width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;border:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .3s ease}._simulatedModal_13sxl_54:focus-within{box-shadow:0 12px 40px #00000040;border-color:#3b82f6}._simulatedHeader_13sxl_84{padding:20px 24px;border-bottom:2px solid #f0f0f0;background-color:#fff;display:flex;justify-content:space-between;align-items:center}._simulatedHeaderTitle_13sxl_93{margin:0;font-size:18px;font-weight:700;color:#333}._simulatedBody_13sxl_100{padding:20px 24px;background-color:#fff;display:flex;flex-direction:column;gap:16px;min-height:300px}._simulatedNoticeItem_13sxl_110{padding:16px;border-left:4px solid #1890ff;background-color:#f8f9fa;border-radius:4px;display:flex;flex-direction:column;gap:12px}._simulatedTitleRow_13sxl_121{display:flex;align-items:center;gap:8px}._simulatedEmoji_13sxl_127{font-size:20px;line-height:1}._invisibleInput_13sxl_133{width:100%;border:1px dashed transparent;background:transparent;font-size:18px;font-weight:600;color:#333;padding:4px;border-radius:4px;outline:none;transition:all .2s}._invisibleInput_13sxl_133:hover{border-color:#d1d5db}._invisibleInput_13sxl_133:focus{background-color:#fff;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}._invisibleTextarea_13sxl_156{width:100%;border:1px dashed transparent;background:transparent;font-size:15px;line-height:1.6;color:#666;padding:4px;border-radius:4px;outline:none;resize:none;min-height:150px;font-family:inherit;transition:all .2s}._invisibleTextarea_13sxl_156:hover{border-color:#d1d5db}._invisibleTextarea_13sxl_156:focus{background-color:#fff;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}._simulatedMeta_13sxl_182{font-size:13px;color:#999;display:flex;align-items:center;gap:8px}._controlPanel_13sxl_59{flex:1;background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;gap:24px;height:fit-content}._controlSectionTitle_13sxl_204{font-size:16px;font-weight:600;color:#111827;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}._noticeFormGroup_13sxl_214{display:flex;flex-direction:column;gap:6px}._noticeFormLabel_13sxl_220{font-size:14px;font-weight:500;color:#374151}._noticeInput_13sxl_226,._noticeSelect_13sxl_227{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}._noticeInput_13sxl_226:focus,._noticeSelect_13sxl_227:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}._noticeCheckboxWrapper_13sxl_242{display:flex;align-items:center;gap:8px;padding:12px;background-color:#f9fafb;border-radius:6px;border:1px solid #f3f4f6}._noticeCheckboxLabel_13sxl_252{font-size:14px;color:#374151;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none}._noticeFormActions_13sxl_260{display:flex;gap:12px;margin-top:auto}._btn_13sxl_266{padding:12px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s;flex:1}._btnPrimary_13sxl_277{background-color:#2563eb;color:#fff;box-shadow:0 4px 6px -1px #2563eb33}._btnPrimary_13sxl_277:hover{background-color:#1d4ed8;transform:translateY(-1px)}._btnSecondary_13sxl_288{background-color:#f3f4f6;color:#374151}._btnSecondary_13sxl_288:hover{background-color:#e5e7eb}._formErrorMessage_13sxl_297{color:#dc2626;font-size:14px;margin-top:12px;padding:10px;background-color:#fef2f2;border-radius:6px;border:1px solid #fee2e2}._noticeListCard_13sxl_308{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #e5e7eb;overflow:hidden;position:relative;min-height:200px}._noticeListHeader_13sxl_318{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}._noticeListTitle_13sxl_326{font-size:18px;font-weight:600;color:#111827;margin:0}._noticeTableContainer_13sxl_333{overflow-x:auto}._noticeTable_13sxl_333{width:100%;border-collapse:collapse;font-size:14px}._noticeTable_13sxl_333 th{background-color:#f9fafb;color:#4b5563;font-weight:600;text-align:left;padding:12px 24px;border-bottom:1px solid #e5e7eb;white-space:nowrap}._thSelect_13sxl_354{padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;margin-left:8px;color:#374151;background-color:#fff;cursor:pointer;width:100px}._thCheckboxWrapper_13sxl_366{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-weight:500;color:#374151;cursor:pointer}._noticeTable_13sxl_333 td{padding:16px 24px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle}._noticeTable_13sxl_333 tr:last-child td{border-bottom:none}._noticeTable_13sxl_333 tr:hover td{background-color:#f9fafb}._selectedRow_13sxl_391{background-color:#e0f2fe!important;border-left:4px solid #2563eb}._statusBadge_13sxl_396{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:500}._statusActive_13sxl_405{background-color:#e0f2fe;color:#0369a1}._statusInactive_13sxl_410{background-color:#f3f4f6;color:#4b5563}._statusExpired_13sxl_415{background-color:#e5e5e5;color:#333}._actionButtons_13sxl_420{display:flex;gap:8px}._btnSm_13sxl_425{padding:6px 12px;font-size:12px;border-radius:4px;border:none;cursor:pointer;transition:background-color .2s}._btnEdit_13sxl_434{background-color:#eff6ff;color:#1d4ed8}._btnEdit_13sxl_434:hover{background-color:#dbeafe}._btnDelete_13sxl_440{background-color:#fef2f2;color:#dc2626}._btnDelete_13sxl_440:hover{background-color:#fee2e2}._btnPreview_13sxl_446{background-color:#fffbeb;color:#b45309;border:1px solid #fcd34d}._btnPreview_13sxl_446:hover{background-color:#fef3c7}._emptyState_13sxl_453{text-align:center;padding:48px 0;color:#6b7280}._loadingOverlay_13sxl_460{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ffffffb3;display:flex;justify-content:center;align-items:center;z-index:50;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-radius:12px}._spinner_13sxl_475{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:_spin_13sxl_475 .8s linear infinite}@keyframes _spin_13sxl_475{to{transform:rotate(360deg)}}._paginationContainer_13sxl_489{display:flex;justify-content:center;align-items:center;padding:20px;gap:12px;border-top:1px solid #e5e7eb;background-color:#fff;border-bottom-left-radius:12px;border-bottom-right-radius:12px}._pageInfo_13sxl_501{font-size:14px;font-weight:500;color:#4b5563}._previewModalOverlay_13sxl_508{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}._previewModalContent_13sxl_522{background:#fff;width:90%;max-width:600px;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:85vh;animation:_modalSlideIn_13sxl_1 .3s ease-out}._previewModalHeader_13sxl_534{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}._previewCloseBtn_13sxl_542{background:transparent;border:none;font-size:24px;color:#9ca3af;cursor:pointer;padding:0;line-height:1}._previewCloseBtn_13sxl_542:hover{color:#4b5563}._previewModalBody_13sxl_554{padding:24px;overflow-y:auto;line-height:1.6}._previewNoticeMeta_13sxl_560{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f3f4f6;font-size:14px;color:#6b7280}._previewNoticeContent_13sxl_571{white-space:pre-wrap;color:#374151}@keyframes _modalSlideIn_13sxl_1{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.bidding-page-wrapper .form-page{max-width:1200px;margin:0 auto;padding:0}.bidding-page-wrapper .page-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;margin-bottom:2rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.bidding-page-wrapper .page-header h1{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:initial;color:#fff!important;margin:0 0 .5rem;font-size:2rem;font-weight:600}.bidding-page-wrapper .page-header p{margin:0;font-size:1.1rem;opacity:.9;color:#fff!important}.bidding-page-wrapper .registrant-info{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;margin:0 0 2rem auto;width:fit-content;padding:1rem 1.5rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.bidding-page-wrapper .registrant-input-group{display:flex;align-items:center;gap:.75rem;width:100%;justify-content:space-between}.bidding-page-wrapper .registrant-input-group label{margin:0;font-weight:500;color:#2c3e50;font-size:.95rem;flex-shrink:0}.bidding-page-wrapper label.required:after{content:"*";color:#e53e3e;font-weight:700;font-size:1rem;margin-left:4px}.bidding-page-wrapper .registrant-input,.bidding-page-wrapper .registrant-select{width:220px;flex-shrink:0;padding:.75rem;border:2px solid #e53e3e;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s;font-family:inherit;box-sizing:border-box}.bidding-page-wrapper .registrant-input:focus,.bidding-page-wrapper .registrant-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.bidding-page-wrapper .registrant-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1em;padding-right:2.5rem;cursor:pointer}.bidding-page-wrapper .form-container{background:transparent;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.bidding-page-wrapper .form-section{padding:2rem;border-bottom:1px solid #e9ecef;margin-bottom:1.5rem;background:#fff}.bidding-page-wrapper .form-section:last-of-type{border-bottom:none;margin-bottom:0}.bidding-page-wrapper .form-section h2{margin:0 0 1.5rem;font-size:1.4rem;font-weight:600;color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:.5rem}.bidding-page-wrapper .form-section h3{margin:1.5rem 0 1rem;font-size:1.2rem;font-weight:500;color:#34495e}.bidding-page-wrapper .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.bidding-page-wrapper .form-group{margin-bottom:1.5rem}.bidding-page-wrapper .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2c3e50;font-size:.95rem}.bidding-page-wrapper .form-group input,.bidding-page-wrapper .form-group select,.bidding-page-wrapper .form-group textarea{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s;font-family:inherit;box-sizing:border-box}.bidding-page-wrapper .form-group input:focus,.bidding-page-wrapper .form-group select:focus,.bidding-page-wrapper .form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.bidding-page-wrapper .form-group input:invalid{border-color:#e74c3c}.bidding-page-wrapper .form-group textarea{resize:vertical;min-height:100px}.bidding-page-wrapper .form-actions{padding:2rem;background:#f8f9fa;display:flex;justify-content:flex-end;gap:1rem;border-top:1px solid #e9ecef}.bidding-page-wrapper .btn-primary,.bidding-page-wrapper .btn-secondary{padding:.75rem 2rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:120px}.bidding-page-wrapper .btn-primary{background:#3498db;color:#fff}.bidding-page-wrapper .btn-primary:hover{background:#2980b9;transform:translateY(-1px);box-shadow:0 4px 8px #3498db4d}.bidding-page-wrapper .btn-secondary{background:#95a5a6;color:#fff}.bidding-page-wrapper .btn-secondary:hover{background:#7f8c8d;transform:translateY(-1px);box-shadow:0 4px 8px #95a5a64d}@media (max-width: 768px){.bidding-page-wrapper .form-page{padding:0 1rem}.bidding-page-wrapper .page-header{padding:1.5rem;margin-bottom:1.5rem}.bidding-page-wrapper .page-header h1{font-size:1.5rem}.bidding-page-wrapper .registrant-info{width:100%;margin:0 auto 2rem;padding:1rem;box-sizing:border-box;align-items:stretch}.bidding-page-wrapper .registrant-input-group{flex-direction:column;align-items:flex-start;gap:.5rem}.bidding-page-wrapper .registrant-input,.bidding-page-wrapper .registrant-select{width:100%}.bidding-page-wrapper .form-section{padding:1.5rem}.bidding-page-wrapper .form-grid{grid-template-columns:1fr;gap:1rem}.bidding-page-wrapper .form-actions{padding:1.5rem;flex-direction:column}.bidding-page-wrapper .btn-primary,.bidding-page-wrapper .btn-secondary{width:100%}}@media (max-width: 480px){.bidding-page-wrapper .page-header{padding:1rem}.bidding-page-wrapper .page-header h1{font-size:1.3rem}.bidding-page-wrapper .form-section{padding:1rem}.bidding-page-wrapper .form-section h2{font-size:1.2rem}}@media (prefers-color-scheme: dark){.bidding-page-wrapper .registrant-info{background-color:#34495e;border-color:#495057}.bidding-page-wrapper .registrant-input-group label{color:#ecf0f1}.bidding-page-wrapper .form-section{background:#2c3e50;border-bottom-color:#34495e}.bidding-page-wrapper .form-section h2{color:#ecf0f1;border-bottom-color:#3498db}.bidding-page-wrapper .form-group label{color:#ecf0f1}.bidding-page-wrapper .form-group input,.bidding-page-wrapper .form-group select,.bidding-page-wrapper .form-group textarea,.bidding-page-wrapper .registrant-input,.bidding-page-wrapper .registrant-select{background:#34495e;border-color:#495057;color:#ecf0f1}.bidding-page-wrapper .form-group input:focus,.bidding-page-wrapper .form-group select:focus,.bidding-page-wrapper .form-group textarea:focus,.bidding-page-wrapper .registrant-input:focus,.bidding-page-wrapper .registrant-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db33}.bidding-page-wrapper .form-actions{background:#34495e;border-top-color:#495057}}.meeting-minutes-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.meeting-minutes-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.meeting-minutes-title{margin:0;font-size:24px;font-weight:700}.meeting-minutes-logo{font-size:18px;font-weight:700}.meeting-minutes-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.meeting-minutes-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.meeting-minutes-subtitle{margin:0;font-size:20px;font-weight:700}.meeting-minutes-writer{margin-top:10px}.writer-field-label-title{font-weight:800;color:#000;font-size:15px}.meeting-minutes-section{background-color:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #0000000a;margin-bottom:2.5rem;overflow:hidden}.section-header-meetingminutes{margin:0;padding:1.25rem 1.75rem;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;font-size:1.15rem;font-weight:600;color:#212529}.tab-navigation{display:flex;padding:0 15px;margin-bottom:-1px;position:relative;z-index:2;margin-top:5px}.tab-button{padding:10px 20px;font-size:16px;font-weight:600;border:1px solid #ddd;border-bottom:none;background-color:#f0f0f0;cursor:pointer;color:#888;border-top-left-radius:6px;border-top-right-radius:6px;margin-right:5px;transition:all .2s ease}.tab-button.active{color:#1890ff;border-color:#ddd;border-bottom:1px solid white;background-color:#fff;z-index:3;font-weight:700}.tab-button:hover:not(.active){color:#333;background-color:#e9e9e9}.tab-content{padding:15px;min-height:100px;border-top:1px solid #ddd;position:relative;z-index:1;background-color:#fff;border-radius:0 8px 8px}.tab-pane{display:none}.tab-pane.active{display:block}.meeting-minutes-table{width:100%;border-collapse:collapse;border:1px solid #333;margin-top:0}.meeting-minutes-table tbody tr{border-bottom:1px solid #eee}.meeting-minutes-table tbody tr:last-child{border-bottom:none}.meeting-minutes-item-cell{padding:12px}.meeting-minutes-item{display:flex;flex-direction:column;gap:8px}.meeting-minutes-item.completed{background-color:#f8f9fa;border-left:4px solid #28a745;padding-left:12px}.meeting-minutes-label{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;font-weight:500;cursor:pointer;color:#333;-webkit-user-select:none;user-select:none;transition:color .2s ease;margin-top:2px}.meeting-minutes-label:hover{color:#007bff}.meeting-minutes-label br{line-height:1.6}.meeting-minutes-label:focus-within{background-color:#007bff0d;border-radius:4px;padding:2px}.meeting-minutes-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.meeting-minutes-input:focus{background-color:#fff!important;color:#333!important}.meeting-minutes-input:-webkit-autofill,.meeting-minutes-input:-webkit-autofill:hover,.meeting-minutes-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.meeting-minutes-textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:6px 8px;font-size:13px;font-family:inherit;color:#333!important;line-height:1.4;resize:vertical;min-height:40px;background-color:#fafafa;transition:border-color .2s ease,box-shadow .2s ease}.meeting-minutes-textarea:focus{background-color:#fff!important;color:#333!important;outline:2px solid #007bff;outline-offset:-2px;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.meeting-minutes-textarea::placeholder{color:#90392b;font-style:italic}.meeting-minutes-textarea:-webkit-autofill,.meeting-minutes-textarea:-webkit-autofill:hover,.meeting-minutes-textarea:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important}.meeting-minutes-textarea::-webkit-scrollbar{width:8px}.meeting-minutes-textarea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.meeting-minutes-textarea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.meeting-minutes-textarea::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.meeting-minutes-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;cursor:pointer;background-color:#fff;width:16px;height:16px;border:2px solid #007bff;border-radius:3px;margin-top:2px}.meeting-minutes-checkbox:checked{background-color:#007bff;border-color:#007bff}.meeting-minutes-checkbox:checked:after{content:"✓";position:absolute;color:#fff;font-size:12px;font-weight:700;top:-2px;left:1px}.meeting-minutes-checkbox:hover{border-color:#0056b3}.meeting-minutes-checkbox:focus,.meeting-minutes-checkbox:focus-visible{outline:2px solid #007bff;outline-offset:2px}.meeting-minutes-checkbox:checked+.meeting-minutes-label{color:#007bff}.checkbox-medium{width:16px;height:16px}.checkbox-medium:checked{display:flex;align-items:center;justify-content:center}.checkbox-medium:checked:after{font-size:14px;line-height:1;font-weight:700;color:#fff;content:"✓"}.checkbox-large{width:24px;height:24px}.checkbox-large:checked{display:flex;align-items:center;justify-content:center}.checkbox-large:checked:after{font-size:22px;line-height:1;font-weight:700;color:#fff;content:"✓"}.meeting-minutes-radio{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;cursor:pointer;background-color:#fff;border-radius:50%;width:16px;height:16px;border:2px solid #007bff;margin-top:2px}.meeting-minutes-radio:checked{border-color:#007bff}.meeting-minutes-radio:checked:after{content:"";position:absolute;background-color:#007bff;border-radius:50%;width:8px;height:8px;top:50%;left:50%;transform:translate(-50%,-50%)}.radio-large{width:24px;height:24px}.radio-large:checked:after{width:12px;height:12px}.loading,.no-results,.meeting-list-loading{text-align:center;padding:40px;color:#666}.circle-spinner{display:inline-block;width:14px;height:14px;margin-right:8px;border:2px solid #f3f3f3;border-top:2px solid #007bff;border-radius:50%;animation:meeting-spinner-spin .6s linear infinite;vertical-align:middle}@keyframes meeting-spinner-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.meeting-minutes-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.meeting-minutes-actions .btn-primary{background-color:#007bff!important;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:600;padding:12px 32px;font-size:16px!important}.meeting-minutes-actions .btn-primary:hover{background-color:#0056b3!important}.generation-panel{display:flex;justify-content:space-between;align-items:center;padding:20px;background-color:#fff;border-radius:6px;margin-top:30px;margin-bottom:30px}.generation-panel .btn-secondary{background-color:#007bff!important;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:600;padding:12px 32px;font-size:2rem}.generation-panel .btn-secondary:hover{background-color:#0056b3!important}.generation-options .meeting-minutes-label{display:flex;align-items:center;gap:12px;font-size:16px;margin-bottom:15px}.generation-options .meeting-minutes-label:last-child{margin-bottom:0}.llm-result-label{display:flex;align-items:center;gap:10px;font-size:15px}.file-drop-zone{border:2px dashed #ccc;border-radius:8px;padding:4rem!important;text-align:center;cursor:pointer;transition:background-color .2s ease}.share-method-label{font-size:16px;line-height:24px;padding:2px 5px;margin-right:15px;display:flex;align-items:center;gap:12px}.project-selection-display{flex-grow:1;display:flex;align-items:center;gap:10px;border:1px solid #ddd;border-radius:4px;padding:5px;min-height:38px;box-sizing:border-box}.filter-bar{display:flex;justify-content:flex-end;margin-bottom:10px}.filter-bar select{padding:6px 10px;border:1px solid #ccc;border-radius:4px;font-size:13px;cursor:pointer;min-width:150px}.meeting-list-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:13px;table-layout:fixed}.meeting-list-table th,.meeting-list-table td{border:1px solid #eee;padding:10px 12px;text-align:left;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-list-table th{background-color:#f8f9fa;font-weight:600;white-space:normal}.meeting-list-table th:nth-child(1){width:30%}.meeting-list-table th:nth-child(2){width:18%}.meeting-list-table th:nth-child(3){width:20%}.meeting-list-table th:nth-child(4){width:10%}.meeting-list-table th:nth-child(5){width:12%}.meeting-list-table th:nth-child(6){width:10%}.meeting-list-item{cursor:pointer;transition:background-color .2s ease}.meeting-list-item:hover{background-color:#f0f8ff}.meeting-title-cell{font-weight:600}.meeting-link{color:#007bff;text-decoration:none;cursor:pointer}.tag-badge{background-color:#e9ecef;color:#495057;padding:2px 6px;border-radius:4px;font-size:11px;margin-right:4px;white-space:nowrap}.tab-content .loading,.tab-content .no-results{text-align:center;padding:40px;color:#666;font-style:italic}.tab-content .error{text-align:center;padding:40px;color:#d93025}.no-results{text-align:center;color:#888;padding:20px;font-style:italic}.generation-progress{background:#f0f8ff;padding:20px;border-radius:8px;margin:20px 0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.progress-header h4{margin:0;color:#007bff}.abort-button{background:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px}.abort-button:hover:not(:disabled){background:#c82333}.abort-button:disabled{background:#ccc;cursor:not-allowed}.progress-bar-container{width:100%;height:30px;background:#e9ecef;border-radius:15px;overflow:hidden;margin-bottom:10px}.progress-bar{height:100%;background:linear-gradient(90deg,#007bff,#0056b3);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;transition:width .3s ease}.progress-message{color:#666;font-size:14px;margin:5px 0}.progress-info{color:#999;font-size:12px}.meeting-minutes-actions .btn-primary:disabled{background-color:#6c757d!important;cursor:not-allowed!important;opacity:.6}.meeting-minutes-actions .btn-primary:disabled:hover{background-color:#6c757d!important}.meeting-source-container{display:flex;gap:20px;padding:15px}.meeting-source-panel{flex:1;display:flex;flex-direction:column;gap:10px}.meeting-source-panel.full-width{width:100%}.meeting-source-header{display:flex;align-items:center;gap:10px}.meeting-source-header input[type=radio]{transform:scale(1.5);cursor:pointer}.meeting-source-header h4{margin:0;font-size:16px;font-weight:700}.meeting-source-textarea{height:305px;text-align:center}.meeting-source-textarea:placeholder-shown{padding-top:18%;text-align:center;white-space:pre-line;font-size:1.2rem;color:#90392b;opacity:1;font-style:italic}.meeting-source-textarea:not(:placeholder-shown){text-align:left;padding-top:8px}.meeting-source-textarea::placeholder,.meeting-source-textarea::-webkit-input-placeholder,.meeting-source-textarea:-ms-input-placeholder,.meeting-source-textarea::-ms-input-placeholder{text-align:center;white-space:pre-line;font-size:1.2rem;color:#90392b;opacity:1;font-style:italic}.meeting-source-textarea:focus::placeholder{color:#6b778c;opacity:1}.meeting-source-hint{font-size:12px;color:#667}.meeting-stt-results{display:flex;flex-direction:column;gap:15px}.meeting-stt-item-label{display:inline-flex;align-items:center;gap:8px;margin-top:10px;margin-bottom:6px}.meeting-stt-item-label.block{display:flex;width:100%;margin-top:12px;margin-bottom:8px}.meeting-stt-content{border:1px solid #ddd;border-radius:8px;padding:15px;min-height:21ch;height:305px;max-height:360px;overflow-y:auto;background-color:#e8e8e8;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.meeting-stt-empty{border:1px dashed #ddd;border-radius:8px;padding:40px;text-align:center;font-size:1.2rem;font-style:italic;color:#90392b;background-color:#fafafa;height:305px;min-height:305px;max-height:305px;display:flex;align-items:center;justify-content:center}.meeting-source-panel>input[type=radio]{transform:scale(2.5);cursor:pointer;margin:2rem 12px 2rem 0}.meeting-source-header{display:flex;flex-direction:column;align-items:stretch;gap:0}.recording-method-top{display:flex;justify-content:center;align-items:center;padding:10px 0 8px}.meeting-source-title{margin:8px 0 0;font-size:16px;font-weight:700}.meeting-minutes-radio.radio-xl{width:32px;height:32px;border-width:3px}.meeting-minutes-radio.radio-xl:checked:after{width:16px;height:16px}.recording-method-top input[type=radio]{transform:scale(2.5)}.recording-method-top{padding:2rem 0}.meeting-source-panel>input[type=radio]{display:none}.meeting-source-header h4{margin:8px 0 0}.meeting-item{padding:12px;border:1px solid #ddd;border-radius:4px;margin-bottom:8px;transition:background-color .2s}.meeting-item:hover{background-color:#f5f5f5}.meeting-item.selected{background-color:#e3f2fd;border-color:#2196f3}.btn-delete-small{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:background-color .2s;flex-shrink:0}.meeting-title{font-weight:600;margin-bottom:4px;color:#333}.meeting-date{font-size:.875rem;color:#666;margin-bottom:2px}.meeting-project{font-size:.75rem;color:#888;font-style:italic}.empty-message{text-align:center;color:#999;padding:20px;font-style:italic}.btn-delete-small{background:none;border:none;cursor:pointer;font-size:16px;padding:2px 6px;border-radius:4px;transition:background-color .2s;flex-shrink:0}.btn-delete-small:hover{background-color:#ffebee}.btn-delete-small:active{transform:scale(.95)}.meeting-title-cell{max-width:300px}.meeting-link{text-decoration:none;color:#1976d2}.meeting-link:hover{text-decoration:underline}.file-list-container{padding:15px}.file-list-items{display:flex;flex-direction:column;gap:10px}.file-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;background-color:#f9f9f9}.file-item-info{flex:1}.file-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.file-icon{font-size:16px}.file-name{font-weight:500}.file-status-badge{padding:2px 8px;background-color:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:12px}.file-item-meta{font-size:13px;color:#666;display:flex;gap:12px}.file-actions{display:flex;gap:8px}.btn-file-download{padding:6px 12px;background-color:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.btn-file-download:hover{background-color:#096dd9}.btn-file-delete{padding:6px 12px;background-color:#ff4d4f;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.btn-file-delete:hover{background-color:#d9363e}.btn-file-download:active,.btn-file-delete:active{transform:scale(.95)}.file-list-empty{padding:30px;text-align:center;color:#999;font-size:14px}.pagination-container{display:flex;justify-content:center;align-items:center;padding:15px 0;gap:5px}.pagination-button{padding:8px 12px;border:1px solid #ddd;background-color:#fff;cursor:pointer;transition:background-color .2s;border-radius:4px}.pagination-button:hover:not(:disabled){background-color:#f0f0f0}.pagination-button.active{background-color:#007bff;color:#fff;border-color:#007bff;font-weight:700}.pagination-button:disabled{color:#ccc;cursor:not-allowed;background-color:#f8f9fa}.writer-field input.writer-field-input[readOnly]{background-color:#e9ecef!important;pointer-events:none;cursor:not-allowed}.dot-cursor-spinner{width:24px;height:24px;position:relative;border:2px solid transparent;border-radius:4px;margin-right:10px;flex-shrink:0}.dot-cursor-spinner:before{content:"";position:absolute;width:8px;height:8px;background-color:#007bff;border-radius:50%;animation:dot-travel 1.5s infinite ease-in-out}@keyframes dot-travel{0%{top:-4px;left:-4px;transform:scale(1)}25%{top:-4px;left:calc(100% - 4px);transform:scale(.8)}50%{top:calc(100% - 4px);left:calc(100% - 4px);transform:scale(1)}75%{top:calc(100% - 4px);left:-4px;transform:scale(.8)}to{top:-4px;left:-4px;transform:scale(1)}}.stt-warning-box{background-color:#fff0f0;border:1px solid #ff4d4f;border-radius:6px;padding:12px 15px;margin-top:20px;font-size:13px;line-height:1.5;color:#cf1322;word-break:keep-all}.stt-warning-box strong{font-weight:700}.project-execution-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.project-execution-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.project-execution-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.project-execution-title{margin:0;font-size:24px;font-weight:700}.project-execution-logo{font-size:18px;font-weight:700}.project-execution-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.project-execution-subtitle{margin:0;font-size:20px;font-weight:700}.project-execution-section{margin-bottom:30px}.section-header{background-color:#f8f9fa;color:#333;padding:8px 12px;margin:0 0 15px;font-size:14px;font-weight:700}.project-execution-main .execution-file-list-table{width:100%;border-collapse:collapse;margin-bottom:30px;border:1px solid #ddd}.project-execution-main .execution-file-list-table th,.project-execution-main .execution-file-list-table td{padding:12px 15px;border:1px solid #ddd;text-align:left;vertical-align:middle}.project-execution-main .execution-file-list-table th{background-color:#000;color:#fff;font-weight:600;text-align:center;font-size:14px}.project-execution-main .execution-file-list-table .category-cell{text-align:center;font-weight:500;font-size:14px;background-color:#f7f7f7}.project-execution-main .execution-file-list-table .file-list-cell{padding:15px;vertical-align:top}.project-execution-main .file-items-container{display:flex;flex-direction:column;gap:8px}.project-execution-main .no-files-message{color:#888;font-size:13px;padding:10px 0}.project-execution-main .execution-file-list-table .file-item{display:flex;justify-content:space-between;align-items:center;padding:8px;background-color:#f8f9fa;border-radius:4px}.project-execution-main .execution-file-list-table .file-info{display:flex;flex-direction:column;align-items:flex-start}.project-execution-main .execution-file-list-table .file-details{margin-top:4px;font-size:12px;color:#666}.project-execution-main .file-actions{display:flex;gap:8px}.project-execution-main .file-download-btn,.project-execution-main .execution-file-list-table .file-remove-btn{background:none;border:none;cursor:pointer;font-size:16px;color:#555;transition:color .2s}.project-execution-main .file-download-btn:hover,.project-execution-main .execution-file-list-table .file-remove-btn:hover{color:#000}.file-drop-zone{border:2px dashed #ccc;border-radius:8px;padding:20px;text-align:center;cursor:pointer;transition:background-color .2s ease;min-height:150px}.drop-zone-message,.drop-zone-add-more{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#888}.drop-zone-icon{font-size:48px;margin-bottom:10px}.drop-zone-text p{margin:5px 0}.drop-zone-hint{font-size:12px;color:#aaa}.drop-zone-add-more{padding:15px;border-top:1px dashed #ccc;margin-top:10px;color:#007bff;font-weight:500}.staged-file-list{text-align:left}.file-item.staged-file{background-color:#f8f9fa;border-bottom:none}.staged-file .file-info{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.staged-file .file-details{display:flex;align-items:center;gap:8px}.file-category-badge{background-color:#e9ecef;color:#495057;padding:3px 8px;border-radius:4px;font-size:12px;font-weight:500}.upload-actions,.button-section{text-align:right;margin-top:20px}.button-section{padding-top:20px;border-top:1px solid #eee}.submit-btn{padding:12px 25px;background-color:#3498db;color:#fff;border:none;border-radius:5px;font-size:16px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.submit-btn:hover{background-color:#2980b9}.submit-btn:disabled{background-color:#bdc3c7;cursor:not-allowed}.modal-content{background:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.modal-content.file-category-modal{width:90%;max-width:450px}.modal-header h3{margin:0;font-size:18px}.modal-body .radio-group{display:flex;flex-direction:column;gap:10px;margin-top:15px}.category-group strong{display:block;margin-bottom:8px;font-size:14px;color:#888}.radio-label{display:flex;align-items:center;gap:12px;font-size:16px;cursor:pointer;padding:12px;border-radius:4px;transition:background-color .2s}.radio-label span{color:#333;font-weight:600}.radio-label input[type=radio]{width:20px;height:20px;cursor:pointer}.radio-label:hover{background-color:#f8f9fa}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #eee}.execution-file-list-table .project-code-cell{text-align:center!important;font-weight:700;font-size:3em;color:#0548f3}.project-default-profile-section{background-color:#f3f0ff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s ease,transform .2s ease}.project-default-profile-section:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000026}.file-management-system-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.file-management-system-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.file-management-system-title{margin:0;font-size:24px;font-weight:700}.file-management-system-logo{font-size:18px;font-weight:700}.file-management-system-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.file-management-system-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.file-management-system-subtitle{margin:0;font-size:20px;font-weight:700}.file-management-system-writer{margin-top:10px}.file-management-system-section{margin-bottom:30px}.file-management-system-table{width:100%;border-collapse:collapse;border:1px solid #333;margin-top:0}.file-management-system-item-cell{padding:12px}.file-management-system-item{display:flex;flex-direction:column;gap:8px}.file-management-system-label{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;font-weight:500;cursor:pointer;color:#333}.file-management-system-checkbox{margin:0;flex-shrink:0;width:16px;height:16px;cursor:pointer;accent-color:#007bff}.file-management-system-checkbox:checked{background-color:#007bff}.file-management-system-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.file-management-system-input:focus{background-color:#fff!important;color:#333!important}.file-management-system-textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:6px 8px;font-size:13px;font-family:inherit;color:#333!important;line-height:1.4;resize:vertical;min-height:40px;background-color:#fafafa}.file-management-system-textarea:focus{background-color:#fff!important;color:#333!important;outline:2px solid #007bff;outline-offset:-2px;border-color:#007bff}.file-management-system-textarea::placeholder{color:#999;font-style:italic}.file-management-system-actions{display:flex;justify-content:center;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.file-management-system-input:-webkit-autofill,.file-management-system-input:-webkit-autofill:hover,.file-management-system-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.file-management-system-textarea:-webkit-autofill,.file-management-system-textarea:-webkit-autofill:hover,.file-management-system-textarea:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important}.file-management-system-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:16px;height:16px;border:2px solid #007bff;border-radius:3px;background-color:#fff;position:relative;cursor:pointer}.file-management-system-checkbox:checked{background-color:#007bff;border-color:#007bff}.file-management-system-checkbox:checked:after{content:"✓";position:absolute;top:-2px;left:1px;color:#fff;font-size:12px;font-weight:700}.file-management-system-checkbox:hover{border-color:#0056b3}.file-management-system-checkbox:focus{outline:2px solid #007bff;outline-offset:2px}.file-management-system-checkbox:checked+.file-management-system-label{color:#007bff}.file-management-system-label{-webkit-user-select:none;user-select:none;transition:color .2s ease}.file-management-system-label:hover{color:#007bff}.file-management-system-label br{line-height:1.6}.file-management-system-item.completed{background-color:#f8f9fa;border-left:4px solid #28a745;padding-left:12px}.file-management-system-textarea{transition:border-color .2s ease,box-shadow .2s ease}.file-management-system-textarea:focus{box-shadow:0 0 0 3px #007bff1a}.file-management-system-checkbox:focus-visible{outline:2px solid #007bff;outline-offset:2px}.file-management-system-label:focus-within{background-color:#007bff0d;border-radius:4px;padding:2px}.file-management-system-label{align-items:flex-start;margin-top:2px}.file-management-system-checkbox{margin-top:2px}.file-management-system-table tbody tr{border-bottom:1px solid #eee}.file-management-system-table tbody tr:last-child{border-bottom:none}.file-management-system-textarea::-webkit-scrollbar{width:8px}.file-management-system-textarea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.file-management-system-textarea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.file-management-system-textarea::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.file-management-system-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.policies-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.policies-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.policies-title{margin:0;font-size:24px;font-weight:700}.policies-logo{font-size:18px;font-weight:700}.policies-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.policies-title-section{text-align:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.policies-subtitle{margin:0;font-size:20px;font-weight:700}.policies-writer{margin-top:10px}.writer-form{display:flex;justify-content:center;gap:30px}.writer-field{display:flex;align-items:center;gap:8px}.writer-field-label{font-size:14px;font-weight:500;min-width:80px}.writer-field-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:150px}.policies-section{margin-bottom:30px}.section-header{background-color:#f8f9fa;color:#333;padding:8px 12px;margin:0;font-size:14px;font-weight:700}.policies-table{width:100%;border-collapse:collapse;border:1px solid #333;margin-top:0}.table-header{background-color:#333;color:#fff;padding:8px 12px;font-size:14px;font-weight:700;border:1px solid #333;text-align:center}.table-cell{padding:8px 12px;border:1px solid #ddd;font-size:13px}.table-cell-label{background-color:#f8f9fa;width:120px;text-align:center;vertical-align:middle;font-weight:500}.table-cell-rowspan{vertical-align:middle;text-align:center;font-weight:700;background-color:#f0f0f0;width:100px;writing-mode:horizontal-tb}.table-cell-input{padding:8px 12px;border:1px solid #ddd;vertical-align:top}.policies-item-cell{padding:12px}.policies-item{display:flex;flex-direction:column;gap:8px}.policies-label{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;font-weight:500;cursor:pointer;color:#333}.policies-checkbox{margin:0;flex-shrink:0;width:16px;height:16px;cursor:pointer;accent-color:#007bff}.policies-checkbox:checked{background-color:#007bff}.policies-input{width:100%;border:none;outline:none;font-size:13px;color:#333!important}.policies-input:focus{background-color:#fff!important;color:#333!important}.policies-textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:6px 8px;font-size:13px;font-family:inherit;color:#333!important;line-height:1.4;resize:vertical;min-height:40px;background-color:#fafafa}.policies-textarea:focus{background-color:#fff!important;color:#333!important;outline:2px solid #007bff;outline-offset:-2px;border-color:#007bff}.policies-textarea::placeholder{color:#999;font-style:italic}.policies-actions{display:flex;justify-content:center;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.btn-primary{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;cursor:pointer;font-weight:500}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;cursor:pointer;font-weight:500}.btn-secondary:hover{background-color:#545b62}.policies-input:-webkit-autofill,.policies-input:-webkit-autofill:hover,.policies-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important;border-color:transparent!important}.policies-textarea:-webkit-autofill,.policies-textarea:-webkit-autofill:hover,.policies-textarea:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#333!important;background-color:#fff!important}.policies-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:16px;height:16px;border:2px solid #007bff;border-radius:3px;background-color:#fff;position:relative;cursor:pointer}.policies-checkbox:checked{background-color:#007bff;border-color:#007bff}.policies-checkbox:checked:after{content:"✓";position:absolute;top:-2px;left:1px;color:#fff;font-size:12px;font-weight:700}.policies-checkbox:hover{border-color:#0056b3}.policies-checkbox:focus{outline:2px solid #007bff;outline-offset:2px}.policies-checkbox:checked+.policies-label{color:#007bff}.policies-label{-webkit-user-select:none;user-select:none;transition:color .2s ease}.policies-label:hover{color:#007bff}.policies-label br{line-height:1.6}.policies-item.completed{background-color:#f8f9fa;border-left:4px solid #28a745;padding-left:12px}.policies-textarea{transition:border-color .2s ease,box-shadow .2s ease}.policies-textarea:focus{box-shadow:0 0 0 3px #007bff1a}.policies-checkbox:focus-visible{outline:2px solid #007bff;outline-offset:2px}.policies-label:focus-within{background-color:#007bff0d;border-radius:4px;padding:2px}.policies-label{align-items:flex-start;margin-top:2px}.policies-checkbox{margin-top:2px}.policies-table tbody tr{border-bottom:1px solid #eee}.policies-table tbody tr:last-child{border-bottom:none}.policies-textarea::-webkit-scrollbar{width:8px}.policies-textarea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.policies-textarea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.policies-textarea::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.input-with-search{display:flex;align-items:center;gap:8px}.search-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;width:32px;height:32px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.search-btn:hover{background:#e9ecef}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h3{margin:0}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer}.modal-body{padding:20px;overflow-y:auto}.search-table{width:100%;border-collapse:collapse;margin-bottom:20px}.search-table th,.search-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.search-table th{background:#f8f9fa;font-weight:600}.select-btn{background:#007bff;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px}.select-btn:hover{background:#0056b3}.loading,.no-results{text-align:center;padding:40px;color:#666}.generation-panel{display:flex;justify-content:space-between;align-items:center;padding:20px;background-color:#f8f9fa;border-radius:6px;margin-top:30px;margin-bottom:30px}.generation-options{display:flex;align-items:center;gap:30px}.policies-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.file-upload-section{margin-top:15px;margin-bottom:20px}.file-drop-zone{border:2px dashed #ccc;border-radius:8px;padding:20px;text-align:center;cursor:pointer;transition:background-color .2s ease}.file-drop-zone.drag-over{background-color:#e9ecef;border-color:#007bff}.file-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #eee}.access-control-container{padding:2rem;background-color:#f9f9f9;min-height:100vh}.access-control-header{margin-bottom:2rem;text-align:center}.access-control-header h1{font-size:2.5rem;color:#333;margin-bottom:.5rem}.access-control-header p{font-size:1.1rem;color:#666}.access-control-tabs{display:flex;justify-content:flex-start;margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:0}.tab-button{padding:1rem 2rem;font-size:1.2rem;font-weight:700;color:#666;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .3s ease}.tab-button:hover{color:#007bff;background-color:#007bff0d}.tab-button.active{color:#007bff;border-bottom:3px solid #007bff}.access-control-content{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:2rem;min-height:500px}.rbac-builder-container{height:100%;display:flex;flex-direction:column;background-color:#f8f9fa;overflow-y:auto;position:relative}.rbac-saving-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#fffc;z-index:1500;text-align:center}.rbac-saving-overlay .spinner{width:48px;height:48px;border:4px solid #eef2f7;border-top:4px solid #007bff;border-radius:50%;animation:spin .9s linear infinite}.rbac-saving-overlay p{margin:0;color:#3c4257;font-weight:600}.role-list-loading{display:flex;align-items:center;justify-content:center;padding:40px 20px}.role-list-loading .spinner{width:30px;height:30px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.badge-new{background-color:#28a745;color:#fff;font-size:.7rem;padding:2px 6px;border-radius:4px;margin-left:8px;font-weight:700;vertical-align:middle}.tree-node.virtual{border-left:4px solid #ffc107;background-color:#fffbf2}.tree-node.virtual .node-header{background-color:#fff8e1}.page-permission-manager{display:none}.rbac-divider{height:1px;background:#ddd;margin:20px}.rbac-layout-bottom-header{padding:0 20px;margin-bottom:10px}.rbac-layout-bottom-header h2{font-size:1.2rem;margin:0 0 5px;color:#333}.rbac-layout-bottom-header p{margin:0;color:#666;font-size:.9rem}.rbac-layout{display:flex;gap:20px;padding:20px;min-height:500px}.role-sidebar{width:300px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.sidebar-header{padding:15px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.sidebar-header h3{margin:0;font-size:1.1rem}.sidebar-header button{background:#007bff;color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer;font-size:.8rem}.role-mini-form{padding:10px;background:#f1f8ff;border-bottom:1px solid #eee;display:flex;flex-direction:column;gap:8px}.role-mini-form input{padding:6px;border:1px solid #ccc;border-radius:4px}.role-mini-form .form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px;align-self:stretch}.role-mini-form .form-actions button{background:#007bff;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .15s ease,transform .1s ease}.role-mini-form .form-actions button:hover{background:#0069d9;transform:translateY(-1px)}.role-mini-form .form-actions button:active{transform:translateY(0)}.role-mini-form .form-actions button+button{background:#6c757d}.role-list{list-style:none;padding:0;margin:0;overflow-y:auto;flex:1}.role-list li{padding:12px 15px;border-bottom:1px solid #f5f5f5;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}.role-list li:hover{background-color:#fafafa}.role-list li.active{background-color:#e7f3ff;border-left:4px solid #007bff}.role-info{display:flex;flex-direction:column}.role-name{font-weight:500}.role-code{font-size:.8rem;color:#888}.role-actions{display:flex;gap:5px;opacity:0;transition:opacity .2s}.role-list li:hover .role-actions{opacity:1}.permission-content{flex:1;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;overflow:hidden}.content-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#fff}.header-actions{display:flex;gap:10px}.btn-primary{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.permission-tree-container{padding:20px;overflow-y:auto;flex:1}.tree-node{margin-bottom:15px;border:1px solid #eee;border-radius:6px;background:#fff}.page-node{border-left:4px solid #28a745}.orphan-node{border-left:4px solid #6c757d;opacity:.8}.node-header{padding:10px 15px;background:#f8f9fa;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee}.node-header label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;font-size:1.05rem}.node-code{font-weight:400;font-size:.8rem;color:#888;margin-left:5px}.node-actions{display:flex;gap:8px}.node-actions button{font-size:.8rem;padding:4px 8px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer}.node-actions button:hover{background:#eee}.node-children{padding:15px}.children-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.child-node{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border:1px solid #eee;border-radius:4px;transition:all .2s}.child-node:hover{border-color:#b8daff;background:#f0f8ff}.child-node label{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1;font-size:.95rem}.child-type-badge{font-size:.7rem;padding:2px 4px;border-radius:3px;font-weight:700;min-width:15px;text-align:center}.section-node .child-type-badge{background:#e3f2fd;color:#007bff}.action-node .child-type-badge{background:#fff3cd;color:#856404}.unknown-node .child-type-badge{background:#e2e3e5;color:#383d41}.child-actions{opacity:.2;transition:opacity .2s}.child-node:hover .child-actions{opacity:1}.icon-btn{border:none;background:none;cursor:pointer;font-size:1rem;padding:2px 5px}.icon-btn.delete{color:#dc3545}.icon-btn:hover{transform:scale(1.2)}.empty-children{color:#aaa;font-style:italic;font-size:.9rem}.role-members-section{margin-top:30px;border:1px solid #eee;border-radius:6px;padding:15px}.role-members-section .section-header{display:flex;justify-content:space-between;margin-bottom:15px}.add-member-button{background:linear-gradient(135deg,#4f8ef7,#2f6fe4);color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-weight:600;box-shadow:0 2px 6px #2f6fe440;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.add-member-button:hover{transform:translateY(-1px);box-shadow:0 4px 10px #2f6fe440;filter:brightness(1.05)}.add-member-button:active{transform:translateY(0);box-shadow:0 2px 6px #2f6fe440}.members-loading{display:flex;align-items:center;gap:10px;padding:14px;background:#f8f9fa;border:1px dashed #d1d9e0;border-radius:6px;color:#4a5568;font-size:.95rem}.members-loading .spinner{width:22px;height:22px;border:3px solid #eef2f7;border-top:3px solid #007bff;border-radius:50%;animation:spin .9s linear infinite}.members-list{display:flex;flex-wrap:wrap;gap:8px}.member-chip{background:#e9ecef;padding:5px 10px;border-radius:20px;display:flex;align-items:center;gap:8px;font-size:.9rem}.member-chip button{border:none;background:#6c757d;color:#fff;border-radius:50%;width:18px;height:18px;font-size:12px;display:flex;align-items:center;justify-content:center;cursor:pointer}.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}.modal-content{background:#fff;padding:25px;border-radius:8px;width:500px;max-width:90%;box-shadow:0 4px 12px #00000026}.permission-modal h3{margin-top:0;margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:10px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.input-group{display:flex;align-items:center}.input-group .prefix{background:#eee;padding:8px;border:1px solid #ddd;border-right:none;border-radius:4px 0 0 4px;font-family:monospace}.input-group input{border-radius:0 4px 4px 0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:1.2rem}.policy-builder-container{padding:2rem;background-color:#f9fafb;height:100%}.policy-builder-header{border-bottom:1px solid #e5e7eb;padding-bottom:1rem;margin-bottom:2rem}.policy-builder-header h1{font-size:1.8rem;font-weight:600;color:#111827}.policy-builder-header p{font-size:1rem;color:#6b7280}.policy-form{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem;box-shadow:0 1px 3px #0000000d}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151}.form-group input[type=text]{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem}.rules-engine{border-top:1px solid #e5e7eb;padding-top:1.5rem;margin-top:2rem}.rules-engine h2{font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.rules-engine p{color:#6b7280;margin-top:0;margin-bottom:1.5rem}.rules-list{display:flex;flex-direction:column;gap:1rem}.no-rules-text{color:#9ca3af;font-style:italic;text-align:center;padding:2rem;border:2px dashed #e5e7eb;border-radius:6px}.add-rule-btn{background-color:#eff6ff;color:#1d4ed8;border:1px dashed #93c5fd;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s;margin-top:1rem}.add-rule-btn:hover{background-color:#dbeafe}.policy-actions{border-top:1px solid #e5e7eb;padding-top:1.5rem;margin-top:2rem;text-align:right}.save-policy-btn{background-color:#2563eb;color:#fff;padding:.75rem 2rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.save-policy-btn:hover{background-color:#1d4ed8}.save-policy-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.rule-placeholder{background-color:#f3f4f6;border:1px solid #e5e7eb;padding:1rem;border-radius:6px;display:flex;justify-content:space-between;align-items:center}.remove-rule-btn{background:none;border:none;color:#9ca3af;font-size:1.5rem;cursor:pointer;padding:0 .5rem}.remove-rule-btn:hover{color:#ef4444}.rule-builder{display:flex;align-items:center;gap:1rem;background-color:#f9fafb;padding:1rem;border:1px solid #e5e7eb;border-radius:6px}.rule-select,.rule-input{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;background-color:#fff}.rule-select{flex:2}.rule-input{flex:3}.rule-builder .remove-rule-btn{background:none;border:none;color:#9ca3af;font-size:1.5rem;cursor:pointer;padding:0 .5rem;margin-left:auto;transition:color .2s}.rule-builder .remove-rule-btn:hover{color:#ef4444}.policy-management-container{padding:2rem;background-color:#f9f9f9;height:100%}.page-description{color:#666;margin-bottom:2rem;font-size:1.1rem}.resource-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.resource-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;box-shadow:0 2px 4px #0000000d}.resource-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.resource-name{margin-top:0;margin-bottom:.75rem;font-size:1.5rem;color:#333}.resource-description{font-size:1rem;color:#777;margin-bottom:0}.policy-detail-container{padding:2rem;background-color:#f9f9f9;height:100%;max-width:1000px;margin:0 auto}.policy-detail-container h1{border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1rem}.back-button{background:none;border:1px solid #ccc;color:#555;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;margin-bottom:2rem;transition:background-color .2s,color .2s}.back-button:hover{background-color:#f0f0f0;color:#333}.policy-description{color:#666;margin-bottom:2rem;font-size:1.1rem}.policy-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem 2rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000000d}.policy-card h2{margin-top:0;font-size:1.5rem;color:#333;border-bottom:1px solid #f0f0f0;padding-bottom:.75rem;margin-bottom:1rem}.policy-table{width:100%;border-collapse:collapse}.policy-table th,.policy-table td{padding:1rem;text-align:left;border-bottom:1px solid #f0f0f0}.policy-table th{background-color:#fcfcfc;font-weight:600;color:#555}.policy-table tbody tr:last-child td{border-bottom:none}.access-full{color:#28a745;font-weight:700}.access-list{color:#ffc107;font-weight:700}.access-none{color:#dc3545;font-weight:700}.policy-footer{margin-top:2rem;padding:1rem;background-color:#f0f8ff;border:1px solid #cce5ff;border-radius:6px;color:#004085;text-align:center}.sales-schedule-container{font-family:Malgun Gothic,맑은 고딕,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.sales-schedule-header{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.sales-schedule-title{margin:0;font-size:24px;font-weight:700}.sales-schedule-main{background-color:#fff;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.schedule-filters{display:flex;justify-content:flex-end;gap:10px;margin-bottom:15px}.schedule-filters select{padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.total-count{font-size:16px;font-weight:700;margin-bottom:15px;text-align:right;color:#333}.calendar-year-container{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:40px}.calendar-month-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;min-height:200px;box-shadow:0 2px 5px #0000000d;transition:box-shadow .2s ease}.calendar-month-card:hover{box-shadow:0 5px 10px #0000001a}.calendar-month-header{background-color:#f8f9fa;padding:10px 15px;font-size:16px;font-weight:700;color:#333;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;text-align:center}.calendar-month-body{padding:10px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;max-height:300px}.calendar-event-item{background-color:#fff;border:1px solid #eee;border-radius:4px;padding:8px;font-size:12px;display:flex;flex-direction:column;gap:4px;border-left-width:10px;border-left-style:solid;transition:transform .1s,background-color .2s ease,border-color .2s ease;cursor:pointer;outline:none}.calendar-event-item:hover{transform:translate(2px);background-color:#fafafa}.calendar-event-item:focus-visible{box-shadow:0 0 0 2px #007bff4d}.calendar-event-item.collapsed{background-color:#f1f4ff;border-color:#d6defa}.calendar-event-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.calendar-event-title{font-weight:700;color:#333;line-height:1.2}.calendar-event-meta{display:flex;justify-content:space-between;color:#666;font-size:11px}.calendar-event-details{display:flex;flex-direction:column;gap:2px;color:#666;font-size:11px}.calendar-event-row{display:flex;justify-content:space-between}.calendar-event-chevron{font-size:12px;color:#666;width:14px;text-align:center;transition:transform .2s ease}.calendar-event-item.collapsed .calendar-event-chevron{transform:rotate(-90deg)}.no-events-placeholder{color:#ccc;text-align:center;margin-top:20px;font-size:12px}.loading,.error,.no-results{text-align:center;padding:40px;color:#666}.error{color:#dc3545}@media (max-width: 1024px){.calendar-year-container{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.calendar-year-container{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.calendar-year-container{grid-template-columns:1fr}}.badge{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:700;margin-right:4px;display:inline-block}.channel-EMAIL{background-color:#e3f2fd;color:#0d47a1;border:1px solid #bbdefb}.channel-JANDI{background-color:#e8f5e9;color:#1b5e20;border:1px solid #c8e6c9}.channel-SMS{background-color:#fff3e0;color:#e65100;border:1px solid #ffe0b2}.priority-HIGH{background-color:#ffebee;color:#b71c1c;border:1px solid #ffcdd2}.priority-MID{background-color:#fff3e0;color:#e65100;border:1px solid #ffe0b2}.priority-LOW{background-color:#f3e5f5;color:#4a148c;border:1px solid #e1bee7}.context-menu{position:fixed;z-index:9999;background:#fff;border:1px solid #d6defa;border-radius:6px;box-shadow:0 8px 20px #0000001f;min-width:180px;padding:6px 0;animation:fadeIn .12s ease}.context-menu-item{width:100%;text-align:left;background:transparent;border:none;padding:10px 14px;font-size:13px;color:#333;cursor:pointer}.context-menu-item:hover,.context-menu-item:focus-visible{background:#f1f4ff;outline:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.notification-bundle-modal .modal-content{border-radius:12px;box-shadow:0 10px 25px #00000026;overflow:hidden;display:flex;flex-direction:column}.notification-bundle-modal .modal-header{background-color:#f8f9fa;padding:25px;border-bottom:1px solid #e9ecef}.notification-bundle-modal .modal-footer{background-color:transparent;padding:20px 25px;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:10px}.selected-projects-summary{background-color:#e3f2fd;border:1px solid #bbdefb;color:#0d47a1;padding:12px 15px;border-radius:6px;margin-bottom:25px;font-size:14px;display:flex;align-items:center}.selected-projects-summary strong{margin-right:8px;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:#495057}.form-input,.form-select{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:#80bdff;outline:none;box-shadow:0 0 0 .2rem #007bff40}.form-row{display:flex;gap:20px;margin-bottom:10px;border-bottom:none}.form-row .form-group{margin-bottom:0}.form-group.half{flex:1}.checkbox-group{display:flex;gap:15px}.checkbox-card{flex:1;border:1px solid #dee2e6;border-radius:6px;padding:10px 15px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;background-color:#fff}.checkbox-card:hover{background-color:#f8f9fa;border-color:#adb5bd}.checkbox-card.checked{background-color:#e8f5e9;border-color:#81c784;color:#2e7d32}.checkbox-card input[type=checkbox]{margin-right:10px;accent-color:#2e7d32;transform:scale(1.1)}.recipient-section{border:1px solid #dee2e6;border-radius:6px;padding:15px;background-color:#f8f9fa}.recipient-list{min-height:40px;margin-bottom:10px}.tags-container{display:flex;flex-wrap:wrap;gap:8px}.tag{background-color:#fff;border:1px solid #ced4da;border-radius:20px;padding:4px 12px;font-size:13px;display:flex;align-items:center;color:#495057;box-shadow:0 1px 2px #0000000d}.tag button{background:none;border:none;margin-left:6px;font-size:16px;cursor:pointer;color:#adb5bd;line-height:1;padding:0;display:flex;align-items:center}.tag button:hover{color:#dc3545}.placeholder-text{color:#adb5bd;font-size:14px;font-style:italic}.modal-close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#adb5bd;transition:color .2s}.modal-close-button:hover{color:#343a40}.btn-primary,.btn-secondary{padding:10px 20px;border-radius:6px;font-weight:500;font-size:14px;cursor:pointer;border:none;transition:all .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0069d9}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-add-recipient{background-color:#fff;border:1px dashed #adb5bd;color:#6c757d;width:100%;padding:8px;border-radius:4px;cursor:pointer;transition:all .2s}.btn-add-recipient:hover{border-color:#6c757d;color:#495057;background-color:#e9ecef}.notification-bundle-modal .react-datepicker{width:auto;border:1px solid #ced4da;border-radius:6px;box-shadow:0 2px 5px #0000000d;font-family:Malgun Gothic,맑은 고딕,sans-serif;flex-shrink:0;display:flex;flex-direction:row;overflow:visible}.notification-bundle-modal .react-datepicker__week .react-datepicker__day:nth-child(7):not(.react-datepicker__day--outside-month){color:#06c}.notification-bundle-modal .react-datepicker__week .react-datepicker__day:nth-child(1):not(.react-datepicker__day--outside-month){color:#dc3545}.notification-bundle-modal .react-datepicker__day.holiday:not(.react-datepicker__day--outside-month){color:#dc3545;font-weight:600}.notification-bundle-modal .react-datepicker__day--selected{background-color:#007bff!important;color:#fff!important}.notification-bundle-modal .react-datepicker__day--today.react-datepicker__day:nth-child(7):not(.react-datepicker__day--selected){color:#06c}.notification-bundle-modal .react-datepicker__day--today.react-datepicker__day:nth-child(1):not(.react-datepicker__day--selected){color:#dc3545}.notification-bundle-modal .react-datepicker__time-container{border-left:1px solid #ced4da;width:100px;height:250px}.notification-bundle-modal .react-datepicker__time-container .react-datepicker__header--time{border-bottom:1px solid #ced4da!important;padding-top:8px;padding-bottom:8px}.notification-bundle-modal .react-datepicker__time-container .react-datepicker__time{height:calc(100% - 40px);border-radius:0;background:#fff}.notification-bundle-modal .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:100%;height:100%!important;border-radius:0}.notification-bundle-modal .react-datepicker__header--time{padding-left:0;padding-right:0}.notification-bundle-modal .react-datepicker-wrapper{width:auto;display:flex;justify-content:center}.notification-bundle-modal .react-datepicker__day--selected{background-color:#007bff;color:#fff}.project-list-scrollable{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) #f1f3f5}.project-list-scrollable::-webkit-scrollbar{-webkit-appearance:none;width:10px}.project-list-scrollable::-webkit-scrollbar-thumb{border-radius:5px;background-color:#0000004d;border:2px solid #f1f3f5}.project-list-scrollable::-webkit-scrollbar-track{background-color:#f1f3f5;border-radius:4px}.project-list-scrollable::-webkit-scrollbar-thumb:hover{background-color:#00000080}.context-menu{position:fixed;background-color:#fff;border:1px solid #ddd;box-shadow:0 2px 10px #0000001a;border-radius:4px;z-index:1000;min-width:150px;padding:5px 0}.context-menu-item{padding:8px 15px;cursor:pointer;font-size:13px;color:#333}.context-menu-item:hover{background-color:#f0f0f0}.ptscript-page{padding:24px;color:#1f2937}.ptscript-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}.ptscript-header h1{margin:0 0 8px}.inline-controls{display:flex;align-items:flex-end;gap:8px}.inline-controls label{display:flex;flex-direction:column;font-size:14px;gap:4px}.inline-controls input{width:120px;padding:8px 10px}.ghost-btn{background:#f3f4f6;border:1px solid #e5e7eb;color:#1f2937;padding:8px 10px;border-radius:6px;cursor:pointer}.ghost-btn.small{padding:6px 8px}.ptscript-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-bottom:16px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;box-shadow:0 2px 6px #0000000a}.card header h3{margin:0 0 4px}.card header p{margin:0 0 12px;color:#6b7280}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:14px}.field textarea,.timeline-row input,.drop-zone textarea,.inline-controls input{border:1px solid #d1d5db;border-radius:8px;padding:10px;font-size:14px;width:100%;box-sizing:border-box}.drop-zone{border:2px dashed #cbd5e1;border-radius:10px;padding:12px;text-align:center;background:#f8fafc}.drop-zone-icon{font-size:28px}.compact-input{margin-top:8px}.file-list{margin-top:10px;text-align:left;padding-left:18px;color:#374151}.timeline-table{display:flex;flex-direction:column;gap:8px}.timeline-head,.timeline-row{display:grid;grid-template-columns:140px 160px 1fr 1fr 1fr 80px;gap:8px;align-items:center}.timeline-head{font-size:13px;color:#6b7280}.timeline-row input{padding:8px 10px}.timeline-row span{padding:4px 0}.script-preview{margin-top:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;white-space:pre-wrap;font-size:14px}.prompts .prompt-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.prompt-box{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#f8fafc}.prompt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.prompt-box pre{white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.actions .action-buttons{display:flex;gap:10px;flex-wrap:wrap}.actions button{padding:10px 12px;border-radius:8px;border:1px solid #d1d5db;cursor:pointer}.actions button.secondary{background:#1f2937;color:#fff;border-color:#1f2937}.hint{margin-top:8px;color:#6b7280;font-size:13px}@media (max-width: 1024px){.timeline-head,.timeline-row{grid-template-columns:110px 140px 1fr 1fr 1fr 70px}}@media (max-width: 768px){.ptscript-header{flex-direction:column;align-items:flex-start}.timeline-head,.timeline-row{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-head span:nth-child(n+3),.timeline-row input:nth-child(n+3){grid-column:span 2}.timeline-row button{grid-column:span 2;width:fit-content;justify-self:flex-start}}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background-color:#282c34;padding:20px;color:#fff;text-align:center}.app-main{flex:1;padding:20px}.app-footer{background-color:#f8f9fa;padding:10px;text-align:center;border-top:1px solid #dee2e6}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:18px;color:#6c757d}.route-loading-spinner{width:42px;height:42px;border:4px solid rgba(0,0,0,.08);border-top-color:#667eea;border-radius:50%;animation:route-spin .9s linear infinite}@keyframes route-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error{padding:20px;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin:20px 0}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],input[type=number],input[type=password],textarea,select{color-scheme:light;background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}#root{min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{cursor:pointer;border:none;outline:none;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{font-family:inherit;outline:none}a{text-decoration:none;color:inherit}a:hover{text-decoration:underline}@media (max-width: 768px){body{font-size:14px}}/*!* ==================== 다크모드 전역 스타일 추가 ==================== *!*/.btn-new-item{background-color:#0f0;color:#000;border:none;border-radius:5px;cursor:pointer;font-weight:600;padding:12px 32px;font-size:16px}.btn-new-item:hover{background-color:#0e0}
