:root{--md-sys-color-primary:#4b7a4b;--md-sys-color-primary-rgb:75, 122, 75;--md-sys-color-on-primary:#fff;--md-sys-color-primary-container:#d2ebd2;--md-sys-color-on-primary-container:#0c2b0d;--md-sys-color-secondary:#5d6f5d;--md-sys-color-secondary-container:#e2e8e2;--md-sys-color-surface:#fff;--md-sys-color-surface-variant:#f8faf8;--md-sys-color-background:#f4f6f4;--md-sys-color-outline:#727972;--md-sys-color-outline-variant:#e2e8f0;--md-sys-color-on-surface:#191c19;--md-sys-color-on-surface-variant:#414941;--md-sys-elevation-1:0px 4px 20px 0px #00000008, 0px 1px 3px 0px #00000005;--md-sys-elevation-2:0px 12px 30px 0px #4b7a4b0d, 0px 4px 12px 0px #00000008;--md-sys-elevation-3:0px 20px 40px 0px #00000014, 0px 1px 3px 0px #00000008;--md-sys-shape-corner-small:8px;--md-sys-shape-corner-medium:14px;--md-sys-shape-corner-large:24px;--md-sys-shape-corner-full:100px}.navbar{z-index:100;-webkit-backdrop-filter:blur(16px);height:70px;box-shadow:var(--md-sys-elevation-1);background:#ffffffd9;border-bottom:1px solid #4b7a4b1a;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.navbar-inner{align-items:center;gap:16px;width:100%;display:flex}.navbar-logo{width:auto;height:48px;transition:transform .3s}.navbar-logo:hover{transform:rotate(5deg)scale(1.05)}.navbar-brand{background:#000;-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:700}.stepper{justify-content:center;align-items:flex-start;gap:0;max-width:840px;margin:0 auto 12px;padding:16px 16px 32px;display:flex}.stepper-item{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.stepper-line{z-index:0;background:#cbd5e1;border-radius:2px;height:3px;transition:background-color .4s cubic-bezier(.4,0,.2,1);position:absolute;top:18px;left:-50%;right:50%}.stepper-line.active{background:linear-gradient(90deg, var(--md-sys-color-primary) 0%, #7db97d 100%)}.stepper-circle{color:#fff;z-index:1;background:#94a3b8;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;box-shadow:0 2px 4px #0000000d}.stepper-circle.current{background:linear-gradient(135deg, var(--md-sys-color-primary) 0%, #5c935c 100%);transform:scale(1.1);box-shadow:0 0 0 5px #4b7a4b33,0 4px 10px #4b7a4b26}.stepper-circle.completed{background:var(--md-sys-color-primary);box-shadow:0 2px 6px #4b7a4b26}.stepper-label{color:#64748b;text-align:center;z-index:1;max-width:110px;margin-top:10px;font-size:.75rem;font-weight:600;transition:color .3s}.stepper-label.active-label{color:var(--md-sys-color-primary);font-weight:700}.sticky-footer{-webkit-backdrop-filter:blur(16px);z-index:100;background:#fffc;border-top:1px solid #4b7a4b1a;padding:18px 24px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000000a}.footer-inner{justify-content:center;align-items:center;gap:16px;max-width:960px;margin:0 auto;display:flex}.btn{border-radius:var(--md-sys-shape-corner-full);letter-spacing:.25px;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;outline:none;justify-content:center;align-items:center;gap:8px;height:44px;padding:12px 28px;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:700;transition:all .25s cubic-bezier(.2,.8,.2,1);display:inline-flex}.btn-continue{background:linear-gradient(135deg, var(--md-sys-color-primary) 0%, #3e663e 100%);color:var(--md-sys-color-on-primary);box-shadow:0 4px 14px #4b7a4b59}.btn-continue:hover{background:linear-gradient(135deg, #5c935c 0%, var(--md-sys-color-primary) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #4b7a4b73}.btn-continue:active{transform:translateY(1px);box-shadow:0 2px 6px #4b7a4b33}.btn-clear{color:#92400e;background:#fef3c7;border:1px solid #fde68a;box-shadow:0 2px 8px #f59e0b14}.btn-clear:hover{background:#fde68a;transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b2e}.btn-clear:active{transform:translateY(1px);box-shadow:0 2px 4px #f59e0b0d}.btn-back{color:var(--md-sys-color-primary);border:1.5px solid var(--md-sys-color-primary);background:0 0}.btn-back:hover{background:#4b7a4b0f;transform:translateY(-2px)}.btn-back:active{transform:translateY(1px)}.btn-sample{color:#1e40af;background:#eff6ff;border:1.5px solid #bfdbfe;box-shadow:0 2px 8px #1e40af14}.btn-sample:hover{background:#dbeafe;transform:translateY(-2px);box-shadow:0 4px 12px #1e40af2e}.btn-sample:active{transform:translateY(1px);box-shadow:0 2px 4px #1e40af0d}.section-header{background:linear-gradient(135deg, var(--md-sys-color-primary) 0%, #3a623a 100%);color:var(--md-sys-color-on-primary);border-radius:var(--md-sys-shape-corner-medium);letter-spacing:.2px;margin-top:40px;margin-bottom:20px;padding:14px 24px;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700;box-shadow:0 4px 12px #4b7a4b1f}.summary-page{max-width:840px;margin:0 auto}.summary-section{border-radius:var(--md-sys-shape-corner-large);box-shadow:var(--md-sys-elevation-1);background:#fff;border:1px solid #4b7a4b1a;margin-bottom:32px;transition:transform .3s,box-shadow .3s;overflow:hidden}.summary-section:hover{box-shadow:var(--md-sys-elevation-2);transform:translateY(-2px)}.summary-rows{padding:12px 0}.summary-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.summary-row:last-child{border-bottom:none}.summary-label{color:#475569;font-size:.9rem;font-weight:600}.summary-value{text-align:right;color:#0f172a;max-width:60%;font-weight:700}*{box-sizing:border-box;margin:0;padding:0}body{color:#1e293b;-webkit-font-smoothing:antialiased;background:linear-gradient(135deg,#f3f7f4 0%,#e8efe9 50%,#dfebd0 100%) fixed;font-family:Plus Jakarta Sans,Outfit,system-ui,-apple-system,sans-serif}.app-wrapper{flex-direction:column;min-height:100vh;display:flex}.main-content{-webkit-backdrop-filter:blur(12px);border-radius:var(--md-sys-shape-corner-large,24px);width:96%;max-width:1400px;box-shadow:var(--md-sys-elevation-2);background:#fffffff2;border:1px solid #fff6;margin:40px auto 140px;padding:44px 48px}.app-title{text-align:center;background:linear-gradient(135deg,#1e293b 0%,#475569 100%);-webkit-text-fill-color:transparent;letter-spacing:-.75px;-webkit-background-clip:text;margin-bottom:8px;font-family:Outfit,sans-serif;font-size:2.1rem;font-weight:800}.form-grid-2{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-grid-3{grid-template-columns:1fr 1fr 1fr;gap:20px;display:grid}.field-group{flex-direction:column;gap:8px;margin-bottom:22px;display:flex}.field-group label{color:#334155;letter-spacing:.1px;font-size:.875rem;font-weight:700}.field-group input[type=text],.field-group input[type=number],.field-group input[type=date],.field-group textarea{color:#0f172a;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;width:100%;padding:12px 16px;font-family:inherit;font-size:.95rem;transition:all .2s cubic-bezier(.2,0,0,1)}.field-group input:hover,.field-group input[type=date]:hover,.field-group textarea:hover{background:#f1f5f9;border-color:#94a3b8}.field-group input:focus,.field-group input[type=date]:focus,.field-group textarea:focus{border:2px solid var(--md-sys-color-primary,#4b7a4b);background:#fff;outline:none;padding:11.5px 15.5px;box-shadow:0 0 0 4px #4b7a4b26}.field-group textarea{resize:vertical;min-height:110px}.radio-group{flex-wrap:wrap;gap:16px;margin-top:6px;display:flex}.radio-group label,.checkbox-group label{cursor:pointer;color:#475569;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.radio-group label:hover,.checkbox-group label:hover{background:#f1f5f9;border-color:#cbd5e1}.radio-group input[type=radio]:checked+label{border-color:var(--md-sys-color-primary,#4b7a4b);color:var(--md-sys-color-primary,#4b7a4b);background:#4b7a4b14}.radio-group label:has(input[type=radio]:checked){border-color:var(--md-sys-color-primary,#4b7a4b);color:var(--md-sys-color-primary,#4b7a4b);background:#4b7a4b14}.checkbox-group label:has(input[type=checkbox]:checked){border-color:var(--md-sys-color-primary,#4b7a4b);color:var(--md-sys-color-primary,#4b7a4b);background:#4b7a4b14}.radio-group input[type=radio],.checkbox-group input[type=checkbox]{accent-color:var(--md-sys-color-primary,#4b7a4b);cursor:pointer;width:18px;height:18px}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.conditional-block{border-left:4px solid var(--md-sys-color-primary,#4b7a4b);background:#f8faf8;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;border-radius:0 12px 12px 0;margin-top:16px;padding:24px;animation:.25s cubic-bezier(.2,.8,.2,1) forwards slideDownFade;box-shadow:inset 0 1px 3px #00000005}.form-table{border-collapse:collapse;border-radius:var(--md-sys-shape-corner-medium,14px);border:1px solid #e2e8f0;width:100%;margin-top:12px;font-size:.875rem;overflow:hidden;box-shadow:0 2px 8px #00000005}.form-table th{background:linear-gradient(135deg, var(--md-sys-color-primary,#4b7a4b) 0%, #3e663e 100%);color:#fff;text-align:left;letter-spacing:.1px;padding:14px 18px;font-family:Outfit,sans-serif;font-size:.875rem;font-weight:700}.form-table td{vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:12px 16px}.form-table tr:last-child td{border-bottom:none}.form-table tr:nth-child(2n) td{background:#f8faf8}.form-table tbody tr{transition:background-color .15s}.form-table tbody tr:hover td{background-color:#4b7a4b0d!important}:is(.form-table td:has(input),.form-table td:has(.table-input-number),.form-table td:has(.table-input-text),.form-table td:has(.table-input-date)){padding:6px 8px}.form-table input,.table-input-text,.table-input-number,.table-input-date{color:#0f172a;box-sizing:border-box;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;width:100%;padding:8px 12px;font-family:inherit;font-size:.875rem;transition:all .2s cubic-bezier(.2,0,0,1)}.table-input-number{text-align:center}.form-table input:focus,.table-input-text:focus,.table-input-number:focus,.table-input-date:focus{border:2px solid var(--md-sys-color-primary,#4b7a4b);background:#fff;outline:none;padding:7.5px 11.5px;box-shadow:0 0 0 3px #4b7a4b26}.required:after{content:" *";color:#ef4444;font-weight:700}.btn-add-row{border:1.5px dashed var(--md-sys-color-primary,#4b7a4b);color:var(--md-sys-color-primary,#4b7a4b);cursor:pointer;background:0 0;border-radius:20px;align-items:center;gap:6px;margin-top:16px;padding:10px 22px;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-add-row:hover{background:#4b7a4b14;transform:translateY(-1px)}@media (width<=1024px){.main-content{border-radius:16px;margin:20px auto 120px;padding:28px 24px}.form-grid-2,.form-grid-3{grid-template-columns:1fr;gap:16px}.app-title{font-size:1.65rem}.stepper{padding:16px 8px 24px}.stepper-label{font-size:.65rem}}.scroll-buttons-container{z-index:99;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:110px;right:24px}.btn-scroll{background:var(--md-sys-color-primary,#4b7a4b);color:#fff;cursor:pointer;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:44px;height:44px;font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:700;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex;box-shadow:0 4px 10px #00000026,0 1px 3px #0000001a}.btn-scroll:hover{background:#3e663e;transform:translateY(-2px);box-shadow:0 6px 14px #4b7a4b4d}.btn-scroll:active{transform:translateY(1px)}.m3-dialog-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#00000052;justify-content:center;align-items:center;animation:.2s cubic-bezier(.2,0,0,1) m3-fade-in;display:flex;position:fixed;inset:0}.m3-dialog-card{width:90%;max-width:520px;box-shadow:var(--md-sys-elevation-3);text-align:center;background:#fff;border:1px solid #4b7a4b26;border-radius:28px;flex-direction:column;align-items:center;padding:28px 24px;animation:.25s cubic-bezier(.34,1.56,.64,1) m3-scale-up;display:flex;position:relative}.m3-dialog-icon-container{color:#dc2626;background:#fef2f2;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:16px;display:flex}.m3-dialog-icon{width:24px;height:24px}.m3-dialog-title{color:#0f172a;margin:0 0 12px;font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:600}.m3-dialog-content{width:100%;margin-bottom:24px}.m3-dialog-desc{color:#64748b;margin:0 0 16px;font-size:.95rem;line-height:1.5}.m3-dialog-list{text-align:left;color:#475569;background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;max-height:200px;margin:0;padding:16px 20px 16px 36px;font-size:.875rem;line-height:1.6;list-style-type:disc;overflow-y:auto}.m3-dialog-list li{margin-bottom:6px}.m3-dialog-list li::marker{color:#dc2626}.m3-dialog-list::-webkit-scrollbar{width:6px}.m3-dialog-list::-webkit-scrollbar-track{background:0 0}.m3-dialog-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.m3-dialog-actions{justify-content:flex-end;width:100%;display:flex}.btn-m3-confirm{background:var(--md-sys-color-primary,#4b7a4b);color:#fff;cursor:pointer;border:none;border-radius:100px;outline:none;padding:10px 28px;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;transition:all .2s cubic-bezier(.2,.8,.2,1);box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.btn-m3-confirm:hover{background:#3e663e;transform:translateY(-1px);box-shadow:0 4px 12px #4b7a4b40}.btn-m3-confirm:active{transform:translateY(0)}@keyframes m3-fade-in{0%{opacity:0}to{opacity:1}}@keyframes m3-scale-up{0%{opacity:0;transform:scale(.92)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.m3-spinner{vertical-align:middle;border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}.file-dropzone{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:32px 24px;transition:all .2s;display:flex}.file-dropzone:hover{border-color:var(--md-sys-color-primary,#4b7a4b);background:#4b7a4b05}.file-dropzone.drag-active{border-color:var(--md-sys-color-primary,#4b7a4b);background:#4b7a4b14;box-shadow:0 0 0 3px #4b7a4b26}.dropzone-icon{color:#64748b;font-size:2rem;transition:transform .2s}.file-dropzone.drag-active .dropzone-icon{color:var(--md-sys-color-primary,#4b7a4b);transform:translateY(-4px)}.dropzone-text{color:#334155;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:600}.dropzone-subtext{color:#64748b;font-size:.8rem;line-height:1.4}.uploaded-files-list{flex-direction:column;gap:10px;max-width:100%;margin-top:16px;display:flex}.file-item-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;transition:all .2s;display:flex;box-shadow:0 1px 3px #00000005}.file-item-card:hover{border-color:#cbd5e1;box-shadow:0 2px 5px #0000000d}.file-info{text-align:left;align-items:center;gap:12px;display:flex;overflow:hidden}.file-icon{flex-shrink:0;font-size:1.5rem}.file-name-size{flex-direction:column;display:flex;overflow:hidden}.file-name{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.file-size{color:#64748b;font-size:.75rem}.btn-remove-file{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;font-size:1rem;transition:all .15s;display:flex}.btn-remove-file:hover{color:#ef4444;background:#fee2e2}@media print{body *{visibility:hidden}.navbar,.sticky-footer,.scroll-buttons-container,.m3-dialog-overlay,.btn,.app-title,.stepper{display:none!important}.app-wrapper,.main-content,.form-body{box-shadow:none!important;background:0 0!important;border:none!important;width:100%!important;max-width:100%!important;min-height:auto!important;margin:0!important;padding:0!important}.step-content,.step-content *{visibility:visible}.step-content{width:100%;margin:0;padding:0;position:absolute;top:0;left:0;box-shadow:none!important;border:none!important}}
