/* --- ê¸°ì¡´ index.html??<style> ?„ì²´ë¥??¬ê¸°??ê·¸ë?ë¡?ë¶™ì—¬?£ê¸° --- */
/* =========================================================
   app.css  (?�ëž˜ index.html??<style>???Œì�¼ë¡?ë¶„ë¦¬)
   * base.html???¸ë�¼??:rootê°€ ???”ë ˆ?¸ë? ??–´?�ë‹ˆ??
   * ?¬ê¸°??ê¸°ë³¸ê°??´ë°±)ë§??£ì–´??
   ========================================================= */

:root{
  /* base.html??ê°™ì? ë³€?˜ëª…???¸ë�¼?¸ìœ¼ë¡?ì£¼ìž…?˜ì—¬ ìµœì¢… ?¤ë²„?¼ì�´??*/
  --bg: #0b0b0f;
  --card: #11131a;
  --border: #232634;
  --text: #e6e8ef;
  --muted: #9aa0aa;
  --button: #1a1f2b;
  --good: #2a5cff;
  --bad: #d43b2f;

  --glyph-w: 0.9em;
  --mark-w:  0.6em;

  /* Firdaria ê¸€ë¦¬í”„ ê³ ì •??*/
  --fird-glyph-w: 1em;

  /* ZR ?€ ?¨ë”© */
  --zr-cell-pad: 2px;

  /* ZR ?„ì�´ì½??¬ê¸° */
  --zr-size: 16px;

  /* Speed ?„ì�´ì½??¬ê¸° */
  --speed-size: 12px;
  
  /* Dignities ?„ì�´ì½??¬ê¸° */
  --dig-size: 14px;

  /* Firdaria ?„ì�´ì½??¬ê¸° */
  --fird-size: 14px;

  /* dignity ë§ˆí�¬ ê°„ê²© / ìµœì†Œ ?ˆë¹„ */
  --mark-gap: 3px;
  --dig-col-min: 30px;

  /* (NEW) ë² ì�´?¤ë�¼??ë¯¸ì„¸ ë³´ì • ê¸°ë³¸ê°?*/
  --baseline-nudge: 0;
}

/* (NEW) CJK?�ì„œ ?œê?/?œìž�ê°€ ?´ì§� ?´ë ¤ê°€ ë³´ì�´???„ìƒ� ?„í™” */
html:lang(ko), html:lang(ja),
html:lang(zh-cn), html:lang(zh-tw) { --baseline-nudge: -0.02em; }

*{box-sizing:border-box}
html,body{height:100%;}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  margin:0;
}

/* (NEW) ??ì»¨íŠ¸ë¡??µì�¼ ê·œê²© */
.input-like{
  width:100%;
  height:36px;               /* input/select ?™ì�¼ ê³ ì • ?’ì�´ */
  line-height:1.25;
  padding:8px;
  box-sizing:border-box;
  border:1px solid var(--border);
  border-radius:6px;
  background:var(--card);
  color:var(--text);
}
select.input-like{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  padding-right:28px;        /* ?œë¡­?¤ìš´ ?”ì‚´???�ì—­ ?•ë³´ */
}

/* (NEW) CJK ?œê°� ì¤‘ì‹¬??ë³´ì •: ???¼ë²¨/ë²„íŠ¼ ?±ì—�ë§??„ì£¼ ë¯¸ì„¸ ?�ìš© */
label, input, select, button, .title {
  position: relative;
  top: var(--baseline-nudge);
}

/* ===================== ?„ì—­ ?œëž˜ê·?? íƒ� ì°¨ë‹¨ ===================== */
html, body, .page { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
img, svg { -webkit-user-drag: none; }
input, textarea, select, .allow-select { -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }
/* =============================================================== */

.page{max-width:1280px;margin-inline:auto;padding:14px 14px 40px}

.grid{
  display:grid;
  grid-template-columns:minmax(720px,1fr) 360px;
  gap:14px;
  align-items:start;
}
@media (max-width:1080px){ .grid{grid-template-columns:1fr} }

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:10px;
  padding:12px;
  box-shadow:0 1px 0 rgba(0,0,0,.03)
}
.title{margin:0 0 8px;text-align:center}

