:root{color:#152033;background:#eef3f8;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--navy: #12365b;--blue: #1f6fbf;--line: #d8e1ea;--muted: #607086;--soft: #f6f8fb}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}.app{min-height:100vh;padding:32px}.app-header{max-width:1420px;margin:0 auto 24px;color:#fff;background:linear-gradient(135deg,#12365b,#1d5791);border-radius:8px;padding:28px 32px;box-shadow:0 18px 45px #12365b2e}.app-header h1{margin:4px 0 10px;font-size:40px;line-height:1.15;letter-spacing:0}.app-header p{margin:0;max-width:760px;color:#ffffffdb;line-height:1.7}.app-header .app-note{margin-top:12px;color:#ffffffbd;font-size:14px}.eyebrow,.panel-kicker,.report-label{margin:0;color:#1f6fbf;font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.app-header .eyebrow{color:#ffffffb3}.workspace{display:grid;grid-template-columns:minmax(360px,520px) minmax(0,1fr);gap:24px;align-items:start;max-width:1420px;margin:0 auto}.app-panel{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #1a2c4614}.form-card{padding:22px}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.panel-heading h2{margin:4px 0 0;color:var(--navy);font-size:22px;letter-spacing:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}label{display:grid;gap:7px}label span,.photo-inputs h3{color:#31435b;font-size:13px;font-weight:700}input,textarea,select{width:100%;border:1px solid #cbd6e1;border-radius:6px;background:#fff;color:#152033;padding:11px 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}textarea{resize:vertical;line-height:1.6}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1f6fbf24}.wide-field{grid-column:1 / -1}.photo-inputs{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.photo-inputs h3{margin:0 0 12px;font-size:15px}.photo-input-grid{display:grid;gap:12px}.file-field{padding:12px;border:1px dashed #b7c5d5;border-radius:8px;background:var(--soft)}.file-field input{padding:9px;background:#fff}.form-actions{display:flex;gap:12px;margin-top:22px}.primary-button,.secondary-button,.ghost-button{min-height:42px;border:1px solid transparent;border-radius:6px;padding:0 16px;font-weight:700}.primary-button{flex:1;background:var(--blue);color:#fff}.secondary-button{background:#eaf3fc;color:#155994}.ghost-button{background:#fff;border-color:#cbd6e1;color:#31435b}.primary-button:hover,.secondary-button:hover,.ghost-button:hover{filter:brightness(.98)}.preview-wrap{display:flex;justify-content:center}.report-sheet{width:min(100%,840px);min-height:1120px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px #1a2c461f;padding:42px}.report-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:22px;border-bottom:3px solid var(--navy)}.report-header h2{margin:6px 0 0;color:var(--navy);font-size:34px;letter-spacing:0}.report-date{min-width:150px;padding:12px;border:1px solid var(--line);border-radius:6px;text-align:right}.report-date span,.summary-grid span,.amount-table span{display:block;color:var(--muted);font-size:12px;font-weight:700}.report-date strong{display:block;margin-top:4px;color:#152033;font-size:16px}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.summary-grid div{min-height:78px;padding:13px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-grid strong{display:block;margin-top:8px;color:#152033;line-height:1.45;overflow-wrap:anywhere}.report-section{margin-top:24px}.report-section h3{margin:0 0 10px;color:var(--navy);font-size:17px;letter-spacing:0}.multiline-text{min-height:64px;margin:0;padding:14px;border:1px solid var(--line);border-radius:6px;background:#fbfcfe;color:#26364a;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.amount-table{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:6px;overflow:hidden}.amount-table div{padding:14px;border-right:1px solid var(--line);background:#fff}.amount-table div:last-child{border-right:0}.amount-table strong{display:block;margin-top:7px;color:#152033;font-size:17px;text-align:right}.amount-table .total-row{background:#eaf3fc}.amount-table .total-row strong{color:var(--navy);font-size:20px}.photo-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}figure{margin:0}.photo-box{display:grid;place-items:center;aspect-ratio:4 / 3;border:1px solid var(--line);border-radius:6px;background:#f3f6f9;overflow:hidden}.photo-box img{width:100%;height:100%;object-fit:cover}.photo-box span{color:var(--muted);font-size:13px;font-weight:700}figcaption{margin-top:7px;color:#31435b;font-size:13px;font-weight:700;text-align:center}@media (max-width: 1080px){.app{padding:20px}.workspace{grid-template-columns:1fr}.form-card{position:static}}@media (max-width: 640px){.app{padding:12px}.app-header{padding:22px 18px}.app-header h1{font-size:30px}.panel-heading,.report-header,.form-actions{flex-direction:column;align-items:stretch}.form-grid,.summary-grid,.amount-table,.photo-preview-grid{grid-template-columns:1fr}.amount-table div,.amount-table div:last-child{border-right:0;border-bottom:1px solid var(--line)}.amount-table div:last-child{border-bottom:0}.report-sheet{min-height:auto;padding:24px 16px}.report-header h2{font-size:28px}.report-date{text-align:left}}@media print{@page{size:A4 portrait;margin:10mm}html,body{width:auto;min-height:0;min-width:0;margin:0;padding:0;background:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}.app{min-height:0;width:auto;padding:0!important;background:#fff;overflow:visible!important}.app-header,.form-card,button,input,textarea,select{display:none!important}.workspace,.preview-wrap{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.report-sheet{width:190mm!important;max-width:190mm!important;min-height:0!important;margin:0 auto!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;font-size:10pt!important;transform:none!important;zoom:1!important;overflow:visible!important}.report-sheet *{box-sizing:border-box}.report-header{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:8mm!important;padding-bottom:4mm!important;border-bottom:2px solid var(--navy)!important}.report-header h2{margin-top:1mm!important;font-size:21pt!important;line-height:1.15!important}.report-label{font-size:8pt!important}.report-date{min-width:34mm!important;padding:2.5mm!important;border-radius:0!important;text-align:right!important}.report-date span,.summary-grid span,.amount-table span{font-size:7.5pt!important}.report-date strong{font-size:10pt!important}.summary-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-top:4mm!important}.summary-grid div{min-height:14mm!important;padding:2.5mm!important}.summary-grid strong{margin-top:1.5mm!important;line-height:1.35!important}.report-section{margin-top:4mm!important;page-break-inside:avoid;break-inside:avoid}.report-section h3{margin-bottom:1.8mm!important;font-size:11pt!important;line-height:1.2!important}.multiline-text{min-height:13mm!important;padding:2.5mm!important;border-radius:0!important;line-height:1.45!important}.report-section:nth-of-type(1) .multiline-text{min-height:21mm!important}.report-section:nth-of-type(2) .multiline-text{min-height:15mm!important}.report-section:last-of-type .multiline-text{min-height:16mm!important}.amount-table{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;border-radius:0!important}.amount-table div{padding:2.5mm!important;border-right:1px solid var(--line)!important;border-bottom:0!important}.amount-table div:last-child{border-right:0!important}.amount-table strong{margin-top:1.5mm!important;font-size:10pt!important}.amount-table .total-row strong{font-size:12pt!important}.photo-preview-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4mm!important}.photo-box{aspect-ratio:4 / 3!important;height:43mm!important;max-height:43mm!important;border-radius:0!important}.photo-box img,.photo-box span{height:100%!important}.photo-box img{max-height:43mm!important;object-fit:cover!important}.photo-box span,figcaption{font-size:8pt!important}figcaption{margin-top:1.5mm!important}}
