.external-link{display:inline-block;margin-top:.6rem;color:var(--cyan);font-size:.82rem;text-align:center}
.fields{grid-template-columns:repeat(3,minmax(0,1fr))}
.action-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.action-row .secondary{margin-top:0}
.measurement-card{margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#06191a99}
.measurement-head{display:flex;align-items:center;justify-content:space-between}.measurement-head span{color:var(--muted);font-size:.76rem}.measurement-head strong{display:block;margin-top:2px;font-size:1.05rem}.confidence-badge{display:grid;place-items:center;min-width:44px;height:30px;border-radius:999px;background:#173334;color:var(--cyan)!important;font-weight:800}
.confidence-track,.sample-progress{height:4px;margin:8px 0;background:#173334;border-radius:9px;overflow:hidden}.confidence-track i,.sample-progress i{display:block;width:0;height:100%;background:var(--cyan);transition:width .25s ease}.measurement-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.measurement-stats span{font-size:.68rem;color:var(--muted)}.measurement-stats b{display:block;margin-top:2px;color:var(--text);font-size:.74rem}.sample-button{width:100%;min-height:36px;margin-top:10px;border:1px solid #2ac9c4;border-radius:9px;background:#0b3434;color:var(--cyan);font-weight:800}.sample-button:disabled{opacity:.55}.sample-result{margin:5px 0 0;color:var(--muted);font-size:.7rem;line-height:1.35}.recent-readings{display:flex;gap:5px;margin-top:7px;overflow:hidden}.reading-chip{white-space:nowrap;padding:4px 7px;border-radius:7px;background:#153031;color:#cfe2df;font-size:.68rem}
.grid.reflow .pair{animation:star-pop .38s ease-out}
@keyframes star-pop{0%{opacity:.15;transform:scale(.72)}70%{transform:scale(1.12)}100%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.grid.reflow .pair{animation:none}}
@media (min-width:720px) and (min-height:600px) and (orientation:landscape){
  html,body{height:100%;overflow:hidden}
  .shell{height:100dvh;max-width:none;padding:14px 20px;display:grid;grid-template-rows:auto minmax(0,1fr)}
  .topbar{margin-bottom:10px;min-height:42px}
  .topbar h1{font-size:1.15rem;margin:2px 0}
  .layout{min-height:0;height:100%;grid-template-columns:minmax(280px,38fr) minmax(0,62fr);gap:12px}
  .right-col{min-height:0;grid-template-rows:minmax(190px,34%) minmax(0,66%);gap:12px}
  .panel{padding:16px;border-radius:18px}
  .compass-panel{min-height:0;height:100%;padding:14px 18px}
  .period strong{font-size:clamp(2rem,4vh,2.65rem)}
  .compass-wrap{min-height:0;overflow:hidden}
  .dial{width:min(78%,42vh,410px)}
  .direction-cards{margin:2px 0 8px}
  .direction-cards div{padding:8px}
  .direction-cards strong{font-size:1.45rem}
  .primary,.secondary,.ghost{min-height:38px}
  .lock-button{margin-top:7px}
  .range-label{margin-top:10px}
  input[type=range]{margin:7px 0}
  .hint,.external-link{margin-top:2px;font-size:.75rem}
  .external-link{display:none}
  .measurement-card{margin-top:6px;padding:8px 10px}
  .measurement-stats{gap:4px}.sample-button{margin-top:7px;min-height:32px}.sample-result{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-readings{display:none}
  .fields{margin:12px 0;gap:8px}
  .fields label span{margin-bottom:4px}
  select{padding:9px}
  .summary{padding-top:10px}
  .chart-panel{min-height:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
  .grid{margin-top:10px;min-height:0;height:100%}
  .palace{min-height:0;height:auto}
  .palace>strong{font-size:clamp(2.6rem,5.4vh,4rem)}
  .methods{margin-top:9px}
  .methods div{padding:8px 10px}
  .methods strong{margin:4px 0}
  .methods p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (min-width:720px) and (max-width:900px) and (min-height:600px) and (orientation:landscape){.fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px) and (orientation:portrait){.fields{grid-template-columns:1fr}}
