@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100..900&display=swap";:root{--bg-primary: #F5F1E8;--bg-secondary: #FFFFFF;--text-primary: #2D5F4F;--text-secondary: #5C8A7A;--accent: #2D5F4F;--accent-glow: rgba(45, 95, 79, .3);--font-serif: "Noto Sans SC", sans-serif;--font-sans: "Noto Sans SC", sans-serif}*{box-sizing:border-box}.reading-note{color:#666;font-size:.88rem;line-height:1.7}.source-link{font-size:.85rem;overflow-wrap:anywhere}.source-link a,.source-attribution a{color:#2d5f4f;text-underline-offset:3px}.reference-passage{padding:.5rem 1rem;margin:1rem 0;border:1px solid #e5eae7;border-radius:8px}.reading-focus{border-left:4px solid #FF8C42}.reference-passage h4{margin-bottom:.4rem}.all-lines{margin:1.5rem 0;padding:1rem;background:#f5f1e8;border-radius:8px}.all-lines summary{cursor:pointer;font-weight:600}.ai-interpretation,.sourced-case{margin-top:2rem;padding-top:1rem;border-top:1px solid #e5eae7}.source-attribution{margin-top:2rem}@media(max-width:600px){.container,.card{padding:1rem}.reference-passage{padding:.5rem}}body{margin:0;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:2;overflow-x:hidden}.privacy-notice{text-align:center;font-size:.85rem;color:var(--text-secondary);margin-top:1rem;opacity:.8;border-top:1px solid rgba(45,95,79,.2);padding-top:1rem}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--accent);margin-bottom:1rem}.container{max-width:800px;margin:0 auto;padding:2rem;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.card{background:var(--bg-secondary);border:1px solid rgba(45,95,79,.1);border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000004d;transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0006;border-color:var(--accent-glow)}input[type=text],textarea{width:100%;padding:1rem;background:#2d5f4f0d;border:1px solid rgba(45,95,79,.2);border-radius:8px;color:var(--text-primary);font-size:1rem;margin-bottom:1rem;transition:border-color .3s ease}input[type=text]:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}button{background:linear-gradient(135deg,var(--accent),#4A7A6A);color:#f5f1e8;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}button:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 15px var(--accent-glow)}button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.fade-in{animation:fadeIn .8s ease-out forwards;opacity:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hexagram-line{height:20px;margin:8px 0;border-radius:2px;position:relative}.yang{background:var(--accent)}.yin{display:flex;justify-content:space-between}.yin:before,.yin:after{content:"";width:45%;height:100%;background:var(--accent);border-radius:2px}.loading-spinner{border:4px solid rgba(45,95,79,.1);border-left-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:2rem auto}@keyframes spin{to{transform:rotate(360deg)}}.markdown-content h1,.markdown-content h2{border-bottom:1px solid rgba(45,95,79,.2);padding-bottom:.5rem}.markdown-content blockquote{border-left:4px solid var(--accent);margin:1rem 0;padding:.5rem 1rem;background:#2d5f4f0d;font-style:italic}
