.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}.modal-content{background:#fff;border-radius:12px;padding:32px;max-width:500px;width:90%;box-shadow:0 8px 32px #0003}.modal-content.idle-timeout-modal{text-align:center;max-width:420px}.idle-timeout-modal{text-align:center}.idle-timeout-modal h2{margin:0 0 20px;font-size:24px;font-weight:600;color:#f59e0b}.idle-timeout-modal p{margin:0 0 24px;font-size:16px;line-height:1.6;color:#666}.idle-timeout-modal 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}.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}.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}@media (max-width: 768px){.nav-section-admin{background-color:#0003}.nav-divider{margin:5px 0}}.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{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#666;font-size:.9rem}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .3s}.form-group 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-group{margin-bottom:20px}.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}.close-button:hover{color:#333}.form-box h2{text-align:center;margin-bottom:24px;color:#333}.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}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:80vh;overflow:hidden;box-shadow:0 4px 20px #00000026}.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;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}}.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}.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}/*!* 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}.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}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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}.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:#999;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}.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 .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}.meeting-link:hover{text-decoration:underline}.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}.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-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;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}.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}.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}}/*!* ==================== 다크모드 전역 스타일 추가 ==================== *!*/
