7020 lines
190 KiB
CSS
7020 lines
190 KiB
CSS
/* ============================================================
|
||
Jyotish App — Clean Minimal v4.1
|
||
Reference: fatetell.com — Light · Simple · Modern SaaS
|
||
============================================================ */
|
||
:root {
|
||
--bg-page: #e5e5e5;
|
||
--bg-card: #e9e9e9;
|
||
--bg-input: #ffffff;
|
||
--bg-surface: #f0f0f0;
|
||
--bg-white: #ffffff;
|
||
|
||
--text-heading: #2e2e2e;
|
||
--text-body: #4c4c4c;
|
||
--text-secondary: #6b6b6b;
|
||
--text-muted: #8c8c8c;
|
||
--text-on-dark: #ffffff;
|
||
|
||
--border-card: #c9c8c8;
|
||
--border-input: #d4d4d4;
|
||
--border-light: #e0e0e0;
|
||
|
||
--accent: #222222;
|
||
--accent-hover: #000000;
|
||
--accent-soft: rgba(34,34,34,0.06);
|
||
|
||
--purple: #6d28d9;
|
||
--purple-soft: rgba(109,40,217,0.08);
|
||
--green: #16a34a;
|
||
--red: #dc2626;
|
||
--amber: #d97706;
|
||
|
||
--font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
||
|
||
--radius-sm: 8px;
|
||
--radius-md: 14px;
|
||
--radius-lg: 20px;
|
||
|
||
--transition: all 0.2s ease;
|
||
}
|
||
|
||
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
||
html { font-size: 16px; scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
|
||
body { font-family: var(--font-body); background: var(--bg-page); color: var(--text-body); min-height: 100vh; overflow-x: hidden; line-height: 1.6; }
|
||
|
||
/* === OCEAN VIDEO BG === */
|
||
.ocean-bg {
|
||
position: fixed; top: 0; left: 0;
|
||
width: 100vw; height: 100vh;
|
||
object-fit: cover; opacity: 0.12;
|
||
z-index: 0; pointer-events: none;
|
||
}
|
||
#app { position: relative; z-index: 1; }
|
||
.stars-bg { display: none; }
|
||
|
||
/* === LAYOUT === */
|
||
.container { max-width: 1100px; margin: 0 auto; padding: 24px 20px 80px; }
|
||
.page { display: none; }
|
||
.page.active { display: block; animation: fadeIn 0.4s ease; }
|
||
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
|
||
|
||
/* === HEADER === */
|
||
.header { display: flex; align-items: center; justify-content: space-between; padding: 12px 0 32px; }
|
||
.logo { display: flex; align-items: center; gap: 10px; }
|
||
.logo-icon { font-size: 24px; }
|
||
.logo-avatar {
|
||
width: 28px;
|
||
height: 28px;
|
||
border-radius: 50%;
|
||
object-fit: cover;
|
||
object-position: 50% 28%;
|
||
border: 1px solid rgba(0,0,0,0.14);
|
||
background: #caa84a;
|
||
box-shadow: 0 1px 3px rgba(0,0,0,0.12);
|
||
}
|
||
.logo-text { font-size: 20px; font-weight: 700; color: var(--text-heading); letter-spacing: 1px; }
|
||
.tagline { display: none; }
|
||
|
||
/* === CARD === */
|
||
.card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 36px;
|
||
box-shadow: 0 1px 3px rgba(0,0,0,0.04);
|
||
}
|
||
.card::before, .card::after { display: none; }
|
||
.card-title { font-size: 18px; font-weight: 600; color: var(--text-heading); text-align: center; margin-bottom: 28px; letter-spacing: 0.5px; }
|
||
|
||
/* === FORM === */
|
||
.first-use-panel {
|
||
margin: -8px 0 20px;
|
||
padding: 14px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.first-use-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: baseline;
|
||
margin-bottom: 10px;
|
||
}
|
||
.first-use-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.first-use-head span {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
text-align: right;
|
||
}
|
||
.first-use-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.first-use-step {
|
||
width: 100%;
|
||
min-height: 112px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-body);
|
||
padding: 10px;
|
||
text-align: left;
|
||
font-family: var(--font-body);
|
||
cursor: pointer;
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 5px;
|
||
transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
|
||
}
|
||
.first-use-step:hover,
|
||
.first-use-step:focus-visible {
|
||
border-color: var(--purple);
|
||
box-shadow: 0 0 0 3px var(--purple-soft);
|
||
outline: none;
|
||
transform: translateY(-1px);
|
||
}
|
||
.first-use-kicker {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.first-use-step strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.first-use-step small {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.45;
|
||
}
|
||
.first-use-action {
|
||
font-weight: 600;
|
||
}
|
||
.first-use-status {
|
||
min-height: 18px;
|
||
margin-top: 10px;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.first-use-status[data-tone="ok"] { color: var(--green); }
|
||
.first-use-status[data-tone="warn"] { color: var(--amber); }
|
||
.first-use-status[data-tone="pending"] { color: var(--purple); }
|
||
.static-demo-boundary {
|
||
margin: 0 0 20px;
|
||
padding: 14px;
|
||
border: 1px solid var(--border-input);
|
||
border-left: 3px solid var(--blue);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.static-demo-boundary.static-demo-boundary-compact {
|
||
margin: 10px 0 0;
|
||
background: var(--bg-white);
|
||
}
|
||
.static-demo-boundary-head {
|
||
display: flex;
|
||
align-items: baseline;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
margin-bottom: 10px;
|
||
}
|
||
.static-demo-boundary-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.static-demo-boundary-head span {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
text-align: right;
|
||
}
|
||
.static-demo-boundary-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.static-demo-boundary-grid div {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
}
|
||
.static-demo-boundary-grid span {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.static-demo-boundary-grid p {
|
||
margin: 5px 0 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.45;
|
||
}
|
||
.chart-compute-status {
|
||
min-height: 18px;
|
||
margin-top: 10px;
|
||
padding: 10px 12px;
|
||
border-left: 3px solid var(--amber);
|
||
background: var(--bg-soft);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.chart-compute-status[data-tone="ok"] { border-left-color: var(--green); }
|
||
.chart-compute-status[data-tone="warn"] { border-left-color: var(--amber); }
|
||
.chart-compute-status[data-tone="error"] { border-left-color: var(--red); }
|
||
.form-row { display: flex; gap: 16px; margin-bottom: 16px; }
|
||
.form-group { flex: 1; display: flex; flex-direction: column; gap: 6px; }
|
||
.form-group label { font-size: 13px; color: var(--text-secondary); font-weight: 500; }
|
||
.form-group input, .form-group select {
|
||
background: var(--bg-input); border: 1px solid var(--border-input); border-radius: var(--radius-sm);
|
||
padding: 12px 14px; color: var(--text-heading); font-size: 16px; font-family: var(--font-body); outline: none;
|
||
transition: border-color 0.2s, box-shadow 0.2s; min-height: 44px;
|
||
-webkit-appearance: none;
|
||
}
|
||
.form-group input:focus, .form-group select:focus { border-color: var(--purple); box-shadow: 0 0 0 3px var(--purple-soft); }
|
||
.form-group input::placeholder { color: var(--text-muted); }
|
||
/* === DATE SELECTS (年/月/日 三下拉框) === */
|
||
.date-selects { display: flex; gap: 6px; }
|
||
.date-selects select {
|
||
flex: 1; background: var(--bg-input); border: 1px solid var(--border-input); border-radius: var(--radius-sm);
|
||
padding: 12px 8px; color: var(--text-heading); font-size: 16px; font-family: var(--font-body);
|
||
outline: none; transition: border-color 0.2s, box-shadow 0.2s; min-height: 44px;
|
||
-webkit-appearance: none; text-align: center; cursor: pointer;
|
||
}
|
||
.date-selects select:focus { border-color: var(--purple); box-shadow: 0 0 0 3px var(--purple-soft); }
|
||
.date-selects select:invalid { color: var(--text-muted); }
|
||
.city-input-wrap { position: relative; }
|
||
.suggestions {
|
||
position: absolute; top: 100%; left: 0; right: 0;
|
||
background: var(--bg-input); border: 1px solid var(--border-input); border-radius: var(--radius-sm);
|
||
max-height: 200px; overflow-y: auto; z-index: 100; box-shadow: 0 4px 12px rgba(0,0,0,0.08);
|
||
}
|
||
.suggestions.hidden { display: none; }
|
||
.suggestion-item { padding: 12px 14px; cursor: pointer; font-size: 14px; transition: var(--transition); min-height: 44px; display: flex; align-items: center; }
|
||
.suggestion-item:hover { background: var(--bg-surface); }
|
||
.suggestion-item small { color: var(--text-muted); margin-left: 8px; }
|
||
|
||
.chart-import-panel {
|
||
margin-top: 8px;
|
||
padding: 14px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.chart-import-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: baseline;
|
||
margin-bottom: 10px;
|
||
}
|
||
.chart-import-head strong { color: var(--text-heading); font-size: 14px; }
|
||
.chart-import-head span { color: var(--text-secondary); font-size: 12px; text-align: right; }
|
||
.chart-import-panel textarea {
|
||
width: 100%;
|
||
min-height: 96px;
|
||
resize: vertical;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-body);
|
||
padding: 10px 12px;
|
||
font-family: var(--font-body);
|
||
font-size: 13px;
|
||
line-height: 1.5;
|
||
outline: none;
|
||
}
|
||
.chart-import-panel textarea:focus { border-color: var(--purple); box-shadow: 0 0 0 3px var(--purple-soft); }
|
||
.chart-import-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.chart-import-actions button,
|
||
.chart-import-file {
|
||
min-height: 44px;
|
||
border-radius: var(--radius-sm);
|
||
border: 1px solid var(--border-input);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
padding: 8px 12px;
|
||
font-size: 13px;
|
||
font-family: var(--font-body);
|
||
cursor: pointer;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
.chart-import-actions button:hover,
|
||
.chart-import-file:hover { border-color: var(--text-muted); }
|
||
.chart-import-actions button:disabled {
|
||
cursor: not-allowed;
|
||
color: var(--text-muted);
|
||
background: var(--bg-card);
|
||
}
|
||
.chart-import-file input { display: none; }
|
||
.chart-import-result { margin-top: 10px; font-size: 13px; color: var(--text-secondary); }
|
||
.chart-import-result-card {
|
||
display: grid;
|
||
grid-template-columns: 76px 1fr;
|
||
gap: 12px;
|
||
align-items: center;
|
||
}
|
||
.chart-import-score {
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
border: 1px solid var(--border-light);
|
||
min-height: 68px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.chart-import-score strong { color: var(--text-heading); font-size: 22px; line-height: 1; }
|
||
.chart-import-score span { color: var(--text-muted); font-size: 11px; margin-top: 4px; }
|
||
.chart-import-fields {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 5px 10px;
|
||
}
|
||
.chart-import-fields span {
|
||
min-width: 0;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
.chart-import-ok { color: var(--green); margin-top: 8px; }
|
||
.chart-import-warning { color: var(--amber); margin-top: 8px; }
|
||
|
||
.saved-chart-panel {
|
||
margin-top: 12px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
overflow: hidden;
|
||
}
|
||
.saved-chart-empty,
|
||
.saved-chart-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: center;
|
||
padding: 12px 14px;
|
||
}
|
||
.saved-chart-empty strong,
|
||
.saved-chart-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.saved-chart-empty span,
|
||
.saved-chart-head span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
text-align: right;
|
||
}
|
||
.saved-chart-list {
|
||
display: grid;
|
||
gap: 0;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.saved-chart-item {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) auto;
|
||
gap: 10px;
|
||
align-items: center;
|
||
min-height: 44px;
|
||
padding: 10px 14px;
|
||
border: 0;
|
||
border-bottom: 1px solid var(--border-light);
|
||
background: var(--bg-card);
|
||
color: var(--text-body);
|
||
text-align: left;
|
||
cursor: pointer;
|
||
font-family: var(--font-body);
|
||
}
|
||
.saved-chart-item:last-child { border-bottom: 0; }
|
||
.saved-chart-item:hover {
|
||
background: var(--bg-surface);
|
||
}
|
||
.saved-chart-item span {
|
||
min-width: 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
font-weight: 600;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.saved-chart-item small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
/* === BUTTONS === */
|
||
.btn-primary {
|
||
display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 24px;
|
||
padding: 14px 32px; background: var(--accent); color: var(--text-on-dark);
|
||
font-size: 16px; font-weight: 600; letter-spacing: 0.5px;
|
||
border: none; border-radius: var(--radius-sm); cursor: pointer;
|
||
transition: all 0.2s ease;
|
||
min-height: 48px;
|
||
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
|
||
}
|
||
.btn-primary::before { display: none; }
|
||
.btn-primary:hover { background: var(--accent-hover); box-shadow: 0 4px 16px rgba(0,0,0,0.15); transform: translateY(-1px); }
|
||
.btn-primary:active { transform: translateY(0); box-shadow: 0 1px 4px rgba(0,0,0,0.1); }
|
||
|
||
.btn-back {
|
||
background: none; border: none; color: var(--text-secondary);
|
||
padding: 10px 16px; font-size: 14px; cursor: pointer; transition: var(--transition);
|
||
min-height: 44px; min-width: 44px; display: inline-flex; align-items: center;
|
||
}
|
||
.btn-back:hover { color: var(--text-heading); }
|
||
|
||
/* Header Actions & Export */
|
||
.header-actions { display: flex; align-items: center; gap: 8px; }
|
||
.export-dropdown { position: relative; }
|
||
.btn-export {
|
||
background: var(--bg-card); border: 1px solid var(--border-card); color: var(--text-body);
|
||
padding: 6px 14px; border-radius: 6px; font-size: 13px; cursor: pointer; transition: var(--transition);
|
||
}
|
||
.btn-export:hover { background: var(--bg-surface); border-color: var(--text-muted); }
|
||
.btn-export.is-exporting,
|
||
.btn-export:disabled {
|
||
cursor: wait;
|
||
color: var(--text-muted);
|
||
opacity: 0.78;
|
||
}
|
||
.btn-save-chart {
|
||
min-height: 36px;
|
||
padding: 6px 14px;
|
||
border-radius: 6px;
|
||
border: 1px solid var(--border-card);
|
||
background: var(--bg-card);
|
||
color: var(--text-body);
|
||
font-size: 13px;
|
||
font-family: var(--font-body);
|
||
cursor: pointer;
|
||
transition: var(--transition);
|
||
}
|
||
.btn-save-chart:hover {
|
||
background: var(--bg-surface);
|
||
border-color: var(--text-muted);
|
||
}
|
||
.btn-save-chart.is-saved {
|
||
border-color: rgba(22, 163, 74, 0.35);
|
||
color: var(--green);
|
||
}
|
||
.btn-save-chart:disabled {
|
||
cursor: not-allowed;
|
||
color: var(--text-muted);
|
||
opacity: 0.72;
|
||
}
|
||
.export-menu {
|
||
position: absolute; top: 100%; right: 0; margin-top: 4px;
|
||
background: var(--bg-white); border: 1px solid var(--border-card);
|
||
border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1);
|
||
min-width: 180px; z-index: 100; overflow: hidden;
|
||
}
|
||
.export-item {
|
||
display: block; width: 100%; text-align: left;
|
||
padding: 10px 16px; border: none; background: none;
|
||
font-size: 13px; color: var(--text-body); cursor: pointer; transition: var(--transition);
|
||
}
|
||
.export-item:hover { background: var(--bg-surface); color: var(--text-heading); }
|
||
.export-item:disabled {
|
||
cursor: wait;
|
||
color: var(--text-muted);
|
||
background: var(--bg-surface);
|
||
}
|
||
.export-item.is-exporting::after {
|
||
content: '...';
|
||
float: right;
|
||
color: var(--text-muted);
|
||
}
|
||
.export-item + .export-item { border-top: 1px solid var(--border-light); }
|
||
.export-status {
|
||
position: absolute;
|
||
top: calc(100% + 8px);
|
||
right: 0;
|
||
z-index: 99;
|
||
min-width: 220px;
|
||
max-width: min(300px, 72vw);
|
||
padding: 9px 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--accent);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
box-shadow: 0 8px 20px rgba(30, 41, 59, 0.12);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.export-status.is-error { border-left-color: var(--red); }
|
||
.export-status.is-success { border-left-color: var(--green); }
|
||
.export-status.is-working { border-left-color: var(--amber); }
|
||
|
||
.spinner { display: inline-block; width: 16px; height: 16px; border: 2px solid rgba(255,255,255,0.3); border-top-color: #fff; border-radius: 50%; animation: spin 0.6s linear infinite; }
|
||
@keyframes spin { to { transform: rotate(360deg); } }
|
||
.hidden { display: none !important; }
|
||
.hero-glow { display: none; }
|
||
|
||
/* === ASCENDANT BANNER === */
|
||
.ascendant-banner {
|
||
display: flex; align-items: center; justify-content: space-between;
|
||
background: var(--bg-card); border: 1px solid var(--border-card); border-left: 3px solid var(--purple);
|
||
border-radius: var(--radius-md);
|
||
padding: 20px 28px; margin-bottom: 28px;
|
||
box-shadow: 0 1px 3px rgba(0,0,0,0.04);
|
||
}
|
||
.ascendant-banner::before { display: none; }
|
||
.asc-main { display: flex; align-items: center; gap: 20px; }
|
||
.asc-sign { font-size: 28px; font-weight: 700; color: var(--text-heading); }
|
||
.asc-details { display: flex; flex-direction: column; gap: 2px; }
|
||
.asc-degree { font-size: 13px; color: var(--text-secondary); }
|
||
.asc-nakshatra { font-size: 12px; color: var(--purple); }
|
||
.asc-lord-badge {
|
||
padding: 8px 16px; background: var(--purple-soft); border: 1px solid rgba(109,40,217,0.15);
|
||
border-radius: 6px; font-size: 13px; color: var(--purple);
|
||
}
|
||
|
||
/* === SECTION TITLE === */
|
||
.section-title {
|
||
font-size: 16px; font-weight: 600; color: var(--text-heading);
|
||
letter-spacing: 0; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.sub-title { font-size: 14px; font-weight: 600; color: var(--text-heading); margin-bottom: 12px; }
|
||
|
||
/* === TAB NAVIGATION === */
|
||
.section-tabs {
|
||
display: flex; gap: 0; overflow-x: auto; margin-bottom: 28px;
|
||
border-bottom: 1px solid var(--border-light); background: none; backdrop-filter: none;
|
||
border: none; border-radius: 0; box-shadow: none; padding: 0;
|
||
scrollbar-width: none; -ms-overflow-style: none;
|
||
-webkit-overflow-scrolling: touch; scroll-behavior: smooth;
|
||
position: relative;
|
||
}
|
||
.section-tabs::-webkit-scrollbar { display: none; }
|
||
/* 滚动提示:右侧渐变遮罩(有隐藏内容时可见) */
|
||
.section-tabs::after {
|
||
content: ''; position: sticky; right: 0; flex-shrink: 0;
|
||
width: 40px; min-width: 40px; align-self: stretch;
|
||
background: linear-gradient(to right, transparent, var(--bg-page) 70%);
|
||
pointer-events: none; z-index: 2;
|
||
}
|
||
/* 滚动提示:左侧渐变 */
|
||
.section-tabs::before {
|
||
content: ''; position: sticky; left: 0; flex-shrink: 0;
|
||
width: 0; min-width: 0; align-self: stretch;
|
||
pointer-events: none; z-index: 2;
|
||
transition: width 0.3s, min-width 0.3s;
|
||
}
|
||
/* Tab 栏右侧滚动指示箭头 */
|
||
.tab-scroll-hint {
|
||
position: absolute; right: 0; top: 50%; transform: translateY(-50%);
|
||
z-index: 3; background: var(--bg-page); color: var(--text-muted);
|
||
width: 28px; height: 28px; border-radius: 50%;
|
||
display: flex; align-items: center; justify-content: center;
|
||
font-size: 14px; cursor: pointer; box-shadow: 0 1px 4px rgba(0,0,0,0.1);
|
||
opacity: 0; pointer-events: none; transition: opacity 0.3s;
|
||
}
|
||
.tab-scroll-hint.visible { opacity: 1; pointer-events: auto; }
|
||
.tab-btn {
|
||
flex-shrink: 0; padding: 12px 18px; background: none;
|
||
border: none; border-bottom: 2px solid transparent; border-radius: 0;
|
||
color: var(--text-muted); font-family: var(--font-body); font-size: 13px; font-weight: 500;
|
||
cursor: pointer; transition: var(--transition); white-space: nowrap;
|
||
position: relative; z-index: 1;
|
||
}
|
||
.tab-btn:hover { color: var(--text-heading); background: none; }
|
||
.tab-btn.active { color: var(--text-heading); border-bottom-color: var(--accent); background: none; box-shadow: none; }
|
||
/* 桌面端:显示全名,隐藏短名 */
|
||
.tab-short { display: none; }
|
||
.tab-full { display: inline; }
|
||
.tab-panel { display: none; }
|
||
.tab-panel.active { display: block; animation: fadeIn 0.3s ease; }
|
||
|
||
/* === COMPLETE READING / SKILL COVERAGE === */
|
||
.skill-dashboard {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 18px;
|
||
}
|
||
.special-lagna-panel {
|
||
margin-bottom: 18px;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md);
|
||
}
|
||
.special-lagna-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: flex-start;
|
||
gap: 16px;
|
||
margin-bottom: 14px;
|
||
}
|
||
.special-lagna-head h4 {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
margin-bottom: 5px;
|
||
}
|
||
.special-lagna-head p,
|
||
.special-lagna-note {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.7;
|
||
}
|
||
.special-lagna-head > span {
|
||
flex: 0 0 auto;
|
||
padding: 7px 10px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
}
|
||
.special-lagna-meta {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
margin: -4px 0 14px;
|
||
}
|
||
.special-lagna-meta span {
|
||
padding: 4px 8px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.special-lagna-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
|
||
gap: 10px;
|
||
margin-bottom: 12px;
|
||
}
|
||
.special-lagna-card {
|
||
padding: 13px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.special-lagna-card.core {
|
||
border-left-color: var(--green);
|
||
}
|
||
.special-lagna-card span {
|
||
display: inline-block;
|
||
margin-bottom: 6px;
|
||
padding: 1px 7px;
|
||
border-radius: 999px;
|
||
background: var(--bg-white);
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.special-lagna-card strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
margin-bottom: 4px;
|
||
}
|
||
.special-lagna-card div {
|
||
color: var(--purple);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
margin-bottom: 6px;
|
||
}
|
||
.special-lagna-card p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.mevg-panel {
|
||
margin-bottom: 18px;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md);
|
||
}
|
||
.mevg-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: flex-start;
|
||
gap: 16px;
|
||
margin-bottom: 14px;
|
||
}
|
||
.mevg-head h4,
|
||
.mevg-section h4 {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
margin: 0 0 6px;
|
||
}
|
||
.mevg-head p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.7;
|
||
}
|
||
.mevg-score {
|
||
flex: 0 0 96px;
|
||
min-height: 76px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: center;
|
||
align-items: center;
|
||
border-radius: var(--radius-sm);
|
||
border: 1px solid var(--border-light);
|
||
background: var(--bg-white);
|
||
}
|
||
.mevg-score span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.mevg-score strong {
|
||
color: var(--text-heading);
|
||
font-size: 28px;
|
||
line-height: 1.1;
|
||
}
|
||
.mevg-summary {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 10px;
|
||
margin-bottom: 12px;
|
||
}
|
||
.mevg-summary > div {
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.mevg-summary strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 20px;
|
||
}
|
||
.mevg-summary span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.mevg-cap {
|
||
margin-bottom: 12px;
|
||
padding: 10px 12px;
|
||
border-left: 4px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(217,119,6,0.08);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.mevg-check-grid,
|
||
.mevg-claims,
|
||
.mevg-sources {
|
||
display: grid;
|
||
gap: 10px;
|
||
}
|
||
.mevg-check-grid {
|
||
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
||
margin-bottom: 16px;
|
||
}
|
||
.mevg-check,
|
||
.mevg-claim,
|
||
.mevg-source {
|
||
min-width: 0;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.mevg-check.mevg-pass,
|
||
.mevg-claim.mevg-claim-internal {
|
||
border-left-color: var(--green);
|
||
}
|
||
.mevg-claim.mevg-claim-limited {
|
||
border-left-color: var(--purple);
|
||
}
|
||
.mevg-check > span,
|
||
.mevg-claim-head span {
|
||
display: inline-flex;
|
||
min-height: 22px;
|
||
align-items: center;
|
||
padding: 2px 7px;
|
||
border-radius: 999px;
|
||
background: var(--bg-surface);
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.mevg-check strong,
|
||
.mevg-claim strong,
|
||
.mevg-source strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
margin: 7px 0 4px;
|
||
}
|
||
.mevg-check p,
|
||
.mevg-claim p,
|
||
.mevg-source span,
|
||
.mevg-boundaries {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.mevg-section {
|
||
margin-top: 16px;
|
||
}
|
||
.mevg-claim-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
}
|
||
.mevg-claim-head strong {
|
||
margin: 0;
|
||
}
|
||
.mevg-evidence {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin: 8px 0;
|
||
}
|
||
.mevg-evidence span {
|
||
padding: 3px 7px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.mevg-claim code {
|
||
display: block;
|
||
white-space: normal;
|
||
overflow-wrap: anywhere;
|
||
padding: 8px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-body);
|
||
font-size: 11px;
|
||
line-height: 1.5;
|
||
}
|
||
.mevg-sources {
|
||
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
|
||
}
|
||
.mevg-boundaries {
|
||
padding-left: 18px;
|
||
}
|
||
.mevg-boundaries li {
|
||
margin: 5px 0;
|
||
}
|
||
.skill-hero {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: flex-start;
|
||
gap: 20px;
|
||
padding: 20px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.skill-hero h4,
|
||
.skill-section h4 {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
font-weight: 700;
|
||
margin: 0 0 8px;
|
||
}
|
||
.skill-hero p {
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
line-height: 1.7;
|
||
max-width: 680px;
|
||
}
|
||
.skill-metrics {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(72px, 1fr));
|
||
gap: 8px;
|
||
min-width: 260px;
|
||
}
|
||
.skill-metrics span,
|
||
.skill-summary-grid > div {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 2px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.skill-metrics b,
|
||
.skill-summary-grid strong {
|
||
color: var(--text-heading);
|
||
font-size: 20px;
|
||
line-height: 1.1;
|
||
}
|
||
.skill-summary-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.skill-summary-grid strong {
|
||
font-size: 16px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.skill-section {
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.skill-stage-grid,
|
||
.skill-module-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.skill-stage,
|
||
.skill-module {
|
||
display: flex;
|
||
gap: 10px;
|
||
min-width: 0;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.skill-stage-index {
|
||
flex: 0 0 24px;
|
||
width: 24px;
|
||
height: 24px;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
border-radius: 50%;
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
}
|
||
.skill-stage strong,
|
||
.skill-module strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.skill-stage p,
|
||
.skill-module p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
margin-top: 3px;
|
||
}
|
||
.skill-module {
|
||
display: block;
|
||
border-left-width: 4px;
|
||
}
|
||
.skill-module-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.skill-module-head span,
|
||
.skill-module small,
|
||
.skill-status {
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
}
|
||
.skill-module small {
|
||
display: inline-block;
|
||
margin-top: 8px;
|
||
}
|
||
.skill-module.skill-status-ready { border-left-color: var(--green); }
|
||
.skill-module.skill-status-partial { border-left-color: var(--amber); }
|
||
.skill-module.skill-status-pending { border-left-color: var(--purple); }
|
||
.skill-status {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
min-height: 24px;
|
||
padding: 2px 8px;
|
||
border-radius: 999px;
|
||
font-weight: 600;
|
||
white-space: nowrap;
|
||
}
|
||
.skill-status.skill-status-ready {
|
||
color: var(--green);
|
||
background: rgba(22,163,74,0.08);
|
||
}
|
||
.skill-status.skill-status-partial {
|
||
color: var(--amber);
|
||
background: rgba(217,119,6,0.1);
|
||
}
|
||
.skill-status.skill-status-pending {
|
||
color: var(--purple);
|
||
background: var(--purple-soft);
|
||
}
|
||
.skill-table-wrap {
|
||
overflow-x: auto;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
.skill-audit-table {
|
||
width: 100%;
|
||
min-width: 680px;
|
||
border-collapse: collapse;
|
||
background: var(--bg-white);
|
||
border-radius: var(--radius-sm);
|
||
overflow: hidden;
|
||
font-size: 12px;
|
||
}
|
||
.skill-audit-table th,
|
||
.skill-audit-table td {
|
||
padding: 10px 12px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
text-align: left;
|
||
vertical-align: top;
|
||
}
|
||
.skill-audit-table th {
|
||
color: var(--text-heading);
|
||
background: var(--bg-surface);
|
||
font-weight: 700;
|
||
}
|
||
.skill-audit-table td {
|
||
color: var(--text-secondary);
|
||
}
|
||
.skill-audit-table tr:last-child td { border-bottom: none; }
|
||
|
||
.capability-audit-panel {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 14px;
|
||
}
|
||
.capability-audit-panel h5 {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
font-weight: 700;
|
||
margin: 0 0 10px;
|
||
}
|
||
.capability-loading p,
|
||
.capability-error p,
|
||
.capability-box p,
|
||
.capability-note {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.capability-error {
|
||
padding: 14px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.capability-error strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.capability-error small {
|
||
display: block;
|
||
margin-top: 8px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.capability-metrics {
|
||
display: grid;
|
||
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.capability-metrics > div,
|
||
.capability-box,
|
||
.capability-source-card,
|
||
.capability-gap-card {
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.capability-metrics > div {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 3px;
|
||
padding: 12px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.capability-metrics strong {
|
||
color: var(--text-heading);
|
||
font-size: 22px;
|
||
line-height: 1;
|
||
}
|
||
.capability-status-row,
|
||
.capability-command-tags {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
}
|
||
.capability-status-row span,
|
||
.capability-command-tags span,
|
||
.reuse-pill {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
min-height: 24px;
|
||
padding: 3px 8px;
|
||
border-radius: 999px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 600;
|
||
}
|
||
.capability-status-row b {
|
||
margin-right: 4px;
|
||
color: var(--text-heading);
|
||
}
|
||
.capability-split {
|
||
display: grid;
|
||
grid-template-columns: minmax(240px, 0.7fr) minmax(0, 1.3fr);
|
||
gap: 12px;
|
||
}
|
||
.capability-box {
|
||
padding: 14px;
|
||
min-width: 0;
|
||
}
|
||
.capability-source-grid,
|
||
.capability-gap-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.capability-source-card,
|
||
.capability-gap-card,
|
||
.product-queue-card {
|
||
min-width: 0;
|
||
padding: 12px;
|
||
border-left: 4px solid var(--border-light);
|
||
}
|
||
.productization-metrics {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.ux-productization-metrics {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.productization-metrics > div,
|
||
.product-queue-card,
|
||
.ux-productization-metrics > div,
|
||
.ux-queue-card {
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.productization-metrics > div,
|
||
.ux-productization-metrics > div {
|
||
min-height: 70px;
|
||
padding: 12px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 4px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.productization-metrics strong,
|
||
.ux-productization-metrics strong {
|
||
color: var(--text-heading);
|
||
font-size: 22px;
|
||
line-height: 1;
|
||
}
|
||
.product-queue-grid,
|
||
.ux-queue-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.product-queue-card.product-api_backed {
|
||
border-left-color: var(--green);
|
||
}
|
||
.product-queue-card.product-engine_or_full_reading {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.product-queue-card.product-registry_only {
|
||
border-left-color: var(--purple);
|
||
}
|
||
.ux-queue-card {
|
||
min-width: 0;
|
||
padding: 12px;
|
||
border-left: 4px solid var(--border-light);
|
||
}
|
||
.ux-queue-card.ux-not_user_ready {
|
||
border-left-color: #dc2626;
|
||
}
|
||
.ux-queue-card.ux-thin {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.ux-queue-card.ux-usable {
|
||
border-left-color: var(--green);
|
||
}
|
||
.capability-source-card.reuse-direct,
|
||
.reuse-pill.reuse-direct,
|
||
.reuse-pill.reuse-direct_or_port {
|
||
border-left-color: var(--green);
|
||
color: var(--green);
|
||
background: rgba(22,163,74,0.08);
|
||
}
|
||
.capability-source-card.reuse-caution,
|
||
.reuse-pill.reuse-caution,
|
||
.reuse-pill.reuse-benchmark_only {
|
||
border-left-color: var(--amber);
|
||
color: var(--amber);
|
||
background: rgba(217,119,6,0.1);
|
||
}
|
||
.capability-source-card.reuse-unknown,
|
||
.reuse-pill.reuse-unknown,
|
||
.reuse-pill.reuse-review_before_copy {
|
||
border-left-color: var(--purple);
|
||
color: var(--purple);
|
||
background: var(--purple-soft);
|
||
}
|
||
.capability-source-card div {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
}
|
||
.capability-source-card strong,
|
||
.capability-gap-card strong,
|
||
.product-queue-card strong,
|
||
.ux-queue-card strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.capability-source-card span,
|
||
.capability-gap-card span,
|
||
.capability-source-card small,
|
||
.capability-gap-card small,
|
||
.product-queue-card span,
|
||
.product-queue-card small,
|
||
.ux-queue-card span,
|
||
.ux-queue-card small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.capability-source-card p,
|
||
.capability-gap-card p,
|
||
.product-queue-card p,
|
||
.ux-queue-card p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
margin: 8px 0;
|
||
}
|
||
.capability-gap-card.capability-high {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.capability-gap-card.capability-medium {
|
||
border-left-color: var(--purple);
|
||
}
|
||
.capability-section {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 10px;
|
||
}
|
||
.capability-note {
|
||
margin-top: 8px;
|
||
}
|
||
|
||
.technique-directory {
|
||
gap: 12px;
|
||
}
|
||
.technique-directory-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 16px;
|
||
align-items: flex-start;
|
||
}
|
||
.technique-directory-head h5 {
|
||
margin-bottom: 4px;
|
||
}
|
||
.technique-directory-head p {
|
||
margin: 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.technique-directory-head > span {
|
||
flex: 0 0 auto;
|
||
padding: 4px 9px;
|
||
border-radius: 999px;
|
||
background: var(--accent-soft);
|
||
color: var(--text-heading);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-directory-controls {
|
||
display: grid;
|
||
grid-template-columns: minmax(180px, 1.4fr) repeat(3, minmax(130px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.technique-directory-controls label {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 5px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-directory-controls input,
|
||
.technique-directory-controls select {
|
||
width: 100%;
|
||
min-height: 42px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
color: var(--text-heading);
|
||
font: inherit;
|
||
font-size: 12px;
|
||
padding: 8px 10px;
|
||
}
|
||
.technique-directory-controls input:focus,
|
||
.technique-directory-controls select:focus {
|
||
outline: 2px solid rgba(59,130,246,0.18);
|
||
border-color: var(--accent);
|
||
}
|
||
.technique-directory-summary {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-directory-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.technique-directory-card {
|
||
min-width: 0;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-directory-card.technique-productized {
|
||
border-left-color: var(--green);
|
||
}
|
||
.technique-directory-card.technique-api_backed {
|
||
border-left-color: var(--accent);
|
||
}
|
||
.technique-directory-card.technique-engine_or_full_reading {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.technique-directory-card.technique-registry_only {
|
||
border-left-color: var(--purple);
|
||
}
|
||
.technique-directory-card-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
}
|
||
.technique-directory-card-head strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.technique-directory-card-head small,
|
||
.technique-directory-card > small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.technique-directory-pill {
|
||
flex: 0 0 auto;
|
||
max-width: 116px;
|
||
padding: 3px 8px;
|
||
border-radius: 999px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
text-align: center;
|
||
}
|
||
.technique-directory-meta,
|
||
.technique-directory-tags,
|
||
.technique-directory-endpoints {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin-top: 8px;
|
||
}
|
||
.technique-directory-meta span,
|
||
.technique-directory-tags span,
|
||
.technique-directory-endpoints code,
|
||
.technique-directory-endpoints em {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
min-height: 23px;
|
||
padding: 2px 7px;
|
||
border-radius: 999px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-style: normal;
|
||
font-family: inherit;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.technique-directory-endpoints code {
|
||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||
color: var(--text-heading);
|
||
}
|
||
.technique-directory-card p {
|
||
margin: 9px 0 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.technique-directory-card b {
|
||
display: block;
|
||
margin-top: 8px;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.technique-explorer-actions,
|
||
.technique-explorer-call,
|
||
.technique-example-badge {
|
||
display: flex;
|
||
align-items: center;
|
||
flex-wrap: wrap;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
padding-top: 10px;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.technique-explorer-run {
|
||
min-height: 32px;
|
||
padding: 5px 12px;
|
||
border: 1px solid var(--accent);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
font-size: 12px;
|
||
font-weight: 800;
|
||
cursor: pointer;
|
||
}
|
||
.technique-explorer-run:hover:not(:disabled) {
|
||
background: var(--accent-hover);
|
||
}
|
||
.technique-explorer-run:disabled {
|
||
cursor: not-allowed;
|
||
opacity: 0.55;
|
||
}
|
||
.technique-explorer-run.loading {
|
||
opacity: 0.75;
|
||
}
|
||
.technique-explorer-actions code,
|
||
.technique-explorer-call code,
|
||
.technique-explorer-call span,
|
||
.technique-example-badge span,
|
||
.technique-example-badge code {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||
overflow-wrap: anywhere;
|
||
text-align: right;
|
||
}
|
||
.technique-method-boundary {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.technique-api-docs {
|
||
margin: 8px 0 10px;
|
||
padding: 8px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-api-docs summary {
|
||
cursor: pointer;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
font-weight: 800;
|
||
}
|
||
.technique-api-doc-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.technique-api-doc-grid strong {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
margin-bottom: 4px;
|
||
}
|
||
.technique-api-doc-grid pre {
|
||
max-height: 220px;
|
||
margin: 0;
|
||
padding: 8px;
|
||
overflow: auto;
|
||
white-space: pre-wrap;
|
||
overflow-wrap: anywhere;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.technique-api-docs p {
|
||
margin: 8px 0 0;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.technique-explorer-static {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-explorer-result {
|
||
margin-top: 10px;
|
||
}
|
||
.technique-explorer-result .technique-result-head {
|
||
margin-bottom: 8px;
|
||
}
|
||
.technique-explorer-result .technique-insight-grid,
|
||
.technique-explorer-result .technique-result-grid,
|
||
.technique-explorer-result .technique-varga-grid {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
.technique-explorer-result .technique-json pre,
|
||
.technique-explorer-loading pre {
|
||
max-height: 220px;
|
||
overflow: auto;
|
||
white-space: pre-wrap;
|
||
}
|
||
.technique-explorer-loading {
|
||
padding: 10px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-explorer-loading strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
margin-bottom: 6px;
|
||
}
|
||
.technique-explorer-loading summary {
|
||
cursor: pointer;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-example-badge {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: center;
|
||
margin-bottom: 8px;
|
||
padding: 6px 8px;
|
||
background: var(--accent-soft);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
}
|
||
.technique-example-badge code {
|
||
color: var(--text-heading);
|
||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.technique-directory-empty {
|
||
grid-column: 1 / -1;
|
||
margin: 0;
|
||
padding: 14px;
|
||
background: var(--bg-white);
|
||
border: 1px dashed var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
}
|
||
|
||
/* === SYNASTRY === */
|
||
.synastry-tool {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 16px;
|
||
}
|
||
.synastry-library-panel {
|
||
display: grid;
|
||
grid-template-columns: minmax(220px, 1fr) auto;
|
||
gap: 12px;
|
||
align-items: end;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.synastry-inputs {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
|
||
gap: 12px;
|
||
align-items: end;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.synastry-full-inputs {
|
||
grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(120px, 1fr)) auto;
|
||
}
|
||
.synastry-quick {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
overflow: visible;
|
||
}
|
||
.synastry-quick summary {
|
||
cursor: pointer;
|
||
padding: 12px 14px;
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.synastry-quick-inputs {
|
||
border: 0;
|
||
border-top: 1px solid var(--border-card);
|
||
border-radius: 0;
|
||
background: var(--bg-white);
|
||
}
|
||
.synastry-field-wide {
|
||
min-width: 0;
|
||
}
|
||
.synastry-run {
|
||
width: auto;
|
||
min-width: 120px;
|
||
margin-top: 0;
|
||
white-space: nowrap;
|
||
}
|
||
.synastry-result {
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
}
|
||
.synastry-score {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
gap: 12px;
|
||
padding: 14px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
margin-bottom: 12px;
|
||
}
|
||
.synastry-score strong {
|
||
color: var(--text-heading);
|
||
font-size: 24px;
|
||
line-height: 1;
|
||
}
|
||
.synastry-score span {
|
||
font-weight: 600;
|
||
}
|
||
.synastry-score.synastry-ok { border-left: 4px solid var(--green); }
|
||
.synastry-score.synastry-warn { border-left: 4px solid var(--amber); }
|
||
.synastry-details {
|
||
display: grid;
|
||
grid-template-columns: 1fr 1fr;
|
||
gap: 10px;
|
||
margin-bottom: 12px;
|
||
}
|
||
.synastry-person {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 4px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.synastry-person strong { color: var(--text-heading); }
|
||
.synastry-person span { color: var(--text-body); }
|
||
.synastry-person small { color: var(--text-muted); }
|
||
.synastry-table-wrap {
|
||
overflow-x: auto;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
.synastry-table {
|
||
width: 100%;
|
||
min-width: 420px;
|
||
border-collapse: collapse;
|
||
background: var(--bg-white);
|
||
border-radius: var(--radius-sm);
|
||
overflow: hidden;
|
||
}
|
||
.synastry-table th,
|
||
.synastry-table td {
|
||
text-align: left;
|
||
padding: 9px 12px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.synastry-table th {
|
||
color: var(--text-heading);
|
||
background: var(--bg-surface);
|
||
}
|
||
.synastry-note,
|
||
.synastry-boundary {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
line-height: 1.7;
|
||
}
|
||
.synastry-note strong { color: var(--text-heading); }
|
||
.synastry-pair-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 10px;
|
||
margin-top: 12px;
|
||
}
|
||
.synastry-pair-workspace,
|
||
.prashna-case-workspace {
|
||
padding: 14px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.synastry-pair-empty,
|
||
.prashna-case-empty {
|
||
color: var(--text-muted);
|
||
font-size: 13px;
|
||
}
|
||
.synastry-pair-head,
|
||
.synastry-pair-row,
|
||
.prashna-case-head,
|
||
.prashna-case-row {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.synastry-pair-head,
|
||
.prashna-case-head {
|
||
margin-bottom: 10px;
|
||
color: var(--text-heading);
|
||
}
|
||
.synastry-pair-head span,
|
||
.synastry-pair-row small,
|
||
.prashna-case-head span,
|
||
.prashna-case-row small {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.synastry-pair-list,
|
||
.prashna-case-list {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 8px;
|
||
}
|
||
.synastry-pair-row,
|
||
.prashna-case-row {
|
||
padding: 10px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.synastry-pair-row strong,
|
||
.prashna-case-row strong {
|
||
color: var(--text-heading);
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.synastry-pair-row span,
|
||
.prashna-case-row span {
|
||
color: var(--text-body);
|
||
white-space: nowrap;
|
||
}
|
||
.case-row-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
justify-content: flex-end;
|
||
}
|
||
.case-select-control {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
gap: 5px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
white-space: nowrap;
|
||
}
|
||
.case-select-control input {
|
||
width: 16px;
|
||
height: 16px;
|
||
margin: 0;
|
||
}
|
||
.mini-action {
|
||
min-height: 28px;
|
||
padding: 5px 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
font-weight: 800;
|
||
cursor: pointer;
|
||
}
|
||
.mini-action:hover {
|
||
border-color: var(--accent);
|
||
color: var(--accent);
|
||
}
|
||
.mini-action.danger:hover {
|
||
border-color: rgba(220,38,38,0.35);
|
||
color: var(--red);
|
||
}
|
||
.case-replay-banner {
|
||
display: grid;
|
||
gap: 4px;
|
||
margin-bottom: 12px;
|
||
padding: 10px 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.case-replay-banner strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.case-replay-banner span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.synastry-error {
|
||
color: var(--red);
|
||
background: rgba(220,38,38,0.06);
|
||
border: 1px solid rgba(220,38,38,0.15);
|
||
border-radius: var(--radius-sm);
|
||
padding: 12px;
|
||
}
|
||
.synastry-deep-grid,
|
||
.synastry-d9-compare {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 10px;
|
||
margin-top: 12px;
|
||
}
|
||
.synastry-d9-compare {
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
}
|
||
.synastry-deep-card {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 7px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
line-height: 1.55;
|
||
}
|
||
.synastry-deep-card strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.synastry-deep-card p {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
}
|
||
.synastry-deep-card small {
|
||
color: var(--text-muted);
|
||
}
|
||
.relationship-report-template {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.relationship-report-strong {
|
||
border-left: 4px solid var(--green);
|
||
}
|
||
.relationship-report-workable {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.relationship-report-needs_context {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.relationship-report-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: flex-start;
|
||
}
|
||
.relationship-report-head strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.relationship-report-head p {
|
||
margin: 4px 0 0;
|
||
color: var(--text-body);
|
||
line-height: 1.55;
|
||
}
|
||
.relationship-report-status {
|
||
flex: 0 0 auto;
|
||
padding: 4px 8px;
|
||
border-radius: var(--radius-xs);
|
||
background: var(--bg-surface);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
}
|
||
.relationship-report-grid,
|
||
.relationship-report-sections {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.relationship-report-sections {
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
}
|
||
.relationship-evidence-card,
|
||
.relationship-report-section {
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
min-width: 0;
|
||
}
|
||
.relationship-evidence-card span,
|
||
.relationship-evidence-card small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
}
|
||
.relationship-evidence-card strong {
|
||
display: block;
|
||
margin: 4px 0;
|
||
color: var(--text-heading);
|
||
}
|
||
.relationship-report-section strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.relationship-report-list {
|
||
margin: 8px 0 0;
|
||
padding-left: 18px;
|
||
color: var(--text-body);
|
||
line-height: 1.55;
|
||
}
|
||
.relationship-report-boundary {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin-top: 10px;
|
||
}
|
||
.relationship-report-boundary span {
|
||
padding: 4px 8px;
|
||
border-radius: var(--radius-xs);
|
||
background: rgba(148, 163, 184, 0.12);
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.biwheel-comparison-view {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.biwheel-comparison-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.biwheel-comparison-head strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.biwheel-comparison-head span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.biwheel-axis-grid,
|
||
.composite-style-strip {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.biwheel-axis-card,
|
||
.composite-style-strip div {
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.biwheel-axis-card span,
|
||
.biwheel-axis-card small,
|
||
.composite-style-strip span,
|
||
.composite-style-strip small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
}
|
||
.biwheel-axis-card strong,
|
||
.composite-style-strip strong {
|
||
display: block;
|
||
margin: 4px 0;
|
||
color: var(--text-heading);
|
||
}
|
||
.biwheel-axis-card p {
|
||
margin: 0 0 4px;
|
||
color: var(--text-body);
|
||
}
|
||
.biwheel-tone-support {
|
||
border-left: 4px solid var(--green);
|
||
}
|
||
.biwheel-tone-tension {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.biwheel-tone-work {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.biwheel-table-wrap {
|
||
margin-top: 10px;
|
||
overflow: auto;
|
||
}
|
||
.biwheel-comparison-table {
|
||
width: 100%;
|
||
border-collapse: collapse;
|
||
min-width: 720px;
|
||
}
|
||
.biwheel-comparison-table th,
|
||
.biwheel-comparison-table td {
|
||
padding: 8px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
text-align: left;
|
||
vertical-align: top;
|
||
}
|
||
.biwheel-comparison-table th {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.spouse-status-comparison {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.spouse-status-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.spouse-status-head strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.spouse-status-head span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.spouse-status-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.spouse-status-card {
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.spouse-status-strong {
|
||
border-left: 4px solid var(--green);
|
||
}
|
||
.spouse-status-moderate {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.spouse-status-low {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.spouse-status-card strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.spouse-status-card p {
|
||
margin: 6px 0;
|
||
color: var(--text-body);
|
||
}
|
||
.spouse-status-card ul {
|
||
margin: 0;
|
||
padding-left: 18px;
|
||
color: var(--text-muted);
|
||
line-height: 1.55;
|
||
}
|
||
.uldk-timing-comparison {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.uldk-timing-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.uldk-timing-head strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.uldk-timing-head span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.uldk-timing-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.uldk-timing-card {
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.uldk-timing-strong {
|
||
border-left: 4px solid var(--green);
|
||
}
|
||
.uldk-timing-moderate {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.uldk-timing-low {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.uldk-timing-card strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.uldk-timing-card p {
|
||
margin: 6px 0;
|
||
color: var(--text-body);
|
||
}
|
||
.uldk-timing-card ul {
|
||
margin: 0;
|
||
padding-left: 18px;
|
||
color: var(--text-muted);
|
||
line-height: 1.55;
|
||
}
|
||
.synastry-person,
|
||
.synastry-deep-card,
|
||
.relationship-report-template,
|
||
.relationship-evidence-card,
|
||
.relationship-report-section,
|
||
.biwheel-comparison-view,
|
||
.biwheel-axis-card,
|
||
.composite-style-strip div,
|
||
.spouse-status-comparison,
|
||
.spouse-status-card,
|
||
.uldk-timing-comparison,
|
||
.uldk-timing-card,
|
||
.prashna-note,
|
||
.prashna-advanced-card,
|
||
.prashna-mini-grid div,
|
||
.prashna-saham-strip div,
|
||
.kp-house-card,
|
||
.kp-verdict,
|
||
.kp-boundary {
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.synastry-kuja-hard,
|
||
.synastry-dasha-neutral {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.synastry-kuja-watch,
|
||
.synastry-dasha-supportive {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.synastry-kuja-balanced,
|
||
.synastry-dasha-strong {
|
||
border-left: 4px solid var(--green);
|
||
}
|
||
.synastry-d9-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: center;
|
||
}
|
||
.synastry-d9-head span {
|
||
color: var(--text-body);
|
||
font-weight: 700;
|
||
}
|
||
|
||
/* === PRASHNA === */
|
||
.prashna-tool {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 16px;
|
||
}
|
||
.prashna-inputs {
|
||
display: grid;
|
||
grid-template-columns: minmax(150px, 0.7fr) minmax(260px, 1.6fr) auto;
|
||
gap: 12px;
|
||
align-items: end;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.prashna-run {
|
||
width: auto;
|
||
min-width: 120px;
|
||
margin-top: 0;
|
||
white-space: nowrap;
|
||
}
|
||
.prashna-result {
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
}
|
||
.prashna-answer {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
gap: 12px;
|
||
padding: 14px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
margin-bottom: 12px;
|
||
}
|
||
.prashna-answer strong {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
}
|
||
.prashna-answer span {
|
||
font-weight: 600;
|
||
}
|
||
.prashna-answer.prashna-yes { border-left-color: var(--green); }
|
||
.prashna-answer.prashna-no { border-left-color: var(--red); }
|
||
.prashna-answer.prashna-maybe { border-left-color: var(--amber); }
|
||
.prashna-case-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 10px;
|
||
margin-top: 12px;
|
||
}
|
||
.prashna-question-readout,
|
||
.prashna-note,
|
||
.prashna-boundary {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
line-height: 1.7;
|
||
}
|
||
.prashna-note strong { color: var(--text-heading); }
|
||
.prashna-note small {
|
||
display: block;
|
||
margin-top: 6px;
|
||
color: var(--text-muted);
|
||
}
|
||
.prashna-note ul {
|
||
margin: 8px 0 0 16px;
|
||
padding: 0;
|
||
color: var(--text-body);
|
||
}
|
||
.prashna-insight-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.prashna-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.prashna-grid > div {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 3px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.prashna-grid span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.prashna-grid strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.prashna-table-wrap {
|
||
margin-top: 12px;
|
||
overflow-x: auto;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
.prashna-table {
|
||
width: 100%;
|
||
min-width: 360px;
|
||
border-collapse: collapse;
|
||
background: var(--bg-white);
|
||
border-radius: var(--radius-sm);
|
||
overflow: hidden;
|
||
}
|
||
.prashna-table th,
|
||
.prashna-table td {
|
||
text-align: left;
|
||
padding: 9px 12px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.prashna-table th {
|
||
color: var(--text-heading);
|
||
background: var(--bg-surface);
|
||
}
|
||
.prashna-next-action {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
color: var(--text-heading);
|
||
background: rgba(37,99,235,0.08);
|
||
border: 1px solid rgba(37,99,235,0.16);
|
||
border-radius: var(--radius-sm);
|
||
line-height: 1.65;
|
||
font-weight: 700;
|
||
}
|
||
.prashna-advanced {
|
||
margin-top: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.prashna-advanced summary {
|
||
cursor: pointer;
|
||
padding: 12px;
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.prashna-advanced-grid,
|
||
.prashna-saham-strip,
|
||
.prashna-mini-grid {
|
||
display: grid;
|
||
gap: 10px;
|
||
}
|
||
.prashna-advanced-grid {
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
padding: 0 12px 12px;
|
||
}
|
||
.prashna-saham-strip {
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
padding: 0 12px 12px;
|
||
}
|
||
.prashna-mini-grid {
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
}
|
||
.prashna-advanced-card,
|
||
.prashna-mini-grid div,
|
||
.prashna-saham-strip div {
|
||
padding: 10px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
line-height: 1.55;
|
||
}
|
||
.prashna-advanced-card strong,
|
||
.prashna-mini-grid strong,
|
||
.prashna-saham-strip strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.prashna-advanced-card p,
|
||
.prashna-mini-grid span,
|
||
.prashna-saham-strip span {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
}
|
||
.prashna-advanced-card small,
|
||
.prashna-mini-grid small,
|
||
.prashna-saham-strip small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
}
|
||
.prashna-error {
|
||
color: var(--red);
|
||
background: rgba(220,38,38,0.06);
|
||
border: 1px solid rgba(220,38,38,0.15);
|
||
border-radius: var(--radius-sm);
|
||
padding: 12px;
|
||
}
|
||
|
||
/* === KP === */
|
||
.kp-dashboard {
|
||
display: grid;
|
||
gap: 14px;
|
||
}
|
||
.kp-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 14px;
|
||
align-items: center;
|
||
padding: 14px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.kp-head h4 {
|
||
margin: 0 0 6px;
|
||
color: var(--text-heading);
|
||
}
|
||
.kp-head p {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
line-height: 1.6;
|
||
}
|
||
.kp-focus-select {
|
||
min-width: 150px;
|
||
}
|
||
.kp-verdict,
|
||
.kp-boundary {
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
line-height: 1.7;
|
||
}
|
||
.kp-verdict strong,
|
||
.kp-house-card strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.kp-verdict p,
|
||
.kp-boundary {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
}
|
||
.kp-verdict small {
|
||
display: block;
|
||
margin-top: 6px;
|
||
color: var(--text-muted);
|
||
}
|
||
.kp-house-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.kp-house-card {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 6px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.kp-house-focus {
|
||
border-left: 4px solid var(--blue);
|
||
}
|
||
.kp-house-title {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: center;
|
||
}
|
||
.kp-house-title span {
|
||
color: var(--text-muted);
|
||
font-weight: 700;
|
||
}
|
||
.kp-house-card p {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
}
|
||
.kp-house-card small {
|
||
color: var(--text-muted);
|
||
}
|
||
.kp-all-houses summary {
|
||
cursor: pointer;
|
||
padding: 10px 0;
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.kp-table-wrap {
|
||
overflow-x: auto;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
.kp-table {
|
||
width: 100%;
|
||
min-width: 680px;
|
||
border-collapse: collapse;
|
||
background: var(--bg-white);
|
||
border-radius: var(--radius-sm);
|
||
overflow: hidden;
|
||
}
|
||
.kp-table th,
|
||
.kp-table td {
|
||
text-align: left;
|
||
padding: 9px 12px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.kp-table th {
|
||
color: var(--text-heading);
|
||
background: var(--bg-surface);
|
||
}
|
||
|
||
/* === REMEDIES === */
|
||
.remedies-dashboard {
|
||
display: grid;
|
||
gap: 16px;
|
||
}
|
||
.remedies-hero {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: flex-start;
|
||
gap: 18px;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.remedies-hero h4,
|
||
.remedies-section h4,
|
||
.remedies-plan h4 {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
margin-bottom: 6px;
|
||
}
|
||
.remedies-hero p,
|
||
.remedies-boundary p,
|
||
.remedies-plan li,
|
||
.remedy-action-card p,
|
||
.remedies-empty p {
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
line-height: 1.7;
|
||
}
|
||
.remedies-metrics {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(72px, 1fr));
|
||
gap: 8px;
|
||
min-width: 270px;
|
||
}
|
||
.remedies-metrics span {
|
||
padding: 10px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
text-align: center;
|
||
}
|
||
.remedies-metrics b {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 18px;
|
||
}
|
||
.remedies-boundary,
|
||
.remedies-plan,
|
||
.remedies-section,
|
||
.remedies-empty {
|
||
padding: 16px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.remedies-boundary {
|
||
border-left: 4px solid var(--amber);
|
||
}
|
||
.remedies-boundary strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
margin-bottom: 4px;
|
||
}
|
||
.remedies-plan ol {
|
||
display: grid;
|
||
gap: 8px;
|
||
padding-left: 20px;
|
||
}
|
||
.remedies-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.remedies-evidence-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.remedies-evidence-card {
|
||
min-height: 104px;
|
||
padding: 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.remedies-evidence-card span {
|
||
color: #0369a1;
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
text-transform: uppercase;
|
||
}
|
||
.remedies-evidence-card strong {
|
||
display: block;
|
||
margin-top: 6px;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.remedies-evidence-card p,
|
||
.remedies-next-action {
|
||
margin-top: 6px;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.remedies-evidence-card small {
|
||
display: block;
|
||
margin-top: 8px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.remedy-action-card {
|
||
min-height: 132px;
|
||
padding: 13px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-left: 4px solid var(--accent);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.remedy-action-card span {
|
||
display: inline-block;
|
||
margin-bottom: 8px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.remedy-action-card strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
margin-bottom: 6px;
|
||
}
|
||
.remedy-action-card small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
margin-top: 8px;
|
||
}
|
||
.remedy-gem,
|
||
.remedy-fasting,
|
||
.remedy-dosha {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.remedy-mantra,
|
||
.remedy-donation,
|
||
.remedy-lifestyle {
|
||
border-left-color: var(--green);
|
||
}
|
||
.remedies-empty strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
margin-bottom: 4px;
|
||
}
|
||
|
||
/* === DASHA SYSTEM OVERVIEW === */
|
||
.dasha-system-panel {
|
||
margin-bottom: 18px;
|
||
padding: 18px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-system-head {
|
||
display: flex;
|
||
align-items: flex-start;
|
||
justify-content: space-between;
|
||
gap: 16px;
|
||
margin-bottom: 12px;
|
||
}
|
||
.dasha-system-head h4 {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
margin-bottom: 4px;
|
||
}
|
||
.dasha-system-head p,
|
||
.dasha-system-empty p {
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
line-height: 1.7;
|
||
}
|
||
.dasha-system-count {
|
||
min-width: 48px;
|
||
min-height: 48px;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
border-radius: 50%;
|
||
font-weight: 700;
|
||
font-size: 18px;
|
||
}
|
||
.dasha-type-filter {
|
||
display: flex;
|
||
gap: 8px;
|
||
overflow-x: auto;
|
||
padding-bottom: 8px;
|
||
margin-bottom: 12px;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
.dasha-type-btn {
|
||
flex: 0 0 auto;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
gap: 6px;
|
||
min-height: 36px;
|
||
padding: 7px 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
cursor: pointer;
|
||
font-family: var(--font-body);
|
||
font-size: 12px;
|
||
}
|
||
.dasha-type-btn span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.dasha-type-btn.active {
|
||
color: var(--text-heading);
|
||
border-color: var(--accent);
|
||
background: var(--accent-soft);
|
||
}
|
||
.dasha-system-layout {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1.2fr) minmax(240px, 0.8fr);
|
||
gap: 12px;
|
||
}
|
||
.dasha-system-list {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
|
||
gap: 8px;
|
||
max-height: 260px;
|
||
overflow: auto;
|
||
padding-right: 4px;
|
||
}
|
||
.dasha-system-card {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 4px;
|
||
min-height: 72px;
|
||
text-align: left;
|
||
padding: 11px 12px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
cursor: pointer;
|
||
font-family: var(--font-body);
|
||
}
|
||
.dasha-system-card strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.dasha-system-card span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.dasha-system-card.selected {
|
||
border-color: var(--accent);
|
||
background: var(--accent-soft);
|
||
}
|
||
.dasha-system-detail-card {
|
||
height: 100%;
|
||
min-height: 150px;
|
||
padding: 14px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-system-meta {
|
||
display: inline-block;
|
||
margin-bottom: 8px;
|
||
color: var(--purple);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.dasha-system-detail-card strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
margin-bottom: 8px;
|
||
}
|
||
.dasha-system-detail-card p {
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
line-height: 1.7;
|
||
}
|
||
.dasha-system-summary {
|
||
display: grid;
|
||
grid-template-columns: 1fr 1fr;
|
||
gap: 8px;
|
||
margin-top: 12px;
|
||
}
|
||
.dasha-system-now,
|
||
.dasha-system-next {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-system-now {
|
||
border-color: rgba(22, 163, 74, 0.35);
|
||
background: rgba(22, 163, 74, 0.06);
|
||
}
|
||
.dasha-system-now.muted,
|
||
.dasha-system-next.muted {
|
||
background: var(--bg-card);
|
||
border-color: var(--border-light);
|
||
}
|
||
.dasha-system-kicker {
|
||
margin-bottom: 4px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.dasha-system-summary strong {
|
||
margin-bottom: 3px;
|
||
font-size: 13px;
|
||
}
|
||
.dasha-system-summary p {
|
||
font-size: 11px;
|
||
line-height: 1.5;
|
||
}
|
||
.dasha-system-progress {
|
||
height: 6px;
|
||
margin-top: 8px;
|
||
overflow: hidden;
|
||
background: rgba(22, 163, 74, 0.16);
|
||
border-radius: 999px;
|
||
}
|
||
.dasha-system-progress i {
|
||
display: block;
|
||
height: 100%;
|
||
background: var(--green);
|
||
border-radius: inherit;
|
||
}
|
||
.dasha-analysis-block {
|
||
margin-top: 12px;
|
||
padding: 10px;
|
||
background: rgba(14,165,233,0.06);
|
||
border: 1px solid rgba(14,165,233,0.22);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-analysis-head {
|
||
display: grid;
|
||
gap: 3px;
|
||
margin-bottom: 10px;
|
||
}
|
||
.dasha-analysis-head span,
|
||
.dasha-analysis-grid span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.dasha-analysis-head strong {
|
||
margin: 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.dasha-analysis-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.dasha-analysis-grid div {
|
||
min-width: 0;
|
||
padding: 8px;
|
||
background: var(--bg-white);
|
||
border: 1px solid rgba(14,165,233,0.16);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-analysis-grid strong {
|
||
margin: 3px 0;
|
||
font-size: 12px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.dasha-analysis-grid p {
|
||
margin: 0;
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.dasha-analysis-tags {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin-top: 9px;
|
||
}
|
||
.dasha-analysis-tags span {
|
||
padding: 3px 7px;
|
||
background: rgba(14,165,233,0.1);
|
||
border-radius: var(--radius-sm);
|
||
color: #0369a1;
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.dasha-system-periods {
|
||
display: grid;
|
||
gap: 8px;
|
||
margin-top: 12px;
|
||
max-height: 260px;
|
||
overflow: auto;
|
||
}
|
||
.dasha-system-period {
|
||
display: grid;
|
||
grid-template-columns: minmax(70px, 0.7fr) minmax(120px, 1.4fr) auto;
|
||
align-items: center;
|
||
gap: 8px;
|
||
padding: 8px 10px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-system-period.current {
|
||
border-color: rgba(22, 163, 74, 0.45);
|
||
background: rgba(22, 163, 74, 0.08);
|
||
}
|
||
.dasha-system-period.upcoming {
|
||
border-color: rgba(217, 119, 6, 0.42);
|
||
background: rgba(217, 119, 6, 0.06);
|
||
}
|
||
.dasha-system-period strong {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 6px;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.dasha-system-period small {
|
||
padding: 2px 5px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 999px;
|
||
color: var(--green);
|
||
font-size: 10px;
|
||
font-weight: 700;
|
||
line-height: 1;
|
||
}
|
||
.dasha-system-period span {
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
margin: 0;
|
||
}
|
||
.dasha-system-period em {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-style: normal;
|
||
text-align: right;
|
||
}
|
||
.dasha-system-empty {
|
||
padding: 14px;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.dasha-system-empty strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
margin-bottom: 4px;
|
||
}
|
||
|
||
/* === CHART LAYOUT === */
|
||
.chart-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 28px; }
|
||
.chart-container, .planets-container {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 24px; box-shadow: 0 1px 3px rgba(0,0,0,0.04);
|
||
}
|
||
.chart-container::before, .planets-container::before { display: none; }
|
||
.south-indian-chart { width: 100%; max-width: 400px; margin: 0 auto; aspect-ratio: 1; filter: none; }
|
||
.south-indian-chart svg { width: 100%; height: 100%; }
|
||
|
||
/* === PLANETS TABLE === */
|
||
.planets-table-wrap { overflow-x: auto; }
|
||
.planets-table { width: 100%; border-collapse: collapse; font-size: 13px; table-layout: fixed; }
|
||
.planets-table th {
|
||
text-align: left; padding: 8px 10px; color: var(--text-secondary); font-weight: 500;
|
||
font-size: 12px; border-bottom: 1px solid var(--border-light);
|
||
}
|
||
/* 列宽分配:行星18% 星座13% 度数10% 宫位10% 状态10% 星宿22% D9 17% */
|
||
.planets-table th:nth-child(1), .planets-table td:nth-child(1) { width: 18%; }
|
||
.planets-table th:nth-child(2), .planets-table td:nth-child(2) { width: 13%; }
|
||
.planets-table th:nth-child(3), .planets-table td:nth-child(3) { width: 10%; }
|
||
.planets-table th:nth-child(4), .planets-table td:nth-child(4) { width: 10%; }
|
||
.planets-table th:nth-child(5), .planets-table td:nth-child(5) { width: 10%; }
|
||
.planets-table th:nth-child(6), .planets-table td:nth-child(6) { width: 22%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
||
.planets-table th:nth-child(7), .planets-table td:nth-child(7) { width: 17%; }
|
||
.planets-table td { padding: 8px 10px; border-bottom: 1px solid var(--border-light); color: var(--text-body); }
|
||
.planets-table tbody tr:hover td { background: var(--accent-soft); }
|
||
.planet-symbol { font-size: 15px; margin-right: 4px; }
|
||
.status-exalted { color: var(--green); font-weight: 500; }
|
||
.status-debilitated { color: var(--red); font-weight: 500; }
|
||
.status-own { color: var(--amber); font-weight: 500; }
|
||
.status-combust { color: var(--red); font-size: 11px; }
|
||
|
||
/* === TITHI INFO === */
|
||
.tithi-info-section {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 18px 22px; margin-top: 20px;
|
||
}
|
||
.panchanga-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px;
|
||
}
|
||
.tithi-item { font-size: 13px; color: var(--text-body); }
|
||
.tithi-item .tithi-label { color: var(--text-muted); font-size: 11px; }
|
||
.tithi-item .tithi-value { color: var(--text-heading); font-weight: 500; }
|
||
|
||
/* Chart Style Toggle */
|
||
.chart-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
|
||
.chart-style-toggle { display: flex; gap: 0; border: 1px solid var(--border-card); border-radius: 6px; overflow: hidden; }
|
||
.style-btn {
|
||
padding: 4px 12px; font-size: 12px; border: none; background: var(--bg-white);
|
||
color: var(--text-secondary); cursor: pointer; transition: var(--transition);
|
||
}
|
||
.style-btn.active { background: var(--accent); color: var(--text-on-dark); }
|
||
.style-btn:hover:not(.active) { background: var(--bg-surface); }
|
||
|
||
/* === ARUDHA QUICK === */
|
||
.arudha-quick-section {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 18px 22px; margin-top: 16px;
|
||
}
|
||
.arudha-quick-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; }
|
||
.arudha-quick-item {
|
||
padding: 8px 12px; background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm); font-size: 12px;
|
||
}
|
||
.arudha-quick-item .ar-label { color: var(--purple); font-weight: 600; font-size: 11px; }
|
||
.arudha-quick-item .ar-sign { color: var(--text-heading); }
|
||
|
||
/* === KARAKA === */
|
||
.karaka-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 16px; }
|
||
.karaka-panel {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 20px;
|
||
}
|
||
.karaka-grid { display: grid; gap: 8px; }
|
||
.karaka-item {
|
||
display: flex; align-items: center; gap: 12px; padding: 10px 14px;
|
||
background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.karaka-item .k-label { font-size: 11px; color: var(--purple); font-weight: 600; min-width: 50px; }
|
||
.karaka-item .k-planet { font-size: 14px; color: var(--text-heading); font-weight: 500; }
|
||
.karaka-item .k-detail { font-size: 11px; color: var(--text-muted); }
|
||
.karaka-item .k-dk { border-left: 3px solid var(--purple); }
|
||
.karaka-note {
|
||
padding: 16px 20px; background: var(--purple-soft); border: 1px solid rgba(109,40,217,0.12);
|
||
border-radius: var(--radius-sm); font-size: 13px; color: var(--text-secondary); line-height: 1.7;
|
||
}
|
||
|
||
/* === HOUSE ANALYSIS === */
|
||
.house-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 14px; }
|
||
.house-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 18px; transition: var(--transition);
|
||
}
|
||
.house-card::before { display: none; }
|
||
.house-card:hover { border-color: var(--accent); }
|
||
.house-card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
|
||
.house-card-num { font-size: 18px; font-weight: 600; color: var(--text-heading); }
|
||
.house-card-sign { font-size: 13px; color: var(--text-secondary); }
|
||
.house-card-lord { font-size: 12px; color: var(--purple); margin-bottom: 8px; }
|
||
.house-card-occupants { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 8px; }
|
||
.occupant-badge {
|
||
padding: 3px 10px; background: var(--accent-soft); border: 1px solid rgba(34,34,34,0.08);
|
||
border-radius: 6px; font-size: 11px; color: var(--text-heading);
|
||
}
|
||
.house-card-reading { font-size: 12px; color: var(--text-secondary); line-height: 1.7; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--border-light); }
|
||
|
||
/* === ASPECTS === */
|
||
.aspects-legend { display: flex; gap: 16px; margin-bottom: 16px; }
|
||
.legend-item { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--text-muted); }
|
||
.legend-dot { width: 8px; height: 8px; border-radius: 50%; box-shadow: none; }
|
||
.legend-dot.friendly { background: var(--green); }
|
||
.legend-dot.neutral { background: var(--amber); }
|
||
.legend-dot.hostile { background: var(--red); }
|
||
.aspects-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 8px; }
|
||
.aspect-row {
|
||
display: flex; align-items: center; gap: 12px; padding: 10px 14px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); transition: var(--transition);
|
||
}
|
||
.aspect-row:hover { border-color: var(--accent); }
|
||
.aspect-from, .aspect-to { font-size: 14px; font-weight: 500; color: var(--text-heading); }
|
||
.aspect-arrow { color: var(--text-muted); font-size: 12px; }
|
||
.aspect-type { font-size: 11px; padding: 3px 10px; border-radius: 6px; font-weight: 500; }
|
||
.aspect-type.opposition { background: rgba(220,38,38,0.08); color: var(--red); }
|
||
.aspect-type.trine { background: rgba(22,163,74,0.08); color: var(--green); }
|
||
.aspect-type.special { background: var(--purple-soft); color: var(--purple); }
|
||
.aspect-friendly { border-left: 3px solid var(--green); }
|
||
.aspect-hostile { border-left: 3px solid var(--red); }
|
||
|
||
/* === YOGA === */
|
||
.yoga-summary { display: flex; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
|
||
.yoga-stat {
|
||
padding: 8px 14px; background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: 6px; font-size: 13px; color: var(--text-secondary);
|
||
}
|
||
.yoga-stat strong { color: var(--text-heading); font-size: 18px; margin-right: 4px; }
|
||
.yoga-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
|
||
.yoga-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 18px; transition: var(--transition);
|
||
}
|
||
.yoga-card::before { display: none; }
|
||
.yoga-card:hover { border-color: var(--accent); }
|
||
.yoga-card .yoga-name { font-size: 15px; font-weight: 600; color: var(--text-heading); margin-bottom: 2px; }
|
||
.yoga-card .yoga-name-cn { font-size: 12px; color: var(--text-secondary); }
|
||
.yoga-card .yoga-combo { font-size: 12px; color: var(--purple); margin: 8px 0; }
|
||
.yoga-card .yoga-strength {
|
||
display: inline-block; font-size: 11px; padding: 3px 10px;
|
||
border-radius: 6px; background: var(--accent-soft); color: var(--text-heading);
|
||
}
|
||
|
||
/* === VARGA === */
|
||
.varga-selector {
|
||
display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px;
|
||
}
|
||
.varga-btn {
|
||
padding: 8px 16px; background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: 6px; font-size: 13px; color: var(--text-secondary); cursor: pointer;
|
||
transition: var(--transition); font-family: var(--font-body);
|
||
}
|
||
.varga-btn:hover { border-color: var(--accent); color: var(--text-heading); }
|
||
.varga-btn.active { background: var(--accent); color: var(--text-on-dark); border-color: var(--accent); }
|
||
|
||
/* === D9 MARRIAGE REPORT === */
|
||
.d9-marriage-section { margin-top: 20px; }
|
||
.d9-panel {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 20px;
|
||
}
|
||
.d9-panel-head {
|
||
display: flex; justify-content: space-between; align-items: flex-start;
|
||
gap: 18px; margin-bottom: 16px;
|
||
}
|
||
.d9-panel-head h4 { font-size: 16px; color: var(--text-heading); margin-bottom: 4px; }
|
||
.d9-panel-head p { font-size: 12px; color: var(--text-secondary); max-width: 680px; }
|
||
.d9-score {
|
||
min-width: 118px; padding: 10px 12px; border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm); background: var(--bg-surface); text-align: center;
|
||
}
|
||
.d9-score span { display: block; font-size: 11px; color: var(--text-secondary); }
|
||
.d9-score strong { display: block; font-size: 20px; color: var(--text-heading); line-height: 1.2; }
|
||
.d9-score-green { border-color: rgba(22,163,74,0.28); background: rgba(22,163,74,0.08); }
|
||
.d9-score-yellow { border-color: rgba(217,119,6,0.28); background: rgba(217,119,6,0.08); }
|
||
.d9-score-orange { border-color: rgba(234,88,12,0.28); background: rgba(234,88,12,0.08); }
|
||
.d9-score-red { border-color: rgba(220,38,38,0.28); background: rgba(220,38,38,0.08); }
|
||
.d9-core-grid {
|
||
display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 10px; margin-bottom: 14px;
|
||
}
|
||
.d9-core-card {
|
||
background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm); padding: 12px;
|
||
}
|
||
.d9-core-card span { display: block; font-size: 11px; color: var(--text-muted); margin-bottom: 4px; }
|
||
.d9-core-card strong { display: block; font-size: 14px; color: var(--text-heading); margin-bottom: 4px; }
|
||
.d9-core-card p { font-size: 11px; color: var(--text-secondary); line-height: 1.5; }
|
||
.d9-flags {
|
||
display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 10px; margin-bottom: 14px;
|
||
}
|
||
.d9-flag {
|
||
background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-left-width: 4px; border-radius: var(--radius-sm); padding: 12px;
|
||
}
|
||
.d9-flag-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 4px; }
|
||
.d9-flag-head strong { font-size: 13px; color: var(--text-heading); }
|
||
.d9-flag-head span {
|
||
flex: 0 0 auto; font-size: 11px; padding: 2px 7px;
|
||
border-radius: 999px; background: var(--bg-white); color: var(--text-secondary);
|
||
}
|
||
.d9-flag p { font-size: 12px; color: var(--text-secondary); line-height: 1.55; }
|
||
.d9-flag-green { border-left-color: var(--green); }
|
||
.d9-flag-yellow { border-left-color: var(--amber); }
|
||
.d9-flag-red { border-left-color: var(--red); }
|
||
.d9-evidence {
|
||
display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
|
||
gap: 14px; padding-top: 12px; border-top: 1px solid var(--border-light);
|
||
}
|
||
.d9-evidence strong { color: var(--text-heading); font-size: 13px; }
|
||
.d9-evidence ul { margin-top: 8px; padding-left: 18px; }
|
||
.d9-evidence li { font-size: 12px; color: var(--text-secondary); margin-bottom: 4px; }
|
||
.d9-evidence p {
|
||
font-size: 12px; color: var(--text-secondary); background: var(--bg-surface);
|
||
border: 1px solid var(--border-light); border-radius: var(--radius-sm); padding: 12px;
|
||
}
|
||
.d9-empty { color: var(--text-secondary); font-size: 13px; text-align: center; padding: 12px; }
|
||
|
||
/* === ARUDHA SECTION (in Vargas tab) === */
|
||
.arudha-section {
|
||
margin-top: 20px; padding: 20px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md);
|
||
}
|
||
.arudha-title { font-size: 15px; font-weight: 600; color: var(--text-heading); margin-bottom: 12px; }
|
||
.arudha-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
|
||
.arudha-item {
|
||
padding: 10px 14px; background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.arudha-item .ar-pada { font-size: 11px; color: var(--purple); font-weight: 600; }
|
||
.arudha-item .ar-sign { font-size: 13px; color: var(--text-heading); }
|
||
.arudha-item .ar-house { font-size: 11px; color: var(--text-muted); }
|
||
|
||
/* === ASHTAKAVARGA === */
|
||
.av-summary {
|
||
display: flex; gap: 16px; margin-bottom: 20px; flex-wrap: wrap;
|
||
}
|
||
.av-total-badge {
|
||
padding: 10px 18px; background: var(--purple-soft); border: 1px solid rgba(109,40,217,0.15);
|
||
border-radius: 6px; font-size: 14px; color: var(--purple); font-weight: 600;
|
||
}
|
||
.av-chart-container { max-width: 420px; margin: 0 auto 20px; }
|
||
.av-details {
|
||
display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 12px;
|
||
}
|
||
.av-house-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); padding: 14px;
|
||
}
|
||
.av-house-card .av-house-num { font-size: 14px; font-weight: 600; color: var(--text-heading); margin-bottom: 6px; }
|
||
.av-house-card .av-score { font-size: 22px; font-weight: 700; color: var(--purple); }
|
||
.av-house-card .av-score-bar { height: 4px; background: var(--border-light); border-radius: 2px; margin-top: 6px; }
|
||
.av-house-card .av-score-fill { height: 100%; background: var(--purple); border-radius: 2px; transition: width 0.5s ease; }
|
||
.av-house-card .av-bav-row { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 6px; }
|
||
.av-house-card .av-bav-dot {
|
||
width: 8px; height: 8px; border-radius: 50%;
|
||
background: var(--border-light); font-size: 0;
|
||
}
|
||
.av-house-card .av-bav-dot.contrib { background: var(--purple); }
|
||
|
||
/* === SHADBALA === */
|
||
.shadbala-table-wrap { overflow-x: auto; }
|
||
.shadbala-note {
|
||
margin-top: 16px; padding: 16px 20px; background: var(--purple-soft);
|
||
border: 1px solid rgba(109,40,217,0.12); border-radius: var(--radius-sm);
|
||
font-size: 13px; color: var(--text-secondary); line-height: 1.7;
|
||
}
|
||
.shadbala-bar { height: 6px; background: var(--border-light); border-radius: 3px; margin-top: 4px; }
|
||
.shadbala-bar-fill { height: 100%; border-radius: 3px; }
|
||
.shadbala-bar-fill.strong { background: var(--green); }
|
||
.shadbala-bar-fill.medium { background: var(--amber); }
|
||
.shadbala-bar-fill.weak { background: var(--red); }
|
||
|
||
/* === DASHA === */
|
||
.dasha-current {
|
||
display: flex; align-items: center; gap: 20px;
|
||
padding: 18px 22px; background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); margin-bottom: 20px;
|
||
}
|
||
.dasha-current-label { font-size: 11px; color: var(--text-muted); letter-spacing: 0.5px; text-transform: uppercase; }
|
||
.dasha-current-planet { font-size: 22px; font-weight: 700; color: var(--text-heading); }
|
||
.dasha-current-sub { font-size: 14px; color: var(--purple); }
|
||
.dasha-current-date { font-size: 12px; color: var(--text-secondary); margin-left: auto; }
|
||
.dasha-theme { font-size: 13px; font-weight: 600; color: var(--text-primary); margin-top: 6px; padding: 4px 8px; background: var(--card-bg); border-radius: 6px; }
|
||
.dasha-detail { font-size: 11px; margin-top: 4px; display: flex; gap: 12px; flex-wrap: wrap; }
|
||
.dasha-pos { color: #2d8f4e; }
|
||
.dasha-neg { color: #c0392b; }
|
||
|
||
.dasha-timeline { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 8px; margin-bottom: 20px; }
|
||
.dasha-bar {
|
||
flex-shrink: 0; min-width: 60px; padding: 10px 12px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); text-align: center; cursor: pointer; transition: var(--transition);
|
||
}
|
||
.dasha-bar:hover { border-color: var(--accent); }
|
||
.dasha-bar.active { border-color: var(--accent); background: var(--accent-soft); }
|
||
.dasha-bar .dasha-planet { font-size: 14px; font-weight: 500; color: var(--text-heading); }
|
||
.dasha-bar .dasha-years { font-size: 11px; color: var(--text-muted); }
|
||
.dasha-bar .dasha-date { font-size: 10px; color: var(--text-muted); margin-top: 2px; }
|
||
|
||
.dasha-detail-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
|
||
.antardasha-panel { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 6px; }
|
||
.antardasha-item {
|
||
padding: 8px; background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); text-align: center; font-size: 12px; transition: var(--transition);
|
||
cursor: pointer;
|
||
}
|
||
.antardasha-item.current { border-color: var(--purple); background: var(--purple-soft); }
|
||
.antardasha-item.selected { border-color: var(--accent); background: var(--accent-soft); }
|
||
.antardasha-item .ad-planet { color: var(--text-heading); font-weight: 500; }
|
||
.antardasha-item .ad-date { color: var(--text-muted); font-size: 10px; margin-top: 2px; }
|
||
|
||
.pratyantardasha-panel {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 16px;
|
||
}
|
||
.pratyantardasha-panel h4 { font-size: 13px; color: var(--text-heading); font-weight: 600; margin-bottom: 10px; }
|
||
.praty-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(90px, 1fr)); gap: 4px; }
|
||
.praty-item {
|
||
padding: 6px 8px; background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm); text-align: center; font-size: 11px;
|
||
}
|
||
.praty-item.current { border-color: var(--purple); background: var(--purple-soft); }
|
||
.praty-item .praty-planet { color: var(--text-heading); font-weight: 500; font-size: 12px; }
|
||
.praty-item .praty-date { color: var(--text-muted); font-size: 9px; margin-top: 2px; }
|
||
|
||
/* === TRANSIT === */
|
||
.transit-date { font-size: 13px; color: var(--text-muted); margin-bottom: 16px; }
|
||
.transit-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 24px; }
|
||
.transit-chart-wrap, .transit-overlay-wrap {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 20px;
|
||
}
|
||
.transit-overlay-grid { display: grid; grid-template-columns: 1fr; gap: 8px; }
|
||
.transit-overlay-item {
|
||
display: flex; align-items: center; gap: 10px; padding: 10px 14px;
|
||
background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.transit-overlay-item .planet-symbol { font-size: 18px; }
|
||
.transit-planet-info { flex: 1; }
|
||
.transit-planet-name { font-size: 13px; color: var(--text-heading); font-weight: 500; }
|
||
.transit-planet-detail { font-size: 11px; color: var(--text-muted); }
|
||
.transit-house-badge {
|
||
padding: 4px 12px; background: var(--accent-soft); border: 1px solid rgba(34,34,34,0.08);
|
||
border-radius: 6px; font-size: 12px; color: var(--text-heading); font-weight: 500;
|
||
}
|
||
|
||
.double-transit-section { margin-top: 20px; }
|
||
.double-transit-section h4 { font-size: 14px; font-weight: 600; color: var(--text-heading); margin-bottom: 10px; }
|
||
.dt-card {
|
||
padding: 12px 16px; background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); margin-bottom: 8px;
|
||
}
|
||
.dt-card .dt-house { font-size: 14px; color: var(--text-heading); font-weight: 500; }
|
||
.dt-card .dt-desc { font-size: 12px; color: var(--text-secondary); margin-top: 4px; }
|
||
|
||
.sade-sati-section { margin-top: 20px; }
|
||
.sade-sati-badge { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 6px; font-size: 14px; }
|
||
.sade-sati-badge.active { background: rgba(220,38,38,0.08); border: 1px solid rgba(220,38,38,0.2); color: var(--red); }
|
||
.sade-sati-badge.inactive { background: rgba(22,163,74,0.06); border: 1px solid rgba(22,163,74,0.15); color: var(--green); }
|
||
|
||
/* Transit Controls v2.0 */
|
||
.transit-controls { background: var(--bg-card); border-radius: 10px; padding: 16px; margin-bottom: 20px; }
|
||
.transit-controls-row { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; }
|
||
.transit-controls .form-group label { display: block; margin-bottom: 4px; color: var(--text-secondary); }
|
||
.transit-controls .transit-date { font-size: 13px; color: var(--text-muted); margin-top: 10px; margin-bottom: 0; }
|
||
.transit-planets-table { font-size: 12px; }
|
||
.transit-planets-table th { font-size: 11px; padding: 6px 8px; }
|
||
.transit-planets-table td { padding: 5px 8px; }
|
||
.transit-conj, .transit-asp { font-size: 11px; color: var(--text-secondary); margin-top: 2px; }
|
||
.transit-effect { font-size: 11px; color: var(--purple); margin-top: 2px; }
|
||
.sade-sati-detail { font-size: 12px; color: var(--text-secondary); margin-top: 8px; line-height: 1.5; }
|
||
.sade-sati-info { font-size: 11px; color: var(--text-muted); margin-top: 6px; }
|
||
.dt-detail { font-size: 11px; color: var(--text-secondary); margin-top: 2px; }
|
||
|
||
/* Transit AV Grid */
|
||
.transit-av-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
|
||
.transit-av-item { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 6px; font-size: 12px; }
|
||
.transit-av-item.av-fav { background: rgba(22,163,74,0.06); border: 1px solid rgba(22,163,74,0.15); }
|
||
.transit-av-item.av-chal { background: rgba(220,38,38,0.05); border: 1px solid rgba(220,38,38,0.15); }
|
||
.transit-av-item.av-neu { background: var(--bg-surface); border: 1px solid var(--border-light); }
|
||
.av-planet { font-weight: 600; min-width: 36px; }
|
||
.av-sign { color: var(--text-secondary); flex: 1; }
|
||
.av-score { color: var(--text-muted); font-size: 11px; }
|
||
.av-quality { font-weight: 600; font-size: 11px; }
|
||
|
||
/* Transit House Impact */
|
||
.house-impact-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 8px; }
|
||
.hi-card { padding: 10px 12px; border-radius: 8px; font-size: 12px; }
|
||
.hi-card.hi-intense { background: rgba(109,40,217,0.06); border: 1px solid rgba(109,40,217,0.15); }
|
||
.hi-card.hi-moderate { background: rgba(217,119,6,0.05); border: 1px solid rgba(217,119,6,0.15); }
|
||
.hi-card.hi-light { background: var(--bg-surface); border: 1px solid var(--border-light); }
|
||
.hi-house { font-weight: 600; margin-bottom: 4px; }
|
||
.hi-house small { font-weight: 400; color: var(--text-muted); margin-left: 4px; }
|
||
.hi-planets, .hi-aspects { font-size: 11px; color: var(--text-secondary); }
|
||
.hi-transit { color: var(--accent); font-weight: 500; margin-right: 4px; }
|
||
.hi-asp { color: var(--purple); margin-right: 4px; }
|
||
|
||
/* === DEEP ANALYSIS === */
|
||
.deep-section {
|
||
margin-bottom: 28px;
|
||
}
|
||
.deep-section .sub-title {
|
||
margin-bottom: 12px;
|
||
padding-bottom: 8px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
}
|
||
|
||
/* Raman FN Table */
|
||
.fn-table {
|
||
display: flex; flex-direction: column; gap: 6px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 16px 20px;
|
||
}
|
||
.fn-row { display: flex; align-items: center; gap: 12px; padding: 6px 0; }
|
||
.fn-label { font-size: 12px; color: var(--text-muted); min-width: 80px; font-weight: 500; }
|
||
.fn-badges { display: flex; gap: 6px; flex-wrap: wrap; }
|
||
.fn-badge {
|
||
padding: 3px 10px; border-radius: 6px; font-size: 12px; font-weight: 500;
|
||
}
|
||
.fn-badge.fn-best { background: rgba(22,163,74,0.1); color: #16a34a; border: 1px solid rgba(22,163,74,0.2); }
|
||
.fn-badge.fn-good { background: rgba(22,163,74,0.06); color: #16a34a; border: 1px solid rgba(22,163,74,0.12); }
|
||
.fn-badge.fn-yk { background: rgba(109,40,217,0.12); color: #6d28d9; border: 1px solid rgba(109,40,217,0.25); font-weight: 700; }
|
||
.fn-badge.fn-neutral { background: var(--bg-surface); color: var(--text-secondary); border: 1px solid var(--border-light); }
|
||
.fn-badge.fn-bad { background: rgba(220,38,38,0.06); color: #dc2626; border: 1px solid rgba(220,38,38,0.12); }
|
||
.fn-badge.fn-worst { background: rgba(220,38,38,0.1); color: #dc2626; border: 1px solid rgba(220,38,38,0.2); }
|
||
.fn-yk-row { background: var(--purple-soft); border-radius: 6px; padding: 8px 12px; }
|
||
|
||
/* PACDARES */
|
||
.pacdares-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 12px;
|
||
}
|
||
.pac-section {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 16px;
|
||
}
|
||
.pac-header { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
|
||
.pac-icon { font-size: 16px; }
|
||
.pac-title { font-size: 13px; font-weight: 600; color: var(--text-heading); flex: 1; }
|
||
.pac-count {
|
||
padding: 2px 8px; background: var(--accent-soft); border-radius: 4px;
|
||
font-size: 11px; color: var(--text-heading); font-weight: 600;
|
||
}
|
||
.pac-desc { font-size: 11px; color: var(--text-muted); margin-bottom: 10px; }
|
||
.pac-empty { font-size: 12px; color: var(--text-muted); font-style: italic; }
|
||
.pac-items { display: flex; flex-direction: column; gap: 4px; }
|
||
.pac-item {
|
||
display: flex; align-items: center; gap: 8px; padding: 6px 10px;
|
||
background: var(--bg-surface); border: 1px solid var(--border-light);
|
||
border-radius: 6px; font-size: 12px; flex-wrap: wrap;
|
||
}
|
||
.pac-item.pac-poll { border-left: 3px solid var(--red); background: rgba(220,38,38,0.04); }
|
||
.pi-planet { font-weight: 600; color: var(--text-heading); }
|
||
.pi-detail { color: var(--text-secondary); }
|
||
.pi-fn { padding: 1px 6px; border-radius: 4px; font-size: 10px; font-weight: 600; }
|
||
.pi-fn.fn-best { background: rgba(22,163,74,0.1); color: #16a34a; }
|
||
.pi-fn.fn-good { background: rgba(22,163,74,0.06); color: #16a34a; }
|
||
.pi-fn.fn-yk { background: rgba(109,40,217,0.1); color: #6d28d9; }
|
||
.pi-fn.fn-neut { background: var(--bg-surface); color: var(--text-muted); }
|
||
.pi-fn.fn-bad { background: rgba(220,38,38,0.06); color: #dc2626; }
|
||
.pi-fn.fn-worst { background: rgba(220,38,38,0.1); color: #dc2626; }
|
||
.pi-hr { color: var(--text-muted); font-size: 11px; }
|
||
.pi-recv { padding: 2px 6px; border-radius: 4px; font-size: 11px; }
|
||
.pi-recv.recv-good { background: rgba(22,163,74,0.06); color: #16a34a; }
|
||
.pi-recv.recv-bad { background: rgba(220,38,38,0.06); color: #dc2626; }
|
||
.pi-recv.recv-neut { background: var(--bg-surface); color: var(--text-muted); }
|
||
.pi-poll-badge { color: var(--red); font-weight: 600; font-size: 11px; }
|
||
.pi-planets { font-weight: 500; color: var(--text-heading); }
|
||
.pi-house { color: var(--purple); font-size: 11px; }
|
||
.pi-type { font-weight: 500; color: var(--text-heading); }
|
||
.pi-lords { color: var(--purple); }
|
||
.pi-str { color: var(--text-muted); font-size: 11px; }
|
||
.pi-desc { color: var(--text-secondary); font-size: 11px; }
|
||
|
||
/* Argala */
|
||
.argala-dashboard {
|
||
display: grid;
|
||
gap: 12px;
|
||
}
|
||
.argala-summary {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.argala-summary div,
|
||
.argala-note,
|
||
.argala-card,
|
||
.argala-empty {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.argala-summary div {
|
||
padding: 12px;
|
||
text-align: center;
|
||
}
|
||
.argala-summary strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 22px;
|
||
line-height: 1.2;
|
||
}
|
||
.argala-summary span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.argala-note {
|
||
padding: 13px 14px;
|
||
border-left: 4px solid var(--accent);
|
||
}
|
||
.argala-note strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
margin-bottom: 4px;
|
||
font-size: 13px;
|
||
}
|
||
.argala-note p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.7;
|
||
}
|
||
.argala-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.argala-card {
|
||
padding: 13px;
|
||
border-left-width: 4px;
|
||
}
|
||
.argala-card-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: center;
|
||
margin-bottom: 10px;
|
||
}
|
||
.argala-card-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.argala-card-head span {
|
||
flex: 0 0 auto;
|
||
padding: 2px 7px;
|
||
border-radius: 999px;
|
||
background: var(--bg-white);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.argala-card-body {
|
||
display: grid;
|
||
gap: 8px;
|
||
}
|
||
.argala-card-body div {
|
||
display: grid;
|
||
gap: 4px;
|
||
}
|
||
.argala-card-body b {
|
||
color: var(--text-heading);
|
||
font-size: 11px;
|
||
}
|
||
.argala-card-body span {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.argala-strong,
|
||
.argala-supported { border-left-color: var(--green); }
|
||
.argala-blocked { border-left-color: var(--red); }
|
||
.argala-neutral { border-left-color: var(--amber); }
|
||
.argala-empty {
|
||
padding: 16px;
|
||
color: var(--text-secondary);
|
||
text-align: center;
|
||
font-size: 13px;
|
||
}
|
||
|
||
/* House Influence */
|
||
.hi-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px;
|
||
}
|
||
.hi-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); padding: 14px; text-align: center;
|
||
}
|
||
.hi-card.vd-strong { border-left: 3px solid #16a34a; }
|
||
.hi-card.vd-good { border-left: 3px solid rgba(22,163,74,0.5); }
|
||
.hi-card.vd-neut { border-left: 3px solid var(--amber); }
|
||
.hi-card.vd-weak { border-left: 3px solid rgba(220,38,38,0.5); }
|
||
.hi-card.vd-afflicted { border-left: 3px solid #dc2626; background: rgba(220,38,38,0.02); }
|
||
.hi-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
|
||
.hi-num { font-size: 16px; font-weight: 700; color: var(--text-heading); }
|
||
.hi-sign { font-size: 11px; color: var(--text-secondary); }
|
||
.hi-lord { font-size: 10px; color: var(--purple); }
|
||
.hi-score { font-size: 24px; font-weight: 700; margin: 4px 0; }
|
||
.hi-score.vd-strong { color: #16a34a; }
|
||
.hi-score.vd-good { color: #16a34a; }
|
||
.hi-score.vd-neut { color: var(--amber); }
|
||
.hi-score.vd-weak { color: #dc2626; }
|
||
.hi-score.vd-afflicted { color: #dc2626; }
|
||
.hi-verdict { font-size: 11px; font-weight: 600; margin-bottom: 8px; }
|
||
.hi-verdict.vd-strong { color: #16a34a; }
|
||
.hi-verdict.vd-good { color: #16a34a; }
|
||
.hi-verdict.vd-neut { color: var(--amber); }
|
||
.hi-verdict.vd-weak { color: #dc2626; }
|
||
.hi-verdict.vd-afflicted { color: #dc2626; }
|
||
.hi-items { text-align: left; }
|
||
.hi-influence {
|
||
display: flex; justify-content: space-between; align-items: center;
|
||
padding: 2px 6px; font-size: 11px; border-radius: 3px;
|
||
}
|
||
.hi-influence.hi-pos { color: #16a34a; }
|
||
.hi-influence.hi-neg { color: #dc2626; }
|
||
.hi-influence.hi-zero { color: var(--text-muted); }
|
||
.hi-src { font-size: 10px; }
|
||
.hi-sc { font-weight: 600; }
|
||
|
||
/* Vargottama */
|
||
.vg-grid { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 12px; }
|
||
.vg-card {
|
||
display: flex; align-items: center; gap: 10px; padding: 10px 16px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.vg-planet { font-weight: 600; color: var(--text-heading); font-size: 14px; }
|
||
.vg-badge {
|
||
padding: 3px 10px; background: var(--purple-soft); border: 1px solid rgba(109,40,217,0.2);
|
||
border-radius: 6px; font-size: 11px; color: var(--purple); font-weight: 600;
|
||
}
|
||
.vg-sign { font-size: 12px; color: var(--text-secondary); }
|
||
.vg-note {
|
||
padding: 12px 16px; background: var(--purple-soft);
|
||
border: 1px solid rgba(109,40,217,0.12); border-radius: var(--radius-sm);
|
||
font-size: 12px; color: var(--text-secondary); line-height: 1.6;
|
||
}
|
||
.vg-empty { font-size: 13px; color: var(--text-muted); }
|
||
|
||
/* Frequency */
|
||
.freq-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px;
|
||
}
|
||
.freq-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); padding: 14px;
|
||
}
|
||
.freq-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
|
||
.freq-planet { font-weight: 600; color: var(--text-heading); font-size: 14px; }
|
||
.freq-pct { font-size: 18px; font-weight: 700; }
|
||
.freq-pct.freq-vhigh { color: #6d28d9; }
|
||
.freq-pct.freq-high { color: #16a34a; }
|
||
.freq-pct.freq-mid { color: var(--amber); }
|
||
.freq-pct.freq-low { color: var(--text-muted); }
|
||
.freq-top { font-size: 12px; color: var(--text-secondary); margin-bottom: 2px; }
|
||
.freq-level { font-size: 11px; font-weight: 600; margin-bottom: 6px; }
|
||
.freq-level.freq-vhigh { color: #6d28d9; }
|
||
.freq-level.freq-high { color: #16a34a; }
|
||
.freq-level.freq-mid { color: var(--amber); }
|
||
.freq-level.freq-low { color: var(--text-muted); }
|
||
.freq-bar-wrap { height: 4px; background: var(--border-light); border-radius: 2px; margin-bottom: 6px; }
|
||
.freq-bar { height: 100%; background: var(--purple); border-radius: 2px; transition: width 0.5s ease; }
|
||
.freq-dist { font-size: 10px; color: var(--text-muted); }
|
||
|
||
/* Triangle Table */
|
||
.tri-table {
|
||
width: 100%; border-collapse: collapse; font-size: 12px;
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); overflow: hidden;
|
||
}
|
||
.tri-table th {
|
||
text-align: left; padding: 10px 10px; color: var(--text-secondary); font-weight: 500;
|
||
font-size: 11px; border-bottom: 1px solid var(--border-light); background: var(--bg-surface);
|
||
}
|
||
.tri-table td { padding: 8px 10px; border-bottom: 1px solid var(--border-light); }
|
||
.tri-table .st-good { color: #16a34a; font-weight: 500; }
|
||
.tri-table .st-bad { color: #dc2626; font-weight: 500; }
|
||
.tri-table .st-neut { color: var(--text-muted); }
|
||
.tri-table .tri-best { color: #16a34a; font-weight: 600; }
|
||
.tri-table .tri-break { color: #dc2626; font-weight: 600; }
|
||
.tri-table .tri-comeback { color: #6d28d9; font-weight: 600; }
|
||
.tri-table .tri-worst { color: #dc2626; font-weight: 600; }
|
||
.tri-table .tri-ok { color: var(--text-secondary); }
|
||
|
||
/* Raman Grades */
|
||
.rg-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px;
|
||
}
|
||
.rg-card {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm); padding: 14px;
|
||
}
|
||
.rg-card.grade-a { border-left: 4px solid #16a34a; }
|
||
.rg-card.grade-b { border-left: 4px solid rgba(22,163,74,0.5); }
|
||
.rg-card.grade-c { border-left: 4px solid var(--amber); }
|
||
.rg-card.grade-d { border-left: 4px solid rgba(220,38,38,0.5); }
|
||
.rg-card.grade-f { border-left: 4px solid #dc2626; }
|
||
.rg-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px; }
|
||
.rg-num { font-size: 16px; font-weight: 700; color: var(--text-heading); }
|
||
.rg-sign { font-size: 11px; color: var(--text-secondary); }
|
||
.rg-grade {
|
||
width: 28px; height: 28px; display: flex; align-items: center; justify-content: center;
|
||
border-radius: 6px; font-size: 14px; font-weight: 700;
|
||
}
|
||
.rg-grade.grade-a { background: rgba(22,163,74,0.12); color: #16a34a; }
|
||
.rg-grade.grade-b { background: rgba(22,163,74,0.08); color: #16a34a; }
|
||
.rg-grade.grade-c { background: rgba(217,119,6,0.1); color: #d97706; }
|
||
.rg-grade.grade-d { background: rgba(220,38,38,0.08); color: #dc2626; }
|
||
.rg-grade.grade-f { background: rgba(220,38,38,0.12); color: #dc2626; }
|
||
.rg-domain { font-size: 11px; color: var(--purple); margin-bottom: 6px; }
|
||
.rg-scores { font-size: 12px; color: var(--text-body); margin-bottom: 4px; }
|
||
.rg-pos { color: #16a34a; }
|
||
.rg-neg { color: #dc2626; }
|
||
.rg-net { font-weight: 600; color: var(--text-heading); }
|
||
.rg-lord { font-size: 11px; color: var(--text-muted); margin-bottom: 6px; }
|
||
.rg-details { display: flex; flex-direction: column; gap: 2px; }
|
||
.rg-detail { font-size: 10px; padding: 1px 4px; }
|
||
.rg-detail.rd-pos { color: #16a34a; }
|
||
.rg-detail.rd-neg { color: #dc2626; }
|
||
.rg-detail.rd-neut { color: var(--text-muted); }
|
||
|
||
/* === REVEAL === */
|
||
.reveal { opacity: 1; transform: none; }
|
||
.reveal.visible { opacity: 1; transform: none; }
|
||
|
||
/* === TOOLTIP 术语弹窗(点读机系统 v2.0) === */
|
||
/* 整个星盘页面都可以点击查词 */
|
||
#page-chart .tab-panel.active {
|
||
cursor: help;
|
||
}
|
||
/* 已标记术语的高亮样式 */
|
||
.jt-clickable {
|
||
cursor: help;
|
||
transition: all 0.15s;
|
||
border-radius: 3px;
|
||
position: relative;
|
||
}
|
||
.jt-clickable:hover {
|
||
background: rgba(109,40,217,0.1);
|
||
color: var(--purple);
|
||
}
|
||
.jt-clickable::after {
|
||
content: 'ⓘ';
|
||
font-size: 9px;
|
||
vertical-align: super;
|
||
margin-left: 2px;
|
||
opacity: 0;
|
||
color: var(--purple);
|
||
transition: opacity 0.15s;
|
||
pointer-events: none;
|
||
}
|
||
.jt-clickable:hover::after {
|
||
opacity: 0.7;
|
||
}
|
||
.jt-tooltip {
|
||
position: fixed;
|
||
top: 0; left: 0; right: 0; bottom: 0;
|
||
z-index: 9999;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
.jt-overlay {
|
||
position: absolute;
|
||
top: 0; left: 0; right: 0; bottom: 0;
|
||
background: rgba(0,0,0,0.25);
|
||
backdrop-filter: blur(2px);
|
||
}
|
||
.jt-card {
|
||
position: relative;
|
||
background: var(--bg-white);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md);
|
||
padding: 28px 32px;
|
||
max-width: 460px;
|
||
width: 90%;
|
||
box-shadow: 0 8px 32px rgba(0,0,0,0.12);
|
||
animation: jtIn 0.2s ease;
|
||
}
|
||
@keyframes jtIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
|
||
.jt-header {
|
||
display: flex; justify-content: space-between; align-items: center;
|
||
margin-bottom: 12px;
|
||
}
|
||
.jt-cat {
|
||
font-size: 11px; text-transform: uppercase; letter-spacing: 1px;
|
||
color: var(--purple); font-weight: 600;
|
||
padding: 2px 10px; background: var(--purple-soft);
|
||
border-radius: 4px;
|
||
}
|
||
.jt-close {
|
||
font-size: 22px; color: var(--text-muted); cursor: pointer;
|
||
line-height: 1; padding: 4px 8px; border-radius: 4px;
|
||
transition: var(--transition);
|
||
}
|
||
.jt-close:hover { background: var(--bg-surface); color: var(--text-heading); }
|
||
.jt-title {
|
||
font-size: 20px; font-weight: 700; color: var(--text-heading);
|
||
margin-bottom: 6px;
|
||
}
|
||
.jt-names {
|
||
display: flex; gap: 12px; margin-bottom: 14px;
|
||
padding-bottom: 12px; border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.jt-sk {
|
||
font-size: 13px; color: var(--purple); font-style: italic;
|
||
}
|
||
.jt-en {
|
||
font-size: 13px; color: var(--text-secondary);
|
||
}
|
||
.jt-desc {
|
||
font-size: 14px; color: var(--text-body); line-height: 1.7;
|
||
}
|
||
|
||
/* === AI 聊天浮动按钮 === */
|
||
.ai-fab {
|
||
position: fixed;
|
||
bottom: 28px; right: 28px;
|
||
height: 44px;
|
||
padding: 0 18px 0 14px;
|
||
border-radius: 22px;
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
border: none; cursor: pointer;
|
||
font-size: 14px;
|
||
box-shadow: 0 4px 16px rgba(0,0,0,0.15);
|
||
z-index: 8000;
|
||
display: flex; align-items: center; gap: 6px;
|
||
transition: transform 0.2s, box-shadow 0.2s;
|
||
font-weight: 500;
|
||
letter-spacing: 0.5px;
|
||
}
|
||
.ai-fab-icon { font-size: 16px; line-height: 1; }
|
||
.ai-fab-text { font-size: 13px; }
|
||
.ai-fab:hover { transform: scale(1.05); box-shadow: 0 6px 24px rgba(0,0,0,0.2); }
|
||
.ai-fab:active { transform: scale(0.96); }
|
||
|
||
/* 脉冲引导动画 */
|
||
.ai-fab-pulse {
|
||
animation: aiPulse 1.5s ease-in-out 3;
|
||
}
|
||
@keyframes aiPulse {
|
||
0%, 100% { box-shadow: 0 4px 16px rgba(0,0,0,0.15); }
|
||
50% { box-shadow: 0 0 0 8px rgba(109,40,217,0.2), 0 4px 16px rgba(0,0,0,0.15); }
|
||
}
|
||
|
||
/* 首次引导气泡 */
|
||
.ai-fab-tip {
|
||
position: fixed;
|
||
bottom: 82px; right: 28px;
|
||
background: var(--purple);
|
||
color: #fff;
|
||
padding: 8px 16px;
|
||
border-radius: 10px;
|
||
font-size: 13px;
|
||
font-weight: 500;
|
||
box-shadow: 0 4px 16px rgba(109,40,217,0.3);
|
||
z-index: 8001;
|
||
transition: opacity 0.3s;
|
||
white-space: nowrap;
|
||
pointer-events: none;
|
||
}
|
||
.ai-fab-tip::after {
|
||
content: '';
|
||
position: absolute;
|
||
bottom: -6px; right: 24px;
|
||
width: 12px; height: 12px;
|
||
background: var(--purple);
|
||
transform: rotate(45deg);
|
||
border-radius: 2px;
|
||
}
|
||
|
||
/* === AI 聊天面板 === */
|
||
.ai-panel {
|
||
position: fixed;
|
||
top: 0; right: -420px;
|
||
width: 400px; height: 100vh;
|
||
background: var(--bg-white);
|
||
border-left: 1px solid var(--border-card);
|
||
box-shadow: -4px 0 24px rgba(0,0,0,0.08);
|
||
z-index: 8500;
|
||
display: flex; flex-direction: column;
|
||
transition: right 0.3s ease;
|
||
}
|
||
.ai-panel.open { right: 0; }
|
||
.ai-panel-header {
|
||
display: flex; align-items: center; justify-content: space-between;
|
||
padding: 18px 20px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
flex-shrink: 0;
|
||
}
|
||
.ai-panel-title { font-size: 16px; font-weight: 700; color: var(--text-heading); }
|
||
.ai-panel-close {
|
||
background: none; border: none; font-size: 20px;
|
||
color: var(--text-muted); cursor: pointer;
|
||
padding: 4px 8px; border-radius: 4px;
|
||
}
|
||
.ai-panel-close:hover { background: var(--bg-surface); color: var(--text-heading); }
|
||
|
||
/* 星盘库选择器 */
|
||
.ai-chart-select {
|
||
padding: 12px 20px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
flex-shrink: 0;
|
||
}
|
||
.ai-chart-select label {
|
||
font-size: 12px; color: var(--text-secondary); font-weight: 500;
|
||
display: block; margin-bottom: 6px;
|
||
}
|
||
.ai-chart-select select {
|
||
width: 100%; padding: 8px 12px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
font-size: 13px; color: var(--text-heading);
|
||
background: var(--bg-input);
|
||
font-family: var(--font-body);
|
||
}
|
||
.ai-chart-actions {
|
||
display: flex; gap: 8px; margin-top: 8px;
|
||
}
|
||
.ai-chart-btn {
|
||
flex: 1; padding: 6px 10px;
|
||
border: 1px solid var(--border-card);
|
||
border-radius: 6px;
|
||
background: var(--bg-card);
|
||
color: var(--text-body);
|
||
font-size: 12px; cursor: pointer;
|
||
font-family: var(--font-body);
|
||
transition: var(--transition);
|
||
}
|
||
.ai-chart-btn:hover { border-color: var(--accent); color: var(--text-heading); }
|
||
|
||
/* 对话区 */
|
||
.ai-messages {
|
||
flex: 1; overflow-y: auto;
|
||
padding: 16px 20px;
|
||
display: flex; flex-direction: column; gap: 12px;
|
||
}
|
||
.daily-star-card {
|
||
align-self: stretch;
|
||
padding: 18px 18px 16px;
|
||
border: 1px solid #d7c3bb;
|
||
border-radius: 8px;
|
||
background: #f7e9e4;
|
||
color: var(--text-heading);
|
||
}
|
||
.daily-star-kicker {
|
||
margin-bottom: 10px;
|
||
color: #9b493e;
|
||
font-size: 13px;
|
||
font-weight: 700;
|
||
}
|
||
.daily-star-text {
|
||
font-size: 15px;
|
||
line-height: 1.65;
|
||
}
|
||
.daily-star-evidence {
|
||
margin-top: 12px;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
}
|
||
.ai-msg {
|
||
max-width: 90%;
|
||
padding: 10px 14px;
|
||
border-radius: var(--radius-sm);
|
||
font-size: 13px; line-height: 1.6;
|
||
word-break: break-word;
|
||
}
|
||
.ai-msg.user {
|
||
align-self: flex-end;
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
border-bottom-right-radius: 2px;
|
||
}
|
||
.ai-msg.assistant {
|
||
align-self: flex-start;
|
||
background: var(--bg-surface);
|
||
color: var(--text-body);
|
||
border-bottom-left-radius: 2px;
|
||
}
|
||
.ai-msg.system {
|
||
align-self: center;
|
||
background: var(--purple-soft);
|
||
color: var(--purple);
|
||
font-size: 12px;
|
||
text-align: center;
|
||
}
|
||
.ai-msg .msg-chart-tag {
|
||
display: inline-block;
|
||
padding: 1px 6px;
|
||
background: rgba(109,40,217,0.12);
|
||
border-radius: 3px;
|
||
font-size: 11px;
|
||
color: var(--purple);
|
||
margin-left: 4px;
|
||
}
|
||
|
||
/* 输入区 */
|
||
.ai-input-area {
|
||
padding: 14px 20px;
|
||
border-top: 1px solid var(--border-light);
|
||
display: flex; gap: 10px;
|
||
flex-shrink: 0;
|
||
}
|
||
.ai-input {
|
||
flex: 1; padding: 10px 14px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
font-size: 13px; color: var(--text-heading);
|
||
font-family: var(--font-body);
|
||
background: var(--bg-input);
|
||
outline: none;
|
||
transition: var(--transition);
|
||
}
|
||
.ai-input:focus { border-color: var(--accent); }
|
||
.ai-send {
|
||
padding: 10px 18px;
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
border: none; border-radius: 6px;
|
||
font-size: 13px; font-weight: 600;
|
||
cursor: pointer;
|
||
font-family: var(--font-body);
|
||
transition: var(--transition);
|
||
}
|
||
.ai-send:hover { background: var(--accent-hover); }
|
||
.ai-send:disabled { opacity: 0.5; cursor: not-allowed; }
|
||
|
||
/* ============================================================
|
||
AUTH MODULE — 登录/注册/用户资料
|
||
============================================================ */
|
||
|
||
/* Header 右侧区域 */
|
||
.header-right { display: flex; align-items: center; gap: 16px; }
|
||
.header-right .tagline { display: block; margin: 0; font-size: 13px; color: var(--text-secondary); }
|
||
|
||
/* 语言切换按钮 */
|
||
.lang-switch-btn {
|
||
background: var(--bg-card); color: var(--text-secondary);
|
||
border: 1px solid var(--border-card); border-radius: 6px;
|
||
padding: 4px 10px; font-size: 12px; font-weight: 500;
|
||
cursor: pointer; transition: var(--transition);
|
||
white-space: nowrap; font-family: var(--font-body);
|
||
}
|
||
.lang-switch-btn:hover { border-color: var(--text-muted); color: var(--text-body); }
|
||
.lang-switch-btn.active {
|
||
background: var(--accent); color: var(--text-on-dark);
|
||
border-color: var(--accent);
|
||
}
|
||
|
||
/* 未登录 — 登录按钮 */
|
||
.auth-login-btn {
|
||
background: var(--accent); color: var(--text-on-dark);
|
||
border: none; border-radius: 6px;
|
||
padding: 6px 16px; font-size: 13px; font-weight: 600;
|
||
cursor: pointer; transition: var(--transition);
|
||
white-space: nowrap; font-family: var(--font-body);
|
||
}
|
||
.auth-login-btn:hover { background: var(--accent-hover); }
|
||
|
||
/* 已登录 — 用户信息 */
|
||
.auth-user-info { display: flex; align-items: center; gap: 8px; }
|
||
.auth-avatar {
|
||
width: 32px; height: 32px; border-radius: 50%;
|
||
background: var(--purple); color: #fff;
|
||
border: none; cursor: pointer; font-size: 14px; font-weight: 600;
|
||
display: flex; align-items: center; justify-content: center;
|
||
transition: var(--transition);
|
||
}
|
||
.auth-avatar:hover { opacity: 0.85; }
|
||
.auth-usage-badge {
|
||
background: var(--bg-card); border: 1px solid var(--border-card);
|
||
border-radius: 10px; padding: 3px 10px;
|
||
font-size: 11px; color: var(--text-secondary);
|
||
cursor: pointer; transition: var(--transition);
|
||
}
|
||
.auth-usage-badge:hover { border-color: var(--purple); color: var(--purple); }
|
||
.auth-logout {
|
||
background: none; border: none; color: var(--text-muted);
|
||
font-size: 12px; cursor: pointer; padding: 4px 8px;
|
||
transition: var(--transition); font-family: var(--font-body);
|
||
}
|
||
.auth-logout:hover { color: var(--red); }
|
||
|
||
/* === MODAL OVERLAY === */
|
||
.auth-modal-overlay {
|
||
position: fixed; top: 0; left: 0; width: 100%; height: 100%;
|
||
background: rgba(0,0,0,0.4); backdrop-filter: blur(4px);
|
||
z-index: 1000; display: flex; align-items: center; justify-content: center;
|
||
opacity: 0; visibility: hidden;
|
||
transition: opacity 0.25s ease, visibility 0.25s ease;
|
||
}
|
||
.auth-modal-overlay.open { opacity: 1; visibility: visible; }
|
||
|
||
.auth-modal {
|
||
background: var(--bg-white); border-radius: var(--radius-lg);
|
||
padding: 32px; width: 90%; max-width: 400px;
|
||
max-height: 90vh; overflow-y: auto;
|
||
box-shadow: 0 20px 60px rgba(0,0,0,0.15);
|
||
position: relative;
|
||
animation: authSlideUp 0.3s ease;
|
||
}
|
||
@keyframes authSlideUp {
|
||
from { transform: translateY(20px); opacity: 0; }
|
||
to { transform: translateY(0); opacity: 1; }
|
||
}
|
||
.auth-modal-close {
|
||
position: absolute; top: 14px; right: 16px;
|
||
background: none; border: none; color: var(--text-muted);
|
||
font-size: 24px; cursor: pointer; line-height: 1;
|
||
transition: var(--transition);
|
||
}
|
||
.auth-modal-close:hover { color: var(--text-heading); }
|
||
|
||
/* === AUTH VIEW 内部 === */
|
||
.auth-view-header {
|
||
text-align: center; margin-bottom: 28px;
|
||
}
|
||
.auth-view-icon {
|
||
font-size: 36px; display: block; margin-bottom: 12px;
|
||
}
|
||
.auth-view-header h3 {
|
||
font-size: 20px; font-weight: 700; color: var(--text-heading); margin-bottom: 6px;
|
||
}
|
||
.auth-view-header p {
|
||
font-size: 13px; color: var(--text-secondary);
|
||
}
|
||
|
||
.auth-form { margin-top: 20px; }
|
||
.auth-form .form-group { margin-bottom: 16px; }
|
||
.auth-form .form-group label {
|
||
font-size: 13px; color: var(--text-secondary); font-weight: 500;
|
||
margin-bottom: 6px; display: block;
|
||
}
|
||
.auth-form .form-group input {
|
||
width: 100%; background: var(--bg-input);
|
||
border: 1px solid var(--border-input); border-radius: var(--radius-sm);
|
||
padding: 12px 14px; color: var(--text-heading);
|
||
font-size: 15px; font-family: var(--font-body); outline: none;
|
||
transition: var(--transition);
|
||
}
|
||
.auth-form .form-group input:focus {
|
||
border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft);
|
||
}
|
||
.auth-form .form-group input::placeholder { color: var(--text-muted); }
|
||
|
||
.auth-error {
|
||
background: rgba(220,38,38,0.06); border: 1px solid rgba(220,38,38,0.15);
|
||
border-radius: 6px; padding: 10px 14px;
|
||
font-size: 13px; color: var(--red);
|
||
margin-bottom: 12px;
|
||
}
|
||
.auth-error.hidden { display: none; }
|
||
|
||
.auth-submit {
|
||
margin-top: 4px;
|
||
}
|
||
.auth-submit .btn-loading {
|
||
display: flex; align-items: center; justify-content: center; gap: 8px;
|
||
}
|
||
|
||
/* === DIVIDER === */
|
||
.auth-divider {
|
||
display: flex; align-items: center; margin: 24px 0;
|
||
color: var(--text-muted); font-size: 12px;
|
||
}
|
||
.auth-divider::before, .auth-divider::after {
|
||
content: ''; flex: 1; height: 1px; background: var(--border-light);
|
||
}
|
||
.auth-divider span { padding: 0 12px; }
|
||
|
||
/* === APPLE BUTTON === */
|
||
.auth-apple-btn {
|
||
display: flex; align-items: center; justify-content: center; gap: 10px;
|
||
width: 100%; padding: 13px;
|
||
background: #000; color: #fff;
|
||
border: none; border-radius: 6px;
|
||
font-size: 15px; font-weight: 500;
|
||
cursor: pointer; transition: var(--transition);
|
||
font-family: var(--font-body);
|
||
}
|
||
.auth-apple-btn:hover { background: #222; }
|
||
.auth-apple-btn svg { flex-shrink: 0; }
|
||
|
||
/* === FOOTER LINKS === */
|
||
.auth-footer {
|
||
text-align: center; margin-top: 20px;
|
||
font-size: 13px; color: var(--text-secondary);
|
||
}
|
||
.auth-link {
|
||
background: none; border: none; color: var(--purple);
|
||
font-size: 13px; font-weight: 500; cursor: pointer;
|
||
padding: 0; font-family: var(--font-body);
|
||
}
|
||
.auth-link:hover { text-decoration: underline; }
|
||
|
||
/* === PROFILE VIEW === */
|
||
.auth-profile-avatar {
|
||
width: 56px; height: 56px; border-radius: 50%;
|
||
background: var(--purple); color: #fff;
|
||
margin: 0 auto 12px; display: flex;
|
||
align-items: center; justify-content: center;
|
||
font-size: 24px; font-weight: 700;
|
||
}
|
||
.auth-plan-label {
|
||
font-size: 14px; font-weight: 500; margin-top: 4px;
|
||
}
|
||
.auth-plan-label.premium { color: var(--purple); }
|
||
.auth-plan-label.free { color: var(--text-secondary); }
|
||
|
||
.auth-upgrade-card {
|
||
background: var(--purple-soft); border: 1px solid rgba(109,40,217,0.12);
|
||
border-radius: var(--radius-md); padding: 24px;
|
||
margin-top: 20px; text-align: center;
|
||
}
|
||
.auth-upgrade-card h4 {
|
||
font-size: 16px; font-weight: 700; color: var(--purple); margin-bottom: 12px;
|
||
}
|
||
.auth-upgrade-features {
|
||
list-style: none; padding: 0; margin: 0 0 20px;
|
||
font-size: 14px; color: var(--text-body); text-align: left;
|
||
}
|
||
.auth-upgrade-features li {
|
||
padding: 6px 0;
|
||
}
|
||
.auth-upgrade-btn {
|
||
background: var(--purple) !important;
|
||
}
|
||
.auth-upgrade-btn:hover {
|
||
background: #5b21b6 !important;
|
||
}
|
||
|
||
.auth-profile-actions {
|
||
margin-top: 24px; padding-top: 20px;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.auth-profile-btn {
|
||
width: 100%; padding: 10px; background: none;
|
||
border: 1px solid var(--border-card); border-radius: 6px;
|
||
color: var(--text-secondary); font-size: 14px;
|
||
cursor: pointer; transition: var(--transition);
|
||
font-family: var(--font-body);
|
||
}
|
||
.auth-profile-btn:hover {
|
||
border-color: var(--red); color: var(--red);
|
||
background: rgba(220,38,38,0.04);
|
||
}
|
||
|
||
/* === SUBSCRIPTION COMPARISON === */
|
||
.sub-comparison {
|
||
display: grid; grid-template-columns: 1fr 1fr;
|
||
gap: 16px; margin: 24px 0;
|
||
}
|
||
.sub-plan {
|
||
background: var(--bg-surface); border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-md); padding: 20px;
|
||
text-align: center; position: relative;
|
||
}
|
||
.sub-plan h4 {
|
||
font-size: 16px; font-weight: 700; color: var(--text-heading);
|
||
margin-bottom: 8px;
|
||
}
|
||
.sub-price {
|
||
font-size: 28px; font-weight: 700; color: var(--text-heading);
|
||
margin-bottom: 16px;
|
||
}
|
||
.sub-price span {
|
||
font-size: 14px; font-weight: 400; color: var(--text-muted);
|
||
}
|
||
.sub-plan ul {
|
||
list-style: none; padding: 0; margin: 0;
|
||
font-size: 13px; color: var(--text-body);
|
||
text-align: left;
|
||
}
|
||
.sub-plan ul li {
|
||
padding: 5px 0; border-bottom: 1px solid var(--border-light);
|
||
}
|
||
.sub-plan ul li:last-child { border-bottom: none; }
|
||
|
||
.sub-plan.premium {
|
||
background: var(--purple-soft); border-color: var(--purple);
|
||
}
|
||
.sub-plan.premium h4 { color: var(--purple); }
|
||
.sub-plan.premium .sub-price { color: var(--purple); }
|
||
|
||
.sub-badge {
|
||
position: absolute; top: -10px; right: 12px;
|
||
background: var(--purple); color: #fff;
|
||
font-size: 11px; font-weight: 600;
|
||
padding: 3px 10px; border-radius: 10px;
|
||
}
|
||
|
||
.sub-note {
|
||
margin-top: 16px; text-align: center;
|
||
font-size: 12px; color: var(--text-muted);
|
||
}
|
||
.sub-note p { margin: 4px 0; }
|
||
|
||
@media (max-width: 480px) {
|
||
.sub-comparison { grid-template-columns: 1fr; }
|
||
}
|
||
|
||
/* === RESPONSIVE === */
|
||
@media (max-width: 768px) {
|
||
.tab-short { display: inline; }
|
||
.tab-full { display: none; }
|
||
.container {
|
||
padding: 16px 14px calc(60px + env(safe-area-inset-bottom, 0px));
|
||
padding-top: calc(16px + env(safe-area-inset-top, 0px));
|
||
}
|
||
.form-row { flex-direction: column; gap: 12px; }
|
||
.first-use-head { flex-direction: column; gap: 4px; }
|
||
.first-use-head span { text-align: left; }
|
||
.first-use-step { min-height: 92px; }
|
||
.chart-import-head { flex-direction: column; gap: 4px; }
|
||
.chart-import-head span { text-align: left; }
|
||
.chart-import-actions { display: grid; grid-template-columns: 1fr; }
|
||
.saved-chart-empty,
|
||
.saved-chart-head { flex-direction: column; align-items: flex-start; }
|
||
.saved-chart-empty span,
|
||
.saved-chart-head span { text-align: left; }
|
||
.saved-chart-item { grid-template-columns: 1fr; }
|
||
.saved-chart-item small { white-space: normal; }
|
||
.chart-import-result-card,
|
||
.chart-import-fields { grid-template-columns: 1fr; }
|
||
.chart-import-fields span { white-space: normal; }
|
||
.chart-layout, .dasha-detail-layout, .karaka-layout, .transit-layout {
|
||
grid-template-columns: minmax(0, 1fr);
|
||
width: 100%;
|
||
min-width: 0;
|
||
}
|
||
.chart-layout > *,
|
||
.tab-panel,
|
||
.chart-container,
|
||
.planets-container,
|
||
.chart-header,
|
||
.section-title,
|
||
.planets-table-wrap {
|
||
width: 100%;
|
||
max-width: 100%;
|
||
min-width: 0;
|
||
}
|
||
.ascendant-banner { flex-direction: column; text-align: center; padding: 16px; }
|
||
.card { padding: 20px 16px; }
|
||
.house-grid, .av-details { grid-template-columns: 1fr; }
|
||
/* 手机端星盘图适当缩小,留空间给信息 */
|
||
.south-indian-chart, .north-indian-chart { max-width: 320px; }
|
||
.chart-container, .planets-container { padding: 16px; }
|
||
.planets-table { font-size: 12px; }
|
||
.planets-table th, .planets-table td { padding: 6px 4px; }
|
||
/* Tab 按钮:符合 iOS 44pt 最小触摸目标 */
|
||
.tab-bar { gap: 2px; padding: 0 4px; }
|
||
.tab-btn { padding: 12px 10px; font-size: 13px; min-height: 44px; }
|
||
.aspects-grid { grid-template-columns: 1fr; }
|
||
.asc-sign { font-size: 22px; }
|
||
.varga-selector { gap: 4px; }
|
||
.varga-btn { padding: 8px 10px; font-size: 12px; min-height: 44px; }
|
||
.d9-panel-head { flex-direction: column; }
|
||
.d9-score { width: 100%; }
|
||
.d9-core-grid, .d9-flags, .d9-evidence { grid-template-columns: 1fr; }
|
||
.pacdares-grid { grid-template-columns: 1fr; }
|
||
.hi-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
|
||
.rg-grid { grid-template-columns: 1fr 1fr; }
|
||
.freq-grid { grid-template-columns: 1fr 1fr; }
|
||
.tri-table { font-size: 11px; }
|
||
.tri-table th, .tri-table td { padding: 6px; }
|
||
.skill-hero { flex-direction: column; padding: 16px; }
|
||
.special-lagna-head { flex-direction: column; }
|
||
.special-lagna-head > span { width: 100%; text-align: center; }
|
||
.mevg-head { flex-direction: column; }
|
||
.mevg-score { width: 100%; flex-basis: auto; }
|
||
.mevg-summary { grid-template-columns: 1fr; }
|
||
.mevg-claim-head { flex-direction: column; gap: 6px; }
|
||
.skill-metrics { width: 100%; min-width: 0; }
|
||
.skill-summary-grid { grid-template-columns: 1fr 1fr; }
|
||
.skill-stage-grid, .skill-module-grid { grid-template-columns: 1fr; }
|
||
.skill-section { padding: 14px; }
|
||
.skill-module-head { align-items: flex-start; }
|
||
.capability-metrics { grid-template-columns: 1fr 1fr; }
|
||
.productization-metrics { grid-template-columns: 1fr 1fr; }
|
||
.ux-productization-metrics { grid-template-columns: 1fr 1fr; }
|
||
.technique-directory-head { flex-direction: column; }
|
||
.technique-directory-head > span { width: fit-content; }
|
||
.technique-directory-controls,
|
||
.technique-directory-grid { grid-template-columns: 1fr; }
|
||
.technique-directory-card-head { flex-direction: column; }
|
||
.technique-api-doc-grid { grid-template-columns: 1fr; }
|
||
.capability-split,
|
||
.capability-source-grid,
|
||
.capability-gap-grid,
|
||
.product-queue-grid,
|
||
.ux-queue-grid { grid-template-columns: 1fr; }
|
||
.capability-source-card div { flex-direction: column; gap: 4px; }
|
||
.capability-status-row span,
|
||
.capability-command-tags span,
|
||
.reuse-pill { white-space: normal; }
|
||
.synastry-inputs { grid-template-columns: 1fr; padding: 14px; }
|
||
.synastry-library-panel { grid-template-columns: 1fr; padding: 14px; }
|
||
.synastry-run { width: 100%; }
|
||
.synastry-score,
|
||
.synastry-details { grid-template-columns: 1fr; }
|
||
.synastry-score { flex-direction: column; align-items: flex-start; }
|
||
.synastry-pair-actions,
|
||
.synastry-pair-head,
|
||
.synastry-pair-row,
|
||
.prashna-case-actions,
|
||
.prashna-case-head,
|
||
.prashna-case-row { flex-direction: column; align-items: flex-start; }
|
||
.synastry-pair-row span,
|
||
.prashna-case-row span { white-space: normal; }
|
||
.workspace-case-row { grid-template-columns: 1fr; }
|
||
.case-row-actions { justify-content: flex-start; }
|
||
.case-workspace-controls { grid-template-columns: 1fr; }
|
||
.case-bulk-actions { width: 100%; }
|
||
.case-preview-head { flex-direction: column; }
|
||
.case-preview-grid { grid-template-columns: 1fr; }
|
||
.relationship-report-head { flex-direction: column; }
|
||
.relationship-report-status { align-self: flex-start; }
|
||
.relationship-report-grid,
|
||
.relationship-report-sections { grid-template-columns: 1fr; }
|
||
.biwheel-comparison-head { flex-direction: column; align-items: flex-start; }
|
||
.biwheel-axis-grid,
|
||
.composite-style-strip { grid-template-columns: 1fr; }
|
||
.spouse-status-head { flex-direction: column; align-items: flex-start; }
|
||
.spouse-status-grid { grid-template-columns: 1fr; }
|
||
.uldk-timing-head { flex-direction: column; align-items: flex-start; }
|
||
.uldk-timing-grid { grid-template-columns: 1fr; }
|
||
.synastry-deep-grid,
|
||
.synastry-d9-compare { grid-template-columns: 1fr; }
|
||
.synastry-d9-head { flex-direction: column; align-items: flex-start; }
|
||
.prashna-inputs { grid-template-columns: 1fr; padding: 14px; }
|
||
.prashna-run { width: 100%; }
|
||
.prashna-answer { flex-direction: column; align-items: flex-start; }
|
||
.prashna-grid { grid-template-columns: 1fr 1fr; }
|
||
.prashna-insight-grid,
|
||
.prashna-advanced-grid,
|
||
.prashna-mini-grid,
|
||
.prashna-saham-strip { grid-template-columns: 1fr; }
|
||
.kp-head { flex-direction: column; align-items: stretch; }
|
||
.kp-focus-select { width: 100%; min-height: 44px; }
|
||
.kp-house-grid { grid-template-columns: 1fr; }
|
||
.kp-house-title { flex-direction: column; align-items: flex-start; }
|
||
.remedies-hero { flex-direction: column; }
|
||
.remedies-metrics { width: 100%; min-width: 0; grid-template-columns: 1fr 1fr 1fr; }
|
||
.remedies-grid { grid-template-columns: 1fr; }
|
||
.dasha-system-head { flex-direction: column; }
|
||
.dasha-system-layout { grid-template-columns: 1fr; }
|
||
.dasha-system-list { max-height: none; }
|
||
.dasha-analysis-grid { grid-template-columns: 1fr; }
|
||
.dasha-system-period { grid-template-columns: 1fr; }
|
||
.dasha-system-period em { text-align: left; }
|
||
/* AI 聊天浮动按钮 — 避开底部安全区 */
|
||
.ai-panel {
|
||
left: 100vw;
|
||
right: auto;
|
||
width: 100vw;
|
||
max-width: 100vw;
|
||
}
|
||
.ai-panel.open {
|
||
left: 0;
|
||
right: auto;
|
||
}
|
||
.ai-fab {
|
||
top: calc(72px + env(safe-area-inset-top, 0px));
|
||
bottom: auto;
|
||
left: 16px;
|
||
right: auto;
|
||
height: 44px;
|
||
padding: 0 16px 0 12px;
|
||
z-index: 9000;
|
||
pointer-events: auto;
|
||
}
|
||
.ai-fab-tip {
|
||
top: calc(124px + env(safe-area-inset-top, 0px));
|
||
bottom: auto;
|
||
left: 16px;
|
||
right: auto;
|
||
font-size: 12px;
|
||
z-index: 9001;
|
||
}
|
||
/* Auth 移动端 */
|
||
.header-right { flex-direction: column; align-items: flex-end; gap: 8px; }
|
||
.header-right .tagline { display: none; }
|
||
.auth-modal { padding: 24px 20px; }
|
||
/* 页面 header — 按钮满足 44pt 触摸目标 */
|
||
.btn-back { min-height: 44px; min-width: 44px; }
|
||
.btn-export { min-height: 44px; padding: 8px 14px; }
|
||
.btn-save-chart { min-height: 44px; padding: 8px 14px; }
|
||
/* 输入表单按钮 */
|
||
.generate-btn { min-height: 48px; font-size: 16px; }
|
||
/* 行星表格 — 移动端可横向滚动,隐藏D9和星宿列节省空间 */
|
||
.planets-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
|
||
.planets-table { min-width: 480px; table-layout: auto; }
|
||
.planets-table th:nth-child(6), .planets-table td:nth-child(6),
|
||
.planets-table th:nth-child(7), .planets-table td:nth-child(7) { display: none; }
|
||
}
|
||
|
||
/* === iOS 安全区域全局适配 === */
|
||
@supports (padding: env(safe-area-inset-bottom)) {
|
||
/* FAB 按钮永远避开底部安全区 */
|
||
@media (min-width: 769px) {
|
||
.ai-fab {
|
||
bottom: calc(28px + env(safe-area-inset-bottom));
|
||
}
|
||
.ai-fab-tip {
|
||
bottom: calc(82px + env(safe-area-inset-bottom));
|
||
}
|
||
}
|
||
@media (max-width: 768px) {
|
||
.ai-fab {
|
||
top: calc(72px + env(safe-area-inset-top));
|
||
bottom: auto;
|
||
left: 16px;
|
||
right: auto;
|
||
}
|
||
.ai-fab-tip {
|
||
top: calc(124px + env(safe-area-inset-top));
|
||
bottom: auto;
|
||
left: 16px;
|
||
right: auto;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* === 小屏 iPhone SE / Mini 额外优化 === */
|
||
@media (max-width: 380px) {
|
||
.tab-btn { padding: 10px 8px; font-size: 12px; }
|
||
.logo-text { font-size: 17px; }
|
||
.ai-fab { height: 40px; padding: 0 12px 0 10px; font-size: 12px; }
|
||
.ai-fab-text { font-size: 12px; }
|
||
}
|
||
|
||
/* === Trikona-Kendra 三方四正映射 === */
|
||
.tk-rating { font-size: 15px; font-weight: 700; color: var(--purple); margin: 8px 0 16px; padding: 10px 16px; background: rgba(109,40,217,0.04); border-radius: 8px; border-left: 3px solid var(--purple); }
|
||
.tk-section { margin: 16px 0; }
|
||
.tk-subtitle { font-size: 13px; font-weight: 600; color: var(--text-primary); margin: 0 0 10px; padding-bottom: 6px; border-bottom: 1px solid var(--border-color); }
|
||
.tk-lords-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
|
||
.tk-lord-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 8px; padding: 10px; }
|
||
.tk-lord-house { font-size: 12px; font-weight: 600; color: var(--text-primary); margin-bottom: 4px; }
|
||
.tk-lord-name { font-size: 13px; color: var(--purple); font-weight: 500; }
|
||
.tk-lord-in { font-size: 11px; color: var(--text-secondary); margin-top: 2px; }
|
||
.tk-badge { display: inline-block; font-size: 9px; padding: 1px 5px; border-radius: 4px; font-weight: 600; margin-left: 4px; }
|
||
.tk-badge-trikona { background: rgba(22,163,74,0.1); color: #16a34a; }
|
||
.tk-badge-kendra { background: rgba(109,40,217,0.1); color: var(--purple); }
|
||
.tk-connections { display: flex; flex-direction: column; gap: 6px; }
|
||
.tk-conn { font-size: 12px; padding: 8px 12px; border-radius: 6px; border-left: 3px solid var(--border-color); background: var(--card-bg); }
|
||
.tk-conn-icon { font-weight: 700; margin-right: 4px; }
|
||
.tk-exc { border-left-color: #16a34a; background: rgba(22,163,74,0.04); }
|
||
.tk-str { border-left-color: #d97706; background: rgba(217,119,6,0.04); }
|
||
.tk-good { border-left-color: var(--purple); background: rgba(109,40,217,0.04); }
|
||
.tk-raja { border-left-color: #7c3aed; background: rgba(124,58,237,0.06); font-weight: 600; }
|
||
.tk-maha { border-left-color: #dc2626; background: rgba(220,38,38,0.06); font-weight: 700; color: #dc2626; }
|
||
.tk-empty { font-size: 12px; color: var(--text-muted); padding: 8px 0; font-style: italic; }
|
||
@media (max-width: 768px) {
|
||
.tk-lords-grid { grid-template-columns: repeat(2, 1fr); }
|
||
}
|
||
|
||
/* ===== Yoga Detail Expansion ===== */
|
||
.yoga-expand-hint {
|
||
display: block; font-size: 10px; color: var(--purple);
|
||
margin-top: 4px; opacity: 0.7; font-weight: 500;
|
||
}
|
||
.yoga-detail {
|
||
margin-top: 10px; padding-top: 10px;
|
||
border-top: 1px solid var(--border-color);
|
||
}
|
||
.yd-section {
|
||
display: flex; gap: 8px; margin-bottom: 8px;
|
||
font-size: 12px; line-height: 1.6;
|
||
}
|
||
.yd-label {
|
||
flex-shrink: 0; min-width: 70px;
|
||
font-weight: 600; color: var(--text-primary);
|
||
font-size: 11px;
|
||
}
|
||
.yd-text {
|
||
color: var(--text-secondary);
|
||
}
|
||
.yd-tags {
|
||
display: flex; flex-wrap: wrap; gap: 4px;
|
||
margin-top: 6px; padding-top: 6px;
|
||
border-top: 1px dashed var(--border-color);
|
||
}
|
||
.yd-tag {
|
||
font-size: 10px; padding: 2px 8px;
|
||
border-radius: 10px; font-weight: 500;
|
||
background: rgba(109,40,217,0.08);
|
||
color: var(--purple);
|
||
}
|
||
|
||
/* ===== Planet-in-House Detail ===== */
|
||
.occ-item { display: inline-block; position: relative; margin: 2px; }
|
||
.occ-expand-hint {
|
||
font-size: 8px; color: var(--purple); margin-left: 2px;
|
||
opacity: 0.6; cursor: pointer;
|
||
}
|
||
.occ-detail {
|
||
position: absolute; top: 100%; left: 0; z-index: 20;
|
||
min-width: 280px; max-width: 340px;
|
||
background: #fff; border: 1px solid var(--border-color);
|
||
border-radius: 8px; padding: 10px 12px;
|
||
box-shadow: 0 4px 16px rgba(0,0,0,0.12);
|
||
font-size: 11px; line-height: 1.5;
|
||
}
|
||
.occ-line {
|
||
display: flex; gap: 6px; margin-bottom: 6px;
|
||
}
|
||
.occ-line:last-child { margin-bottom: 0; }
|
||
.occ-tag {
|
||
flex-shrink: 0; font-size: 10px; font-weight: 600;
|
||
padding: 1px 6px; border-radius: 4px; min-width: 48px; text-align: center;
|
||
}
|
||
.occ-tag.occ-pos { background: rgba(22,163,74,0.1); color: #16a34a; }
|
||
.occ-tag.occ-neg { background: rgba(239,68,68,0.1); color: #ef4444; }
|
||
.occ-tag.occ-adv { background: rgba(234,179,8,0.1); color: #ca8a04; }
|
||
.occ-tag.occ-special { background: rgba(109,40,217,0.1); color: var(--purple); }
|
||
.occ-text { color: var(--text-secondary); }
|
||
@media (max-width: 768px) {
|
||
.occ-detail { min-width: 240px; left: -20px; }
|
||
}
|
||
|
||
/* ============================================================
|
||
生时校正 (Janma Shuddhi / Birth Time Rectification)
|
||
============================================================ */
|
||
.rect-header { text-align: center; margin-bottom: 20px; }
|
||
.rect-subtitle { color: var(--text-secondary); font-size: 14px; margin-top: 4px; }
|
||
.rect-config { margin-bottom: 16px; }
|
||
.rect-config-row { display: flex; gap: 16px; flex-wrap: wrap; }
|
||
.rect-config-row .form-group { flex: 1; min-width: 140px; }
|
||
|
||
.guided-topic-discovery {
|
||
margin: 16px 0;
|
||
padding: 14px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 8px;
|
||
background: var(--bg-card, #fff);
|
||
}
|
||
.guided-topic-discovery-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: flex-start;
|
||
margin-bottom: 12px;
|
||
}
|
||
.guided-topic-discovery-head span {
|
||
display: block;
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
margin-bottom: 4px;
|
||
}
|
||
.guided-topic-discovery-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 16px;
|
||
}
|
||
.guided-topic-discovery-head small {
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
max-width: 260px;
|
||
text-align: right;
|
||
}
|
||
.guided-topic-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
|
||
gap: 12px;
|
||
}
|
||
.guided-topic-card {
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 8px;
|
||
background: var(--bg-surface);
|
||
padding: 12px;
|
||
display: grid;
|
||
gap: 10px;
|
||
}
|
||
.guided-topic-card-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
}
|
||
.guided-topic-card-head strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.guided-topic-card-head p,
|
||
.guided-topic-why {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.guided-topic-confidence {
|
||
flex: 0 0 auto;
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: 999px;
|
||
padding: 3px 8px;
|
||
}
|
||
.guided-topic-subtitle {
|
||
display: block;
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
margin-bottom: 6px;
|
||
}
|
||
.guided-topic-evidence-row {
|
||
display: flex;
|
||
gap: 8px;
|
||
justify-content: space-between;
|
||
font-size: 12px;
|
||
color: var(--text-secondary);
|
||
margin-bottom: 4px;
|
||
}
|
||
.guided-topic-evidence-row strong {
|
||
color: var(--text-heading);
|
||
font-weight: 600;
|
||
}
|
||
.guided-topic-question-list {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
}
|
||
.guided-topic-question {
|
||
border: 1px solid var(--border-card);
|
||
border-radius: 999px;
|
||
background: var(--bg-white);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
padding: 6px 10px;
|
||
cursor: pointer;
|
||
text-align: left;
|
||
}
|
||
.guided-topic-question:hover {
|
||
border-color: var(--accent);
|
||
}
|
||
.career-quick-questions {
|
||
margin-bottom: 16px;
|
||
}
|
||
.career-quick-question-list {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
}
|
||
.career-quick-question {
|
||
min-height: 38px;
|
||
}
|
||
.guided-topic-footer {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
font-size: 11px;
|
||
color: var(--text-muted);
|
||
}
|
||
|
||
.rect-interview { margin-bottom: 16px; }
|
||
.rect-interview-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 16px;
|
||
align-items: flex-start;
|
||
margin-bottom: 12px;
|
||
}
|
||
.rect-interview-head p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.6;
|
||
}
|
||
.rect-interview-head span {
|
||
flex: 0 0 auto;
|
||
padding: 3px 8px;
|
||
border-radius: 6px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-muted);
|
||
font-size: 10px;
|
||
}
|
||
.rect-interview-list { display: grid; gap: 8px; }
|
||
.rect-interview-item {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) auto;
|
||
gap: 10px;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.rect-interview-copy strong {
|
||
display: block;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.rect-interview-copy span {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
margin-top: 3px;
|
||
}
|
||
.rect-answer-group {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 6px;
|
||
}
|
||
.rect-answer-group button,
|
||
.rect-secondary-btn {
|
||
padding: 6px 10px;
|
||
border: 1px solid var(--border-card);
|
||
border-radius: 6px;
|
||
background: var(--bg-white);
|
||
color: var(--text-secondary);
|
||
cursor: pointer;
|
||
font-family: var(--font-body);
|
||
font-size: 12px;
|
||
}
|
||
.rect-answer-group button.active,
|
||
.rect-answer-group button:hover,
|
||
.rect-secondary-btn:hover {
|
||
border-color: var(--accent);
|
||
color: var(--text-heading);
|
||
}
|
||
.rect-answer-detail {
|
||
grid-column: 1 / -1;
|
||
display: grid;
|
||
grid-template-columns: 160px minmax(0, 1fr);
|
||
gap: 8px;
|
||
}
|
||
.rect-answer-detail input {
|
||
padding: 8px 10px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: 6px;
|
||
background: var(--bg-white);
|
||
color: var(--text-heading);
|
||
font-family: var(--font-body);
|
||
font-size: 12px;
|
||
}
|
||
.rect-interview-actions {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 10px;
|
||
margin-top: 12px;
|
||
}
|
||
.rect-interview-actions span {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
}
|
||
|
||
.rect-events { margin-bottom: 16px; }
|
||
.rect-count { font-size: 12px; color: var(--text-secondary); font-weight: 400; }
|
||
.rect-hint { font-size: 12px; color: var(--text-secondary); margin: 4px 0 12px; }
|
||
.rect-event-guide {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin-bottom: 12px;
|
||
}
|
||
.rect-event-guide span {
|
||
padding: 4px 8px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 999px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
}
|
||
.rect-add-row { display: flex; gap: 8px; align-items: flex-end; flex-wrap: wrap; }
|
||
.rect-add-row .form-group { flex: 1; min-width: 120px; }
|
||
.rect-add-row .btn-sm { padding: 8px 16px; font-size: 13px; white-space: nowrap; margin-bottom: 0; min-height: 38px; }
|
||
|
||
.rect-event-list { margin-top: 12px; }
|
||
.rect-empty { color: var(--text-secondary); font-size: 13px; text-align: center; padding: 16px; }
|
||
.rect-event-item {
|
||
display: flex; align-items: center; gap: 8px;
|
||
padding: 8px 12px; border-radius: 8px; margin-bottom: 4px;
|
||
background: rgba(0,0,0,0.02); font-size: 13px;
|
||
transition: background 0.2s;
|
||
}
|
||
.rect-event-item:hover { background: rgba(0,0,0,0.04); }
|
||
.rect-evt-icon { font-size: 16px; }
|
||
.rect-evt-date { font-weight: 500; min-width: 90px; }
|
||
.rect-evt-cat { color: var(--purple); font-weight: 500; min-width: 70px; }
|
||
.rect-evt-desc { flex: 1; color: var(--text-secondary); }
|
||
.rect-evt-del {
|
||
background: none; border: none; color: #ccc; cursor: pointer;
|
||
font-size: 14px; padding: 2px 6px; border-radius: 4px;
|
||
transition: color 0.2s, background 0.2s;
|
||
}
|
||
.rect-evt-del:hover { color: #ef4444; background: rgba(239,68,68,0.08); }
|
||
|
||
.rect-action { text-align: center; margin: 20px 0; }
|
||
.rect-action .btn-primary { min-width: 200px; }
|
||
|
||
/* 进度条 */
|
||
.rect-progress { margin: 16px 0; }
|
||
.rect-progress-bar {
|
||
width: 100%; height: 6px; background: rgba(0,0,0,0.06);
|
||
border-radius: 3px; overflow: hidden;
|
||
}
|
||
.rect-progress-fill {
|
||
height: 100%; background: var(--purple); border-radius: 3px;
|
||
transition: width 0.3s ease; width: 0;
|
||
}
|
||
.rect-progress-text { font-size: 13px; color: var(--text-secondary); margin-top: 6px; text-align: center; }
|
||
|
||
/* 结果区域 */
|
||
.rect-result-summary { margin-bottom: 16px; }
|
||
.rect-summary-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
|
||
gap: 12px; margin: 12px 0;
|
||
}
|
||
.rect-summary-item { display: flex; flex-direction: column; gap: 2px; }
|
||
.rect-label { font-size: 12px; color: var(--text-secondary); }
|
||
.rect-value { font-size: 14px; font-weight: 500; }
|
||
.rect-value.rect-best { color: var(--purple); font-weight: 700; }
|
||
.rect-recommendations { margin-top: 12px; padding: 12px; background: rgba(109,40,217,0.04); border-radius: 8px; }
|
||
.rect-rec-line { font-size: 13px; margin-bottom: 4px; color: var(--text-body); }
|
||
.rect-rec-line:last-child { margin-bottom: 0; }
|
||
.rect-result-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
margin-top: 12px;
|
||
}
|
||
.rect-apply-btn,
|
||
.rect-secondary-btn {
|
||
min-height: 38px;
|
||
border-radius: var(--radius-sm);
|
||
padding: 8px 12px;
|
||
font-size: 13px;
|
||
font-family: var(--font-body);
|
||
cursor: pointer;
|
||
}
|
||
.rect-apply-btn {
|
||
background: var(--accent);
|
||
color: var(--text-on-dark);
|
||
border: 1px solid var(--accent);
|
||
}
|
||
.rect-secondary-btn {
|
||
background: var(--bg-white);
|
||
color: var(--text-heading);
|
||
border: 1px solid var(--border-input);
|
||
}
|
||
.rect-apply-btn:hover { background: var(--accent-hover); }
|
||
.rect-secondary-btn:hover { border-color: var(--text-muted); }
|
||
.rect-audit-warnings {
|
||
display: grid;
|
||
gap: 6px;
|
||
margin-top: 10px;
|
||
}
|
||
.rect-audit-warnings p {
|
||
padding: 8px 10px;
|
||
background: rgba(217,119,6,0.08);
|
||
border: 1px solid rgba(217,119,6,0.18);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
}
|
||
.rect-audit {
|
||
margin-bottom: 16px;
|
||
}
|
||
.rect-audit-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.rect-audit-card {
|
||
min-height: 112px;
|
||
padding: 12px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.rect-audit-card span {
|
||
display: block;
|
||
margin-bottom: 5px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.rect-audit-card strong {
|
||
display: block;
|
||
margin-bottom: 5px;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.rect-audit-card p {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.rect-plan { margin-bottom: 16px; }
|
||
.rect-plan-principle {
|
||
margin: 0 0 10px;
|
||
color: var(--text-primary);
|
||
font-size: 13px;
|
||
line-height: 1.6;
|
||
}
|
||
.rect-plan-list {
|
||
margin: 0;
|
||
padding-left: 18px;
|
||
display: grid;
|
||
gap: 10px;
|
||
}
|
||
.rect-plan-row {
|
||
display: flex;
|
||
align-items: baseline;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
}
|
||
.rect-plan-row strong {
|
||
font-size: 13px;
|
||
color: var(--text-primary);
|
||
}
|
||
.rect-plan-row span {
|
||
font-size: 11px;
|
||
color: var(--text-secondary);
|
||
text-transform: uppercase;
|
||
letter-spacing: 0;
|
||
}
|
||
.rect-plan-list p {
|
||
margin: 4px 0 0;
|
||
font-size: 12px;
|
||
color: var(--text-secondary);
|
||
line-height: 1.55;
|
||
}
|
||
.rect-plan-focus {
|
||
margin: 12px 0 0;
|
||
font-size: 12px;
|
||
color: var(--text-primary);
|
||
}
|
||
|
||
/* Top 10 表格 */
|
||
.rect-top-results { margin-bottom: 16px; }
|
||
.rect-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
|
||
.rect-table {
|
||
width: 100%; border-collapse: collapse; font-size: 13px;
|
||
}
|
||
.rect-table th {
|
||
background: rgba(0,0,0,0.03); padding: 8px 10px; text-align: left;
|
||
font-weight: 600; font-size: 12px; color: var(--text-secondary);
|
||
border-bottom: 1px solid rgba(0,0,0,0.06); white-space: nowrap;
|
||
}
|
||
.rect-table td {
|
||
padding: 8px 10px; border-bottom: 1px solid rgba(0,0,0,0.04);
|
||
white-space: nowrap;
|
||
}
|
||
.rect-best-row { background: rgba(109,40,217,0.06); }
|
||
.rect-best-row td { font-weight: 500; }
|
||
|
||
/* 匹配度进度条 */
|
||
.rect-match-bar {
|
||
display: flex; align-items: center; gap: 6px;
|
||
}
|
||
.rect-match-fill {
|
||
width: 60px; height: 4px; background: rgba(0,0,0,0.06);
|
||
border-radius: 2px; overflow: hidden; position: relative;
|
||
background: linear-gradient(to right, var(--purple) var(--fill-width, 0%), rgba(0,0,0,0.06) var(--fill-width, 0%));
|
||
}
|
||
.rect-match-pct { font-size: 12px; color: var(--text-secondary); }
|
||
|
||
/* 事件详情表格 */
|
||
.rect-event-detail { margin-bottom: 16px; }
|
||
.rect-detail-table { font-size: 12px; }
|
||
.rect-score-pos { color: #16a34a; font-weight: 600; }
|
||
.rect-score-neg { color: #9ca3af; }
|
||
.rect-relevance { font-size: 11px; }
|
||
|
||
/* 偏移详情卡片 */
|
||
.rect-offset-detail { margin-top: 16px; }
|
||
.rect-detail-grid {
|
||
display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
||
gap: 8px; margin: 10px 0; font-size: 13px;
|
||
}
|
||
.rect-sub { font-size: 13px; font-weight: 600; margin: 10px 0 6px; }
|
||
.rect-changes { display: flex; gap: 6px; flex-wrap: wrap; }
|
||
.rect-change-tag {
|
||
font-size: 11px; padding: 2px 8px; border-radius: 4px;
|
||
background: rgba(109,40,217,0.08); color: var(--purple);
|
||
}
|
||
.rect-no-change { font-size: 12px; color: var(--text-secondary); }
|
||
|
||
/* v2.0 评分维度条 */
|
||
.rect-scoring-detail { margin-top: 16px; }
|
||
.rect-score-row { display: flex; align-items: center; gap: 10px; margin: 6px 0; }
|
||
.rect-score-label { font-size: 12px; min-width: 130px; color: var(--text-secondary); }
|
||
.rect-score-bar { flex: 1; height: 8px; background: var(--border-light, #eee); border-radius: 4px; overflow: hidden; }
|
||
.rect-score-fill { height: 100%; background: linear-gradient(90deg, var(--purple, #6d28d9), #a855f7); border-radius: 4px; transition: width 0.4s; }
|
||
.rect-score-val { font-size: 12px; font-weight: 600; min-width: 36px; text-align: right; }
|
||
.rect-score-total { font-size: 14px; font-weight: 700; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--border-light, #eee); }
|
||
|
||
/* 分盘变化卡片 */
|
||
.rect-varga-changes { margin-top: 16px; }
|
||
|
||
/* 方法论提示 + 灵敏度表 */
|
||
.rect-method-info {
|
||
font-size: 12px; color: var(--text-secondary); line-height: 1.6;
|
||
margin: 8px 0 16px; padding: 10px 14px; border-radius: 6px;
|
||
background: rgba(109,40,217,0.04); border-left: 3px solid var(--purple, #6d28d9);
|
||
}
|
||
.rect-sensitivity-details {
|
||
margin-top: 10px; font-size: 13px;
|
||
}
|
||
.rect-sensitivity-details summary { cursor: pointer; color: var(--purple, #6d28d9); font-weight: 500; }
|
||
.rect-sens-table { margin-top: 8px; }
|
||
.rect-sens-table td { font-size: 12px; padding: 4px 10px; }
|
||
|
||
@media (max-width: 768px) {
|
||
.rect-add-row { flex-direction: column; }
|
||
.rect-add-row .form-group { min-width: 100%; }
|
||
.rect-add-row .btn-sm { width: 100%; }
|
||
.rect-summary-grid { grid-template-columns: 1fr; }
|
||
.rect-result-actions { flex-direction: column; }
|
||
.rect-apply-btn,
|
||
.rect-secondary-btn { width: 100%; }
|
||
.rect-score-label { min-width: 100px; font-size: 11px; }
|
||
}
|
||
|
||
/* === 生时校正引导卡片(星盘下方) === */
|
||
.rect-prompt {
|
||
display: flex; align-items: center; gap: 12px;
|
||
margin-top: 12px; padding: 14px 18px;
|
||
background: var(--bg-card, #fff); border: 1px solid var(--border-light, #eee);
|
||
border-radius: var(--radius-md, 10px);
|
||
box-shadow: 0 1px 4px rgba(0,0,0,0.04);
|
||
transition: border-color 0.2s, box-shadow 0.2s;
|
||
}
|
||
.rect-prompt:hover {
|
||
border-color: rgba(109,40,217,0.3);
|
||
box-shadow: 0 2px 10px rgba(109,40,217,0.08);
|
||
}
|
||
.rect-prompt-icon { font-size: 24px; flex-shrink: 0; }
|
||
.rect-prompt-body { flex: 1; display: flex; flex-direction: column; gap: 2px; }
|
||
.rect-prompt-title { font-size: 14px; color: var(--text-heading); }
|
||
.rect-prompt-desc { font-size: 12px; color: var(--text-secondary); line-height: 1.4; }
|
||
.rect-prompt-btn {
|
||
flex-shrink: 0; padding: 8px 16px; border-radius: 6px;
|
||
background: var(--purple, #6d28d9); color: #fff;
|
||
border: none; font-size: 13px; font-weight: 600; cursor: pointer;
|
||
white-space: nowrap; transition: opacity 0.2s;
|
||
}
|
||
.rect-prompt-btn:hover { opacity: 0.85; }
|
||
|
||
/* === 高级技法工作台 === */
|
||
.technique-workbench {
|
||
display: grid;
|
||
gap: 12px;
|
||
}
|
||
.technique-workbench-head {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
}
|
||
.technique-workbench-head h4 {
|
||
margin: 0;
|
||
}
|
||
.technique-workbench-head span {
|
||
padding: 3px 8px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
white-space: nowrap;
|
||
}
|
||
.technique-action-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.technique-action {
|
||
position: relative;
|
||
min-height: 74px;
|
||
padding: 10px 12px;
|
||
text-align: left;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
cursor: pointer;
|
||
transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
|
||
}
|
||
.technique-action:hover,
|
||
.technique-action.active {
|
||
border-color: rgba(109,40,217,0.35);
|
||
background: rgba(109,40,217,0.04);
|
||
box-shadow: 0 2px 8px rgba(109,40,217,0.08);
|
||
}
|
||
.technique-action:disabled {
|
||
cursor: not-allowed;
|
||
opacity: 0.55;
|
||
}
|
||
.technique-action.loading {
|
||
border-color: rgba(14,165,233,0.35);
|
||
}
|
||
.technique-action strong,
|
||
.technique-action span {
|
||
display: block;
|
||
padding-right: 24px;
|
||
}
|
||
.technique-action strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
line-height: 1.25;
|
||
}
|
||
.technique-action span {
|
||
margin-top: 4px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.35;
|
||
}
|
||
.technique-action small {
|
||
position: absolute;
|
||
top: 10px;
|
||
right: 10px;
|
||
width: 18px;
|
||
height: 18px;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
border-radius: 50%;
|
||
background: var(--bg-surface);
|
||
color: var(--text-muted);
|
||
font-size: 10px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-result {
|
||
min-height: 86px;
|
||
padding: 12px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-result > p {
|
||
margin: 0;
|
||
color: var(--text-secondary);
|
||
font-size: 13px;
|
||
}
|
||
.technique-result-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
margin-bottom: 10px;
|
||
}
|
||
.technique-result-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.technique-result-head span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
text-transform: uppercase;
|
||
}
|
||
.technique-result-grid,
|
||
.technique-varga-grid,
|
||
.technique-insight-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.technique-result-row,
|
||
.technique-varga-card,
|
||
.technique-insight-card {
|
||
min-height: 64px;
|
||
padding: 10px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-result-row span,
|
||
.technique-varga-card span,
|
||
.technique-varga-card small,
|
||
.technique-insight-card span {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.35;
|
||
}
|
||
.technique-result-row strong,
|
||
.technique-varga-card strong,
|
||
.technique-insight-card strong {
|
||
display: block;
|
||
margin-top: 4px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
line-height: 1.35;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.technique-insight-card p {
|
||
margin: 6px 0 0;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.technique-varga-card small {
|
||
margin-top: 6px;
|
||
}
|
||
.technique-evidence-strip {
|
||
display: flex;
|
||
gap: 6px;
|
||
flex-wrap: wrap;
|
||
margin-top: 10px;
|
||
}
|
||
.technique-evidence-strip span {
|
||
padding: 4px 8px;
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(14,165,233,0.08);
|
||
color: #0369a1;
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-next-action {
|
||
margin-top: 10px;
|
||
padding: 9px 10px;
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(22,163,74,0.07);
|
||
color: var(--text-body);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.thematic-report-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
||
gap: 10px;
|
||
}
|
||
.thematic-report-card {
|
||
min-width: 0;
|
||
padding: 12px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.thematic-report-card-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: center;
|
||
}
|
||
.thematic-report-card-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.thematic-report-card-head span {
|
||
padding: 2px 7px;
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(79,70,229,0.08);
|
||
color: #4338ca;
|
||
font-size: 10px;
|
||
font-weight: 800;
|
||
text-transform: uppercase;
|
||
}
|
||
.thematic-report-card p {
|
||
margin: 8px 0 0;
|
||
color: var(--text-body);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.thematic-report-card small {
|
||
display: block;
|
||
margin-top: 6px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.4;
|
||
}
|
||
.thematic-report-evidence {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 5px;
|
||
margin-top: 8px;
|
||
}
|
||
.thematic-report-evidence span {
|
||
padding: 3px 6px;
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(14,165,233,0.08);
|
||
color: #0369a1;
|
||
font-size: 10px;
|
||
font-weight: 700;
|
||
}
|
||
.thematic-report-card ul {
|
||
margin: 8px 0 0;
|
||
padding-left: 18px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.technique-json {
|
||
margin-top: 10px;
|
||
}
|
||
.technique-json summary {
|
||
cursor: pointer;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
}
|
||
.technique-json pre {
|
||
max-height: 320px;
|
||
overflow: auto;
|
||
margin: 8px 0 0;
|
||
padding: 10px;
|
||
background: #111827;
|
||
color: #e5e7eb;
|
||
border-radius: var(--radius-sm);
|
||
font-size: 11px;
|
||
line-height: 1.5;
|
||
white-space: pre-wrap;
|
||
}
|
||
.technique-error {
|
||
padding: 10px;
|
||
background: rgba(220,38,38,0.06);
|
||
border: 1px solid rgba(220,38,38,0.16);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.technique-error strong {
|
||
display: block;
|
||
color: #b91c1c;
|
||
font-size: 13px;
|
||
}
|
||
.technique-error p {
|
||
margin: 4px 0 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
}
|
||
.technique-error small {
|
||
display: block;
|
||
margin-top: 6px;
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
line-height: 1.45;
|
||
}
|
||
|
||
/* === 参数 / Panchanga / 工作区 === */
|
||
.provenance-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 12px;
|
||
}
|
||
.provenance-card {
|
||
min-width: 0;
|
||
padding: 16px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.provenance-card-wide {
|
||
grid-column: 1 / -1;
|
||
}
|
||
.workflow-summary-panel {
|
||
margin: 0 0 12px;
|
||
}
|
||
.workflow-summary-card {
|
||
padding: 14px 16px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.workflow-summary-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.workflow-summary-pill {
|
||
min-width: 0;
|
||
padding: 8px 10px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-body);
|
||
font-size: 12px;
|
||
line-height: 1.45;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.workflow-summary-pill strong {
|
||
display: block;
|
||
margin-bottom: 3px;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.workflow-sidecars-summary {
|
||
margin-top: 12px;
|
||
}
|
||
.sidecar-jump-btn {
|
||
margin-top: 10px;
|
||
padding: 8px 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-heading);
|
||
cursor: pointer;
|
||
}
|
||
.sidecar-jump-btn:disabled {
|
||
opacity: 0.55;
|
||
cursor: not-allowed;
|
||
}
|
||
.workflow-provenance-panel {
|
||
margin-top: 12px;
|
||
}
|
||
.workflow-provenance-list {
|
||
display: grid;
|
||
gap: 8px;
|
||
}
|
||
.workflow-provenance-list code {
|
||
display: block;
|
||
margin-top: 4px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
white-space: pre-wrap;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.ai-prompt-pack-panel {
|
||
margin: 0 0 12px;
|
||
padding: 16px;
|
||
border: 1px solid var(--border-card);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-card);
|
||
}
|
||
.ai-prompt-pack-head,
|
||
.ai-prompt-pack-foot {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: flex-start;
|
||
}
|
||
.ai-prompt-pack-head span,
|
||
.ai-prompt-pack-card span,
|
||
.ai-prompt-pack-foot strong {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
text-transform: uppercase;
|
||
}
|
||
.ai-prompt-pack-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
}
|
||
.ai-prompt-pack-head em {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
font-style: normal;
|
||
}
|
||
.ai-prompt-pack-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
justify-content: flex-end;
|
||
gap: 6px;
|
||
min-width: 0;
|
||
}
|
||
.ai-prompt-pack-actions button {
|
||
min-height: 30px;
|
||
padding: 5px 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-body);
|
||
font-size: 12px;
|
||
cursor: pointer;
|
||
}
|
||
.ai-prompt-pack-actions button:hover {
|
||
border-color: var(--accent);
|
||
color: var(--accent);
|
||
}
|
||
.ayanamsa-runtime-status {
|
||
display: grid;
|
||
grid-template-columns: auto minmax(0, 1fr);
|
||
gap: 4px 10px;
|
||
align-items: center;
|
||
margin: 12px 0;
|
||
padding: 10px 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.ayanamsa-runtime-status span {
|
||
padding: 3px 7px;
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(32, 111, 83, 0.12);
|
||
color: var(--accent);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
}
|
||
.ayanamsa-runtime-status-browser_fallback span {
|
||
background: rgba(160, 98, 0, 0.13);
|
||
color: #8a5600;
|
||
}
|
||
.ayanamsa-runtime-status strong {
|
||
min-width: 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.ayanamsa-runtime-status small,
|
||
.ayanamsa-runtime-status em {
|
||
grid-column: 1 / -1;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-style: normal;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.ai-prompt-pack-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin: 12px 0;
|
||
}
|
||
.ai-prompt-pack-card {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.ai-prompt-pack-card strong {
|
||
display: block;
|
||
margin-top: 3px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.ai-prompt-pack-card small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.ai-prompt-pack-body {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
|
||
gap: 10px;
|
||
}
|
||
.ai-prompt-pack-body h4 {
|
||
margin-bottom: 6px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.ai-prompt-pack-body pre {
|
||
max-height: 220px;
|
||
overflow: auto;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-body);
|
||
white-space: pre-wrap;
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.ai-prompt-pack-evidence,
|
||
.ai-prompt-pack-strength,
|
||
.ai-prompt-pack-foot div {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
}
|
||
.ai-prompt-pack-evidence span,
|
||
.ai-prompt-pack-strength span,
|
||
.ai-prompt-pack-foot span {
|
||
padding: 4px 7px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
color: var(--text-body);
|
||
font-size: 11px;
|
||
}
|
||
.ai-prompt-pack-strength {
|
||
margin-top: 8px;
|
||
}
|
||
.ai-prompt-pack-contracts {
|
||
margin-top: 10px;
|
||
padding-top: 10px;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.ai-prompt-pack-contracts h4 {
|
||
margin: 0 0 8px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.ai-prompt-pack-contract-list {
|
||
display: grid;
|
||
gap: 8px;
|
||
}
|
||
.ai-prompt-pack-contract-card {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.ai-prompt-pack-contract-card.is-primary {
|
||
border-color: rgba(32, 111, 83, 0.3);
|
||
background: rgba(32, 111, 83, 0.04);
|
||
}
|
||
.ai-prompt-pack-contract-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: baseline;
|
||
margin-bottom: 6px;
|
||
}
|
||
.ai-prompt-pack-contract-head strong {
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.ai-prompt-pack-contract-head span,
|
||
.ai-prompt-pack-contract-card small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.ai-prompt-pack-contract-grid {
|
||
display: grid;
|
||
gap: 5px;
|
||
margin-bottom: 6px;
|
||
}
|
||
.ai-prompt-pack-contract-grid span {
|
||
color: var(--text-body);
|
||
font-size: 11px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.ai-prompt-pack-foot {
|
||
margin-top: 12px;
|
||
padding-top: 10px;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.ai-prompt-pack-foot div {
|
||
min-width: 0;
|
||
flex: 1;
|
||
}
|
||
.provenance-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: flex-start;
|
||
margin-bottom: 12px;
|
||
}
|
||
.provenance-head span {
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
text-transform: uppercase;
|
||
}
|
||
.provenance-head strong {
|
||
max-width: 60%;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
line-height: 1.35;
|
||
text-align: right;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.provenance-kv-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.provenance-kv,
|
||
.provenance-list-row,
|
||
.roadmap-card {
|
||
min-height: 64px;
|
||
padding: 10px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.provenance-kv span,
|
||
.provenance-list-row span,
|
||
.roadmap-card span {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.35;
|
||
}
|
||
.provenance-kv strong,
|
||
.provenance-list-row strong,
|
||
.roadmap-card strong {
|
||
display: block;
|
||
margin-top: 5px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
line-height: 1.35;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.provenance-list {
|
||
display: grid;
|
||
gap: 8px;
|
||
}
|
||
.provenance-list-row small,
|
||
.roadmap-card p,
|
||
.workspace-status p {
|
||
display: block;
|
||
margin-top: 5px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.workspace-status {
|
||
padding: 12px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.tithi-lord-insight {
|
||
margin-top: 10px;
|
||
padding: 12px;
|
||
background: rgba(22,163,74,0.07);
|
||
border: 1px solid rgba(22,163,74,0.18);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.tithi-lord-insight p {
|
||
margin: 0;
|
||
color: var(--text-body);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.tithi-chip-row {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin-top: 8px;
|
||
}
|
||
.tithi-chip-row span {
|
||
padding: 4px 8px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.workspace-status strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.workspace-library {
|
||
display: grid;
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-card);
|
||
}
|
||
.workspace-library.empty {
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.workspace-library label span {
|
||
display: block;
|
||
margin-bottom: 4px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
}
|
||
.workspace-library select {
|
||
width: 100%;
|
||
min-height: 34px;
|
||
padding: 0 8px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.workspace-chart-list {
|
||
display: grid;
|
||
gap: 6px;
|
||
}
|
||
.workspace-chart-row {
|
||
display: grid;
|
||
gap: 2px;
|
||
padding: 8px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.workspace-case-row {
|
||
grid-template-columns: auto minmax(0, 1fr) auto;
|
||
align-items: center;
|
||
gap: 8px;
|
||
}
|
||
.workspace-chart-row strong {
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
line-height: 1.35;
|
||
}
|
||
.workspace-chart-row span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.case-meta-line {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 4px;
|
||
margin: 3px 0;
|
||
}
|
||
.case-meta-line span,
|
||
.case-meta-line em {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
min-height: 18px;
|
||
padding: 1px 6px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 4px;
|
||
background: var(--bg-card);
|
||
color: var(--text-secondary);
|
||
font-size: 10px;
|
||
font-style: normal;
|
||
font-weight: 800;
|
||
line-height: 1.25;
|
||
}
|
||
.case-meta-line em {
|
||
border-color: rgba(15, 118, 110, 0.22);
|
||
background: rgba(15, 118, 110, 0.08);
|
||
color: #0f766e;
|
||
}
|
||
.case-workspace-summary {
|
||
min-width: 0;
|
||
margin-top: 10px;
|
||
}
|
||
.case-workspace-counts {
|
||
min-width: 0;
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
}
|
||
.case-workspace-counts span {
|
||
padding: 4px 8px;
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
}
|
||
.case-workspace-controls {
|
||
min-width: 0;
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) repeat(3, minmax(112px, 140px));
|
||
gap: 8px;
|
||
margin: 10px 0 8px;
|
||
}
|
||
.case-workspace-controls input,
|
||
.case-workspace-controls select {
|
||
min-width: 0;
|
||
min-height: 34px;
|
||
padding: 0 10px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.case-bulk-actions {
|
||
min-width: 0;
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
margin: 0 0 8px;
|
||
}
|
||
.case-preview-panel {
|
||
min-width: 0;
|
||
min-height: 48px;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.case-preview-empty {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.case-preview-head {
|
||
display: flex;
|
||
align-items: flex-start;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
margin-bottom: 8px;
|
||
}
|
||
.case-preview-head span {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
}
|
||
.case-preview-head strong {
|
||
display: block;
|
||
margin-top: 3px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
line-height: 1.35;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.case-preview-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 6px;
|
||
margin-top: 8px;
|
||
}
|
||
.case-preview-card {
|
||
padding: 8px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-card);
|
||
}
|
||
.case-preview-card span {
|
||
display: block;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
}
|
||
.case-preview-card strong {
|
||
display: block;
|
||
margin-top: 3px;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
line-height: 1.35;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.case-preview-footer {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.provenance-actions {
|
||
display: flex;
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
flex-wrap: wrap;
|
||
}
|
||
.provenance-action {
|
||
min-height: 34px;
|
||
padding: 0 12px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
cursor: pointer;
|
||
}
|
||
.provenance-action:hover {
|
||
border-color: var(--accent);
|
||
}
|
||
.file-action {
|
||
position: relative;
|
||
display: inline-flex;
|
||
align-items: center;
|
||
overflow: hidden;
|
||
cursor: pointer;
|
||
}
|
||
.file-action input {
|
||
position: absolute;
|
||
inset: 0;
|
||
opacity: 0;
|
||
cursor: pointer;
|
||
}
|
||
.workspace-import-status {
|
||
min-height: 18px;
|
||
margin-top: 8px;
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
}
|
||
.panchanga-range-controls {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.panchanga-range-controls label {
|
||
min-width: 0;
|
||
}
|
||
.panchanga-range-controls span,
|
||
.panchanga-condition-filter > span {
|
||
display: block;
|
||
margin-bottom: 4px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.panchanga-range-controls input,
|
||
.panchanga-range-controls select {
|
||
width: 100%;
|
||
min-height: 34px;
|
||
padding: 0 8px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.panchanga-condition-filter {
|
||
grid-column: span 2;
|
||
min-width: 0;
|
||
}
|
||
.panchanga-condition-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 8px;
|
||
align-items: center;
|
||
margin-bottom: 4px;
|
||
}
|
||
.panchanga-condition-head span {
|
||
margin-bottom: 0;
|
||
}
|
||
.panchanga-condition-head select {
|
||
max-width: 120px;
|
||
min-height: 30px;
|
||
}
|
||
.panchanga-condition-options {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 6px;
|
||
padding: 8px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
}
|
||
.panchanga-condition-options label {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 6px;
|
||
min-height: 28px;
|
||
padding: 3px 5px;
|
||
border-radius: var(--radius-xs);
|
||
cursor: pointer;
|
||
}
|
||
.panchanga-condition-options label:hover {
|
||
background: var(--bg-surface);
|
||
}
|
||
.panchanga-condition-options input {
|
||
width: 14px;
|
||
min-height: 14px;
|
||
padding: 0;
|
||
accent-color: var(--accent);
|
||
}
|
||
.panchanga-condition-options small {
|
||
color: var(--text-body);
|
||
font-size: 11px;
|
||
line-height: 1.25;
|
||
}
|
||
.panchanga-condition-guide {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
||
gap: 8px;
|
||
margin: 10px 0;
|
||
}
|
||
.panchanga-condition-guide div {
|
||
padding: 9px 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--purple);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.panchanga-condition-guide strong,
|
||
.panchanga-condition-guide span {
|
||
display: block;
|
||
}
|
||
.panchanga-condition-guide strong {
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.panchanga-condition-guide span {
|
||
margin-top: 3px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.calculation-settings-panel {
|
||
margin-top: 12px;
|
||
padding: 12px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.calculation-settings-head {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 12px;
|
||
align-items: flex-start;
|
||
margin-bottom: 10px;
|
||
}
|
||
.calculation-settings-head strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.calculation-settings-head span,
|
||
.calculation-settings-note {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.calculation-settings-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.calculation-settings-grid label {
|
||
min-width: 0;
|
||
}
|
||
.calculation-settings-grid span {
|
||
display: block;
|
||
margin-bottom: 4px;
|
||
color: var(--text-secondary);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.calculation-settings-grid select {
|
||
width: 100%;
|
||
min-height: 34px;
|
||
padding: 0 8px;
|
||
border: 1px solid var(--border-input);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-input);
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.calculation-settings-note {
|
||
margin-top: 9px;
|
||
}
|
||
.terminology-mode-preview {
|
||
display: grid;
|
||
gap: 4px;
|
||
margin-top: 10px;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.terminology-mode-preview strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.terminology-mode-preview span {
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.calculation-settings-save {
|
||
margin-top: 10px;
|
||
}
|
||
.rule-variant-panel {
|
||
margin-top: 12px;
|
||
padding-top: 12px;
|
||
border-top: 1px solid var(--border-light);
|
||
}
|
||
.rule-variant-grid {
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
}
|
||
.trust-center-panel {
|
||
border-left: 3px solid var(--blue);
|
||
}
|
||
.trust-status-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-bottom: 10px;
|
||
}
|
||
.trust-status-card {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.trust-status-card span,
|
||
.trust-status-card small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.trust-status-card strong {
|
||
display: block;
|
||
margin: 4px 0;
|
||
color: var(--text-heading);
|
||
font-size: 14px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.trust-center-copy {
|
||
display: grid;
|
||
gap: 6px;
|
||
margin: 8px 0 10px;
|
||
}
|
||
.dasha-shadbala-calibration-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--red);
|
||
border-radius: var(--radius-sm);
|
||
background: color-mix(in srgb, var(--red) 5%, var(--bg-surface));
|
||
}
|
||
.dasha-shadbala-calibration-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.dasha-shadbala-calibration-boundary {
|
||
display: flex;
|
||
gap: 8px;
|
||
align-items: flex-start;
|
||
margin-top: 8px;
|
||
padding-top: 8px;
|
||
border-top: 1px solid var(--border-light);
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.dasha-shadbala-calibration-boundary strong {
|
||
flex: 0 0 auto;
|
||
color: var(--red);
|
||
}
|
||
.oracle-evidence-intake-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--purple);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.oracle-evidence-progress-dashboard {
|
||
display: grid;
|
||
gap: 10px;
|
||
margin-top: 8px;
|
||
padding: 10px;
|
||
border: 1px solid rgba(21, 94, 117, 0.18);
|
||
border-radius: var(--radius-sm);
|
||
background: rgba(236, 254, 255, 0.74);
|
||
}
|
||
.oracle-evidence-progress-bar {
|
||
position: relative;
|
||
overflow: hidden;
|
||
height: 8px;
|
||
border-radius: 999px;
|
||
background: rgba(148, 163, 184, 0.22);
|
||
}
|
||
.oracle-evidence-progress-bar span {
|
||
display: block;
|
||
height: 100%;
|
||
border-radius: inherit;
|
||
background: linear-gradient(90deg, var(--blue), var(--green));
|
||
}
|
||
.oracle-evidence-intake-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.oracle-evidence-card {
|
||
display: grid;
|
||
min-width: 0;
|
||
gap: 8px;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-soft);
|
||
}
|
||
.oracle-evidence-card strong,
|
||
.oracle-evidence-card span,
|
||
.oracle-evidence-card small {
|
||
display: block;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.oracle-evidence-card strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.oracle-evidence-card span,
|
||
.oracle-evidence-card small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.oracle-evidence-fields {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 6px;
|
||
}
|
||
.oracle-evidence-fields span {
|
||
width: auto;
|
||
padding: 4px 6px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 999px;
|
||
background: var(--bg-surface);
|
||
color: var(--text-heading);
|
||
font-size: 10px;
|
||
}
|
||
.oracle-evidence-card button {
|
||
justify-self: start;
|
||
}
|
||
.oracle-evidence-import {
|
||
display: grid;
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
.oracle-evidence-validation-result {
|
||
min-width: 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-soft);
|
||
color: var(--text-muted);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.oracle-evidence-validation-result strong,
|
||
.oracle-evidence-validation-result span,
|
||
.oracle-evidence-validation-result small {
|
||
display: block;
|
||
}
|
||
.oracle-evidence-validation-result ul {
|
||
display: grid;
|
||
gap: 6px;
|
||
margin: 8px 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
}
|
||
.oracle-evidence-validation-result li {
|
||
padding: 8px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.oracle-evidence-validation-result strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.oracle-evidence-validation-ok {
|
||
border-left: 3px solid var(--green);
|
||
}
|
||
.oracle-evidence-validation-warn {
|
||
border-left: 3px solid var(--amber);
|
||
}
|
||
.oracle-evidence-validation-blocked {
|
||
border-left: 3px solid var(--red);
|
||
}
|
||
.runtime-health-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--amber);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.runtime-health-panel.runtime-health-ok {
|
||
border-left-color: var(--green);
|
||
}
|
||
.runtime-health-panel.runtime-health-warn {
|
||
border-left-color: var(--red);
|
||
}
|
||
.runtime-health-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.runtime-health-item {
|
||
min-width: 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.runtime-health-item span,
|
||
.runtime-health-item small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.runtime-health-item strong {
|
||
display: block;
|
||
margin: 3px 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.runtime-health-note {
|
||
margin: 8px 0 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.validation-transparency-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--green);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.validation-transparency-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.validation-transparency-metric {
|
||
min-width: 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.validation-transparency-metric span,
|
||
.validation-transparency-metric small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.validation-transparency-metric strong {
|
||
display: block;
|
||
margin: 3px 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.validation-transparency-boundary {
|
||
display: grid;
|
||
gap: 4px;
|
||
margin: 8px 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.validation-transparency-boundary strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.real-case-revalidation-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--blue);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.real-case-revalidation-panel.real-case-revalidation-ok {
|
||
border-left-color: var(--green);
|
||
}
|
||
.real-case-revalidation-panel.real-case-revalidation-warn {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.real-case-revalidation-panel.real-case-revalidation-pending {
|
||
border-left-color: var(--blue);
|
||
}
|
||
.real-case-revalidation-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 8px;
|
||
}
|
||
.real-case-revalidation-metric {
|
||
min-width: 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
}
|
||
.real-case-revalidation-metric span,
|
||
.real-case-revalidation-metric small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.real-case-revalidation-metric strong {
|
||
display: block;
|
||
margin: 3px 0;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.real-case-revalidation-boundary {
|
||
display: grid;
|
||
gap: 4px;
|
||
margin: 8px 0 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.real-case-revalidation-boundary strong {
|
||
color: var(--text-heading);
|
||
}
|
||
.terminology-mode-panel {
|
||
margin: 10px 0;
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-surface);
|
||
}
|
||
.terminology-mode-options {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||
gap: 8px;
|
||
}
|
||
.terminology-mode-option {
|
||
min-width: 0;
|
||
padding: 9px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
cursor: pointer;
|
||
}
|
||
.terminology-mode-option.active {
|
||
border-color: var(--blue);
|
||
box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.18);
|
||
}
|
||
.terminology-mode-option input {
|
||
margin-right: 6px;
|
||
}
|
||
.terminology-mode-option strong,
|
||
.terminology-mode-option span,
|
||
.terminology-mode-option small {
|
||
display: block;
|
||
}
|
||
.terminology-mode-option strong {
|
||
margin-top: 4px;
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.terminology-mode-option span {
|
||
color: var(--blue);
|
||
font-size: 11px;
|
||
font-weight: 700;
|
||
}
|
||
.terminology-mode-option small {
|
||
margin-top: 4px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.terminology-mode-save {
|
||
margin-top: 10px;
|
||
}
|
||
.trust-center-copy p {
|
||
margin: 0;
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.55;
|
||
}
|
||
.provenance-action.danger,
|
||
.mini-action.danger {
|
||
border-color: var(--red);
|
||
color: var(--red);
|
||
}
|
||
.panchanga-festival-details {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
||
gap: 8px;
|
||
margin: 10px 0;
|
||
}
|
||
.panchanga-festival-card {
|
||
padding: 10px;
|
||
border: 1px solid var(--border-light);
|
||
border-left: 3px solid var(--green);
|
||
border-radius: var(--radius-sm);
|
||
background: var(--bg-white);
|
||
overflow-wrap: anywhere;
|
||
}
|
||
.panchanga-festival-card.is-candidate {
|
||
border-left-color: var(--amber);
|
||
}
|
||
.panchanga-festival-card strong,
|
||
.panchanga-festival-card span,
|
||
.panchanga-festival-card small {
|
||
display: block;
|
||
}
|
||
.panchanga-festival-card strong {
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
}
|
||
.panchanga-festival-card span,
|
||
.panchanga-festival-card small {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.panchanga-festival-card p {
|
||
margin: 5px 0;
|
||
color: var(--text-body);
|
||
font-size: 11px;
|
||
line-height: 1.45;
|
||
}
|
||
.panchanga-month-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(7, minmax(86px, 1fr));
|
||
gap: 1px;
|
||
margin: 10px 0 12px;
|
||
overflow-x: auto;
|
||
border: 1px solid var(--border-light);
|
||
background: var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.panchanga-month-head,
|
||
.panchanga-month-cell {
|
||
min-width: 86px;
|
||
background: var(--bg-card);
|
||
}
|
||
.panchanga-month-head {
|
||
padding: 7px 8px;
|
||
color: var(--text-heading);
|
||
font-size: 11px;
|
||
font-weight: 800;
|
||
text-align: center;
|
||
}
|
||
.panchanga-month-cell {
|
||
min-height: 112px;
|
||
padding: 8px;
|
||
}
|
||
.panchanga-month-cell.is-empty {
|
||
background: var(--bg-surface);
|
||
}
|
||
.panchanga-month-date {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 6px;
|
||
margin-bottom: 6px;
|
||
}
|
||
.panchanga-month-date strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.panchanga-month-date span,
|
||
.panchanga-month-cell small,
|
||
.panchanga-month-cell em {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
font-style: normal;
|
||
}
|
||
.panchanga-month-cell p {
|
||
margin: 0 0 4px;
|
||
color: var(--text-heading);
|
||
font-size: 12px;
|
||
font-weight: 700;
|
||
line-height: 1.35;
|
||
}
|
||
.panchanga-month-cell small,
|
||
.panchanga-month-cell em {
|
||
display: block;
|
||
line-height: 1.35;
|
||
}
|
||
.panchanga-tag-row {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 4px;
|
||
margin-top: 5px;
|
||
}
|
||
.panchanga-tag-row span {
|
||
display: inline-flex !important;
|
||
align-items: center;
|
||
max-width: 100%;
|
||
min-height: 20px;
|
||
padding: 2px 6px;
|
||
border: 1px solid rgba(15, 118, 110, 0.22);
|
||
border-radius: 4px;
|
||
background: rgba(15, 118, 110, 0.08);
|
||
color: #0f766e !important;
|
||
font-size: 10px !important;
|
||
font-weight: 800;
|
||
line-height: 1.25;
|
||
word-break: break-word;
|
||
}
|
||
.panchanga-condition-chip {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 4px;
|
||
margin-top: 0;
|
||
}
|
||
.panchanga-condition-chip span {
|
||
display: inline-flex !important;
|
||
align-items: center;
|
||
max-width: 100%;
|
||
min-height: 20px;
|
||
padding: 2px 6px;
|
||
border: 1px solid rgba(67, 56, 202, 0.22);
|
||
border-radius: 4px;
|
||
background: rgba(67, 56, 202, 0.08);
|
||
color: #4338ca !important;
|
||
font-size: 10px !important;
|
||
font-weight: 800;
|
||
line-height: 1.25;
|
||
word-break: break-word;
|
||
}
|
||
.panchanga-activity-badge {
|
||
display: inline-flex !important;
|
||
align-items: center;
|
||
width: fit-content;
|
||
max-width: 128px;
|
||
min-height: 22px;
|
||
padding: 2px 7px;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: 4px;
|
||
background: var(--bg-surface);
|
||
color: var(--text-secondary) !important;
|
||
font-size: 11px !important;
|
||
font-weight: 800;
|
||
line-height: 1.25;
|
||
white-space: normal;
|
||
}
|
||
.panchanga-activity-badge.is-good {
|
||
border-color: rgba(22, 101, 52, 0.2);
|
||
background: rgba(22, 101, 52, 0.08);
|
||
color: #166534 !important;
|
||
}
|
||
.panchanga-activity-badge.is-bad {
|
||
border-color: rgba(185, 28, 28, 0.2);
|
||
background: rgba(185, 28, 28, 0.08);
|
||
color: #b91c1c !important;
|
||
}
|
||
.panchanga-week-status {
|
||
margin-top: 10px;
|
||
padding: 10px;
|
||
background: var(--bg-surface);
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
color: var(--text-secondary);
|
||
font-size: 12px;
|
||
line-height: 1.5;
|
||
}
|
||
.panchanga-week-loading {
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.panchanga-week-error {
|
||
color: #b91c1c;
|
||
font-weight: 700;
|
||
}
|
||
.panchanga-range-summary {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
margin-bottom: 8px;
|
||
}
|
||
.panchanga-range-summary strong {
|
||
color: var(--text-heading);
|
||
font-size: 13px;
|
||
}
|
||
.panchanga-range-summary span {
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
text-align: right;
|
||
max-width: 55%;
|
||
}
|
||
.panchanga-range-summary small {
|
||
display: block;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
text-align: right;
|
||
}
|
||
.panchanga-week-table-wrap {
|
||
overflow-x: auto;
|
||
}
|
||
.panchanga-week-table {
|
||
width: 100%;
|
||
min-width: 1240px;
|
||
border-collapse: collapse;
|
||
background: var(--bg-card);
|
||
}
|
||
.panchanga-week-table th,
|
||
.panchanga-week-table td {
|
||
padding: 8px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
text-align: left;
|
||
vertical-align: top;
|
||
font-size: 12px;
|
||
}
|
||
.panchanga-week-table th {
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.panchanga-week-table td span {
|
||
display: block;
|
||
margin-top: 2px;
|
||
color: var(--text-muted);
|
||
font-size: 11px;
|
||
}
|
||
.provenance-table-wrap {
|
||
overflow-x: auto;
|
||
border: 1px solid var(--border-light);
|
||
border-radius: var(--radius-sm);
|
||
}
|
||
.provenance-table {
|
||
width: 100%;
|
||
border-collapse: collapse;
|
||
min-width: 620px;
|
||
background: var(--bg-surface);
|
||
}
|
||
.provenance-table th,
|
||
.provenance-table td {
|
||
padding: 10px;
|
||
border-bottom: 1px solid var(--border-light);
|
||
text-align: left;
|
||
vertical-align: top;
|
||
font-size: 12px;
|
||
line-height: 1.45;
|
||
}
|
||
.provenance-table th {
|
||
width: 120px;
|
||
color: var(--text-heading);
|
||
font-weight: 700;
|
||
}
|
||
.provenance-table td {
|
||
color: var(--text-secondary);
|
||
}
|
||
.roadmap-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||
gap: 8px;
|
||
margin-top: 10px;
|
||
}
|
||
|
||
/* === 生时校正全屏模态 === */
|
||
.rect-overlay {
|
||
position: fixed; inset: 0; z-index: 998;
|
||
background: rgba(0,0,0,0.35); backdrop-filter: blur(2px);
|
||
animation: fadeIn 0.2s ease;
|
||
}
|
||
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
|
||
|
||
.rect-modal, .rect-panel {
|
||
position: fixed; z-index: 999;
|
||
top: 0; right: 0; bottom: 0;
|
||
width: min(480px, 100vw);
|
||
background: var(--bg-main, #f5f5f5);
|
||
box-shadow: -4px 0 24px rgba(0,0,0,0.12);
|
||
display: flex; flex-direction: column;
|
||
animation: slideInRight 0.3s ease;
|
||
overflow: hidden;
|
||
}
|
||
@keyframes slideInRight { from { transform: translateX(100%); } to { transform: none; } }
|
||
|
||
.rect-modal-header, .rect-panel-header {
|
||
display: flex; align-items: center; justify-content: space-between;
|
||
padding: 16px 20px; background: var(--bg-card, #fff);
|
||
border-bottom: 1px solid var(--border-light, #eee);
|
||
flex-shrink: 0;
|
||
}
|
||
.rect-modal-header h3, .rect-panel-header h3 { font-size: 16px; margin: 0; color: var(--text-heading); }
|
||
.rect-modal-close, .rect-panel-close {
|
||
width: 32px; height: 32px; border: none; background: none; font-size: 18px;
|
||
color: var(--text-muted); cursor: pointer; border-radius: 6px;
|
||
display: flex; align-items: center; justify-content: center; transition: background 0.2s;
|
||
}
|
||
.rect-modal-close:hover, .rect-panel-close:hover { background: rgba(0,0,0,0.05); }
|
||
|
||
.rect-modal-body, .rect-panel #rect-content {
|
||
flex: 1; overflow-y: auto; padding: 20px;
|
||
-webkit-overflow-scrolling: touch;
|
||
}
|
||
|
||
@media (max-width: 768px) {
|
||
.rect-prompt { flex-wrap: wrap; gap: 8px; }
|
||
.rect-prompt-btn { width: 100%; text-align: center; }
|
||
.rect-modal, .rect-panel { width: 100vw; }
|
||
.rect-banner-btn { width: 100%; }
|
||
.technique-workbench-head { align-items: flex-start; }
|
||
.technique-action-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
||
.provenance-grid,
|
||
.provenance-kv-grid,
|
||
.workflow-summary-grid,
|
||
.roadmap-grid { grid-template-columns: 1fr; }
|
||
.panchanga-range-controls,
|
||
.panchanga-condition-options,
|
||
.panchanga-condition-guide,
|
||
.panchanga-festival-details { grid-template-columns: 1fr; }
|
||
.panchanga-condition-filter { grid-column: span 1; }
|
||
.calculation-settings-head { flex-direction: column; }
|
||
.calculation-settings-grid,
|
||
.rule-variant-grid,
|
||
.first-use-grid,
|
||
.runtime-health-grid,
|
||
.trust-status-grid,
|
||
.terminology-mode-options,
|
||
.case-workspace-controls { grid-template-columns: 1fr; }
|
||
.oracle-evidence-intake-grid { grid-template-columns: 1fr; }
|
||
.static-demo-boundary-grid { grid-template-columns: 1fr; }
|
||
.validation-transparency-grid { grid-template-columns: 1fr; }
|
||
.case-workspace-counts,
|
||
.case-bulk-actions,
|
||
.workspace-chart-list,
|
||
.case-preview-panel { max-width: 100%; }
|
||
.panchanga-range-summary { display: block; }
|
||
.panchanga-range-summary span { display: block; max-width: none; margin-top: 4px; text-align: left; }
|
||
.panchanga-range-summary small { text-align: left; }
|
||
.panchanga-month-grid { grid-template-columns: repeat(7, minmax(76px, 1fr)); }
|
||
.panchanga-month-head,
|
||
.panchanga-month-cell { min-width: 76px; }
|
||
.provenance-head { display: block; }
|
||
.provenance-head strong { max-width: none; margin-top: 4px; text-align: left; }
|
||
.technique-result-grid,
|
||
.technique-varga-grid,
|
||
.technique-insight-grid,
|
||
.thematic-report-grid { grid-template-columns: 1fr; }
|
||
}
|