/* === Site title (Gienah) ?„ìš©: ?¬ì»¤??ë§??œê±° + ?�ìŠ¤???ˆë¹„ë§??´ë¦­ === */
#siteTitle{
  /* ?�ìŠ¤???ˆë¹„ë§?ì°¨ì? */
  width: max-content;          /* ?„ë? ë¸Œë�¼?°ì? */
  display: block;              
  margin: 0 auto 8px;          /* ê°€?´ë�° ?•ë ¬ */
  /* ?¬ì»¤??ë§????˜ì�´?¼ì�´???œê±° (?œëª©?�ë§Œ) */
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
#siteTitle:focus,
#siteTitle:focus-visible{
  outline: none;
  box-shadow: none;
}

/* ===================== Login Icon Button ===================== */
.login-icon-btn:hover {
  background: var(--button);
  opacity: 0.85;
}

.login-icon-btn:active {
  opacity: 0.7;
}

.login-icon-btn:focus-visible {
  outline: 2px solid var(--text);
  outline-offset: 2px;
  background: var(--button);
}

/* Mobile: larger touch target */
@media (max-width: 768px) {
  .header-container {
    padding: 8px 52px 8px 8px !important;
    margin-bottom: 8px !important;
  }

  .login-icon-btn {
    width: 44px !important;
    height: 44px !important;
    padding: 10px !important;
  }

  .login-icon-btn svg {
    width: 24px !important;
    height: 24px !important;
  }
}
/* ============================================================== */

.card.chart{border:none;padding:0;background:transparent;box-shadow:none;overflow:visible}
#chartContainer{overflow:visible}

/* ì°¨íŠ¸ ì»¨í…Œ?´ë„ˆ
   - ì»¨í…Œ?´ë„ˆ ë°°ê²½?€ ?¬ëª… ì²˜ë¦¬(ë°°ê²½?€ SVG ?´ë??�ì„œ ê·¸ë¦¬?„ë¡� ë³€ê²?
   - iPad Safari ?€?‘ì�„ ?„í•´ ?´ë? SVGë¥?100%ë¡??¤ì??¼í•˜?„ë¡� ë³„ë�„ ê·œì¹™ ì¶”ê? */
.chart-circle{
  width:100%;
  max-width:100%;
  aspect-ratio:1/1;
  border-radius:50%;
  overflow:visible;
  -webkit-mask-image:none;
  mask-image:none;
  clip-path:none;
  background:transparent;                /* â¬?ë³€ê²? ?¸ë? ë°°ê²½???œê±° */
  display:flex;align-items:center;justify-content:center
}
.chart-circle > svg{
  /* â¬?ì¶”ê?: iPad Safari?�ì„œ ì»¨í…Œ?´ë„ˆ??ë§žì¶° ?•ì‹¤???¤ì???*/
  width:100%;
  height:auto;
  display:block;
  overflow:visible;
  -webkit-mask-image:none;
  mask-image:none;
  clip-path:none;
}

@media (max-width: 1080px){
  .chart-circle{width:100%;max-width:100%;}
  .tables-row{ justify-content: center; }
  .tables-row .card{ margin-left:auto; margin-right:auto; max-width:100%; }
}

.tables-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;align-items:flex-start;}

/* ---- ??ê¸°ë³¸ ---- */
.table-dig,.table-sect,.table-return{border-collapse:collapse;font-size:14px;white-space:nowrap}
.table-fird,.table-zr,.table-speed,.table-lots{border-collapse:collapse;font-size:12px;white-space:nowrap;min-width:280px}

.table-dig th,.table-dig td,.table-sect th,.table-sect td,
.table-fird th,.table-fird td,.table-zr th,.table-zr td,
.table-speed th,.table-speed td,.table-lots th,.table-lots td{border:1px solid var(--border);text-align:center}

