/* NoticeRadius tool. Scoped so it sits inside any theme. */
.nr-app{
  --nr-ink:#0B1623; --nr-panel:#101E2E; --nr-raise:#16273A; --nr-line:#24374C;
  --nr-text:#E9F0F7; --nr-muted:#8FA3B7; --nr-orange:#FF6A13; --nr-orange-dk:#E25400;
  --nr-green:#2BD69B;
  display:flex; height:var(--nr-h,680px); overflow:hidden;
  border-radius:20px; background:var(--nr-panel); color:var(--nr-text);
  border:1px solid var(--nr-line);
  box-shadow:0 2px 4px rgba(11,22,35,.1), 0 24px 60px rgba(11,22,35,.18);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:15px; line-height:1.5; -webkit-tap-highlight-color:transparent;
}
.nr-app *{box-sizing:border-box}
.nr-app ::selection{background:var(--nr-orange);color:#fff}

.nr-panel{width:392px;flex:none;overflow-y:auto;overscroll-behavior:contain;padding:22px}
.nr-panel::-webkit-scrollbar{width:10px}
.nr-panel::-webkit-scrollbar-thumb{background:#24374C;border-radius:8px;border:3px solid var(--nr-panel)}
.nr-map-wrap{flex:1;min-width:0;position:relative;background:#0A121C}
.nr-map{position:absolute;inset:0}
.nr-app .leaflet-container{height:100%;width:100%;font:inherit;background:#0A121C}
.nr-app .leaflet-control-attribution{background:rgba(11,22,35,.72);color:#8FA3B7;font-size:10.5px;border-radius:6px 0 0 0}
.nr-app .leaflet-control-attribution a{color:#8FA3B7}
.nr-app .leaflet-bar a{background:var(--nr-panel);color:var(--nr-text);border-color:var(--nr-line)}
.nr-app .leaflet-bar a:hover{background:var(--nr-raise)}
.nr-map-hint{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);z-index:600;
  background:rgba(11,22,35,.8);color:var(--nr-muted);font-size:12.5px;padding:7px 14px;
  border-radius:999px;pointer-events:none;backdrop-filter:blur(6px);white-space:nowrap}

/* ---- blocks ---- */
.nr-block{margin-bottom:20px}
.nr-app .nr-lab{display:block;font-family:'Archivo',system-ui,sans-serif;font-size:13px;
  font-weight:700;letter-spacing:.02em;color:var(--nr-text);margin:0 0 9px;text-transform:none}
.nr-lab-sm{font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--nr-muted);margin-top:16px}
.nr-hint{font-size:12.5px;color:var(--nr-muted);margin:8px 0 0}

/* ---- search ---- */
.nr-search{position:relative}
.nr-input-wrap{position:relative;display:flex;align-items:center}
.nr-input-icon{position:absolute;left:14px;width:19px;height:19px;color:var(--nr-muted);pointer-events:none}
.nr-app input[type=text],.nr-app input[type=number]{
  font:inherit;font-size:16px;width:100%;padding:14px 14px 14px 43px;
  border-radius:12px;border:1px solid var(--nr-line);background:#0A1420;color:var(--nr-text);
  transition:border-color .15s,box-shadow .15s}
.nr-app input[type=text]:focus,.nr-app input[type=number]:focus{outline:none;border-color:var(--nr-orange);
  box-shadow:0 0 0 3px rgba(255,106,19,.22)}
.nr-app input::placeholder{color:#63778B}
.nr-clear{position:absolute;right:8px;width:34px;height:34px;border:none;background:transparent;
  color:var(--nr-muted);font-size:22px;line-height:1;cursor:pointer;border-radius:8px}
.nr-clear:hover{background:var(--nr-raise);color:var(--nr-text)}

.nr-sugg{position:absolute;left:0;right:0;top:calc(100% - 26px);z-index:1200;margin-top:6px;
  background:var(--nr-raise);border:1px solid var(--nr-line);border-radius:12px;overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.5)}
.nr-sugg div{padding:13px 15px;cursor:pointer;font-size:14.5px;border-bottom:1px solid rgba(255,255,255,.05)}
.nr-sugg div:last-child{border-bottom:none}
.nr-sugg div:hover,.nr-sugg div.is-on{background:var(--nr-orange);color:#fff}

.nr-recent{margin-top:14px}
.nr-recent-lab{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--nr-muted)}
.nr-recent-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.nr-recent-list button{font:inherit;font-size:12.5px;padding:7px 12px;border-radius:999px;
  border:1px solid var(--nr-line);background:transparent;color:var(--nr-muted);cursor:pointer;
  max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nr-recent-list button:hover{border-color:var(--nr-orange);color:var(--nr-text)}

/* ---- radius ---- */
.nr-presets{display:flex;gap:6px;margin-bottom:14px}
.nr-chip{flex:1;font:inherit;font-size:13px;font-weight:600;padding:11px 4px;border-radius:10px;
  border:1px solid var(--nr-line);background:transparent;color:var(--nr-muted);cursor:pointer;
  transition:all .12s}
.nr-chip:hover{color:var(--nr-text);border-color:#3A5170}
.nr-chip.is-on{background:var(--nr-orange);border-color:var(--nr-orange);color:#fff}
.nr-range-row{display:flex;align-items:center;gap:12px}
.nr-app input[type=range]{flex:1;accent-color:var(--nr-orange);height:30px;padding:0;background:none;border:none}
.nr-rnum-wrap{position:relative;flex:none;width:104px}
.nr-rnum-wrap input{padding:11px 30px 11px 12px !important;text-align:right;font-variant-numeric:tabular-nums}
.nr-rnum-wrap span{position:absolute;right:12px;top:50%;transform:translateY(-50%);
  color:var(--nr-muted);font-size:13px;pointer-events:none}

/* ---- result ---- */
.nr-result{background:linear-gradient(160deg,#13273A,#0C1B29);border:1px solid var(--nr-line);
  border-radius:16px;padding:20px;margin-bottom:20px}
.nr-result-main{display:flex;align-items:baseline;gap:10px}
.nr-result b{font-family:'Archivo',system-ui,sans-serif;font-size:44px;font-weight:800;
  line-height:1;color:var(--nr-green);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.nr-cnt-lab{font-size:14px;color:var(--nr-muted);font-weight:500}
.nr-result-meta{margin-top:9px;font-size:13px;color:var(--nr-muted);min-height:19px}
.nr-result.is-busy b{color:var(--nr-muted)}

/* ---- buttons ---- */
.nr-app .nr-btn{display:flex;align-items:center;justify-content:center;gap:9px;
  font:inherit;font-size:15.5px;font-weight:650;width:100%;padding:15px;min-height:54px;
  margin:0 0 9px;border:none;border-radius:12px;background:var(--nr-orange);color:#fff;cursor:pointer;
  transition:background .12s,transform .1s,opacity .12s}
.nr-app .nr-btn svg{width:19px;height:19px;flex:none}
.nr-app .nr-btn:hover:not(:disabled){background:var(--nr-orange-dk)}
.nr-app .nr-btn:active:not(:disabled){transform:translateY(1px)}
.nr-app .nr-btn:disabled{opacity:.42;cursor:not-allowed}
.nr-app .nr-ghost{background:var(--nr-raise);color:var(--nr-text);box-shadow:inset 0 0 0 1px var(--nr-line)}
.nr-app .nr-ghost:hover:not(:disabled){background:#1C3049}
.nr-app .nr-quiet{background:transparent;color:var(--nr-muted);min-height:44px;font-size:13.5px;font-weight:500}
.nr-app .nr-quiet:hover:not(:disabled){background:var(--nr-raise);color:var(--nr-text)}
.nr-msg{margin:6px 0 0;padding:11px 13px;border-radius:10px;background:#3A2417;color:#FFB88A;font-size:13px}

/* ---- details ---- */
.nr-more{border-top:1px solid var(--nr-line);padding:4px 0}
.nr-more summary{list-style:none;cursor:pointer;padding:14px 2px;font-size:13.5px;
  color:var(--nr-muted);display:flex;align-items:center;justify-content:space-between}
.nr-more summary::-webkit-details-marker{display:none}
.nr-more summary::after{content:'+';font-size:18px;line-height:1;color:var(--nr-muted)}
.nr-more[open] summary::after{content:'\2212'}
.nr-more summary:hover{color:var(--nr-text)}
.nr-more-body{padding:2px 2px 16px}
.nr-app label.nr-chk{display:flex;align-items:center;gap:11px;padding:9px 2px;font-size:14.5px;
  color:var(--nr-text);cursor:pointer;margin:0;text-transform:none;letter-spacing:0;font-weight:400}
.nr-app label.nr-chk input{width:20px;height:20px;flex:none;accent-color:var(--nr-orange);margin:0;padding:0}
.nr-fine{font-size:12.5px;color:var(--nr-muted);line-height:1.6}
.nr-fine p{margin:0 0 9px}
.nr-fine strong{color:var(--nr-text)}

/* ---- preview ---- */
.nr-preview{border-top:1px solid var(--nr-line);padding-top:14px;margin-top:4px}
.nr-preview-head{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--nr-muted);margin-bottom:8px}
.nr-app table.nr-tbl{width:100%;border-collapse:collapse;font-size:13px}
.nr-app table.nr-tbl td{padding:8px 2px;border:none;border-bottom:1px solid rgba(255,255,255,.055);
  color:var(--nr-muted)}
.nr-app table.nr-tbl td:first-child{color:var(--nr-text)}
.nr-app table.nr-tbl td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}

/* ---- mobile dock ---- */
.nr-dock{display:none}

@media (max-width:900px){
  .nr-app{flex-direction:column;height:auto;border-radius:16px}
  .nr-map-wrap{order:-1;height:46vh;min-height:300px;border-bottom:1px solid var(--nr-line)}
  .nr-panel{width:100%;padding:18px 16px 22px;overflow:visible}
  .nr-result b{font-size:40px}
  .nr-presets{flex-wrap:wrap}
  .nr-chip{flex:1 1 30%;min-width:74px}

  .nr-dock{display:flex;position:sticky;bottom:0;z-index:900;align-items:center;gap:12px;
    margin:0 -16px -22px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));
    background:rgba(16,30,46,.94);backdrop-filter:blur(12px);
    border-top:1px solid var(--nr-line)}
  .nr-dock-count{display:flex;align-items:baseline;gap:7px;flex:none}
  .nr-dock-count b{font-family:'Archivo',system-ui,sans-serif;font-size:26px;font-weight:800;
    color:var(--nr-green);line-height:1;font-variant-numeric:tabular-nums}
  .nr-dock-count span{font-size:12.5px;color:var(--nr-muted)}
  .nr-app .nr-dock-btn{margin:0;flex:1;min-height:48px;font-size:14.5px;padding:12px}
}
@media (max-width:380px){
  .nr-dock-count span{display:none}
}

/* ---- register ---- */
.nr-reg{--nr-line:#DFE6EE;--nr-muted:#5A6B7D;--nr-orange:#FF6A13;
  font-family:'Inter',system-ui,-apple-system,sans-serif}
.nr-reg *{box-sizing:border-box}
.nr-reg-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.nr-reg select,.nr-reg input{font:inherit;font-size:16px;padding:13px 14px;min-height:52px;
  border:1px solid var(--nr-line);border-radius:12px;background:#fff;color:#152334}
.nr-reg select:focus,.nr-reg input:focus{outline:none;border-color:var(--nr-orange);
  box-shadow:0 0 0 3px rgba(255,106,19,.18)}
.nr-reg .nr-reg-q{flex:1;min-width:220px}
.nr-reg .nr-btn{width:auto;padding:13px 22px;min-height:52px;margin:0;border:none;border-radius:12px;
  background:#0B1623;color:#fff;font-weight:650;font-size:15px;cursor:pointer;display:inline-flex;
  align-items:center;gap:8px}
.nr-reg .nr-btn:hover{background:#14243A}
.nr-reg-stat{color:var(--nr-muted);font-size:14px;margin:0 0 18px}
.nr-reg table{width:100%;border-collapse:collapse;font-size:14.5px}
.nr-reg th{text-align:left;padding:10px 10px;border-bottom:2px solid var(--nr-line);color:var(--nr-muted);
  font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.nr-reg td{padding:14px 10px;border-bottom:1px solid var(--nr-line);vertical-align:top}
.nr-reg tbody tr:hover{background:#F8FAFC}
.nr-pill{display:inline-block;background:#EDF1F6;padding:4px 10px;border-radius:999px;
  font-size:12px;color:var(--nr-muted);white-space:nowrap}
.nr-go{display:inline-flex;align-items:center;gap:6px;background:#FF6A13;color:#fff;font-weight:650;
  padding:11px 15px;border-radius:10px;font-size:14px;white-space:nowrap;text-decoration:none}
.nr-go:hover{background:#E25400;color:#fff;text-decoration:none}
.nr-reg td.nr-when{font-weight:650;color:#0B1623}
.nr-reg td.nr-no{font-size:12.5px;color:var(--nr-muted);font-variant-numeric:tabular-nums}
.nr-reg td.nr-meta{font-size:13px;color:var(--nr-muted)}

@media (max-width:860px){
  .nr-reg select,.nr-reg .nr-reg-q,.nr-reg .nr-btn{width:100%;flex:1 1 100%;justify-content:center}
  .nr-reg thead{display:none}
  .nr-reg table,.nr-reg tbody,.nr-reg tr,.nr-reg td{display:block;width:100%}
  .nr-reg tr{background:#fff;border:1px solid var(--nr-line);border-radius:16px;padding:16px;
    margin-bottom:14px;box-shadow:0 1px 2px rgba(11,22,35,.05),0 6px 18px rgba(11,22,35,.05)}
  .nr-reg tbody tr:hover{background:#fff}
  .nr-reg td{border:none;padding:2px 0}
  .nr-reg td.nr-when{font-size:18px;margin-bottom:4px}
  .nr-reg td.nr-where{font-size:15px;margin:8px 0;line-height:1.45}
  .nr-reg td.nr-act{margin-top:14px}
  .nr-reg td.nr-act a{display:flex;justify-content:center}
}

/* the theme resets can defeat the hidden attribute */
.nr-app [hidden], .nr-reg [hidden]{display:none !important}

/* signal that the panel scrolls */
.nr-panel{position:relative;
  background:
    linear-gradient(var(--nr-panel) 30%, rgba(16,30,46,0)) top/100% 28px no-repeat,
    linear-gradient(rgba(16,30,46,0), var(--nr-panel) 70%) bottom/100% 34px no-repeat,
    radial-gradient(farthest-side at 50% 0, rgba(0,0,0,.28), transparent) top/100% 12px no-repeat,
    radial-gradient(farthest-side at 50% 100%, rgba(0,0,0,.28), transparent) bottom/100% 14px no-repeat;
  background-attachment:local, local, scroll, scroll}
@media (max-width:900px){ .nr-panel{background:none} }

/* clearer disabled state */
.nr-app .nr-btn:disabled{background:#1A2C41;color:#6B8099;opacity:1;box-shadow:none}
.nr-app .nr-ghost:disabled{background:transparent;color:#5C7188;box-shadow:inset 0 0 0 1px #1F3349}
.nr-app .nr-quiet:disabled{background:transparent;color:#4E627A}
.nr-release{border-left:2px solid var(--nr-orange);padding-left:11px;color:var(--nr-text) !important}
.nr-release strong{color:var(--nr-green)}
