@import url('/assets/fonts/inter.css');
*,:before,:after{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#1c1c1e;-webkit-font-smoothing:antialiased}body{background:#f8f9fa;display:flex;justify-content:center;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #c79200;outline-offset:3px}[hidden]{display:none!important}
.app{width:100%;max-width:448px;height:100dvh;display:flex;flex-direction:column;background:#fff;overflow:hidden}.app-header{flex:none;background:#fff;padding:calc(28px + env(safe-area-inset-top)) 24px 20px}.app-brand{text-align:center}.app-brand h1{font-size:20px;font-weight:700;letter-spacing:-.5px;line-height:1.4;margin:0}.header-accent{display:block;width:48px;height:1px;margin:9px auto 0;background:#fbbf24}.app-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:0 24px calc(24px + env(safe-area-inset-bottom))}.app-scroll::-webkit-scrollbar{display:none}.glass-card{background:none;border:0;box-shadow:none;padding:0;margin:0 0 24px}
.scan-button{width:100%;min-height:74px;padding:16px;border:1px solid #fde9b1;border-radius:16px;background:linear-gradient(90deg,#fffbeb,#fff7ed);display:grid;grid-template-columns:40px minmax(0,1fr) 14px;gap:12px;align-items:center;text-align:left;color:#1c1c1e}.scan-icon{width:40px;height:40px;border-radius:12px;background:#fbbf24;color:#fff;display:grid;place-items:center}.scan-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.scan-button strong{display:block;font-size:14px;line-height:1.3;font-weight:600}.scan-button small{display:block;font-size:11px;line-height:1.4;color:#a45b0a;margin-top:2px}.chevron{font-size:25px;color:#b86700;line-height:1}
.manual-divider{display:flex;gap:8px;align-items:center;font-size:11px;line-height:1.4;letter-spacing:.7px;text-transform:uppercase;font-weight:600;color:#858b98;margin:22px 0}.manual-divider:before,.manual-divider:after{content:'';height:1px;flex:1;background:#f0f1f3}.label{display:block;font-size:11px;font-weight:700;line-height:1.35;letter-spacing:.7px;text-transform:uppercase;color:#677080;margin:0 0 7px}.control{width:100%;min-height:48px;padding:12px 15px;border:1px solid transparent;border-radius:12px;background:#f2f2f7;color:#1c1c1e;font-size:16px;font-weight:500;outline:none;transition:background .15s,box-shadow .15s}.control::placeholder{color:#9199a8;font-size:14px}.control:focus{background:#fff;box-shadow:0 0 0 2px #fbbf24;outline:none}.asset-entry-controls{position:relative}.asset-entry-controls .control{padding-right:52px;box-shadow:inset 0 2px 4px #00000005}.equipment-list-toggle{position:absolute;right:3px;top:2px;width:44px;min-height:44px;border:0;border-radius:10px;background:transparent;color:#7f8898;display:grid;place-items:center}.equipment-list-toggle:hover,.equipment-list-toggle[aria-expanded=true]{background:#e8e9ef;color:#515967}.compact-manual{margin-top:12px}.manual-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.manual-fields .control{font-size:14px;padding:10px;min-height:44px}
.asset-found{display:none;align-items:center;gap:7px;margin-top:8px;padding:7px 10px;border-radius:8px;background:#eaf3ed;font-size:11px;font-weight:600;line-height:1.35;color:#3b694d}.asset-found.show{display:flex}.asset-found:before{content:'✓';display:grid;place-items:center;flex:none;width:17px;height:17px;border-radius:50%;background:#d5e6da}.asset-history-button{display:flex;width:100%;min-height:36px;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;margin-top:6px;border:1px solid #f4df9a;border-radius:9px;background:#fff9e7;color:#775410;font-size:11px;font-weight:600;text-align:left}.asset-history-button span{font-size:17px}
.field{margin:0 0 22px}.field:last-child{margin-bottom:0}select.control{padding-right:30px}.urgency{display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr;gap:3px;padding:4px;background:#f2f2f7;border-radius:12px}.urgency button{min-height:38px;border:1px solid transparent;border-radius:8px;background:transparent;color:#626b7b;font-size:12px;font-weight:500;text-align:center;transition:all .15s}.urgency button.selected{background:#fff;color:#1c1c1e;font-weight:600;box-shadow:0 1px 3px #00000016}.urgency button.high.selected{color:#a04130;background:#fff5f1}.urgency button.service{background:#e5f3f1;color:#21686a;border-color:#b8d9d7;margin-left:3px}.urgency button.service.selected{background:#19777b;color:#fff;border-color:#19777b;box-shadow:none}textarea.control{height:88px;min-height:88px;line-height:1.45;resize:none}
.photo-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center;margin-bottom:24px}.photo-picker{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 8px;border:2px dashed #e4e6eb;border-radius:12px;color:#5d6677;cursor:pointer}.photo-picker input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.photo-icon{display:flex;align-items:center;color:#919aa9}.photo-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}.photo-copy strong{font-size:11px;font-weight:600;white-space:nowrap}.photo-preview{display:none;width:28px;height:25px;object-fit:cover;border-radius:5px}.photo-preview.show{display:block}.photo-picker:has(.photo-preview.show) .photo-icon{display:none}.reporter{margin:0!important}.photo-card .control{font-size:14px;min-height:44px;padding:10px 12px;box-shadow:inset 0 2px 4px #00000005}.photo-card .control::placeholder{font-size:12px}
.submit-wrap{padding:0;margin:0}.submit{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;padding:15px;border:0;border-radius:12px;background:#fbbf24;color:#1c1c1e;font-size:16px;font-weight:700;box-shadow:0 3px 7px #fbbf2426}.submit:hover{background:#f5b51c}.submit:disabled{opacity:.6;cursor:wait}.submit span:last-child{font-size:22px;line-height:1}.error{display:none}.error:not(:empty){display:block;background:#fff1ef;color:#9d3b2b;border-radius:8px;padding:10px;font-size:13px;line-height:1.4;margin:10px 0}
/* Selected assets add useful information; tighten only this state, not the initial mock look. */
#form-view:has(.asset-found.show) .glass-card{margin-bottom:18px}#form-view:has(.asset-found.show) .field{margin-bottom:16px}#form-view:has(.asset-found.show) .field:last-child{margin-bottom:0}#form-view:has(.asset-found.show) .manual-divider{margin:16px 0}#form-view:has(.asset-found.show) .scan-button{min-height:66px;padding:12px}#form-view:has(.asset-found.show) textarea.control{height:76px;min-height:76px}
.scanner{display:none;position:relative;background:#171715;border-radius:12px;overflow:hidden;margin-top:12px}.scanner.show{display:block}.scanner video{display:block;width:100%;height:220px;object-fit:cover}.scanner-frame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;border:2px solid #fbbf24;border-radius:16px;pointer-events:none}.close-camera{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);min-height:44px;padding:10px 14px;background:#fff;border:0;border-radius:8px;color:#1c1c1e;font-size:12px}
.loading{display:flex;align-items:center;justify-content:center;min-height:220px;font-size:14px;color:#677080}.loader{width:18px;height:18px;border:2px solid #fce8a9;border-top-color:#c18b00;border-radius:50%;margin-right:9px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success{display:none;min-height:100%;padding:48px 16px;flex-direction:column;align-items:center;text-align:center}.success.show{display:flex}.success-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:#eaf3ed;color:#467859;margin-bottom:20px}.success-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:2}.success-kicker{font-size:12px;color:#467859;font-weight:600}.success h2{font-size:23px;line-height:1.3;margin:10px 0}.success p{font-size:14px;color:#677080;line-height:1.5;margin:0}.job-id{margin:20px 0;font-size:14px;font-weight:600}.secondary{min-height:44px;padding:12px 16px;border:1px solid #f4df9a;border-radius:10px;background:#fff9e7;color:#775410;font-size:14px;font-weight:600}
.phone-next,.phone-change,.phone-small-actions{display:none}
.phone-history-overlay{position:fixed;inset:0;background:#15192266;z-index:100;display:flex;align-items:center;justify-content:center;padding:18px}.phone-history-dialog{width:min(420px,100%);max-height:calc(100dvh - 36px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e4e6eb;border-radius:18px;box-shadow:0 12px 48px #0002}.phone-history-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid #f4df9a;background:#fffbef}.phone-history-dialog h2{font-size:18px;margin:0;line-height:1.3}.phone-history-dialog header p{font-size:12px;color:#677080;line-height:1.4;margin:5px 0 0}#phone-history-close{width:44px;min-height:44px;flex:none;border:0;border-radius:10px;background:#f3ebd3;color:#675c3a;font-size:24px}.phone-history-body{overflow:auto;padding:16px;overscroll-behavior:contain}.phone-history-message{font-size:14px;line-height:1.5;color:#677080;padding:8px 0}.phone-history-row{background:#f8f9fb;border:1px solid #eaecf0;border-radius:10px;padding:13px;margin-bottom:10px}.phone-history-row>div{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#677080}.phone-history-row em{font-size:10px;font-style:normal;font-weight:600;color:#467859}.phone-history-row h3{font-size:14px;margin:8px 0 5px}.phone-history-row p{font-size:13px;line-height:1.5;color:#677080;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.phone-history-retry{min-height:44px;padding:10px 14px;border:0;border-radius:8px;background:#fbbf24;color:#1c1c1e;font-size:13px;font-weight:600}
@media(min-width:600px){body{padding:16px}.app{height:calc(100dvh - 32px);border:1px solid #eceef1;border-radius:16px}}
@media(max-height:740px){.app-header{padding:calc(14px + env(safe-area-inset-top)) 20px 13px}.app-scroll{padding:0 20px calc(14px + env(safe-area-inset-bottom))}.glass-card,#form-view:has(.asset-found.show) .glass-card{margin-bottom:14px}.scan-button,#form-view:has(.asset-found.show) .scan-button{min-height:58px;padding:10px 12px}.manual-divider,#form-view:has(.asset-found.show) .manual-divider{margin:13px 0}.label{font-size:10px;margin-bottom:5px}.control{min-height:44px;padding:10px 13px}.field,#form-view:has(.asset-found.show) .field{margin-bottom:13px}.field:last-child,#form-view:has(.asset-found.show) .field:last-child{margin-bottom:0}textarea.control,#form-view:has(.asset-found.show) textarea.control{height:62px;min-height:62px}.urgency button{min-height:36px}.photo-card{gap:10px}.submit{min-height:48px;padding:12px}.asset-found{padding:5px 8px;margin-top:5px}.asset-history-button{min-height:32px;margin-top:5px;padding:6px 10px}}
@media(max-width:360px) and (max-height:650px){#form-view:not(.fault-step) .compact-issue-card,#form-view:not(.fault-step) .photo-card,#form-view:not(.fault-step) .submit-wrap{display:none}#form-view.fault-step .asset-card{display:none}.phone-next{display:block;width:100%;min-height:48px;margin-top:16px;border:0;border-radius:12px;background:#fbbf24;color:#1c1c1e;font-size:14px;font-weight:700}#form-view.fault-step .phone-small-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.phone-change{display:block;background:none;border:0;color:#677080;font-size:11px;padding:4px 0;min-height:44px;text-align:left}.phone-small-history{display:block;min-height:44px;font-size:10px;padding:8px;border:1px solid #f4df9a;border-radius:9px;background:#fff9e7;color:#775410;font-weight:600}.app-scroll{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-height:740px){.app-header{padding-top:calc(11px + env(safe-area-inset-top));padding-bottom:10px}.glass-card,#form-view:has(.asset-found.show) .glass-card{margin-bottom:12px}.field,#form-view:has(.asset-found.show) .field{margin-bottom:11px}.field:last-child,#form-view:has(.asset-found.show) .field:last-child{margin-bottom:0}.manual-divider,#form-view:has(.asset-found.show) .manual-divider{margin:12px 0}}