.table-dig th,.table-sect th,.table-fird th,.table-fird td,.table-zr th,.table-zr td,
.table-speed th,.table-speed td,.table-lots th,.table-lots td{background:var(--card);font-weight:normal}

.table-dig caption,.table-sect caption,.table-fird caption,.table-zr caption,.table-speed caption,.table-return caption,
.table-lots caption{
  caption-side: top;text-align:center;font-weight:700;margin-bottom:6px
}
.table-fird caption,.table-zr caption,.table-speed caption,.table-lots caption{font-size:14px}

/* ê°????¨ë”© */
.table-fird th,.table-fird td{padding:2px 4px}
.table-fs   th,.table-fs   td{padding:2px 6px}
.table-lots th,.table-lots td{padding:2px 0px}

/* ??ZR ?????’ì�´ ?´ì§� ?•ë? */
.table-zr th,.table-zr td{padding: var(--zr-cell-pad); vertical-align:middle; line-height:1.4;}

/* Sect ?œëŠ” ?ˆì „ ?ˆì�´?„ì›ƒì²˜ëŸ¼ ?¬ìœ  ?ˆê²Œ */
.table-sect th,.table-sect td{padding:4px 6px}
/* Sect??Condition ?´ì? ì¤‘ì•™ ?•ë ¬ */
.table-sect td:nth-child(5){ text-align:center; }

/* Firdaria/ZR/FS/Lots ????(Sect??colgroup ?†ì�´ ?�ë�™?? */
.table-fird colgroup col:nth-child(1),
.table-zr   colgroup col:nth-child(1),
.table-fird colgroup col:nth-child(2),
.table-zr   colgroup col:nth-child(2){width:92px}
.table-fird colgroup col:nth-child(3),
.table-zr   colgroup col:nth-child(3){width:60px}

.table-fird td:nth-child(2), .table-zr td:nth-child(2){text-align:center}
/* ??ê³µìš© ê·œì¹™ ë¶„ë¦¬: ZR 3?´ì—�???¤ë¥¸ìª?6px ?¨ë”© ë¶ˆí•„??*/
.table-fird td:nth-child(3){
  text-align:center;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;padding-right:6px;
}
.table-zr  td:nth-child(3){ text-align:center; } /* ì¢Œìš° ?€ì¹??¨ë”©? ì? */

/* ?«ìž� ?•ë ¬(ê°�ë�„/?¤ë¸Œ ?? */
.num{ font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1, "lnum" 1; }

/* Good/Bad */
.good{ color:var(--good) } .bad{ color:var(--bad) }

.cell{
  display:inline-grid;
  grid-template-columns: var(--glyph-w) var(--mark-w);
  column-gap: var(--mark-gap);
  align-items:center;justify-content:center;
  min-width: max(calc(var(--glyph-w) + var(--mark-w) + var(--mark-gap)), var(--dig-col-min));
}
.cell2{ font-size:11px; }
.cell3{ display:inline-grid; }

.glyph{
  display:inline-flex;width:var(--glyph-w);justify-content:center;line-height:1;
  font-family: "Segoe UI Symbol","Apple Symbols","Noto Sans Symbols2","Arial Unicode MS",system-ui,sans-serif;
}
/* Firdaria Period ???•ë ¬ ê³ ì • */
.table-fird .glyph{
  width: var(--fird-glyph-w);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  line-height: 1;
}
/* ZR??ê¸€ë¦¬í”„ë¥????¬ê²Œ */
.table-zr   .glyph{width:auto;font-size:18px;line-height:1}
.table-zr.compact .glyph{font-size:18px}

/* Speed ??ê¸€ë¦¬í”„ */
.table-speed .glyph{width:auto;font-size:14px;line-height:1}

