:root{--bg-color:#0b0f19;--panel-bg:#12192b99;--panel-border:#ffffff1a;--accent-color:#00f0ff;--accent-hover:#00c3ff;--text-main:#f0f4f8;--text-muted:#8a9bb3;--glass-blur:12px;--font-main:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--bg-color);width:100%;height:100%;font-family:var(--font-main);color:var(--text-main);overflow:hidden}#canvas-container{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}#ui-container{z-index:2;pointer-events:none;flex-direction:column;width:100%;height:100%;padding:24px;display:flex;position:absolute;top:0;left:0}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--panel-border);pointer-events:auto;border-radius:16px;padding:20px;box-shadow:0 8px 32px #0000005e}header{justify-content:space-between;align-items:center;gap:16px;width:max-content;max-width:100%;margin-bottom:24px;display:flex}.mobile-only{display:none}#controls-container,.header-title{flex-direction:column;display:flex}.top-right-controls{pointer-events:auto;z-index:10;gap:12px;display:flex;position:absolute;top:24px;right:24px}.glass-panel-sm{background:var(--panel-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--panel-border);border-radius:8px;padding:6px 12px;box-shadow:0 4px 16px #0000004d}.lang-selector-wrapper{align-items:center;gap:8px;transition:border-color .3s;display:flex}.lang-selector-wrapper:hover,.lang-selector-wrapper:focus-within{border-color:var(--accent-color)}.globe-icon{color:var(--text-muted)}.lang-selector{width:auto;min-width:80px;color:var(--text-main);font-family:var(--font-main);cursor:pointer;appearance:auto;background:0 0;border:none;outline:none;font-size:13px}header h1{background:linear-gradient(90deg,#00f0ff,#ff00ea);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:4px;font-size:28px;font-weight:700}header p{color:var(--text-muted);font-size:14px}.controls,.settings{flex-direction:column;gap:16px;width:320px;margin-bottom:20px;display:flex}.section-title{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);border-bottom:1px solid var(--panel-border);margin-bottom:8px;padding-bottom:8px;font-size:12px;font-weight:600}.control-group{flex-direction:column;gap:8px;display:flex}.control-group label{font-size:14px;font-weight:600}select{border:1px solid var(--panel-border);width:100%;color:var(--text-main);font-family:var(--font-main);cursor:pointer;background:#0000004d;border-radius:8px;outline:none;padding:10px;font-size:14px;transition:border-color .3s}select:hover,select:focus{border-color:var(--accent-color)}select option{background:var(--bg-color);color:var(--text-main)}.miller-inputs{justify-content:space-between;gap:12px;display:flex}.input-block{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.input-block label{color:var(--accent-color);font-size:16px;font-weight:700}.number-control{border:1px solid var(--panel-border);background:#0000004d;border-radius:8px;align-items:center;width:100%;display:flex;overflow:hidden}.icon-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background .2s,color .2s;display:flex}.icon-btn:hover{background:var(--accent-color);color:#000}.icon-btn:active{background:var(--accent-hover)}.number-control span{text-align:center;-webkit-user-select:none;user-select:none;flex:1;font-size:16px;font-weight:600}.mono{font-family:var(--font-mono)}.math-panel{background:#0003;border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.math-row{color:var(--text-muted);justify-content:space-between;font-size:13px;display:flex}.math-row span:last-child{color:var(--text-main);font-weight:600}.toggle-group{flex-direction:row;justify-content:space-between;align-items:center}.action-btn{background:var(--accent-color);color:#0b0f19;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-main);text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:8px;padding:10px;transition:all .2s}.action-btn:hover{background:var(--accent-hover);box-shadow:0 0 10px #00f0ff66}.action-btn:active{transform:scale(.98)}.saved-entries{flex-direction:column;gap:8px;display:flex}.entry-item{border:1px solid var(--panel-border);background:#0000004d;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:14px;display:flex}.entry-item .entry-label{align-items:center;gap:8px;display:flex}.entry-color-dot{border-radius:50%;width:12px;height:12px;box-shadow:0 0 5px}.entry-item .remove-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:16px;transition:color .2s}.entry-item .remove-btn:hover{color:#ff4d4d}input[type=checkbox]{appearance:none;cursor:pointer;border:1px solid var(--panel-border);background:#00000080;border-radius:10px;outline:none;width:40px;height:20px;transition:all .3s;position:relative}input[type=checkbox]:before{content:"";background:var(--text-muted);border-radius:50%;width:16px;height:16px;transition:all .3s;position:absolute;top:1px;left:2px}input[type=checkbox]:checked{border-color:var(--accent-color);background:#00f0ff33}input[type=checkbox]:checked:before{background:var(--accent-color);left:20px}@media (width<=768px){#ui-container{pointer-events:none;padding:16px}header{cursor:pointer;width:100%;margin-bottom:16px;padding:16px}.header-title h1{font-size:22px}.header-title p{white-space:normal;font-size:12px}.mobile-only{color:var(--text-main);flex-shrink:0;transition:transform .3s;display:block}.mobile-only.open{transform:rotate(180deg)}#controls-container{opacity:1;pointer-events:auto;width:100%;max-height:calc(100vh - 140px);padding-bottom:60px;transition:opacity .3s,transform .3s;overflow-y:auto;transform:translateY(0)}#controls-container.collapsed-mobile{opacity:0;pointer-events:none;max-height:0;overflow:hidden;transform:translateY(-10px)}.controls,.settings{width:100%;margin-bottom:16px}.top-right-controls{position:fixed;top:auto;bottom:24px;right:16px}}
