*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1a1a2e;background:#f5f7fa;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 24px}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-primary{background:#4361ee;color:#fff}.btn-primary:hover{background:#3a56d4}.btn-primary:disabled{background:#a0aec0;cursor:not-allowed}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0}.btn-danger{background:#e53e3e;color:#fff}.btn-danger:hover{background:#c53030}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;color:#4a5568;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4361ee;box-shadow:0 0 0 3px #4361ee1a}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.badge-success{background:#c6f6d5;color:#276749}.badge-error{background:#fed7d7;color:#9b2c2c}.badge-warning{background:#fefcbf;color:#975a16}.badge-info{background:#bee3f8;color:#2a4365}table{width:100%;border-collapse:collapse}table th,table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e2e8f0}table th{font-size:12px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em}table tr:hover td{background:#f7fafc}.stepper{display:flex;gap:8px;margin-bottom:32px}.stepper-step{flex:1;padding:12px;text-align:center;border-radius:8px;font-size:13px;font-weight:500;background:#e2e8f0;color:#718096}.stepper-step.active{background:#4361ee;color:#fff}.stepper-step.completed{background:#c6f6d5;color:#276749}.error-box{padding:12px 16px;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#9b2c2c;font-size:14px;margin-bottom:16px}.success-box{padding:12px 16px;background:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;color:#276749;font-size:14px;margin-bottom:16px}.nav{background:#fff;border-bottom:1px solid #e2e8f0;padding:0 24px}.nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:32px;height:56px}.nav-brand{font-weight:700;font-size:16px;color:#4361ee;text-decoration:none}.nav-link{font-size:14px;color:#718096;text-decoration:none;font-weight:500;transition:color .15s}.nav-link:hover,.nav-link.active{color:#4361ee}.page-header{margin-bottom:24px}.page-header h1{font-size:24px;font-weight:700}.page-header p{color:#718096;font-size:14px;margin-top:4px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.template-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;cursor:pointer;transition:all .15s}.template-card:hover{border-color:#4361ee;box-shadow:0 4px 12px #4361ee26}.template-card h3{font-size:16px;margin-bottom:4px}.template-card p{font-size:13px;color:#718096}.dropzone{border:2px dashed #cbd5e0;border-radius:12px;padding:48px;text-align:center;cursor:pointer;transition:all .15s}.dropzone:hover,.dropzone.active{border-color:#4361ee;background:#ebf4ff}.dropzone p{color:#718096;font-size:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:16px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;padding:32px}.modal h2{font-size:20px;margin-bottom:16px}