/* Essential Dignities ??Pt(ì²??? SVG ?„ì�´ì½˜ì�„ Speed?€ ?™ì�¼ ?¤ì??¼ë¡œ */
.table-dig .icon-svg{
  /* Speed ?œì? ?™ì�¼ ë³€???¬ìš©(?†ìœ¼ë©?14pxë¡??´ë°±) */
  width:  var(--dig-size, 14px);
  height: var(--dig-size, 14px);
  vertical-align: middle;
  transform:translateY(1px);
}
/* ê¸€ë¦¬í”„(ë¬¸ìž�)??ê¸°ì¡´ ?¬ê¸°ë¥?? ì? ???°ë¡œ ë§Œì?ì§€ ?Šì�Œ */

.table-fird .icon-svg{
  /* Speed ?œì? ?™ì�¼ ë³€???¬ìš©(?†ìœ¼ë©?14pxë¡??´ë°±) */
  width:  var(--fird-size, 12px);
  height: var(--fird-size, 12px);
  vertical-align: middle;
  transform:translateY(1px);
}

/* Pt ?´ì�˜ 2ê¸€??As/Mc/Ds/Ic ??ë§??´ì§� ì¶•ì†Œ */
.table-dig .glyph-2ch,
.table-speed .glyph-2ch,
.table-fstars .glyph-2ch{ font-size:12px; width:auto; letter-spacing:0; line-height:1; }
@media (max-width: 720px){
  .table-dig.compact .glyph-2ch,
  .table-speed.compact .glyph-2ch,
  .table-fstars .glyph-2ch{ font-size:11px; }
  .cell2{ font-size:10px;}
}

.mark{display:inline-flex;width:var(--mark-w);justify-content:center;align-items:center;font-size:12px;line-height:1;text-align:center;transform:translateY(1px);}
.mark.minus{color:inherit}
.score-wrap{display:inline-flex;align-items:center;justify-content:flex-end;gap:3px;white-space:nowrap;margin-right:2px;transform:translateX(-5px)}
.score-num{display:inline-block;width:4ch;text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1, "lnum" 1}
.score-p{width:.9ch;text-align:left}
@media (max-width: 720px){
  .table-dig .icon-svg{transform:translateY(2px)}
  .mark{transform:translateY(2.5px)}
  .score-num, .score-p{transform:translateY(1px)}
}

/* ê¸€ë¦¬í”„/êµ¬ë¶„?�ë�„ ê³ ì • ë°°ì¹˜: ??ƒ� ê°€?´ë�° */
.fird-period{
  display: inline-grid;
  grid-auto-flow: column;
  align-items: center;
  justify-content: center;
}

.fird-period .sep{
  width: 0.8em;          /* êµ¬ë¶„?�ë�„ ê³ ì •??*/
  text-align: center;
  display: inline-block;
  opacity: .9;
  font-size: 12px;
}

