:root{--canvas:var(--eco-canvas);--surface:var(--eco-surface);--ink:var(--eco-ink);--muted:var(--eco-muted);--line:#dedee3;--blue:var(--eco-action);--yellow:var(--eco-invention);--red:var(--eco-danger);--green:var(--eco-positive);--r:var(--eco-radius-surface)}
*{box-sizing:border-box}
body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,"SF Pro Display",system-ui,sans-serif}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.topbar{height:64px;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1120px)/2));position:sticky;top:0;z-index:5}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.brand img{width:36px;height:36px}
.brand strong,.brand small{display:block}
.brand small{font-size:11px;color:var(--muted)}
.parent-link,.ghost,.text-button{border:0;background:transparent;color:var(--blue);font-weight:650;padding:12px;min-height:44px}
.shell{max-width:1120px;margin:auto;padding:30px 20px 80px}
.hero{display:flex;justify-content:space-between;gap:28px;align-items:end;padding:18px 0 28px}
.eyebrow{display:block;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.hero h1{font-size:clamp(38px,7vw,68px);line-height:.98;letter-spacing:-.06em;margin:12px 0}
.hero h1 em{color:var(--blue);font-style:normal}
.lede{color:var(--muted);max-width:560px;font-size:17px}
.status-card,.metric,.queue,.timeline,.map-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 8px 24px #1d1d1f0a}
.status-card{display:flex;gap:10px;padding:16px;min-width:210px}
.status-card small,.metric small,.capture small{display:block;color:var(--muted);font-size:12px}
.status-dot{width:10px;height:10px;background:var(--green);border-radius:50%;margin-top:5px}
.map-card{overflow:hidden}
.map-head,.map-foot,.section-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px}
.map-head h2,.section-head h2{margin:4px 0 0;font-size:20px;letter-spacing:-.02em}
.map{height:390px;background:#dce9e4;position:relative;overflow:hidden;background-image:linear-gradient(35deg,#c7dbd2 1px,transparent 1px),linear-gradient(120deg,#c7dbd2 1px,transparent 1px);background-size:42px 42px}
.contours{position:absolute;border:2px solid #b1cfc6;border-radius:50%;transform:rotate(-18deg)}
.c1{width:680px;height:390px;left:-100px;top:10px}
.c2{width:420px;height:260px;left:300px;top:80px}
.river{position:absolute;width:12px;height:520px;background:#8bbbc4;left:54%;top:-50px;transform:rotate(21deg);opacity:.8}
.claim{position:absolute;border:2px solid var(--red);background:#d62f3a20;color:#9f1c26;padding:8px;font-size:10px;font-weight:800;letter-spacing:.06em;transform:rotate(-10deg)}
.claim-a{width:190px;height:120px;left:12%;top:28%}
.claim-b{width:180px;height:120px;right:9%;top:18%;transform:rotate(14deg)}
.pin{position:absolute;width:30px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--yellow);display:grid;place-items:center;font-weight:800;box-shadow:0 3px 8px #3335}
.pin::first-letter{transform:rotate(45deg)}
.pin-a{left:43%;top:52%}
.pin-b{left:68%;top:68%;background:var(--blue);color:#fff}
.map-label{position:absolute;left:20px;bottom:18px;font-weight:800;letter-spacing:.08em}
.map-label small{font-weight:500;letter-spacing:0;color:#456}
.map-legend{position:absolute;right:14px;bottom:14px;background:#ffffffe6;border-radius:10px;padding:10px;font-size:11px;display:flex;gap:12px}
.map-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}
.blue{background:var(--blue)}
.red{background:var(--red)}
.yellow{background:var(--yellow)}
.map-foot{font-size:12px;color:var(--muted);border-top:1px solid var(--line)}
.warning{color:#9b6910;font-weight:700}
.quick-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:14px 0 34px}
.capture,.metric{min-height:100px;text-align:left;padding:20px;border-radius:var(--r)}
.capture{display:flex;align-items:center;gap:14px;border:0}
.primary{background:var(--blue);color:#fff}
.capture small{color:#dcecff}
.plus{font-size:30px;font-weight:300}
.metric{display:flex;flex-direction:column;justify-content:center}
.metric strong{font-size:30px;line-height:1;margin:7px 0}
.section-head{padding:0 0 12px}
.queue{overflow:hidden}
.queue-item{display:grid;grid-template-columns:45px 1fr auto;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line);align-items:start}
.queue-item:last-child{border:0}
.rank{font-size:12px;color:var(--muted);font-weight:800}
.queue-item b{font-size:15px}
.queue-item p{margin:4px 0 8px;color:var(--muted);font-size:13px}
.tag{font-size:10px;font-weight:800;letter-spacing:.06em}
.blocked{color:var(--red)}
.review{color:#9b6910}
.score{font-size:20px;font-weight:800;color:var(--blue)}
.timeline{padding:8px 20px}
.timeline-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.timeline-item:last-child{border:0}
.timeline-icon{color:var(--yellow);font-size:20px}
.blue-dot{color:var(--blue)}
.timeline-item b,.timeline-item small{display:block}
.timeline-item small{font-size:12px;color:var(--muted)}
.floating{display:none}
dialog{border:0;border-radius:22px;padding:0;width:min(580px,calc(100% - 28px));box-shadow:0 20px 80px #0005}
dialog::backdrop{background:#11111399;backdrop-filter:blur(4px)}
form{padding:22px}
.dialog-head{display:flex;justify-content:space-between}
.dialog-head h2{margin:4px 0 14px}
.close{border:0;background:transparent;font-size:28px;min-width:44px;height:44px}
.dialog-note{background:#f5f5f7;border-radius:10px;padding:12px;color:var(--muted);font-size:13px}
label{display:block;font-weight:650;font-size:13px;margin:14px 0}
input,select,textarea{display:block;width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;margin-top:6px;background:#fff;color:var(--ink)}
textarea{resize:vertical}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.coordinate-box{display:flex;justify-content:space-between;align-items:center;background:#eaf2f8;border-radius:10px;padding:12px;margin:14px 0}
.coordinate-box b{display:block;margin-top:3px}
.upload{border:1px dashed #9eb6c8;border-radius:10px;padding:14px;color:var(--blue)}
.upload input{display:none}
.check{font-weight:500}
.check input{display:inline-block;width:auto;margin:0 8px 0 0}
.save{width:100%;border:0;border-radius:10px;min-height:48px;font-weight:750;margin-top:8px}
@media(max-width:700px){.topbar{padding:0 14px}
.parent-link{font-size:12px;padding:8px}
.shell{padding:20px 14px 90px}
.hero{display:block;padding-top:8px}
.hero h1{font-size:46px}
.status-card{margin-top:20px}
.map{height:330px}
.map-legend{left:12px;right:auto;bottom:12px}
.map-foot{display:block}
.map-foot span{display:block;margin:4px 0}
.quick-grid{grid-template-columns:1fr 1fr;margin-bottom:30px}
.capture{grid-column:1/-1}
.metric{min-height:88px;padding:15px}
.section-head{padding-left:2px}
.floating{display:block;position:fixed;right:18px;bottom:18px;z-index:6;width:58px;height:58px;border-radius:50%;border:0;background:var(--yellow);color:var(--ink);font-size:30px;box-shadow:0 8px 24px #0003}
.two-col{grid-template-columns:1fr}
.map-label{font-size:11px}
}

/* Active tenure register */
.claims{display:grid;gap:10px}
.claim-row{display:grid;grid-template-columns:8px 1fr auto;gap:12px;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px}
.claim-status{border-radius:8px;background:var(--green)}
.claim-status.review{background:var(--yellow)}
.claim-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.claim-main p{margin:5px 0 9px;color:var(--muted);font-size:12px}
.claim-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font:11px monospace}
.claim-actions{display:flex;flex-direction:column;align-items:end;justify-content:space-between;gap:8px}
.cost{font:700 11px monospace;color:var(--ink)}
.kebab{border:0;background:transparent;color:var(--muted);font-weight:800;letter-spacing:2px;padding:4px;box-sizing:border-box;min-width:44px;min-height:44px}
.tag.owned{background:#dff2e6;color:#176b3a;padding:2px 5px;border-radius:4px}
.tag.review{background:#fff1c7;color:#7b5b00;padding:2px 5px;border-radius:4px}

/* Parcel-linked historical intelligence */
.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.history-card{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}
.history-card.quiet{background:#f8f8fa}
.history-count{font:700 28px monospace;color:var(--blue)}
.history-card b,.history-card small{display:block}
.history-card small{color:var(--muted);font-size:12px;margin-top:3px}
.history-note{display:flex;gap:12px;margin-top:10px;padding:15px 16px;background:#eef5f7;border:1px solid #d5e4e8;border-radius:16px}
.history-note p{margin:4px 0 0;color:var(--muted);font-size:13px}
.history-note .timeline-icon{color:var(--blue)}

/* Quiet Instrument shared header and appearance */
:root{color-scheme:light;--header:rgba(255,255,255,.88)}
:root[data-theme="dark"]{color-scheme:dark;--canvas:var(--eco-canvas);--surface:var(--eco-surface);--ink:var(--eco-ink);--muted:var(--eco-muted);--line:#343438;--blue:var(--eco-action);--yellow:var(--eco-invention);--red:var(--eco-danger);--green:var(--eco-positive);--header:rgba(18,18,20,.9)}
.topbar{height:auto;min-height:72px;background:var(--header);padding-top:9px;padding-bottom:9px}
.brand img{width:42px;height:42px;border-radius:12px}.brand strong{font-size:17px;letter-spacing:-.02em}.brand small{white-space:nowrap}
.header-actions{display:flex;gap:8px}.icon-button,.apps-button{min-height:44px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font-weight:700}.icon-button{width:44px;font-size:20px}.apps-button{padding:0 14px}.apps-button span{color:var(--blue);font-size:20px;margin-right:5px}
.apps-menu{position:absolute;right:max(20px,calc((100vw - 1120px)/2));top:66px;width:min(300px,calc(100vw - 28px));padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px #0003}.apps-menu a{display:flex;justify-content:space-between;gap:10px;padding:12px;border-radius:10px;color:var(--ink);text-decoration:none}.apps-menu a:hover,.apps-menu a.current{background:color-mix(in srgb,var(--blue) 10%,var(--surface))}.apps-menu small{color:var(--muted)}
.hero{padding-top:8px}.hero h1{font-size:clamp(34px,6vw,56px);line-height:1}.warning-dot{background:var(--yellow)}
:root[data-theme="dark"] .map{filter:saturate(.8) brightness(.72)}:root[data-theme="dark"] .map-legend,:root[data-theme="dark"] input,:root[data-theme="dark"] select,:root[data-theme="dark"] textarea{background:var(--surface);color:var(--ink)}:root[data-theme="dark"] .dialog-note,:root[data-theme="dark"] .history-card.quiet,:root[data-theme="dark"] .history-note,:root[data-theme="dark"] .coordinate-box{background:#22262b}
@media(max-width:700px){.topbar{padding:9px 14px}.brand img{width:40px;height:40px}.brand small{max-width:154px;overflow:hidden;text-overflow:ellipsis}.apps-button{padding:0 11px}.apps-menu{right:14px;top:64px}.hero h1{font-size:40px}.claim-row{grid-template-columns:7px 1fr}.claim-actions{grid-column:2;flex-direction:row;align-items:center}.history-grid{grid-template-columns:1fr}}
.eco-app-switcher .apps-menu{right:0;top:calc(100% + 7px)}
