:root{color-scheme:light;--paper:#f4f1eb;--surface:#fffdf9;--ink:#172d2a;--muted:#52645e;--line:#d4dcd3;--green:#173b37;--wash:#e6ede4;--lime:#c8e9a7;--danger:#a32b32;--focus:#195ebb;--radius:18px;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.58;cursor:wait}a{color:var(--green);text-underline-offset:3px}button,input,select,textarea,a,summary{outline-offset:4px}*:focus-visible{outline:3px solid var(--focus)}input,select,textarea{width:100%;min-width:0;min-height:48px;border:1px solid #acbbb1;border-radius:10px;background:#fff;padding:11px 12px;font-size:1rem}input[type=file]{padding:9px;font-size:1rem}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--green)}textarea{resize:vertical;min-height:100px}h1,h2,h3,p{margin:0}h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:2.35rem;line-height:1.12;letter-spacing:-.035em}h2{font-size:1.22rem;line-height:1.3}h3{font-size:1rem}p+p{margin-top:12px}small,.small{font-size:.875rem}strong{font-weight:650}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-90px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.masthead{max-width:1160px;margin:auto;padding:18px 20px;display:flex;gap:16px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:.95rem;line-height:1.3}.brand small{display:block;font-weight:400;font-size:.75rem;letter-spacing:.015em}.brand-mark{display:grid;place-items:center;width:40px;height:42px;border-radius:12px;background:var(--green);color:white;font-family:Georgia,serif;font-size:1.65rem}.local-label{font-size:.75rem;text-align:right;color:var(--muted);max-width:84px}.page{max-width:1100px;margin:auto;padding:26px 20px 118px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;color:var(--muted);font-weight:650}.page-head p{margin-top:8px;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:11px 17px;background:var(--surface);font-weight:650;font-size:.95rem;text-decoration:none;line-height:1.3}.btn:hover{background:var(--wash)}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:hover{background:#24534b}.btn.danger{color:var(--danger)}.btn.text{border-color:transparent;background:transparent}.btn.wide{width:100%}.btn.icon{padding:12px;min-width:48px}.icon-svg{width:22px;height:22px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.summary-card{background:var(--green);color:white;border-radius:var(--radius);padding:22px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.summary-card .amount{font-family:Georgia,serif;font-size:2.1rem;line-height:1.2;margin:5px 0;overflow-wrap:anywhere}.summary-card .muted{color:#d1e0d5}.summary-card .item-count{text-align:right;flex-shrink:0}.item-count strong{display:block;font-size:1.65rem;font-weight:500}.summary-card small{font-size:.8rem}.toolbar{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:12px}.search-wrap{position:relative}.search-wrap .icon-svg{position:absolute;left:12px;top:13px;color:var(--muted)}.search-wrap input{padding-left:42px}.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label,.field-label{font-size:.875rem;font-weight:650}.hint{font-size:.875rem;color:var(--muted);line-height:1.5}.field-grid{display:grid;grid-template-columns:1fr;gap:17px}.field-grid .full{grid-column:1/-1}datalist{display:none}.section-gap{margin-top:24px}.inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.notice{background:var(--wash);border:1px solid var(--line);border-radius:12px;padding:14px;font-size:.875rem;line-height:1.55}.notice a{font-weight:650}.notice.warning{background:#fff3d9;color:#654818;border-color:#ddcdaa}.error{background:#fff0ed;border:1px solid #d9938e;color:#82232a;padding:13px;border-radius:10px;font-size:.95rem}.error:empty{display:none}.backup-nudge{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0 0 20px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.backup-nudge p{font-size:.875rem}.backup-nudge .btn{flex-shrink:0}.items{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.item-card{display:flex;gap:15px;align-items:flex-start;text-align:left;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;color:var(--ink);min-width:0}.item-card:hover{border-color:#7d9a88}.item-photo{width:68px;height:78px;flex-shrink:0;border-radius:10px;object-fit:cover;background:var(--wash)}.item-photo.placeholder{display:flex;align-items:center;justify-content:center;color:#658175}.item-copy{flex:1;min-width:0}.item-copy h2{font-size:1rem;margin-bottom:3px;overflow-wrap:anywhere}.item-copy p{font-size:.875rem;color:var(--muted);overflow-wrap:anywhere}.card-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}.card-bottom strong{font-size:.95rem}.chip{display:inline-flex;align-items:center;padding:3px 7px;border-radius:5px;background:var(--wash);color:#355b49;font-size:.75rem;line-height:1.5}.chip.flag{background:#faedca;color:#62471d}.list-meta{margin:15px 0 10px;font-size:.875rem;color:var(--muted)}.empty{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px 24px;text-align:left}.empty h2{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;margin-bottom:12px}.empty p{color:var(--muted);margin:0 0 20px}.empty .start-steps{display:grid;gap:12px;margin:0 0 24px;padding:0;list-style:none}.start-steps li{display:flex;gap:11px;align-items:center;font-size:.95rem}.step-number{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;font-size:.875rem;flex-shrink:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.panel+.panel{margin-top:16px}.panel h2{margin-bottom:12px}.panel p{color:var(--muted);overflow-wrap:anywhere}.panel .actions{margin-top:16px}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions .btn{flex:1}.room-list{display:grid;gap:12px}.room-row{display:flex;gap:16px;justify-content:space-between;align-items:center;text-align:left;border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--surface)}.room-row .room-value{text-align:right}.room-row small{display:block;color:var(--muted)}.room-row strong{overflow-wrap:anywhere}.split-panels{display:grid;gap:18px}.split-panels .panel{margin:0}nav#navigation{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border-top:1px solid var(--line);z-index:10;padding:6px max(10px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}nav#navigation a{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.75rem;text-decoration:none;color:var(--muted);border-radius:10px}nav#navigation a[aria-current=page]{color:var(--green);background:var(--wash);font-weight:700}dialog{border:0;padding:0;border-radius:20px;background:var(--surface);color:var(--ink);width:min(600px,calc(100% - 32px));max-height:90vh;max-height:90dvh;overflow:auto;box-shadow:0 24px 100px #172d2a44}dialog::backdrop{background:#142c2866}body:has(dialog[open]){overflow:hidden}.dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.dialog-head h2{font-family:Georgia,serif;font-size:1.65rem;font-weight:400}.dialog-body{padding:20px}.dialog-foot{position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--line);padding:12px 20px max(12px,env(safe-area-inset-bottom));display:flex;gap:10px;z-index:2}.dialog-foot .btn{flex:1}.dialog-body>p{margin-bottom:18px}.capture{border:1px dashed #8aab94;border-radius:14px;background:var(--wash);padding:17px;margin-bottom:22px}.capture h3{margin-bottom:12px}.capture .actions{margin-top:12px}.capture-preview{display:block;width:100%;height:190px;object-fit:contain;border-radius:10px;background:#d5dfd3}.capture input[type=file]{background:transparent;border:0;padding:0}.file-label{cursor:pointer}.file-label input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}.file-label:focus-within{outline:3px solid var(--focus);outline-offset:4px}.attachment{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:12px 0;font-size:.875rem;overflow-wrap:anywhere}.attachment img{width:60px;height:70px;object-fit:cover;border-radius:6px}.attachment span{min-width:0;flex:1}details{border-top:1px solid var(--line);margin-top:24px;padding-top:6px}summary{padding:15px 0;cursor:pointer;font-weight:650}details .field-grid{margin:4px 0 15px}.check-label{display:flex;align-items:flex-start;gap:10px;font-size:.95rem}.check-label input{flex-shrink:0}.detail-photo{width:100%;max-height:260px;object-fit:contain;background:var(--wash);border-radius:12px;margin-bottom:18px}.detail-title{font-family:Georgia,serif;font-size:1.8rem;line-height:1.2;overflow-wrap:anywhere}.detail-value{font-size:1.55rem;margin:12px 0}.details-list{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:12px;margin:20px 0;font-size:.95rem}.details-list dt{color:var(--muted)}.details-list dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.proof-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.photo-view{width:100%;height:auto;object-fit:contain}.toast{position:fixed;bottom:95px;left:20px;right:20px;max-width:500px;margin:auto;z-index:100;background:var(--green);color:white;border-radius:12px;padding:13px 17px;box-shadow:0 5px 20px #172d2a22;font-size:.95rem;pointer-events:none}.toast:empty{display:none}.report-preview article{break-inside:avoid;border-bottom:1px solid var(--line);padding:20px 0}.report-preview h1{font-size:2rem}.report-images{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.report-images img{max-width:100%;width:180px;max-height:240px;object-fit:contain}.report-preview .details-list{font-size:.875rem}.footer-note{font-size:.875rem;color:var(--muted);margin-top:24px}.long-copy h2{margin:24px 0 10px}.long-copy h2:first-child{margin-top:0}.long-copy ul,.long-copy ol{padding-left:22px}.long-copy li{margin-bottom:10px}#print-report{display:none}
@media(min-width:650px){.local-label{max-width:none;font-size:.875rem}.page{padding:36px 30px 115px}.masthead{padding:22px 30px}.field-grid{grid-template-columns:1fr 1fr}.items{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-card{padding:26px}.summary-card .amount{font-size:2.6rem}.filter-grid{grid-template-columns:1fr 1fr;max-width:480px}.split-panels{grid-template-columns:1fr 1fr}.room-list{grid-template-columns:1fr 1fr}nav#navigation{left:50%;transform:translateX(-50%);bottom:18px;max-width:480px;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 35px #172d2a1a;padding:6px;width:calc(100% - 48px)}.toast{bottom:110px}.empty{padding:32px}.toolbar{grid-template-columns:1fr auto}.dialog-body{padding:24px}.dialog-head{padding:14px 24px}}
@media(max-width:649px){#editor{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:100%;max-height:100%;max-height:100dvh;border-radius:0}#editor .dialog-head{padding-top:max(14px,env(safe-area-inset-top))}.page-head{gap:12px}.page-head .btn{padding:12px 14px;flex-shrink:0}.page-head h1{font-size:2.1rem}.backup-nudge{flex-wrap:wrap}.backup-nudge .btn{margin-left:auto}.dialog-foot{padding-bottom:max(14px,env(safe-area-inset-bottom))}.dialog-body{padding-bottom:28px}.filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:360px){.page{padding-left:14px;padding-right:14px}.masthead{padding-left:14px;padding-right:14px}.summary-card{padding:18px;gap:10px}.summary-card .amount{font-size:1.8rem}.item-photo{width:52px;height:65px}.item-card{gap:12px;padding:14px}.filter-grid{grid-template-columns:1fr}.page-head{flex-wrap:wrap}.page-head .btn{margin-left:auto}.dialog-foot{flex-wrap:wrap}}
@supports(padding:max(0px)){.page,.masthead,.dialog-head,.dialog-body,.dialog-foot{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}}
@media(prefers-reduced-motion:no-preference){.btn{transition:background .12s}.item-card{transition:border-color .12s}}
@media print{@page{size:auto;margin:16mm}body{background:white;font-size:11pt}.masthead,#main,#navigation,dialog,.toast,.skip,noscript{display:none!important}#print-report{display:block!important;color:#111}#print-report h1{font-size:24pt}#print-report h2{font-size:15pt}.report-preview article{break-inside:avoid;border-color:#ccc}.report-preview .details-list{font-size:10pt}.report-preview p,.report-preview .muted{color:#333}.report-images img{max-height:170px;max-width:180px;width:auto}.report-preview a{color:#111}.report-preview .notice{background:white;border-color:#ccc}}

/* The form owns one scroll area, between the title and the Save controls. */
@media(max-width:649px){#editor[open]{display:flex;flex-direction:column;overflow:hidden}#editor>.dialog-head{flex:none;position:relative}#editor #item-form{display:flex;flex-direction:column;flex:1;min-height:0}#editor .dialog-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scroll-padding-block:16px}#editor .dialog-foot{position:relative;flex:none}#editor input,#editor textarea,#editor select{scroll-margin-block:16px}}
#draft-status,#editor-error{overflow-anchor:none}