/* planet color classes */
.pl-Sun{color:#caa23a}.pl-Moon{color:#caa23a}.pl-Mercury{color:#7a3db8}.pl-Venus{color:#1aa7a0}
.pl-Mars{color:#d43b2f}.pl-Jupiter{color:#7f7f7f}.pl-Saturn{color:#8B4513}

/* etc color = text */
.fird-nav .dots, .fird-nav .glyph[class*="Node"]{
  color: var(--text);
}

/* button */
button[disabled]{opacity:.45;cursor:not-allowed;filter:grayscale(.25)}

/* ===== Firdaria ?´ë¹„ ===== */
.fird-nav{display:flex;align-items:center;justify-content:center;gap:6px;padding:2px;font-weight:normal}
.fird-nav .glyph{
  width: var(--fird-glyph-w);    /* ?œì? ?™ì�¼??ê³ ì •??*/
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 15px;
  line-height: 1;
  background: none;
  border: none;
  padding: 0;
  margin: 0;                     /* ë²„íŠ¼ ê¸°ë³¸ ?¬ë°± ?œê±°(ë¸Œë�¼?°ì?ë³??ˆì „) */
  font-weight: normal;
  cursor: pointer;
}
.fird-nav .dots{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:none;
  border:none;
  margin:0;
  padding:0;
  font-weight:normal;
  user-select:none;
  cursor: pointer;
}

/* ===== ZR ===== */
.zr-title-btn{background:none;border:none;color:inherit;font:inherit;padding:0;margin:0;cursor:default;}
.zr-title-btn:hover,.zr-title-btn:focus{cursor:default; outline:none; text-decoration:none;}
.zr-enter{background:none;border:none;padding:0;margin:0;cursor:default;}

/* ??ê³µìš© SVG ?„ì�´ì½? ëª¨ë“  ?œì—�???¬ìš© */
.icon-svg{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:var(--zr-size);
  height:var(--zr-size);
  vertical-align:middle;
}

/* ?œë³„ ë³´ì •???„ìš”??ê²½ìš°?????´ëž˜??ëª¨ë‘� ?�ìš© */
.table-speed .icon-svg{
  width:var(--speed-size);
  height:var(--speed-size);
  transform:translateY(-1px);
}

.table-zr tr.lb td{ border-bottom:2px dashed var(--muted); }

/* === ZR ?‰ì„± ?„ì�´ì½?=== */
.table-zr .icon-svg .pl-Jupiter, .pl-Venus, .pl-Mars, .pl-Saturn{
  justify-content: center;
  align-items: center;
  transform:translateY(1px);
}

/* === LB ?„ì�´ì½??¸ë? ë²ˆê°œ) === */
.lb-icon{
  color:#f2c84b;
  font-size:18px;
  line-height:1;
  display:grid;
  justify-content: center;
  align-items:center;
  margin:0;
  transform:translateY(-1px);
  padding:0px 3px;
}

/* === ZR ë§ˆì»¤ ì»¨í…Œ?´ë„ˆ: gridë¡??•í™• ì¤‘ì•™ ?•ë ¬ === */
.zr-marks{
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  align-items: center;
  column-gap: 3px;
}
.zr-marks > *{ display:block; line-height:1; }

.zr-peak{font-size:14px}
.zr-peak.ym{color:#f2c84b}
.zr-peak.bm{color:var(--good)}

/* F/S ?‰ìƒ� */
.fs-fast{ color:#2eaf49; }
.fs-slow{ color:#caa23a; }
.fs-retro{ color:var(--bad); }

/* === ê³µí†µ: ?´ë¦­ ?�ì—­ & hover ë°˜ì�‘ === */
circle.planet-hit,
g.house-hit > circle {
  cursor: pointer;
}

/* ëª¨ë°”???°ì¹˜)?�ì„œ tap highlight ?œê±° */
@media (pointer: coarse) {
  /* SVG ?´ë? ?„ì—­?¼ë¡œ ?¬ëª… tap highlight */
  .chart-circle svg, 
  .chart-circle svg * {
    -webkit-tap-highlight-color: transparent; /* iOS Safari */
  }

  /* ?°ì¹˜ ?˜ê²½?�ì„  ?¬ì�¸???´ë¦­?¼ë¡œ ?�ê¸°???¬ì»¤??ë§??¨ê? */
  .chart-circle .planet-hit:focus,
  .chart-circle .house-hit:focus {
    outline: none;
    outline-color: transparent;        /* ?¼ë? WebKit?�ì„œ ë³´ê°• */
  }

  /* iOS??ê°•ì œ focus ring ë³´ê°• */
  .chart-circle .planet-hit:focus,
  .chart-circle .house-hit:focus {
    -webkit-focus-ring-color: rgba(0,0,0,0);
  }
}

/* ?°ìŠ¤?¬í†± ?‘ê·¼??ë³´ì¡´: ?¤ë³´???�ìƒ‰ ?œì—�ë§??¬ì»¤??ë§??œì‹œ (?�í•œ?¤ë©´ ?°ë¡œ ì»¤ìŠ¤?€) */
@media (pointer: fine) {
  .chart-circle .planet-hit:focus { outline: none; }
  .chart-circle .house-hit:focus  { outline: none; }
  .chart-circle .planet-hit:focus-visible,
  .chart-circle .house-hit:focus-visible {
    outline: 2px solid rgba(127, 170, 255, 0.6);   /* ?„ìš” ???�í•˜???¬ì»¤???¤í???*/
    outline-offset: 2px;
  }
}

/* ë¹„ê°•ì¡?ë¹„ê??? ? ìŠ¤?™íŠ¸: ??<line>)ê³?ì¤‘ì•™ ?„ì�´ì½?<g>) ëª¨ë‘� ?€??*/
.aspect-line.disabled,
.aspect-icon.disabled {
  opacity: 0.2;                 /* ?”ì†Œ ?„ì²´ ë¶ˆíˆ¬ëª…ë�„ ????stroke/fill ?™ì‹œ???�ë¦¼ */
  stroke-opacity: 0.2 !important;/* (ë³´ê°•) inline style??stroke-opacity??ê°•ì œë¡???*/
}

dialog.place-dlg { border: 1px solid var(--border); border-radius: 12px; padding: 0; background: var(--card); color: var(--text); width: min(360px, 92vw); }
.place-box { padding: 10px; }
.place-head { display:flex; gap:8px; align-items:center; }
.place-head input { flex:1; padding:8px; border:1px solid var(--border); border-radius:8px; background: var(--bg); color: var(--text); }
.place-list { max-height: 50vh; overflow: auto; margin-top: 8px; }
.place-item { padding: 8px 10px; border-bottom: 1px dashed var(--border); cursor: pointer; }
.place-item:hover { background: rgba(127,127,127,0.10); }
.place-dlg .hint { font-size: 12px; color: var(--muted); margin: 8px 10px 12px; }
.place-list .nores { padding: 12px; color: var(--muted); }

/* Place search modal layout:
   country search on top, city search below, close button right-center. */
#placeDlg .place-head.place-head-search {
  position: relative;
  align-items: flex-start;
  padding-right: 40px;
}
#placeDlg .place-input-stack {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#placeDlg .place-input {
  width: 100%;
  box-sizing: border-box;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  color: var(--text);
}
#placeDlg .place-country-list {
  margin-top: 0;
  max-height: 140px;
}
#placeDlg #placeClose {
  position: absolute;
  right: 8px;
  top: 10px;
  transform: none;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.return-btn:hover { background: var(--button); transition: background .2s ease; }
.return-bar .icon-svg svg { width: 28px; height: 28px; display: block; }

/* ë¦¬í„´ ëª¨ë‹¬: ?´ìš© ??—� ??ë§žê²Œ */
#solarDlg, #lunarDlg, #mercuryDlg, #venusDlg, #marsDlg, #jupiterDlg, #saturnDlg {
  width: fit-content;    /* ?´ìš©ë§Œí�¼ë§?*/
  max-width: none;       /* ?�ìœ„ ê³ ì •??ë¬´ë ¥??*/
  padding: 0;
}

/* ë¦¬í„´ ëª¨ë‹¬???´ìš© ??—� ë§žê²Œ */
#solarDlg .place-box,
#lunarDlg .place-box,
#mercuryDlg .place-box,
#venusDlg .place-box,
#marsDlg .place-box,
#jupiterDlg .place-box,
#saturnDlg .place-box {
  display: inline-block;
  width: auto;
  max-width: none;
  padding: 8px 10px;
}

