:root{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #f8f9fa;--text-primary: #333333;--text-secondary: #666666;--text-muted: #7f8c8d;--border-color: #ddd;--border-light: #dee2e6;--border-focus: #3498db;--shadow: rgba(0, 0, 0, .1);--shadow-strong: rgba(0, 0, 0, .3);--input-bg: #ffffff;--header-bg: linear-gradient(135deg, #3498db, #2c3e50);--header-text: #ffffff;--plot-bg: #fafafa;--plot-paper: #ffffff;--grid-color: #e8e8e8;--zero-line: #bbb;--error-bg: #fff5f5;--error-border: #fed7d7;--error-text: #c53030}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #383838;--text-primary: #e0e0e0;--text-secondary: #b0b0b0;--text-muted: #888888;--border-color: #404040;--border-light: #505050;--border-focus: #3498db;--shadow: rgba(0, 0, 0, .3);--shadow-strong: rgba(0, 0, 0, .6);--input-bg: #2d2d2d;--header-bg: linear-gradient(135deg, #2c3e50, #1a1a1a);--header-text: #e0e0e0;--plot-bg: #2a2a2a;--plot-paper: #2d2d2d;--grid-color: #404040;--zero-line: #666;--error-bg: #2d1f1f;--error-border: #4a2a2a;--error-text: #ff6b6b}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.app{max-width:1200px;margin:0 auto;padding:20px}@media (max-width: 768px){.app{padding:10px;margin:0}}header{text-align:center;margin-bottom:30px}header h1{color:var(--text-primary);font-size:2.5em;margin-bottom:10px}header p{color:var(--text-muted);font-size:1.1em}.mathquill-input{min-height:40px;padding:8px 12px;border:2px solid var(--border-color);border-radius:5px;background:var(--input-bg);color:var(--text-primary);font-size:16px;display:inline-block;min-width:200px;cursor:text;vertical-align:middle;transition:border-color .3s ease,background-color .3s ease}.mathquill-input:focus-within{border-color:var(--border-focus);outline:none;box-shadow:0 0 5px #3498db4d}.mathquill-input .mq-editable-field{border:none!important;box-shadow:none!important;min-height:24px}.mathquill-input .mq-math-mode{font-size:16px}.mathquill-input .mq-cursor{border-left:1px solid var(--text-primary);margin-right:-1px}.mathquill-input .mq-blink{animation:mq-blink 1s infinite}@keyframes mq-blink{0%,50%{opacity:1}51%,to{opacity:0}}.static-formula{display:inline-block;vertical-align:middle;font-size:16px;margin:0 4px}.static-formula .mq-math-mode{font-size:inherit}.plot-name .static-formula{font-size:14px;max-width:200px;overflow:hidden}.chart-title-formula{font-size:18px;margin:0 8px}.chart-title-formula .mq-math-mode{font-size:18px}.chart-title-formulas{background:var(--bg-secondary)!important;border-bottom:1px solid var(--border-color)!important;transition:background-color .3s ease,border-color .3s ease}.article-nav{text-align:center;margin-bottom:25px;padding:0 20px}.article-links{background:rgba(52,152,219,.05);border:1px solid rgba(52,152,219,.1);border-radius:25px;padding:12px 20px;display:inline-flex;align-items:center;gap:15px;flex-wrap:wrap;justify-content:center;box-shadow:0 2px 8px #3498db1a;transition:background-color .3s ease,border-color .3s ease}.article-intro{color:#3498db;font-weight:600;font-size:.95em;margin-right:5px}.article-links a{color:#3498db;text-decoration:none;font-size:.9em;padding:4px 8px;border-radius:12px;transition:all .2s ease;white-space:nowrap}.article-links a:hover{background:rgba(52,152,219,.1);color:#2980b9;transform:translateY(-1px)}.article-links a.all-articles{font-weight:600;margin-left:5px;padding:6px 12px;background:rgba(52,152,219,.1);border-radius:15px}.article-links a.all-articles:hover{background:rgba(52,152,219,.2)}@media (max-width: 768px){header{margin-bottom:20px}header h1{font-size:1.8em;line-height:1.2}header p{font-size:1em;padding:0 10px}.article-nav{margin-bottom:20px;padding:0 10px}.article-links{gap:8px;padding:10px 15px;font-size:.85em}.article-intro{font-size:.85em;margin-right:2px}.article-links a{font-size:.8em;padding:3px 6px}.article-links a.all-articles{padding:4px 8px;margin-left:2px}}.controls{background:var(--bg-secondary);padding:20px;border-radius:8px;box-shadow:0 2px 10px var(--shadow);margin-bottom:20px;transition:background-color .3s ease,box-shadow .3s ease}@media (max-width: 768px){.controls{padding:15px;margin-bottom:15px;border-radius:6px}}.function-input{display:flex;align-items:center;gap:10px;margin-bottom:15px}@media (max-width: 768px){.function-input{flex-direction:column;align-items:stretch;gap:8px}.function-input label{text-align:center;min-width:auto;font-weight:600;margin-bottom:5px}.function-input input{width:100%;text-align:center}.function-input button{margin:5px 0;padding:12px;font-size:16px}}.function-input label{font-weight:600;min-width:70px}.function-input input{flex:1;padding:8px 12px;border:2px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-primary);font-size:16px;font-family:Courier New,monospace;transition:border-color .3s ease,background-color .3s ease}.function-input input:focus{outline:none;border-color:var(--border-focus)}.function-input button{padding:8px 20px;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600}.function-input button:hover{background:#2980b9}.plot-type{display:flex;gap:15px;margin-bottom:15px;flex-wrap:wrap}@media (max-width: 768px){.plot-type{flex-direction:column;gap:10px;margin-bottom:20px}.plot-type label{justify-content:center;padding:12px;background:var(--bg-tertiary);border-radius:6px;border:2px solid transparent;transition:all .2s ease}.plot-type label:has(input:checked){background:rgba(52,152,219,.1);border-color:#2196f3}.plot-type input{margin-right:8px}}.plot-type label{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:14px}.plot-type label:has(input:disabled){opacity:.5;cursor:not-allowed}.plot-type input:disabled+span{color:#999}.range-controls{display:flex;gap:20px;flex-wrap:wrap}@media (max-width: 768px){.range-controls{flex-direction:column;gap:15px}.range-group{flex-direction:column;align-items:stretch;background:var(--bg-tertiary);padding:12px;border-radius:6px}.range-group label{text-align:center;margin-bottom:8px;font-weight:600}.range-group input{width:48%;margin:0 1%;padding:10px;font-size:16px;text-align:center}.range-group span{text-align:center;margin:5px 0;font-weight:500}}.range-group{display:flex;align-items:center;gap:8px}.range-group label{font-weight:600;min-width:70px}.range-group input{width:80px;padding:6px 8px;border:2px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-primary);transition:border-color .3s ease,background-color .3s ease}.range-group input:focus{outline:none;border-color:var(--border-focus)}.parametric-input{margin-bottom:15px}.parametric-functions{display:flex;gap:15px;margin-bottom:10px;flex-wrap:wrap}@media (max-width: 768px){.parametric-functions{flex-direction:column;gap:10px}.parametric-functions>div{flex-direction:column;align-items:stretch;background:var(--bg-tertiary);padding:12px;border-radius:6px}.parametric-functions label{text-align:center;margin-bottom:8px;font-weight:600}.parametric-functions input{width:100%;text-align:center;padding:12px;font-size:16px}}.parametric-functions>div{display:flex;align-items:center;gap:8px}.parametric-functions label{font-weight:600;min-width:50px}.parametric-functions input{padding:8px 12px;border:2px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-primary);font-size:16px;font-family:Courier New,monospace;min-width:150px;transition:border-color .3s ease,background-color .3s ease}.parametric-functions input:focus{outline:none;border-color:var(--border-focus)}.parametric-input button,.function-input button{padding:8px 20px;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600}.parametric-input button:hover,.function-input button:hover{background:#2980b9}.plot-management{margin-top:15px;padding-top:15px;border-top:1px solid #ddd}.plot-controls{margin-bottom:10px;display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 768px){.plot-controls{flex-direction:column;gap:8px}.plot-controls button{padding:12px 16px;font-size:16px;border-radius:6px}}.plot-controls button{padding:6px 16px;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:14px}#clear-all-btn{background:#e74c3c}#clear-all-btn:hover{background:#c0392b}#share-btn{background:#27ae60}#share-btn:hover{background:#219a52}#help-btn{background:#9b59b6}#help-btn:hover{background:#8e44ad}#theme-toggle-btn{background:#95a5a6;font-size:18px;padding:6px 12px;min-width:auto;border-radius:6px;transition:all .3s ease}#theme-toggle-btn:hover{background:#7f8c8d;transform:scale(1.1)}.plot-list{max-height:200px;overflow-y:auto}@media (max-width: 768px){.plot-list{max-height:300px}.plot-item{flex-direction:column;align-items:stretch;padding:12px;gap:8px}.plot-name{text-align:center;font-size:14px;white-space:normal;word-break:break-word}.plot-actions{justify-content:center;gap:8px}.plot-actions button{flex:1;padding:8px 12px;font-size:14px}}.plot-item{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:5px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-size:14px}.plot-item:last-child{margin-bottom:0}.plot-color{width:16px;height:16px;border-radius:50%;border:1px solid #ddd}.plot-name{flex:1;font-family:Courier New,monospace;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plot-actions{display:flex;gap:5px}.plot-actions button{padding:2px 8px;background:#6c757d;color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:11px}.plot-actions button:hover{background:#5a6268}.plot-actions button.toggle{background:#28a745}.plot-actions button.toggle:hover{background:#218838}.plot-actions button.toggle.hidden{background:#6c757d}.plot-actions button.remove{background:#dc3545}.plot-actions button.remove:hover{background:#c82333}.function-input button{margin-right:5px}.function-input button:last-child{margin-right:0}.parametric-input button{margin-right:5px}.parametric-input button:last-child{margin-right:0}#plot-container{background:var(--bg-secondary);border-radius:8px;box-shadow:0 2px 10px var(--shadow);min-height:500px;padding:10px;overflow:hidden;box-sizing:border-box;transition:background-color .3s ease,box-shadow .3s ease}#plot-container>div{width:100%!important;max-width:100%!important}#plot-container .plotly-graph-div,#plot-container .js-plotly-plot{width:100%!important;max-width:100%!important}@media (max-width: 768px){#plot-container{min-height:400px;padding:10px;margin:0 -10px;border-radius:0;box-shadow:0 1px 5px #0000001a;overflow:hidden}#plot-container>div,#plot-container .plotly-graph-div,#plot-container .js-plotly-plot{width:100%!important;max-width:100%!important}}.seo-footer{background:#2c3e50;color:#ecf0f1;margin-top:40px;padding:40px 0 20px}.footer-content{max-width:1200px;margin:0 auto;padding:0 20px}.footer-section{margin-bottom:30px}.footer-section h2{color:#3498db;font-size:1.4em;margin-bottom:15px;border-bottom:2px solid #3498db;padding-bottom:5px}.footer-section h3{color:#e74c3c;font-size:1.2em;margin-bottom:10px}.footer-section p{line-height:1.6;margin-bottom:15px;color:#bdc3c7}.footer-section ul{list-style:none;padding:0}.footer-section li{margin-bottom:8px;padding-left:15px;position:relative;line-height:1.5;color:#bdc3c7}.footer-section li:before{content:"→";position:absolute;left:0;color:#3498db;font-weight:700}.footer-section strong{color:#ecf0f1}.footer-bottom{border-top:1px solid #34495e;padding-top:20px;margin-top:30px;text-align:center}.footer-bottom p{margin-bottom:10px;color:#95a5a6;line-height:1.5}.footer-bottom p:last-child{margin-bottom:0;font-size:.9em;color:#7f8c8d}@media (max-width: 768px){.footer-content{padding:0 15px}.seo-footer{padding:30px 0 15px}.footer-section h2{font-size:1.2em}.footer-section h3{font-size:1.1em}.footer-section p{font-size:14px;line-height:1.5}.footer-section li{font-size:14px;padding-left:12px;margin-bottom:6px}.footer-bottom p{font-size:12px}}.modal{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--bg-secondary);border-radius:8px;box-shadow:0 4px 20px var(--shadow-strong);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;transition:background-color .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-light)}.modal-header h3{margin:0;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:color .3s ease,background-color .3s ease}.modal-close:hover{color:var(--text-primary);background-color:var(--bg-tertiary);border-radius:50%}.modal-body{padding:20px}.modal-body p{margin-bottom:15px;color:var(--text-secondary)}.share-url-container{display:flex;gap:10px;margin-bottom:15px}.share-url-container input{flex:1;padding:10px;border:2px solid var(--border-color);border-radius:4px;font-family:Courier New,monospace;font-size:14px;background:var(--bg-tertiary);color:var(--text-primary);transition:border-color .3s ease,background-color .3s ease}.share-url-container button{padding:10px 20px;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;white-space:nowrap}.share-url-container button:hover{background:#2980b9}.share-url-container button.copied{background:#27ae60}.share-note{font-size:12px;color:#777;margin-bottom:0}.help-modal-content{max-width:800px;width:95%;max-height:90vh}.help-modal-body{max-height:70vh;overflow-y:auto;padding:20px}.help-section{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #eee}.help-section:last-child{border-bottom:none;margin-bottom:0}.help-section h4{color:var(--text-primary);margin-bottom:15px;font-size:1.1em;border-bottom:2px solid #3498db;padding-bottom:5px;display:inline-block}.help-section h5{color:var(--text-primary);margin-bottom:10px;font-size:1em}.help-section ul{list-style:none;padding:0;margin:0}.help-section li{margin-bottom:5px;padding-left:15px;position:relative;line-height:1.4}.help-section li:before{content:"•";position:absolute;left:0;color:#3498db;font-weight:700}.function-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:10px}.function-category{background:var(--bg-tertiary);padding:15px;border-radius:6px;border-left:4px solid #3498db;transition:background-color .3s ease}.operator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-top:10px}.operator-grid>div{background:var(--bg-tertiary);padding:15px;border-radius:6px;border-left:4px solid #e74c3c;transition:background-color .3s ease}.examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;margin-top:10px}.example-category{background:var(--bg-tertiary);padding:15px;border-radius:6px;border-left:4px solid #27ae60;transition:background-color .3s ease}.help-section code{background:var(--bg-tertiary);color:#e74c3c;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;font-weight:600;transition:background-color .3s ease}.help-section .tips ul li{background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;padding:8px 12px;margin-bottom:8px;color:#856404}.help-section .tips ul li:before{content:"💡";margin-right:8px}@media (max-width: 768px){.modal-content{width:95%;margin:20px 10px;max-height:85vh}.modal-header{padding:15px}.modal-header h3{font-size:1.2em}.modal-body{padding:15px}.help-modal-content{width:98%;margin:10px}.help-modal-body{padding:15px;max-height:75vh}.help-section h4{font-size:1em;margin-bottom:10px}.help-section h5{font-size:.9em;margin-bottom:8px}.function-grid,.examples-grid,.operator-grid{grid-template-columns:1fr;gap:10px}.function-category,.example-category,.operator-grid>div{padding:12px}.help-section code{font-size:.8em;padding:1px 4px}.share-url-container{flex-direction:column;gap:8px}.share-url-container input{font-size:14px;padding:12px}.share-url-container button{padding:12px;font-size:16px}}
