*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #2563EB;--color-primary-dark: #1d4ed8;--color-primary-light: #dbeafe;--color-success: #16a34a;--color-success-light: #dcfce7;--color-danger: #dc2626;--color-danger-light: #fee2e2;--color-warning: #f59e0b;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--radius: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);--max-width: 720px}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--color-gray-800);background:var(--color-gray-50);line-height:1.6;min-height:100vh}.header{background:#fff;border-bottom:1px solid var(--color-gray-200);padding:16px 24px;display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:100}.header-logo{width:36px;height:36px;background:var(--color-primary);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;flex-shrink:0}.header-title{font-size:18px;font-weight:700;color:var(--color-gray-900)}.header-subtitle{font-size:13px;color:var(--color-gray-500);margin-left:auto}.progress-bar-container{background:#fff;padding:16px 24px 20px;border-bottom:1px solid var(--color-gray-200)}.progress-steps{display:flex;align-items:center;justify-content:space-between;position:relative;max-width:var(--max-width);margin:0 auto}.progress-steps:before{content:"";position:absolute;top:14px;left:24px;right:24px;height:3px;background:var(--color-gray-200);z-index:0}.progress-line{position:absolute;top:14px;left:24px;height:3px;background:var(--color-primary);z-index:1;transition:width .3s ease}.progress-step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;cursor:pointer;background:none;border:none;padding:0}.progress-step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:3px solid var(--color-gray-200);background:#fff;color:var(--color-gray-400);transition:all .2s ease}.progress-step.active .progress-step-circle,.progress-step.completed .progress-step-circle{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.progress-step-label{font-size:11px;margin-top:6px;color:var(--color-gray-400);white-space:nowrap;font-weight:500}.progress-step.active .progress-step-label,.progress-step.completed .progress-step-label{color:var(--color-primary)}@media(max-width:640px){.progress-step-label{display:none}.progress-step-circle{width:24px;height:24px;font-size:11px}}.page-container{max-width:var(--max-width);margin:0 auto;padding:32px 24px 80px}.form-section{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:32px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.form-section-title{font-size:22px;font-weight:700;color:var(--color-gray-900);margin-bottom:4px}.form-section-desc{font-size:14px;color:var(--color-gray-500);margin-bottom:28px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:600;color:var(--color-gray-700);margin-bottom:6px}.form-label .required{color:var(--color-danger);margin-left:2px}.form-hint{font-size:12px;color:var(--color-gray-400);margin-top:4px}.form-input,.form-textarea,.form-select{width:100%;padding:10px 14px;font-size:15px;border:1px solid var(--color-gray-300);border-radius:var(--radius);background:#fff;color:var(--color-gray-800);transition:border-color .15s,box-shadow .15s;font-family:inherit;line-height:1.5}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input:read-only{background:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed}.form-input.error,.form-textarea.error,.form-select.error{border-color:var(--color-danger)}.form-error{font-size:13px;color:var(--color-danger);margin-top:4px}.form-textarea{resize:vertical;min-height:100px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%236b7280' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:520px){.form-row{grid-template-columns:1fr}.form-section{padding:20px}}.color-picker-group{display:flex;align-items:center;gap:12px}.color-picker-input{width:48px;height:40px;border:1px solid var(--color-gray-300);border-radius:var(--radius);padding:2px;cursor:pointer;background:none}.color-picker-hex{width:120px}.drop-zone{border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);padding:32px 24px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:var(--color-gray-50)}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--color-primary);background:var(--color-primary-light)}.drop-zone-icon{font-size:32px;margin-bottom:8px;color:var(--color-gray-400)}.drop-zone-text{font-size:14px;color:var(--color-gray-500)}.drop-zone-text strong{color:var(--color-primary)}.drop-zone-hint{font-size:12px;color:var(--color-gray-400);margin-top:4px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}@media(max-width:520px){.photo-grid{grid-template-columns:repeat(2,1fr)}}.photo-thumb{position:relative;aspect-ratio:1;border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-gray-200)}.photo-thumb img{width:100%;height:100%;object-fit:cover}.photo-thumb-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#0009;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1}.logo-preview{margin-top:12px;display:flex;align-items:center;gap:12px}.logo-preview img{width:80px;height:80px;object-fit:contain;border-radius:var(--radius);border:1px solid var(--color-gray-200);background:#fff}.logo-preview-remove{font-size:13px;color:var(--color-danger);background:none;border:none;cursor:pointer;text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;border-radius:var(--radius);border:none;cursor:pointer;transition:background .15s,box-shadow .15s,opacity .15s;font-family:inherit;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-gray-100);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-200)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:#15803d}.btn-danger-outline{background:#fff;color:var(--color-danger);border:1px solid var(--color-danger)}.btn-danger-outline:hover:not(:disabled){background:var(--color-danger-light)}.btn-sm{padding:8px 16px;font-size:13px}.btn-lg{padding:14px 32px;font-size:16px}.btn-block{width:100%}.form-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:32px}.inventory-item{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px;position:relative}.inventory-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.inventory-item-title{font-size:16px;font-weight:600;color:var(--color-gray-800)}.inventory-item-remove{font-size:13px;color:var(--color-danger);background:none;border:none;cursor:pointer;text-decoration:underline}.review-block{border-bottom:1px solid var(--color-gray-200);padding-bottom:20px;margin-bottom:20px}.review-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.review-block-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.review-block-title{font-size:16px;font-weight:700;color:var(--color-gray-900)}.review-block-edit{font-size:13px;color:var(--color-primary);background:none;border:none;cursor:pointer;text-decoration:underline}.review-field{display:flex;margin-bottom:6px;font-size:14px}.review-field-label{width:160px;flex-shrink:0;color:var(--color-gray-500)}.review-field-value{color:var(--color-gray-800);word-break:break-word}@media(max-width:520px){.review-field{flex-direction:column}.review-field-label{width:auto;margin-bottom:2px}}.checkbox-group{display:flex;align-items:flex-start;gap:10px;padding:16px;background:var(--color-gray-50);border-radius:var(--radius);border:1px solid var(--color-gray-200)}.checkbox-group input[type=checkbox]{width:20px;height:20px;margin-top:2px;accent-color:var(--color-primary);flex-shrink:0}.checkbox-group label{font-size:14px;color:var(--color-gray-700);cursor:pointer}.already-submitted{text-align:center;padding:60px 24px}.already-submitted-icon{font-size:48px;margin-bottom:16px}.already-submitted h2{font-size:22px;color:var(--color-gray-900);margin-bottom:8px}.already-submitted p{font-size:15px;color:var(--color-gray-500)}.review-page{display:flex;flex-direction:column;height:100vh}.review-topbar{background:#fff;border-bottom:1px solid var(--color-gray-200);padding:12px 24px;display:flex;align-items:center;gap:16px;flex-shrink:0}.review-topbar h1{font-size:18px;font-weight:700;color:var(--color-gray-900)}.review-topbar .badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary)}.review-body{display:flex;flex:1;overflow:hidden}.review-iframe-container{flex:7;border-right:1px solid var(--color-gray-200)}.review-iframe-container iframe{width:100%;height:100%;border:none}.review-sidebar{flex:3;overflow-y:auto;background:#fff;display:flex;flex-direction:column}.review-sidebar-section{padding:20px;border-bottom:1px solid var(--color-gray-200)}.review-sidebar-section:last-child{border-bottom:none}.review-sidebar-title{font-size:15px;font-weight:700;color:var(--color-gray-900);margin-bottom:16px}.comment-item{background:var(--color-gray-50);border-radius:var(--radius);padding:12px;margin-bottom:10px;font-size:14px}.comment-item p{color:var(--color-gray-700);margin-bottom:4px}.comment-meta{font-size:12px;color:var(--color-gray-400);display:flex;align-items:center;gap:8px}.comment-resolved{font-size:11px;background:var(--color-success-light);color:var(--color-success);padding:2px 6px;border-radius:4px;font-weight:600}.comment-textarea{width:100%;min-height:80px;padding:10px;font-size:14px;border:1px solid var(--color-gray-300);border-radius:var(--radius);resize:vertical;font-family:inherit;margin-bottom:8px}.comment-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.approval-confirmed{background:var(--color-success-light);border-radius:var(--radius);padding:16px;text-align:center;font-size:15px;color:var(--color-success);font-weight:600}.changes-textarea{width:100%;min-height:80px;padding:10px;font-size:14px;border:1px solid var(--color-gray-300);border-radius:var(--radius);resize:vertical;font-family:inherit;margin-top:12px;margin-bottom:8px}.changes-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}@media(max-width:768px){.review-body{flex-direction:column}.review-iframe-container{flex:none;height:50vh;border-right:none;border-bottom:1px solid var(--color-gray-200)}.review-sidebar{flex:none}}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.dialog{background:#fff;border-radius:var(--radius-lg);padding:32px;max-width:440px;width:100%;box-shadow:var(--shadow-lg)}.dialog h3{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--color-gray-900)}.dialog p{font-size:14px;color:var(--color-gray-600);margin-bottom:24px}.dialog-actions{display:flex;gap:12px;justify-content:flex-end}.success-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}.success-card{background:#fff;border-radius:var(--radius-lg);padding:48px 40px;max-width:480px;width:100%;text-align:center;box-shadow:var(--shadow-md)}.success-checkmark{width:72px;height:72px;border-radius:50%;background:var(--color-success-light);display:flex;align-items:center;justify-content:center;margin:0 auto 24px;animation:checkPop .4s ease-out}@keyframes checkPop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.success-checkmark svg{width:36px;height:36px;color:var(--color-success)}.success-card h1{font-size:24px;font-weight:700;color:var(--color-gray-900);margin-bottom:8px}.success-card p{font-size:15px;color:var(--color-gray-500);margin-bottom:8px}.success-contact{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-gray-200);font-size:14px;color:var(--color-gray-500)}.success-contact a{color:var(--color-primary);text-decoration:none}.notfound-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}.notfound-card{background:#fff;border-radius:var(--radius-lg);padding:48px 40px;max-width:480px;width:100%;text-align:center;box-shadow:var(--shadow-md)}.notfound-icon{font-size:48px;margin-bottom:16px}.notfound-card h1{font-size:22px;font-weight:700;color:var(--color-gray-900);margin-bottom:8px}.notfound-card p{font-size:15px;color:var(--color-gray-500);margin-bottom:4px}.notfound-contact{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-gray-200);font-size:14px;color:var(--color-gray-500)}.notfound-contact a{color:var(--color-primary);text-decoration:none}.loading-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.spinner{width:40px;height:40px;border:4px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.save-indicator{position:fixed;bottom:20px;right:20px;background:var(--color-gray-800);color:#fff;font-size:13px;padding:8px 16px;border-radius:999px;box-shadow:var(--shadow-md);z-index:200;animation:fadeInUp .3s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.text-sm{font-size:14px}.text-muted{color:var(--color-gray-500)}
