:root{--sa:#e65c00;--gr:#136f3a;--ink:#1d1d1f;--mut:#555;--bg:#fff8f0}
*{box-sizing:border-box}body{margin:0;font:17px/1.55 "Noto Sans Devanagari","Mukta",system-ui,sans-serif;color:var(--ink);background:var(--bg)}
header{background:var(--sa);color:#fff;padding:.7rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}
header h1{font-size:1.1rem;margin:0}main{max-width:900px;margin:auto;padding:1rem}
.card{background:#fff;border-radius:12px;padding:1rem;margin:0 0 1rem;box-shadow:0 1px 3px #0002}
label{display:block;margin:.6rem 0 .2rem;font-weight:600}input,select,textarea{width:100%;padding:.6rem;font:inherit;border:1px solid #bbb;border-radius:8px}
button{min-height:48px;padding:.5rem 1rem;font:inherit;font-weight:700;border:0;border-radius:10px;background:var(--sa);color:#fff;cursor:pointer;margin:.25rem .25rem .25rem 0}
button.sec{background:#fff;color:var(--sa);border:2px solid var(--sa)}button.ok{background:var(--gr)}button.danger{background:#b00020}
.row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:600px){.row{grid-template-columns:1fr}}
#pick{height:280px;border-radius:10px;margin-top:.4rem}.chip{display:inline-block;padding:.1rem .6rem;border-radius:99px;font-size:.85rem;background:#eee;margin-right:.3rem}
.st-draft{background:#ddd}.st-in_review{background:#ffe08a}.st-approved{background:#b9f0c9}.st-rejected{background:#f7b9b9}.demo{background:#b00020;color:#fff}
.hint{color:var(--mut);font-size:.9rem}.err{color:#b00020;font-weight:600}table{width:100%;border-collapse:collapse}td{padding:.5rem;border-top:1px solid #eee;vertical-align:top}
.btn-link{display:inline-block;margin:.25rem 0;font-weight:700;color:var(--sa)}
[hidden]{display:none!important}
button:disabled{opacity:.45;cursor:not-allowed}

.tscroll{overflow:auto;max-height:65vh;border:1px solid #ddd;border-radius:8px;margin-top:.5rem}
table.imp{font-size:.82rem;border-collapse:collapse;width:100%}table.imp td,table.imp th{padding:.3rem .4rem;border-bottom:1px solid #eee;vertical-align:top;text-align:left}table.imp th{position:sticky;top:0;background:#fafafa}
table.imp .n{text-align:right;white-space:nowrap}tr.bad{background:#fdecea}tr.dup{color:#888}tr.warn{background:#fff7e0}.flags{color:#8a5a00;font-size:.78rem;margin-top:.2rem}.ok{color:#1b5e3b}.chip.warn{background:#ffe0b2}
select.consent{width:auto;font-size:.75rem;padding:.1rem}

.revbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.5rem 0}.revbar select,.revbar input{width:auto;flex:0 1 14rem}
.flagbtn{width:auto;background:#fff;color:#8a4b00;border:2px solid #d98a00;font-weight:700}.flagbtn.on{background:#d98a00;color:#fff}
.flagbtn .badge{display:inline-block;min-width:1.6em;padding:0 .35em;border-radius:1em;background:#b00020;color:#fff;font-size:.85em;margin-left:.3em}
td.flagcell{background:#ffe08a!important;outline:2px solid #d98a00;outline-offset:-2px}
.cropbtn{width:auto;padding:.1rem .5rem;font-size:.8rem;margin-left:.3rem}.crop img{max-width:100%;border:1px solid #ccc;margin-top:.3rem;background:#fff}

.fixbtn{width:auto;padding:.15rem .6rem;margin-left:.4rem;background:#1565c0;color:#fff;font-weight:700}
.fixer{display:flex;flex-wrap:wrap;gap:.75rem;margin:.4rem 0 .6rem;padding:.6rem;border:2px solid #1565c0;border-radius:.5rem;background:#fff}
.fixcrop{flex:1 1 260px;max-width:420px}.fixcrop img{max-width:100%;border:1px solid #ccc}.fixform{flex:1 1 260px}
.fixform .choice{width:auto;margin:.2rem .2rem .2rem 0;padding:.2rem .5rem}.fixform .choice.picked{background:#1565c0;color:#fff}
.fixform .fixval{margin:.3rem 0}.resolvebtn{width:auto}.fulledit{font-size:.85rem;font-weight:600}
button.ok{color:#fff}
.lang-toggle{display:inline-flex;align-items:center;gap:.15rem;margin-left:auto}.lang-toggle button{min-height:32px;padding:.1rem .55rem;margin:0;background:transparent;color:#fff;border:1px solid #fff8;font-weight:700}
.lang-toggle button[aria-pressed="true"]{background:#fff;color:var(--sa)}

#attbox{border:1px solid #ddd;border-radius:8px;padding:.5rem;margin:.6rem 0}
.attlist{list-style:none;padding:0;margin:.3rem 0}.attlist li{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.35rem .4rem;border-bottom:1px solid #eee}
.attlist li.gone .nm{text-decoration:line-through;color:#999}.attlist .nm{flex:1 1 12rem;word-break:break-all}.attlist .tag{font-size:.75rem;padding:0 .4rem;border-radius:99px;background:#eee}
.attlist .tag.new{background:#b9f0c9}.attlist .tag.gone{background:#f7b9b9}.attlist button{min-height:34px;width:auto;padding:.1rem .6rem;margin:0;font-size:.85rem}

/* citizen suggestions inbox */
.sg-row{border:1px solid #ddd;border-radius:10px;padding:.6rem .75rem;margin:.5rem 0;background:#fff;cursor:pointer}.sg-row:hover,.sg-row:focus{border-color:var(--sa);outline:0}.sg-row.open{border:2px solid var(--sa);cursor:default}
.sg-ref{font-family:ui-monospace,Menlo,monospace}.sg-who{font-weight:600;margin:.2rem 0}.sg-txt{color:#333}.sg-full{white-space:pre-wrap;font-size:1.05rem;background:#fff8f0;padding:.6rem;border-radius:8px}
.sg-st-new{background:#ffe08a}.sg-st-review{background:#cfe3ff}.sg-st-accepted{background:#b9f0c9}.sg-st-closed{background:#ddd}
.sg-detail{margin-top:.6rem;border-top:1px solid #eee;padding-top:.4rem}.sg-act{margin:.7rem 0}.sg-act button{width:auto}.sg-inline{display:flex;gap:.4rem}.sg-inline input{flex:1}
.sg-photo{max-width:100%;max-height:320px;border-radius:8px;border:1px solid #ccc}.sg-notes{list-style:none;padding:0;margin:.4rem 0}.sg-notes li{border-left:3px solid #ddd;padding:.2rem .5rem;margin:.3rem 0}
.sg-toast{position:sticky;top:.5rem;z-index:5;padding:.6rem .8rem;border-radius:8px;font-weight:700}.sg-toast.good{background:#e3f5e8;color:#136f3a;border:1px solid #136f3a}.sg-toast.bad{background:#fdecea;color:#b00020;border:1px solid #b00020}
#blocksExtra.need{outline:2px solid #b26a00;outline-offset:4px;border-radius:6px;background:#fff8e6;padding:.3rem}#blocksHint{color:#8a5300;font-weight:600}