/* ë£¨ë‚˜ ? ì§œ ëª©ë¡�: ë¹?ë¦¬ìŠ¤??ë§ˆì»¤ ?¨ê¸°ê¸?*/
#lunarDlg .date-list,
#mercuryDlg .date-list,
#venusDlg .date-list,
#marsDlg .date-list,
#jupiterDlg .date-list,
#saturnDlg .date-list {
  list-style: none;  /* ë¶ˆë¦¿ ?œê±° */
  padding: 0;
  margin: 0;
}

/* ?„ë¬´ ? ì§œ???†ìœ¼ë©??„ì „???¨ê? */
#lunarDlg .date-list:empty,
#mercuryDlg .date-list:empty,
#venusDlg .date-list:empty,
#marsDlg .date-list:empty,
#jupiterDlg .date-list:empty,
#saturnDlg .date-list:empty {
  display: none;
}

#placeClose, #solarClose, #lunarClose, #mercuryClose, #venusClose, #marsClose, #jupiterClose, #saturnClose, #settingsClose, #shareClose {
  border: none; background: transparent; font-size: 20px; line-height: 1; cursor: pointer; color: var(--muted);
}

/* [PATCH] ?¤ì • ëª¨ë‹¬ ?°ìƒ�??X ê³ ì • */
.settings-dlg .place-head { position: relative; }
#settingsClose {
  position: absolute;
  top: 0px;
  right: 0px;
  line-height: 1;
}

