*{box-sizing:border-box}body{margin:0;background:#f6f5f1;color:#26302c;font:16px/1.5 Arial,sans-serif}main{max-width:1400px;margin:auto;padding:24px}header{max-width:1050px}header>span{display:block;color:#a4441d;font-size:12px;font-weight:bold;letter-spacing:1px;margin-top:22px}h1{font-size:32px;margin:10px 0}h2{font-size:19px}a{color:#a4441d}.layout{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:20px}.layout>section,aside{background:#fff;border:1px solid #dddcd4;border-radius:12px;padding:20px;min-width:0}button{background:#bd5426;color:#fff;border:0;border-radius:7px;padding:12px 18px;font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}.secondary{background:#e9e7df;color:#26302c}#controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}[hidden]{display:none!important}#messages{max-height:62vh;overflow-y:auto}.message{padding:14px 16px;margin-bottom:14px;border-radius:8px;background:#f3f3ee;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{background:#eaf3f5}.message strong{display:block;font-size:12px;color:#6a6e65;margin-bottom:4px}label{display:block;font-weight:bold}textarea{width:100%;padding:12px;border:1px solid #b5b8ac;border-radius:7px;font:inherit;margin:8px 0}dl{display:grid;grid-template-columns:130px 1fr;gap:8px;font-size:14px}dt{font-weight:bold}dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;border-bottom:1px solid #ddd;padding:7px;overflow-wrap:anywhere}.table-scroll{overflow-x:auto}.check{border-left:4px solid #d3a024;background:#fcf7e9;padding:10px;margin:10px 0;font-size:14px}.check.confirmed{border-color:#559174;background:#f0f7f2}.check.verify{border-color:#c06b38}#status{min-height:24px;font-weight:bold}small{font-size:12px}@media(max-width:850px){main{padding:15px}.layout{grid-template-columns:1fr}h1{font-size:26px}dl{grid-template-columns:110px 1fr}}

#cost{font-weight:bold;color:#9e441f;font-size:18px}.cost-details{font-size:13px;margin:12px 0 20px;max-width:1000px}.cost-details summary{cursor:pointer;font-weight:bold}.hint{font-size:12px;color:#62695e}#photos{display:block;width:100%;margin:10px 0}#photo-previews{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:15px}#photo-previews>div{display:flex;flex-direction:column;gap:6px;width:140px}#photo-previews img{width:140px;height:100px;object-fit:contain;background:#f0f0ec;border:1px solid #ddd}#photo-previews small{overflow-wrap:anywhere}#photo-previews button{font-size:12px;padding:6px}.check p{margin:6px 0}

.voice-controls,#completion-panel{padding:14px 18px;background:#fff;border:1px solid #dddcd4;border-radius:10px;margin:15px 0}.voice-controls h2,#completion-panel h2{margin:0 0 10px}.voice-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.voice-actions label{font-size:13px;font-weight:normal}.voice-actions input{vertical-align:middle}#voice-status{font-size:13px}#completion-missing{font-size:13px;padding-left:20px}#completion-status{font-weight:bold}#completion-missing:empty{display:none}

.manual-survey-overlay{position:fixed;inset:0;z-index:2000;background:#0008;display:flex;align-items:center;justify-content:center;padding:16px}.manual-survey-modal{background:white;border-radius:16px;padding:24px;max-width:900px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 16px 60px #0004}.manual-survey-modal header,.manual-survey-modal footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.manual-survey-modal label{display:block;margin:12px 0}.manual-survey-modal .manual-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.manual-type{border:1px solid #ddd;border-radius:12px;margin:18px 0;padding:16px;min-width:0}.photo-item{min-width:0;border:1px solid #ddd;border-radius:12px;padding:10px}.photo-item .photo-card{width:100%}.photo-item label{display:flex;gap:8px;align-items:center;margin:12px 0}.photo-item input[type=checkbox]{width:auto}.photo-item small{display:block}.manual-survey-modal footer{position:sticky;bottom:-24px;background:white;padding:16px 0}.manual-survey-modal h2{font-size:1.35rem}@media(max-width:600px){.manual-survey-overlay{padding:6px}.manual-survey-modal{padding:16px;max-height:96vh}.manual-survey-modal .manual-fields{grid-template-columns:1fr 1fr}.manual-survey-modal footer{bottom:-16px}}
.manual-survey-modal input,.manual-survey-modal select{width:100%;padding:10px;font:inherit;}
