*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#213547;background:#fff;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;line-height:1.5}#root{width:100%;max-width:100%;margin:0 auto}.top-nav{z-index:100;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;display:flex;position:sticky;top:0}.top-nav h1{color:#7c3aed;font-size:18px}.nav-tabs{gap:8px;display:flex}.nav-tabs button{color:#4b5563;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:6px 16px;font-size:14px;transition:all .2s}.nav-tabs button:hover:not(:disabled){color:#111;background:#e5e7eb}.nav-tabs button.active{color:#fff;background:#7c3aed;border-color:#7c3aed}.nav-tabs button:disabled{opacity:.4;cursor:not-allowed}.error-banner{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin:16px;padding:12px 24px}.main-content{max-width:1100px;margin:0 auto;padding:20px}.chart-input-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:24px;box-shadow:0 2px 8px #0000000f}.chart-input-container h2{color:#7c3aed;margin-bottom:20px}.chart-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:#6b7280;font-size:13px}.form-group input,.form-group select{color:#111;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 12px;font-size:14px}.form-group input:focus,.form-group select:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 2px #7c3aed26}.btn-group{gap:8px;display:flex}.btn-group button{color:#4b5563;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;flex:1;padding:10px;font-size:14px}.btn-group button.active{color:#fff;background:#7c3aed;border-color:#7c3aed}.submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#a78bfa);border:none;border-radius:8px;padding:14px;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s}.submit-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #7c3aed59}.scope-toolbar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex;box-shadow:0 2px 8px #0000000f}.scope-toggles{flex-wrap:wrap;gap:6px;display:flex}.scope-btn{color:#6b7280;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:5px 12px;font-size:13px;transition:all .2s}.scope-btn:hover{background:#e5e7eb}.scope-btn.active{color:#fff;background:#7c3aed;border-color:#7c3aed}.scope-date-picker{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.scope-date-picker label{color:#4b5563;align-items:center;gap:6px;font-size:13px;display:flex}.scope-date-picker input[type=date],.scope-date-picker select{color:#111;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:5px 8px;font-size:13px}.update-horoscope-btn{color:#fff;cursor:pointer;background:#7c3aed;border:none;border-radius:6px;padding:6px 14px;font-size:13px;transition:background .2s}.update-horoscope-btn:hover{background:#6d28d9}.chart-view{flex-direction:column;gap:16px;display:flex}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;overflow-x:auto;box-shadow:0 2px 8px #0000000f}.natal-surrounding h3{color:#7c3aed;margin-bottom:16px}.tab-bar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.tab-btn{color:#6b7280;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:6px 14px;font-size:13px}.tab-btn.active{color:#fff;background:#7c3aed;border-color:#7c3aed}.palace-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.surrounding-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f}.card-title{color:#7c3aed;margin-bottom:10px;font-size:15px;font-weight:700}.card-slots{flex-direction:column;gap:8px;display:flex}.slot{background:#f9fafb;border-radius:8px;flex-direction:column;padding:8px 10px;display:flex}.slot-label{color:#9ca3af;text-transform:uppercase;font-size:11px;font-weight:600}.slot-palace{color:#6b7280;font-size:12px}.slot-stars{color:#111;font-size:13px;line-height:1.5}.interpretation-report{flex-direction:column;gap:20px;display:flex}.report-header{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.report-header h2{color:#7c3aed;margin-bottom:12px}.birth-info p{color:#6b7280;margin:4px 0;font-size:14px}.palace-reports{flex-direction:column;gap:12px;display:flex}.palace-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f}.palace-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.palace-header h3{color:#7c3aed;font-size:15px}.palace-stars{color:#6b7280;margin:6px 0;font-size:13px}.palace-desc{color:#374151;font-size:14px;line-height:1.7}.decadal-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f}.decadal-section h3{color:#7c3aed;margin-bottom:8px}.decadal-range{color:#6b7280;font-size:14px}.overall-advice{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:16px}.overall-advice h3{color:#92400e;margin-bottom:8px}.overall-advice p{color:#78350f;font-size:14px;line-height:1.7}.iztro-palace-name{text-wrap:wrap;word-break:break-all}.iztro-palace-name .iztro-palace-name-wrapper{overflow:hidden}.iztro-astrolabe{background:0 0}@media (width<=1024px){.iztro-astrolabe-theme-default{--iztro-star-font-size-big:11px;--iztro-star-font-size-small:9px}.iztro-palace{padding:2px}.iztro-astrolabe{grid-gap:2px}}@media (width<=430px){.iztro-astrolabe-theme-default{--iztro-star-font-size-big:9px;--iztro-star-font-size-small:7px}.iztro-palace{padding:1px}.iztro-astrolabe{grid-gap:1px}.iztro-palace-name{font-size:7px}.iztro-palace-footer{font-size:6px}.palace-grid{grid-template-columns:1fr}.scope-toolbar,.scope-date-picker{flex-direction:column;align-items:flex-start}}