/* Return ?Œì�´ë¸??‰ì„± ?„ì�´ì½?ê°„ê²© */
.table-return .return-icons{
  display:flex;
  gap:12px;                /* ???¬ê¸° ?«ìž�ë§?ë°”ê¿” ê°„ê²© ì¡°ì ˆ */
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}
@media (max-width: 420px){
  .table-return .return-icons{ gap:10px; } /* ëª¨ë°”?¼ì—�?????€?´íŠ¸?˜ê²Œ */
}

/* (NEW) Fixed Stars, Lots ?„ì�´ì½?ê¸€ë¦¬í”„ ?¤ì??¼ì�„ Dignities?€ ?µì�¼ */
.table-fstars .icon-svg{
  /* Dignities?€ ?™ì�¼ ë³€???¬ìš©(ê¸°ë³¸ 14px) */
  width:  var(--dig-size, 14px);
  height: var(--dig-size, 14px);
  transform:translateY(-1px);
}

.table-lots .icon-svg{
  /* Dignities?€ ?™ì�¼ ë³€???¬ìš©(ê¸°ë³¸ 14px) */
  width:  var(--dig-size, 14px);
  height: var(--dig-size, 14px);
  transform:translateY(-1px);
}

/* ---- ëª¨ë°”???�ë�™ ?¤ì�´?´íŠ¸ ---- */
@media (max-width: 720px){
  .tables-row .card{ max-width:100%; overflow-x:auto; }
  .table-dig.compact, .table-sect.compact{ font-size: 12px; }
  .table-fird.compact, .table-zr.compact, .table-speed.compact, .table-fs.compact, .table-lots.compact{ font-size: 11px; }
  .table-dig.compact caption, .table-sect.compact caption, .table-fird.compact caption, .table-zr.compact caption, .table-speed.compact caption, .table-fs.compact caption, .table-lots.compact caption{ font-size: 13px; }
  .table-dig.compact th, .table-dig.compact td,
  .table-sect.compact th, .table-sect.compact td,
  .table-fird.compact th, .table-fird.compact td,
  .table-zr.compact th, .table-zr.compact td,
  .table-speed.compact th, .table-speed.compact td,
  .table-fs.compact th, .table-fs.compact td,
  .table-lots.compact th, .table-lots.compact td,
  .table-return.compact th, .table-return.compact td{
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .table-fird.compact colgroup col,
  .table-zr.compact   colgroup col,
  .table-fird.compact, .table-zr.compact, .table-speed.compact, .table-fs.compact, .table-lots.compact, .table-return.compact{ min-width:0; }
}

/* Site Footer */
.site-footer {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
  text-align: center;
  font-size: 12px;
  color: var(--muted);
}

.site-footer p {
  margin: 0;
  line-height: 1.6;
}

.site-footer a {
  color: var(--text);
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.site-footer a:hover {
  opacity: 0.7;
  text-decoration: underline;
}

.footer-separator {
  margin: 0 8px;
  opacity: 0.5;
}

/* ëª¨ë°”???€??*/
@media (max-width: 720px) {
  .site-footer {
    margin-top: 20px;
    padding-top: 16px;
    font-size: 11px;
  }

  .footer-separator {
    margin: 0 6px;
  }
}



