@font-face{font-family:HamburgSymbols;src:url('fonts/HamburgSymbols.ttf') format('truetype'),url('HamburgSymbols.ttf') format('truetype');font-display:swap}
:root{--green:#014712;--gold:#BE9843;--pale:#f7f9f6;--line:#c9d5ca;--ink:#111}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:#fff;color:var(--ink);font-family:Arial,"Segoe UI",sans-serif}button,input,select{font:inherit;border-radius:0}.app{width:100%;max-width:1700px;margin:0 auto;padding:0 10px 18px}.titlebar{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--green);color:var(--gold);border:2px solid var(--gold);font-size:25px;font-weight:800;padding:9px 12px;margin:0 0 10px}.sunmark{font-size:31px;line-height:1}.hamburg{font-family:HamburgSymbols,serif;font-weight:bold}.topgrid{display:grid;grid-template-columns:minmax(310px,1.25fr) minmax(280px,.85fr) minmax(300px,.9fr);gap:10px;align-items:start}.box{border:2px solid var(--green);padding:10px;margin:0;min-width:0;background:#fff}.box legend,.sidepanel legend{font-weight:800;color:var(--green);padding:0 5px}.planetbox{grid-row:span 2}.locationbox{grid-column:2 / span 2}.select-tools,.range-tools{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.smallbtn,.sidebtn,.searchbtn,.cancelbtn,.linkbtn{border:1px solid var(--green);background:var(--green);color:#fff;font-weight:700;padding:7px 10px;cursor:pointer;text-align:center;text-decoration:none}.smallbtn:hover,.smallbtn:focus,.sidebtn:hover,.sidebtn:focus,.searchbtn:hover,.searchbtn:focus,.cancelbtn:hover,.cancelbtn:focus,.linkbtn:hover,.linkbtn:focus{background:var(--gold);border-color:var(--gold);outline:2px solid var(--green);outline-offset:1px}.smallbtn.gold{background:var(--gold);border-color:var(--gold)}.body-group{border-top:1px solid #d7e0d7;padding:5px 0}.body-group:first-child{border-top:0}.body-group summary{font-weight:800;color:var(--green);cursor:pointer;padding:3px 0}.checkgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;padding:5px 0}.checkgrid label{display:flex;align-items:center;gap:5px;min-width:0}.bodyglyph{color:var(--gold);font-size:1.35em;min-width:19px;text-align:center}.stacked{display:flex;flex-direction:column;gap:4px;font-weight:700;margin-bottom:8px}.stacked input,.stacked select,.twocol input,.threecol input,.twochoices select,.filter-label input,.sidepanel select{width:100%;border:1px solid var(--green);padding:6px;background:#fff;color:#111}.custom-orb{display:flex;gap:10px;margin:4px 0 8px}.custom-orb label{display:flex;flex-direction:column;gap:3px;font-weight:700}.custom-orb input{width:100px;border:1px solid var(--green);padding:6px}.definition-note,.hint{font-size:12px;line-height:1.35;color:#444;margin:7px 0}.inline{display:flex;gap:5px;align-items:flex-start;font-size:13px}.twocol,.threecol{display:grid;gap:8px}.twocol{grid-template-columns:1fr 1fr}.threecol{grid-template-columns:1fr 1fr 1.25fr}.twocol label,.threecol label{display:flex;flex-direction:column;gap:3px;font-weight:700}.twochoices{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:9px}.twochoices label{display:flex;align-items:center;gap:5px;font-weight:700}.progressbox{border:2px solid var(--gold);background:#fffdf8;margin:10px 0;padding:8px}.progress-head{display:flex;justify-content:space-between;gap:10px;color:var(--green);font-weight:800}.progressOuter{height:18px;border:1px solid var(--green);margin:6px 0;background:#fff;overflow:hidden}.progressInner{height:100%;background:var(--green);transition:width .2s ease}.progressDetail{font-size:12px;color:#444}.workarea{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;margin-top:10px;align-items:start}.results-panel{min-width:0}.criteria{border:2px solid var(--green);padding:8px 10px;margin-bottom:8px;font-size:13px;line-height:1.35;background:#fff}.table-tools{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:5px 0}.filter-label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700;min-width:min(420px,70%)}.result-count{font-weight:800;color:var(--green);white-space:nowrap}.tablewrap{width:100%;overflow:auto;border:1px solid var(--green);max-height:70vh}.cazimi-table{width:100%;min-width:1320px;border-collapse:collapse;font-size:13px}.cazimi-table th{position:sticky;top:0;z-index:4;background:var(--green);color:var(--gold);border:2px solid var(--gold);text-align:center;vertical-align:middle;padding:7px 6px;cursor:pointer}.cazimi-table td{border:1px solid var(--green);padding:6px;text-align:center;vertical-align:middle;background:#fff}.cazimi-table tbody tr:nth-child(even) td{background:var(--pale)}.cazimi-table.boldtext td{font-weight:700}.planetcell{white-space:nowrap}.planetcell .bodyglyph{margin-right:4px}.poscell{white-space:nowrap}.poscell .zglyph{font-size:1.35em;margin:0 2px}.usecolors .sign-fire{color:#E31B23}.usecolors .sign-earth{color:#008C45}.usecolors .sign-air{color:#D68B00}.usecolors .sign-water{color:#3366CC}.motion-r{color:#b10000!important}.motion-s{color:#6e1b9d!important}.exactsep{font-variant-numeric:tabular-nums}.empty-row td{padding:24px!important;color:#555!important;font-weight:normal!important}.sidepanel{border:2px solid var(--green);padding:8px;display:flex;flex-direction:column;gap:8px;position:sticky;top:6px}.searchbtn{font-size:18px;padding:10px;background:var(--gold);border-color:var(--gold)}.cancelbtn{background:#8d1616;border-color:#8d1616}.sidepanel>label{font-weight:800;color:var(--green);display:flex;flex-direction:column;gap:4px}.sidepanel fieldset{border:1px solid var(--green);padding:7px;display:flex;flex-direction:column;gap:6px;margin:0}.sidepanel fieldset label{display:flex;gap:5px;align-items:center;font-size:13px}.sidebtn,.linkbtn{display:block;width:100%;padding:7px}.statusline{margin-top:9px;border-top:2px solid var(--gold);padding-top:7px;font-size:12px;color:#444}.hidden-by-filter{display:none}.error{color:#a00000;font-weight:800}
@media(max-width:1100px){.topgrid{grid-template-columns:1fr 1fr}.planetbox{grid-row:auto}.locationbox{grid-column:1 / -1}.workarea{grid-template-columns:1fr}.sidepanel{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.sidepanel fieldset{height:100%}.searchbtn,.cancelbtn{height:44px}.tablewrap{max-height:none}}
@media(max-width:700px){.app{padding:0 5px 12px}.titlebar{font-size:19px}.topgrid{grid-template-columns:1fr}.locationbox{grid-column:auto}.checkgrid{grid-template-columns:1fr 1fr}.threecol{grid-template-columns:1fr}.workarea{display:block}.sidepanel{margin-top:10px;display:flex}.tablewrap{max-height:72vh}.cazimi-table{font-size:11px;min-width:1180px}.cazimi-table th,.cazimi-table td{padding:5px 4px}.table-tools{align-items:stretch;flex-direction:column}.filter-label{min-width:0;width:100%}.result-count{text-align:right}}
@media print{.topgrid,.sidepanel,.table-tools,.progressbox,.statusline{display:none!important}.app{max-width:none;padding:0}.titlebar{font-size:20px}.criteria{font-size:11px}.tablewrap{overflow:visible;border:0;max-height:none}.cazimi-table{min-width:0;font-size:8px}.cazimi-table th,.cazimi-table td{padding:3px 2px}.cazimi-table th{position:static}.hidden-by-filter{display:none!important}}

/* Phase 2: local atlas lookup + Eclipse-Finder-style chart panels */
.atlas-lookup{position:relative;margin-bottom:8px}.atlas-search-label{margin-bottom:3px}.lookup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}.lookup-row input{min-width:0}.lookup-row .smallbtn{white-space:nowrap}.lookup-status{font-size:12px;line-height:1.3;color:#444;margin:3px 0 5px}.lookup-status.error{color:#a00000;font-weight:800}.lookup-results{position:absolute;z-index:40;left:0;right:0;top:61px;max-height:330px;overflow:auto;border:2px solid var(--green);background:#fff;box-shadow:0 5px 14px rgba(0,0,0,.22)}.lookup-result{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border:0;border-bottom:1px solid var(--line);background:#fff;color:#111;text-align:left;cursor:pointer}.lookup-result:last-child{border-bottom:0}.lookup-result:hover,.lookup-result:focus{background:#fff8dc;outline:2px solid var(--gold);outline-offset:-2px}.lookup-result strong{color:var(--green);font-size:13px}.lookup-result span{font-size:11px;color:#444}.fourcol{display:grid;grid-template-columns:1fr 1fr 1.35fr .7fr;gap:8px}.fourcol label{display:flex;flex-direction:column;gap:3px;font-weight:700}.fourcol input{width:100%;border:1px solid var(--green);padding:6px;background:#fff;color:#111}.fourcol input[readonly]{background:#f3f3f3;color:#444}.lookup-note{font-size:12px;color:#555;font-weight:normal}

.cazimi-table{min-width:1420px}.chart-head{cursor:default!important}.view-chart-btn,.chart-close-btn,.enlarge-chart-btn,.chart-actions a{appearance:none;border:1px solid var(--green);border-radius:0;background:var(--green);color:#fff;font-weight:800;font-size:12px;line-height:1.15;padding:6px 8px;text-decoration:none;cursor:pointer;white-space:nowrap}.view-chart-btn:hover,.view-chart-btn:focus,.chart-close-btn:hover,.chart-close-btn:focus,.enlarge-chart-btn:hover,.enlarge-chart-btn:focus,.chart-actions a:hover,.chart-actions a:focus{background:var(--gold);border-color:var(--gold);outline:2px solid var(--green);outline-offset:1px}.chart-source-row td{border-bottom-color:var(--gold)!important}.chart-detail-row td{padding:0!important;background:#fff!important;text-align:left!important;border:2px solid var(--gold)!important;font-weight:normal!important}.chart-panel-inner{padding:10px;background:#fff}.chart-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.chart-panel-title{font-size:18px;font-weight:900;color:var(--green)}.chart-panel-subtitle{font-size:12px;color:#555;margin-top:2px}.chart-loading,.chart-error,.chart-warning{padding:12px;border:1px solid var(--gold);font-weight:700}.chart-loading{color:var(--green);background:#fffdf8}.chart-error{color:#a00000;background:#fff}.chart-warning{margin-bottom:8px;color:#6b4c00;background:#fff8dc}.chart-pair-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;align-items:start}.chart-card{min-width:0;border:1px solid var(--green);background:#fff}.chart-card h3{margin:0;padding:7px 10px;text-align:center;background:var(--green);color:var(--gold);border-bottom:2px solid var(--gold);font-size:15px}.chart-img{display:block;width:100%;height:auto;max-height:780px;object-fit:contain;margin:0 auto;cursor:zoom-in;background:#fff}.chart-img:focus{outline:3px solid var(--gold)}.chart-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;padding:8px;border-top:1px solid var(--line)}

.viewer-open{overflow:hidden!important}.chart-viewer[hidden]{display:none!important}.chart-viewer{position:fixed;inset:0;z-index:2147483647;display:grid;grid-template-rows:auto minmax(0,1fr);width:100vw;height:100vh;height:100dvh;background:rgba(0,0,0,.94);color:#fff}.chart-viewer-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:48px;padding:6px;background:var(--green);border-bottom:3px solid var(--gold)}.chart-viewer-toolbar button,.chart-viewer-toolbar a,.chart-viewer-toolbar span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border:1px solid var(--gold);border-radius:0;background:#fff;color:var(--green);font:700 13px/1 Arial,sans-serif;text-decoration:none}.chart-viewer-toolbar button,.chart-viewer-toolbar a{cursor:pointer}.chart-viewer-toolbar button:hover,.chart-viewer-toolbar button:focus,.chart-viewer-toolbar a:hover,.chart-viewer-toolbar a:focus{background:var(--gold);color:#fff;outline:2px solid #fff;outline-offset:1px}.chart-viewer-toolbar .viewer-close{margin-left:auto;font-size:22px}.chart-viewer-stage{min-width:0;min-height:0;overflow:auto;padding:16px;background:#202020;text-align:center;-webkit-overflow-scrolling:touch}.chart-viewer-stage img{display:block;max-width:none;max-height:none;height:auto;margin:0 auto;background:#fff;box-shadow:0 0 0 1px #555;cursor:zoom-out}

@media(max-width:1100px){.fourcol{grid-template-columns:1fr 1fr}.chart-pair-grid{grid-template-columns:1fr}.chart-img{max-height:none}}
@media(max-width:700px){.lookup-results{position:static;max-height:280px}.fourcol{grid-template-columns:1fr}.cazimi-table{min-width:1280px}.chart-panel-head{align-items:flex-start;flex-direction:column}.chart-close-btn{align-self:flex-end}.chart-viewer-toolbar{justify-content:flex-start}.chart-viewer-toolbar .viewer-close{margin-left:0}.chart-viewer-stage{padding:8px}}
@media print{.view-chart-btn,.chart-close-btn,.chart-actions,.chart-viewer,.lookup-results{display:none!important}.chart-detail-row{display:none!important}}

/* =========================================================
   PHASE 3 - chart controls, table gestures and responsive charts
   ========================================================= */
html.modal-open,html.viewer-open{overflow:hidden!important}
.motion-cell{display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
.motion-glyph{font-size:1.45em;line-height:1;color:var(--green)}
.motion-r .motion-glyph{color:#b10000}.motion-s .motion-glyph{color:#6e1b9d}

.tablewrap{cursor:grab;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.tablewrap.drag-scrolling{cursor:grabbing;user-select:none}
.cazimi-table th{position:sticky;user-select:none;white-space:nowrap}
.cazimi-table th[data-col]{min-width:54px}
.col-resizer{position:absolute;right:-4px;top:0;width:9px;height:100%;z-index:8;cursor:col-resize;touch-action:none}
.col-resizer:after{content:"";position:absolute;right:3px;top:18%;width:1px;height:64%;background:var(--gold);opacity:.85}
body.resizing-column{cursor:col-resize!important;user-select:none!important}
.cazimi-table th.column-dragging{opacity:.55}
.cazimi-table th.column-drop-target{box-shadow:inset 4px 0 0 #fff,inset 7px 0 0 var(--gold)}

.chart-panel-inner{position:sticky;left:0;box-sizing:border-box;min-width:280px;max-width:100%;overflow:hidden}
.chart-panel-buttons{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
.chart-panel-options-btn{appearance:none;border:1px solid var(--gold);border-radius:0;background:#fff;color:var(--green);font-weight:800;font-size:12px;padding:6px 8px;cursor:pointer}
.chart-panel-options-btn:hover,.chart-panel-options-btn:focus{background:var(--gold);color:#fff;outline:2px solid var(--green);outline-offset:1px}
.chart-pair-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:100%;overflow:hidden}
.chart-card{display:flex;flex-direction:column;min-width:0;max-width:100%;overflow:hidden}
.chart-image-box{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:clamp(260px,46vw,720px);overflow:hidden;padding:6px;background:#fff}
.chart-img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;flex:0 1 auto}

.chart-options-launch{font-size:13px}
.chart-options-modal[hidden]{display:none!important}
.chart-options-modal{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(0,0,0,.72)}
.chart-options-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1820px,98vw);height:min(940px,96vh);height:min(940px,96dvh);border:3px solid var(--gold);background:#fff;box-shadow:0 8px 40px rgba(0,0,0,.42)}
.chart-options-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;background:var(--green);color:#fff;border-bottom:3px solid var(--gold)}
.chart-options-header>div{display:flex;flex-direction:column;gap:2px}.chart-options-header strong{font-size:19px}.chart-options-header span{font-size:12px;color:#fff}
.modal-x{appearance:none;width:36px;height:34px;border:1px solid var(--gold);border-radius:0;background:#fff;color:var(--green);font-size:24px;font-weight:900;cursor:pointer}
.modal-x:hover,.modal-x:focus{background:var(--gold);color:#fff;outline:2px solid #fff}
.chart-options-body{overflow:auto;padding:10px 12px;-webkit-overflow-scrolling:touch}
.chart-options-body h3{margin:10px 0 7px;padding:5px 7px;background:var(--green);color:var(--gold);border:1px solid var(--gold);font-size:15px}
.chart-house-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.chart-house-row label{display:flex;flex-direction:column;gap:3px;font-weight:800;color:var(--green)}
.chart-house-row select{min-width:230px;border:1px solid var(--green);padding:6px;background:#fff}
.modal-hint{font-size:11px;line-height:1.35;color:#555}
.modal-select-tools{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 8px}.chart-point-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:stretch}
.chart-point-group{min-width:0;margin:0;border:1px solid #aab7aa;padding:6px;background:#fff}.chart-point-group legend{color:var(--green);font-weight:900;padding:0 4px}
.chart-point-option,.angle-aspect-grid label,.aspect-option{display:flex;align-items:center;gap:5px;min-width:0;padding:2px 1px;font-size:12px}
.modal-glyph{display:inline-flex;align-items:center;justify-content:center;min-width:22px;color:var(--gold);font-size:1.4em;line-height:1}
.aspect-master-box{border:1px solid var(--gold);background:#fff9e7;padding:7px;margin-bottom:7px}.strong-option{display:flex;align-items:center;gap:6px;font-weight:800;color:#111;font-size:12px}
.angle-aspect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px 10px;margin:5px 8px}
.show-aspect-glyphs{margin:8px 0}
.aspect-orb-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid var(--gold);margin-top:8px;padding:8px 8px 2px}.aspect-orb-row>label:not(.strong-option){display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:var(--green)}.aspect-orb-row input[type=number]{width:90px;border:1px solid #999;padding:4px;background:#fff}.node-hint{margin:2px 0 0 20px}.aspect-options-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px 12px}
.aspect-modal-glyph{display:inline-flex;align-items:center;justify-content:center;min-width:22px;font-size:1.45em}
.chart-options-footer{display:flex;align-items:center;gap:7px;padding:8px 10px;border-top:2px solid var(--gold);background:#f7f7f7}.modal-spacer{flex:1}

@media(max-width:1400px){
  .chart-point-groups{grid-template-columns:repeat(3,minmax(0,1fr))}
  .aspect-options-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:1100px){
  .chart-point-groups{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aspect-options-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .chart-pair-grid{grid-template-columns:1fr}
  .chart-image-box{height:min(68vh,680px)}
}
@media(max-width:700px){
  .chart-point-groups{grid-template-columns:1fr}
  .angle-aspect-grid,.aspect-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chart-options-modal{padding:4px}.chart-options-dialog{width:99vw;height:98vh;height:98dvh}
  .chart-options-footer{flex-wrap:wrap}.modal-spacer{display:none}.chart-options-footer .smallbtn{flex:1 1 45%}
  .chart-panel-buttons{width:100%;justify-content:space-between}
  .chart-image-box{height:min(66vh,560px)}
}
@media(max-width:430px){.angle-aspect-grid,.aspect-options-grid{grid-template-columns:1fr}}
@media print{.chart-options-modal,.chart-panel-options-btn{display:none!important}}


/* =========================================================
   PHASE 8 - print color preservation
   ========================================================= */
@page{size:landscape;margin:.25in}
@media print{
  html,body,.app,.results-panel,.tablewrap,.cazimi-table,.cazimi-table th,.cazimi-table td,
  .criteria,.titlebar,.hamburg,.zglyph,.motion-cell,.motion-glyph{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
    color-adjust:exact!important;
  }
  html,body{background:#fff!important;color:#111!important}
  .titlebar{background:#014712!important;color:#BE9843!important;border-color:#BE9843!important}
  .criteria{background:#fff!important;color:#111!important;border:2px solid #014712!important}
  .cazimi-table th{background:#014712!important;color:#BE9843!important;border:2px solid #BE9843!important}
  .cazimi-table td{color:#111!important;border-color:#014712!important;background:#fff!important}
  .cazimi-table tbody tr:nth-child(even) td{background:#f7f9f6!important}
  .cazimi-table.usecolors .sign-fire{color:#E31B23!important}
  .cazimi-table.usecolors .sign-earth{color:#008C45!important}
  .cazimi-table.usecolors .sign-air{color:#D68B00!important}
  .cazimi-table.usecolors .sign-water{color:#3366CC!important}
  .motion-r,.motion-r .motion-glyph{color:#b10000!important}
  .motion-s,.motion-s .motion-glyph{color:#6e1b9d!important}
  .motion-cell .motion-glyph{font-family:HamburgSymbols,serif!important}
}

/* =========================================================
   PHASE 9 - chart click/zoom behavior + print Chart omission
   ========================================================= */
.chart-img{cursor:zoom-in!important;user-select:none;-webkit-user-drag:none}
.chart-viewer-stage img{cursor:zoom-in!important;user-select:none;-webkit-user-drag:none}
.chart-viewer-stage img.zoom-max{cursor:zoom-out!important}
@media print{
  .cazimi-table th[data-col="chart"],
  .cazimi-table td[data-col="chart"]{display:none!important}
}


/* =========================================================
   PHASE 10 - report glyph style + clean printing
   ========================================================= */
.cazimi-table{--report-glyph-color:#BE9843;--report-glyph-size:18px}
.cazimi-table .bodyglyph{color:var(--report-glyph-color);font-size:var(--report-glyph-size);line-height:1}
.cazimi-table .zglyph{font-size:var(--report-glyph-size);line-height:1}
.cazimi-table .motion-glyph{font-size:var(--report-glyph-size);line-height:1;color:var(--report-glyph-color)}
.cazimi-table .motion-r .motion-glyph{color:#b10000}
.cazimi-table .motion-s .motion-glyph{color:#6e1b9d}
.report-style-value{display:flex!important;align-items:center!important;justify-content:space-between;gap:7px}
.report-style-value input[type=color]{width:54px;height:28px;padding:1px;border:1px solid var(--green);background:#fff}
.report-style-number{display:inline-flex;align-items:center;gap:4px}
.report-style-number input[type=number]{width:62px;padding:4px;border:1px solid var(--green)}
@media print{
  .col-resizer{display:none!important}
  .cazimi-table thead,.cazimi-table tbody,.cazimi-table tr,.cazimi-table th,.cazimi-table td{position:static!important;transform:none!important}
}


/* =========================================================
   PHASE 11 - unified color toggle + position emphasis
   ========================================================= */
.cazimi-table .poscell,.cazimi-table .position-value{font-weight:800}
.cazimi-table.boldtext .poscell,.cazimi-table.boldtext .position-value{font-weight:900}
.cazimi-table.usecolors .poscell .sign-fire,.cazimi-table.usecolors .poscell.sign-fire,.cazimi-table.usecolors .position-value.sign-fire{color:#E31B23}
.cazimi-table.usecolors .poscell .sign-earth,.cazimi-table.usecolors .poscell.sign-earth,.cazimi-table.usecolors .position-value.sign-earth{color:#008C45}
.cazimi-table.usecolors .poscell .sign-air,.cazimi-table.usecolors .poscell.sign-air,.cazimi-table.usecolors .position-value.sign-air{color:#D68B00}
.cazimi-table.usecolors .poscell .sign-water,.cazimi-table.usecolors .poscell.sign-water,.cazimi-table.usecolors .position-value.sign-water{color:#3366CC}
.cazimi-table.usecolors .motion-r,.cazimi-table.usecolors .motion-r .motion-glyph{color:#b10000!important}
.cazimi-table.usecolors .motion-d,.cazimi-table.usecolors .motion-d .motion-glyph{color:#008C45!important}
.cazimi-table.usecolors .motion-s,.cazimi-table.usecolors .motion-s .motion-glyph{color:#6e1b9d!important}
.cazimi-table:not(.usecolors) td:not([data-col="chart"]) .bodyglyph,
.cazimi-table:not(.usecolors) td:not([data-col="chart"]) .zglyph,
.cazimi-table:not(.usecolors) td:not([data-col="chart"]) .motion-cell,
.cazimi-table:not(.usecolors) td:not([data-col="chart"]) .motion-glyph,
.cazimi-table:not(.usecolors) td:not([data-col="chart"]) .position-value{color:#111!important}


/* =========================================================
   PHASE 12 - connector control, complete Swiss house/sidereal UI
   ========================================================= */
.chart-connector-option{margin-left:2px;align-self:center}
#siderealModeWrap select{min-width:250px}
.aspect-option .aspect-modal-glyph{font-weight:bold}


/* =========================================================
   PHASE 13 - declump control, hidden display dialog, strict sidereal visibility
   ========================================================= */
#siderealModeWrap[hidden]{display:none!important}
.chart-declump-option{display:flex!important;flex-direction:column;gap:3px;font-weight:800;color:var(--green)}
.declump-input{display:inline-flex;align-items:center;gap:4px;color:#111;font-weight:700}
.declump-input input{width:82px;border:1px solid var(--green);padding:6px;background:#fff;color:#111}
.display-options-modal[hidden]{display:none!important}
.display-options-modal{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(0,0,0,.72)}
.display-options-dialog{display:grid;grid-template-rows:auto auto auto;width:min(520px,96vw);border:3px solid var(--gold);background:#fff;box-shadow:0 8px 40px rgba(0,0,0,.42)}
.display-options-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px}
.display-options-body>label{display:flex;flex-direction:column;gap:6px;color:var(--green);font-weight:800}
.display-options-body input[type=color]{width:100%;height:40px;border:1px solid var(--green);padding:2px;background:#fff}
.display-options-body input[type=number]{width:90px;border:1px solid var(--green);padding:6px;background:#fff;color:#111}
.display-options-body .modal-hint{grid-column:1/-1}
.display-options-footer{display:flex;align-items:center;gap:7px;padding:8px 10px;border-top:2px solid var(--gold);background:#f7f7f7}
@media(max-width:520px){.display-options-body{grid-template-columns:1fr}}
@media print{.display-options-modal{display:none!important}}


/* Phase 14 — line-house-number background + Swiss asteroid lookup */
.line-house-number-bg-options{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.line-house-number-bg-options input[type="color"]{width:48px;height:28px;padding:1px;border:1px solid #BE9843;background:#fff}
.asteroid-lookup-box{margin-top:14px;border:1px solid #014712;padding:10px;background:#fff}
.asteroid-lookup-box legend{font-weight:700;color:#014712;padding:0 5px}
.asteroid-search-row{display:flex;gap:8px;align-items:center;width:100%}
.asteroid-search-row input{flex:1;min-width:220px}
.asteroid-results{margin-top:7px;border:1px solid #BE9843;background:#fff;max-height:260px;overflow:auto}
.asteroid-result-item{display:block;width:100%;text-align:left;padding:7px 9px;border:0;border-bottom:1px solid #ddd;background:#fff;color:#014712;cursor:pointer}
.asteroid-result-item:hover,.asteroid-result-item:focus{background:#fff8dc;outline:1px solid #BE9843}
.asteroid-result-note{padding:8px;color:#154670}
.asteroid-selected{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.asteroid-chip{border:1px solid #014712;background:#fff;color:#014712;padding:4px 7px;font-weight:700;cursor:pointer}
.asteroid-chip span{color:#BE9843;font-weight:900}


/* Phase 15 custom asteroid glyph/font editor */
.asteroid-selected{display:flex;flex-direction:column;gap:7px;margin-top:8px}
.custom-asteroid-row{display:grid;grid-template-columns:minmax(170px,1.3fr) minmax(120px,.55fr) minmax(190px,.9fr) auto;gap:8px;align-items:end;border:1px solid #9eb3a3;padding:7px;background:#fff}
.custom-asteroid-row label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700}
.custom-asteroid-row input,.custom-asteroid-row select{width:100%;min-width:0}
.custom-asteroid-name{display:flex;flex-direction:column;gap:2px;align-self:center}.custom-asteroid-name span{font-size:11px;color:#555}
@media(max-width:850px){.custom-asteroid-row{grid-template-columns:1fr 1fr}.custom-asteroid-name{grid-column:1/-1}}


/* Phase 16 - fresh, clickable TrueType glyph reference */
.custom-asteroid-row{grid-template-columns:minmax(145px,1.15fr) minmax(105px,.52fr) minmax(165px,.85fr) auto auto}
.custom-asteroid-lookup,.custom-asteroid-remove{min-height:34px;white-space:nowrap}
.glyph-lookup-modal[hidden]{display:none!important}
.glyph-lookup-modal{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(0,0,0,.79)}
.glyph-lookup-dialog{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;width:min(1320px,97vw);height:min(900px,95vh);height:min(900px,95dvh);overflow:hidden;border:3px solid #BE9843;background:#fff;box-shadow:0 12px 45px rgba(0,0,0,.48)}
.glyph-lookup-header{min-width:0}.glyph-lookup-header>div{min-width:0}.glyph-lookup-header span{overflow:hidden;text-overflow:ellipsis}
.glyph-lookup-toolbar{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(220px,1.1fr) minmax(160px,.8fr) auto auto;gap:10px;align-items:end;padding:11px 12px;border-bottom:1px solid #BE9843;background:#fff}
.glyph-lookup-toolbar>label{display:flex;min-width:0;flex-direction:column;gap:4px;color:#014712;font-size:12px;font-weight:800}
.glyph-lookup-toolbar input[type=search],.glyph-lookup-toolbar select{width:100%;min-height:34px;border:1px solid #014712;padding:5px 7px;background:#fff;color:#111}
.glyph-size-control{display:flex;min-height:34px;align-items:center;gap:6px}.glyph-size-control input{min-width:55px;width:100%;accent-color:#014712}.glyph-size-control output{min-width:40px;color:#014712;font-size:11px;white-space:nowrap}
.glyph-lookup-toolbar>.glyph-lookup-checkbox{min-height:34px;flex-direction:row;align-items:center;gap:6px;white-space:nowrap}
.glyph-lookup-checkbox input{accent-color:#014712}.glyph-lookup-status{min-height:34px;padding:8px 12px;border-bottom:1px solid #e0e6df;color:#014712;font-size:12px;font-weight:700}
.glyph-lookup-status.is-error{color:#a00000}.glyph-lookup-status.is-loading{color:#735400}
.glyph-lookup-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));align-content:start;gap:9px;overflow:auto;padding:12px;background:#f7f9f6;--glyph-preview-size:54px;-webkit-overflow-scrolling:touch}
.glyph-reference-card{display:flex;min-width:0;min-height:158px;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;border:1px solid #a8baab;padding:7px 5px;background:#fff;color:#014712;text-align:center;cursor:pointer}
.glyph-reference-card:hover,.glyph-reference-card:focus-visible{border-color:#BE9843;background:#fffbee;outline:2px solid #BE9843;outline-offset:-2px}
.glyph-reference-card.is-selected{border:2px solid #BE9843;background:#fffbef}.glyph-reference-card:disabled{opacity:.68;cursor:not-allowed}
.glyph-reference-preview{display:flex;min-height:84px;max-width:100%;align-items:center;justify-content:center;overflow:hidden;color:#014712;font-size:var(--glyph-preview-size);line-height:1}
.glyph-reference-preview canvas{display:block;width:96px;height:82px}.glyph-reference-code{font-size:14px;font-weight:900}.glyph-reference-id,.glyph-reference-unicode,.glyph-reference-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#505b52;font-size:10px;white-space:nowrap}
.glyph-reference-name{color:#014712;font-size:12px;font-weight:900}.glyph-lookup-empty{grid-column:1/-1;padding:24px;border:1px solid #BE9843;background:#fff;color:#014712;text-align:center}
.glyph-lookup-footer{display:flex;min-height:49px;align-items:center;gap:12px;padding:7px 11px;border-top:2px solid #BE9843;background:#fff;color:#014712;font-size:12px;font-weight:700}.glyph-lookup-help{flex:1;color:#4d574d;font-weight:400}
@media(max-width:1120px){.custom-asteroid-row{grid-template-columns:1fr 1fr auto auto}.custom-asteroid-name{grid-column:1/-1}.glyph-lookup-toolbar{grid-template-columns:1fr 1fr}.glyph-lookup-toolbar>.glyph-lookup-checkbox{align-self:end}}
@media(max-width:680px){.custom-asteroid-row{grid-template-columns:1fr 1fr}.custom-asteroid-lookup,.custom-asteroid-remove{width:100%}.glyph-lookup-modal{padding:4px}.glyph-lookup-dialog{width:99vw;height:98vh;height:98dvh}.glyph-lookup-toolbar{grid-template-columns:1fr 1fr;gap:7px;padding:8px}.glyph-lookup-search-label{grid-column:1/-1}.glyph-lookup-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:7px;padding:8px}.glyph-lookup-help{display:none}}
@media print{.glyph-lookup-modal{display:none!important}}
