html,body,#root{width:100%;min-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}html{scroll-behavior:auto}body{-webkit-overflow-scrolling:touch}*{box-sizing:border-box}body{margin:0;background:#07101f;color:#e5eefc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{border:0;border-radius:14px;background:#1e293b;color:#e5eefc;padding:10px 13px;font-weight:800;cursor:pointer}button:hover{filter:brightness(1.12)}.primary{width:100%;background:linear-gradient(135deg,#38bdf8,#6366f1)}.accent{background:linear-gradient(135deg,#14b8a6,#22c55e);color:#031412}.app{min-height:100vh;padding:24px}.hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin:0 auto 20px;max-width:1440px}.eyebrow{margin:0 0 8px;color:#5eead4;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero h1{font-size:clamp(32px,5vw,64px);line-height:.95;margin:0 0 12px}.subtitle{max-width:760px;margin:0;color:#a8b5ca;line-height:1.7}.badge{border:1px solid rgba(94,234,212,.3);background:#5eead414;color:#99f6e4;border-radius:999px;padding:10px 14px;font-weight:900;white-space:nowrap}.layout{max-width:1440px;margin:auto;display:grid;grid-template-columns:360px 1fr;gap:18px}.panel{display:flex;flex-direction:column;gap:14px}.card,.viewer{background:#0f172ab8;border:1px solid rgba(148,163,184,.18);box-shadow:0 18px 60px #00000040;border-radius:24px}.card{padding:18px}.card h2{font-size:18px;margin:0 0 14px}.drop{height:180px;border:1px dashed rgba(148,163,184,.35);border-radius:18px;background:#ffffff09;display:grid;place-items:center;margin:12px 0;overflow:hidden;color:#7f8da3}.drop img{max-width:100%;max-height:100%;object-fit:contain}.drawBox{height:170px;border-radius:18px;overflow:hidden;border:1px solid rgba(148,163,184,.3);background:#fff;margin:12px 0}.drawBox canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.row{display:flex;gap:8px;align-items:center}.row>*{flex:1}.card label{display:block;color:#a8b5ca;font-size:13px;font-weight:800;margin:13px 0 6px}.card input[type=range],select{width:100%}select{border:1px solid rgba(148,163,184,.25);background:#111827;color:#e5eefc;border-radius:12px;padding:10px}.check{display:flex!important;gap:8px;align-items:center}.check input{width:auto}.viewer{min-width:0;display:flex;flex-direction:column;overflow:hidden}.toolbar{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid rgba(148,163,184,.16);color:#cbd5e1}.copied{color:#5eead4;font-weight:900}.graphWrap{height:46vh;min-height:360px;position:relative}.graphWrap canvas{width:100%;height:100%;display:block}.outputs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:14px}.outputCard{background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:18px;padding:12px;min-width:0}.outputCard h3{font-size:14px;margin:0 0 8px;color:#c4b5fd}.outputCard textarea{width:100%;height:150px;resize:vertical;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#020617;color:#dbeafe;padding:10px;font-family:JetBrains Mono,Consolas,monospace;font-size:12px;line-height:1.45}@media(max-width:980px){.layout{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.outputs{grid-template-columns:1fr}.graphWrap{height:42vh}.app{padding:14px}}.viewer{overflow:visible}textarea{overflow:auto}.geogebraCard{margin:14px;background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:20px;overflow:hidden}.geogebraHeader{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid rgba(148,163,184,.14)}.geogebraHeader span{color:#a8b5ca;font-size:13px;text-align:right}.geogebraFrame{width:100%;min-height:430px;background:#fff}.geogebraFrame iframe,.geogebraFrame>div{max-width:100%}@media(max-width:980px){.geogebraHeader{align-items:flex-start;flex-direction:column}.geogebraFrame{min-height:360px}}.geogebraCard,.geogebraFrame{position:relative;z-index:0}.geogebraFrame{overflow:hidden}.geogebraFrame iframe{width:100%!important;height:430px!important;border:0;display:block}.card,.toolbar,.graphWrap,.outputs{position:relative;z-index:2}@media(max-width:980px){.geogebraFrame iframe{height:360px!important}}.geoButtons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.geogebraFrame.scrollLocked iframe,.geogebraFrame.scrollLocked>div{pointer-events:none!important}.geogebraFrame.interactive iframe,.geogebraFrame.interactive>div{pointer-events:auto!important}.geogebraFrame.scrollLocked:after{content:"휠 스크롤 우선 모드 · GeoGebra를 움직이려면 위 버튼을 누르세요";position:absolute;right:12px;bottom:12px;z-index:5;padding:7px 10px;border-radius:999px;background:#0f172ac7;color:#e5eefc;font-size:12px;pointer-events:none}@media(max-width:980px){.geoButtons{width:100%}.geoButtons button{flex:1}}
