@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;0,9..40,900;1,9..40,400&display=swap";:root{--brand-primary:#1b2559;--brand-secondary:#4318ff;--brand-accent:#05cd99;--brand-bg:#f4f7fe;--brand-card:#fff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}body{box-sizing:border-box;margin:0;padding:0}*,:before,:after{box-sizing:inherit}@media (width<=768px){.part-island{border-radius:16px!important;margin-bottom:2rem!important;padding:1rem!important}.part-island>div:first-child{padding:4px 10px!important;font-size:.8rem!important;top:-12px!important;left:15px!important}.step-item{margin-bottom:1rem!important;padding:.75rem!important}.final-answer-container,.global-workspace>div{padding:1rem!important}}:root{--primary:#0ea5e9;--primary-hover:#0284c7;--bg-color:#f0f9ff;--card-bg:#fff;--text-main:#2b3674;--text-muted:#a3aed0;--border-color:#e2e8f0;--premium-blue:#3b82f6;--success:#05cd99;--danger:#ee5d50;--warning:#ffce20;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--shadow-soft:0px 4px 20px #7090b014}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{font-family:inherit}.app-container{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--card-bg);box-shadow:var(--shadow-soft);z-index:10;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.app-header h1{color:var(--primary);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:1.5rem;font-weight:800}.main-layout{flex:1;align-items:flex-start;gap:2rem;width:100%;max-width:1400px;margin:0 auto;padding:2rem;display:flex}.content-area{flex-direction:column;flex:1;gap:1.5rem;display:flex}.card{background:var(--card-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);padding:2rem}.problem-view{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:2.5rem}.problem-title{color:var(--text-main);margin:0 0 1rem;font-size:1.25rem;font-weight:700}.problem-description{border-radius:var(--radius-sm);color:#4a5568;background:#f4f7fe;margin-bottom:2rem;padding:1.5rem;font-size:1.1rem}.right-nav{flex-direction:column;gap:1.5rem;width:320px;display:flex}.stats-card{background:var(--primary);color:#fff;border-radius:var(--radius-md);padding:1.5rem;box-shadow:0 10px 20px #524ee133}.stats-card h3{text-transform:uppercase;letter-spacing:1px;margin:0 0 1rem;font-size:.9rem}.stats-grid{justify-content:space-between;display:flex}.stat-box{flex-direction:column;display:flex}.stat-value{font-size:2.5rem;font-weight:800;line-height:1}.stat-label{opacity:.8;text-transform:uppercase;margin-top:.5rem;font-size:.8rem}.tips-card{background:var(--card-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);padding:1.5rem}.tips-card h4{color:#eab308;align-items:center;gap:.5rem;margin:0 0 .5rem;display:flex}.tips-card p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.6}.nav-items{flex-wrap:wrap;gap:.5rem;display:flex}.nav-item{border:2px solid var(--border-color);width:45px;height:45px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;font-weight:700;transition:all .2s;display:flex}.nav-item.active{background:var(--primary);border-color:var(--primary);color:#fff}.nav-item.status-finished{background:var(--success);border-color:var(--success);color:#fff}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.75rem 1.5rem;font-weight:700;transition:background .2s}.label-sm{color:var(--premium-blue);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.6rem;font-size:.75rem;font-weight:900;display:block}.btn-primary:hover{background:var(--primary-hover)}.math-input,.text-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#f8fafc;width:100%;padding:1rem;font-size:1rem;transition:border-color .2s}.math-input:focus-within,.text-input:focus{border-color:var(--primary);background:#fff;outline:none}.step-item{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#f8fafc;margin-bottom:1rem;padding:1.5rem}.add-step-btn{background:var(--btn-bg,#f8fafc);color:var(--btn-text,var(--primary));border:2px solid var(--btn-border,var(--primary));border-radius:var(--radius-sm);cursor:pointer;width:100%;padding:1rem;font-weight:700;transition:all .2s}.add-step-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.final-answer-container{border-radius:var(--radius-md);background:#eef2ff;border:1px solid #c7d2fe;margin-top:2rem;padding:2rem}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border-color);padding:1rem}th{color:var(--text-muted);text-transform:uppercase;font-size:.85rem;font-weight:600}tr:hover{background:#f8fafc}.graphical-input-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:1rem}.drawing-toolbar button{color:var(--text-main);cursor:pointer;background:#f1f5f9;border:none;border-radius:4px;padding:.5rem 1rem;font-weight:600}.drawing-toolbar button.active{background:var(--primary);color:#fff}.factor-tree-content{border:2px solid var(--primary);background:#f1f5f9;border-radius:8px}.factor-tree-lines{background-color:var(--primary)}.factor-tree-children{border-color:var(--primary)}.factor-tree-children:before,.factor-tree-children:after{background-color:var(--primary)}@media (width<=900px){.app-header{flex-wrap:wrap;gap:1rem;padding:1rem}.main-layout{flex-direction:column-reverse;gap:1rem;padding:1rem}.right-nav{width:100%}.nav-items{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:.5rem;overflow-x:auto}.nav-item{flex:none}.problem-view,.card{padding:1.5rem}body{--keyboard-zindex:100000;--keycap-font-size:1.35rem;--keycap-height:54px;--keycap-max-width:100%;--keyboard-height:300px}.ML__keyboard,[part=keyboard]{box-sizing:border-box!important;width:100vw!important;min-width:100vw!important;max-width:100vw!important;margin:0!important;left:0!important;right:0!important}.ML__keyboard .MLK__key,[part=keycap]{min-width:auto!important;height:54px!important;padding:0 4px!important;font-size:1.35rem!important}.ML__keyboard .MLK__rows,[part=rows]{box-sizing:border-box!important;width:100%!important;overflow-x:hidden!important}.dashboard-container{flex-direction:column!important}.dashboard-sidebar{border-bottom:1px solid var(--border-color);border-right:none!important;width:100%!important;height:auto!important;padding:1rem!important;position:relative!important}.sidebar-minimized .dashboard-sidebar nav,.sidebar-minimized .dashboard-sidebar>div:last-child{display:none!important}.mobile-hamburger-btn{display:flex!important}.dashboard-main{margin-left:0!important;padding:1rem!important}.dashboard-header{flex-direction:column;gap:1.5rem}.dashboard-grid-layout{grid-template-columns:1fr!important}.dashboard-stats-grid{grid-template-columns:1fr 1fr!important}}
