@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";.code-panel{width:100%;height:100%;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #263650;border-radius:9px;background:var(--navy);color:#e6edf7;font-family:var(--mono)}.code-panel-header{min-height:48px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 13px;border-bottom:1px solid #2a3a53;background:#16243a}.code-panel-title{color:#dce5f2;font-family:Manrope,Noto Sans SC,sans-serif;font-size:.72rem;font-weight:700}.code-panel-actions{min-width:0;display:flex;align-items:center;gap:7px}.lang-tabs{display:flex;gap:3px}.lang-tabs .lang-tab{min-width:39px;padding:5px 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:#9aabc2;cursor:pointer;font-family:Manrope,Noto Sans SC,sans-serif;font-size:.65rem;font-weight:700}.lang-tabs .lang-tab:hover{background:#20314c;color:#fff}.lang-tabs .lang-tab.active{border-color:#708ab5;background:#263a59;color:#fff}.code-panel-toggle{width:30px;height:29px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid #40516c;border-radius:4px;background:#1b2a43;color:#dce5f2;cursor:pointer}.code-panel-toggle:hover{border-color:#8ba1c3;background:#243854;color:#fff}.code-lines{min-height:0;flex:1 1 auto;overflow:auto;padding:10px 0;background:#111c2e;scrollbar-color:#3b4c66 transparent;scrollbar-width:thin}.code-line{min-width:max-content;display:flex;padding:1px 14px 1px 10px;border-left:3px solid transparent;color:#c5d0df;font-size:clamp(.65rem,.76vw,.75rem);line-height:1.68;transition:background-color .12s ease}.line-number{width:30px;flex:0 0 30px;margin-right:11px;color:#64758e;font-size:.64rem;text-align:right;-webkit-user-select:none;user-select:none}.line-content{padding-right:12px;white-space:pre}.code-line.highlighted{border-left-color:var(--amber);background:#243451}.code-line.highlighted .line-content{color:#f2f5fb}.code-line.highlighted .line-number{color:#f0b45e}.tok-kw{color:#c5a4ff}.tok-num{color:#8bb7ff}.tok-str{color:#a8d8ba}.tok-comment{color:#8393a9;font-style:italic}.variables-panel{flex:0 0 auto;padding:10px 14px 12px;border-top:1px solid #2a3a53;background:#16243a}.variables-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.variables-title{color:#dce5f2;font-family:Manrope,Noto Sans SC,sans-serif;font-size:.68rem;font-weight:700}.phase-badge{display:inline-flex;gap:7px;align-items:center;color:#b7c6da;font-family:Manrope,Noto Sans SC,sans-serif;font-size:.62rem}.step-count{color:#7f91aa;font-family:var(--mono);font-size:.6rem}.variables-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}.variable-row{min-width:0;display:flex;align-items:center;gap:6px;padding:3px 5px;border-left:2px solid transparent;color:#aebbd0;font-size:.68rem;transition:background-color .12s ease}.variable-row.updated{border-left-color:var(--amber);background:#e08a2417}.var-name{overflow:hidden;color:#a9c0e3;text-overflow:ellipsis;white-space:nowrap}.var-eq{color:#71819a}.var-value{color:#f0c47f;font-weight:500}.var-flag{margin-left:auto;color:#84cbb2;font-size:.57rem;white-space:nowrap}.variables-empty{padding:7px 0;color:#8190a6;font-family:Manrope,sans-serif;font-size:.69rem}@media (max-width: 640px){.code-panel{min-height:0;height:100%}.code-panel-header{padding-inline:10px;min-height:48px}.code-lines{min-height:0;flex:1 1 0}.lang-tabs .lang-tab{min-width:33px;padding-inline:6px}.code-line{font-size:.66rem}.variables-panel{padding-inline:10px}.variables-list{gap:3px 7px}.variable-row{font-size:.62rem}}@media (prefers-reduced-motion: reduce){.code-line,.variable-row{transition:none}}.visualizer-container{--toolbar-height: 46px;--footer-height: 84px;width:100%;height:100%;min-height:0;display:grid;grid-template-rows:var(--toolbar-height) minmax(0,1fr) var(--footer-height);gap:0;padding:0;overflow:hidden;background:var(--canvas)}.trace-toolbar{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px;border-bottom:1px solid var(--line);background:#fff}.toolbar-identity{min-width:205px;display:flex;align-items:baseline;gap:10px;white-space:nowrap}.toolbar-identity strong{color:var(--ink);font-size:.82rem;font-weight:800}.trace-kicker{margin:0;color:var(--faint);font-family:var(--mono);font-size:.58rem;letter-spacing:.04em}.trace-kicker i{color:#c3cbd6;font-style:normal}.complexity-inline{color:var(--muted);font-size:.65rem}.complexity-inline b{padding:0 3px;color:#b4bdca;font-weight:400}.top-control-area,.input-section{min-width:0;display:flex;align-items:center;gap:10px}.example-buttons{display:flex;flex:0 0 auto;gap:3px}.example-btn{min-height:29px;padding:4px 9px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;font-size:.68rem;font-weight:600;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease}.example-btn:hover{border-color:var(--line);background:#f8fafc;color:var(--ink)}.example-btn.active{border-color:#cddaf7;background:#e7eefc;color:#244fae}.custom-input{width:clamp(210px,23vw,350px);display:flex;gap:5px}.custom-input-field{width:100%;min-width:0;height:30px;padding:5px 9px;border:1px solid var(--line);border-radius:4px;outline:none;background:#fff;color:var(--ink);font-family:var(--mono);font-size:.67rem;transition:border-color .14s ease,box-shadow .14s ease}.custom-input-field::placeholder{color:#98a2b3}.custom-input-field:focus{border-color:#6d91e8;box-shadow:0 0 0 2px #356ae61a}.apply-btn{height:30px;flex:0 0 auto;padding:0 11px;border:1px solid var(--navy);border-radius:4px;background:var(--navy);color:#fff;cursor:pointer;font-size:.68rem;font-weight:700}.apply-btn:hover{background:#263a5a}.workspace{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 34px 0;gap:0;padding:10px 12px;overflow:hidden;transition:grid-template-columns .18s ease,gap .18s ease}.code-open .workspace{grid-template-columns:minmax(0,1fr) minmax(340px,31vw);gap:10px}.visualization-area{min-width:0;min-height:0;display:grid;grid-template-rows:44px minmax(110px,auto) minmax(0,1fr) 27px;padding:0 15px 4px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.panel-heading{min-width:0;display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0f4}.panel-title{display:flex;align-items:baseline;gap:8px;margin-right:auto;white-space:nowrap}.panel-kicker{margin:0;color:var(--faint);font-family:var(--mono);font-size:.57rem;letter-spacing:.06em}.panel-heading h2{margin:0;color:var(--ink);font-size:.82rem;font-weight:700}.chart-summary{display:flex;align-items:center;gap:clamp(12px,2vw,24px)}.chart-summary>span{display:flex;align-items:baseline;gap:5px;white-space:nowrap}.chart-summary small{color:var(--muted);font-size:.61rem}.chart-summary b{color:var(--ink);font-family:var(--mono);font-size:.75rem;font-weight:500}.chart-summary .summary-best{color:var(--green)}.chart-summary .summary-range{color:var(--blue)}.code-rail{width:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:8px 0;border:1px solid var(--line);border-left:0;border-radius:0 6px 6px 0;background:#fff;color:#475467;cursor:pointer}.code-rail span{font-size:.63rem;writing-mode:vertical-rl}.code-rail svg{color:var(--blue)}.code-rail:hover{background:#f5f8ff;color:var(--blue)}.code-open .code-rail{display:none}.visualization-svg{width:100%;height:100%;min-height:0;overflow:visible}.record-frame .best-change{animation:record-pulse .56s ease-out}@keyframes record-pulse{0%{transform:translateY(2px);background:#e4f3ed}to{transform:translateY(0);background:transparent}}.chart-legend{min-width:0;display:flex;align-items:center;gap:8px 18px;overflow:hidden;border-top:1px solid #edf0f4;color:var(--muted);font-size:.62rem;white-space:nowrap}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.learning-strip{min-width:0;display:grid;grid-template-columns:minmax(100px,.72fr) minmax(145px,.9fr) minmax(180px,1.35fr) minmax(130px,.8fr);align-items:center;gap:12px;padding:6px 12px;border-bottom:1px solid #e6ebf2;background:linear-gradient(90deg,#f7f9fd,#fff 68%)}.learning-step,.decision-explanation,.best-change{min-width:0;display:flex;flex-direction:column;gap:4px}.learning-label,.best-change>span{color:var(--muted);font-size:.6rem}.learning-step strong{color:var(--ink);font-family:var(--mono);font-size:.82rem;font-weight:500}.learning-step .running-prefix{color:#3157a6;font-family:var(--mono);font-size:.57rem}.candidate-comparison{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px}.candidate{min-width:0;display:flex;flex-direction:column;gap:3px;padding:5px 7px;border:1px solid #e3e8ef;border-radius:4px;background:#fff;color:var(--muted)}.candidate small{font-size:.57rem}.candidate b{color:var(--ink);font-family:var(--mono);font-size:.77rem;font-weight:500}.candidate.chosen{border-color:#aabde8;background:#edf3ff}.candidate.chosen b{color:#244fae}.compare-sign{color:#98a2b3;font-size:.59rem}.decision-explanation{flex-direction:row;align-items:center;gap:8px}.decision-mark{width:21px;height:21px;flex:0 0 21px;display:grid;place-items:center;border-radius:50%;background:#edf0f4;color:#667085;font-size:.8rem;font-weight:700}.decision-mark.extend{background:#e7eefc;color:#3157a6}.decision-mark.restart{background:#fff0d7;color:#9a5d12}.decision-explanation>div{min-width:0;display:flex;flex-direction:column;gap:3px}.decision-explanation strong{color:var(--ink);font-size:.67rem;line-height:1.25}.decision-explanation small{color:var(--muted);font-size:.59rem;line-height:1.3}.best-change{padding-left:11px;border-left:1px solid #e2e7ef}.best-change strong{color:var(--ink);font-family:var(--mono);font-size:.8rem;font-weight:500;white-space:nowrap}.best-change strong i{padding:0 4px;color:#98a2b3;font-style:normal}.best-change.changed strong{color:var(--green)}.best-change small{color:var(--green);font-size:.58rem}.legend-swatch{width:8px;height:8px;display:inline-block;flex:0 0 auto;border-radius:2px;background:var(--blue)}.swatch-positive{background:var(--blue)}.swatch-current{background:var(--amber)}.swatch-active{background:#a9c4ff}.swatch-best{background:var(--green)}.swatch-negative{background:var(--red)}.code-drawer{min-width:0;min-height:0;visibility:hidden;overflow:hidden;opacity:0;transform:translate(8px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.code-drawer.open{visibility:visible;opacity:1;transform:translate(0)}.drawer-close{display:none}.bottom-control-area{min-width:0;display:grid;grid-template-rows:28px 1fr 3px;overflow:hidden;border-top:1px solid var(--line);background:#fff}.step-explanation-inline{min-width:0;display:flex;align-items:center;gap:9px;padding:0 15px;border-bottom:1px solid #e9edf2;background:#f8fafc}.visualizer-container .step-number{flex:0 0 auto;color:var(--ink);font-family:var(--mono);font-size:.69rem;font-weight:500;white-space:nowrap}.step-number i{padding:0 2px;color:#9aa6b6;font-style:normal}.step-phase{flex:0 0 auto;padding:3px 6px;border-radius:3px;background:#e7eefc;color:#3157a6;font-family:var(--mono);font-size:.57rem;line-height:1.2}.step-description{min-width:0;overflow:hidden;color:#334155;font-size:.69rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.control-panel-inline{min-width:0;display:flex;align-items:center;gap:11px;padding:2px 14px}.playback-controls{flex:0 0 auto;display:flex;gap:4px}.control-btn-sm,.speed-btn-sm{width:31px;height:29px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;background:#fff;color:#475467;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.control-btn-sm:hover:not(:disabled),.speed-btn-sm:hover:not(:disabled){border-color:#aab7ca;background:#f7f9fc;color:var(--ink)}.control-btn-sm.primary{border-color:var(--navy);background:var(--navy);color:#fff}.control-btn-sm.primary:hover:not(:disabled){border-color:#263a5a;background:#263a5a;color:#fff}.control-btn-sm:disabled,.speed-btn-sm:disabled{opacity:.42;cursor:not-allowed}.speed-control{flex:0 0 auto;display:flex;align-items:center;gap:4px;padding-left:10px;border-left:1px solid var(--line)}.speed-btn-sm{width:25px;height:25px}.speed-display{min-width:31px;color:var(--ink);font-family:var(--mono);font-size:.63rem;text-align:center}.progress-readout{flex:0 0 auto;color:var(--ink);font-family:var(--mono);font-size:.64rem}.progress-readout span{padding:0 3px;color:#98a2b3}.progress-bar{min-width:30px;flex:1 1 auto;padding:0 2px}.progress-slider{width:100%;height:4px;display:block;border-radius:3px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#dce3ec;cursor:pointer}.progress-slider::-webkit-slider-thumb{width:12px;height:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 1px var(--blue)}.progress-slider::-moz-range-thumb{width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 1px var(--blue)}@media (max-width: 1050px){.trace-toolbar{gap:10px;padding-inline:12px}.toolbar-identity{min-width:170px;gap:7px}.complexity-inline{display:none}.custom-input{width:clamp(170px,23vw,240px)}.code-open .workspace{grid-template-columns:minmax(0,1fr) minmax(300px,38vw)}}@media (max-width: 720px){.visualizer-container{--toolbar-height: 74px;--footer-height: 82px}.trace-toolbar{align-items:stretch;flex-direction:column;justify-content:center;gap:4px;padding:5px 10px}.toolbar-identity{min-width:0;height:22px;gap:8px}.trace-kicker{font-size:.52rem}.toolbar-identity strong{font-size:.71rem}.top-control-area,.input-section{min-height:0;gap:5px}.input-section{align-items:center;flex-direction:row}.example-buttons{gap:1px}.example-btn{min-height:25px;padding:3px 6px;font-size:.59rem}.custom-input{width:auto;min-width:0;flex:1 1 auto;gap:4px}.custom-input-field{height:26px;padding:3px 6px;font-size:.57rem}.apply-btn{height:26px;padding-inline:8px;font-size:.6rem}.workspace{position:relative;padding:7px}.code-open .workspace{grid-template-columns:minmax(0,1fr) 0 minmax(0,1fr)}.workspace{grid-template-columns:minmax(0,1fr) 28px 0}.visualization-area{grid-template-rows:42px minmax(126px,auto) minmax(0,1fr) 24px;padding-inline:9px}.learning-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(50px,auto));gap:4px 8px;padding:4px 8px}.learning-step{grid-column:1 / -1}.learning-step strong{font-size:.7rem}.learning-step .running-prefix{font-size:.5rem}.candidate{padding:4px 5px}.candidate small{font-size:.5rem}.candidate b{font-size:.68rem}.decision-explanation{gap:5px}.decision-mark{width:20px;height:20px;flex-basis:20px;font-size:.68rem}.decision-explanation strong{font-size:.59rem}.decision-explanation small{font-size:.52rem}.best-change{padding-left:7px}.best-change>span{font-size:.5rem}.best-change strong{font-size:.68rem}.best-change small{font-size:.5rem}.panel-heading{gap:7px}.panel-title{gap:5px}.panel-kicker{font-size:.48rem}.panel-heading h2{font-size:.7rem}.chart-summary{gap:8px}.chart-summary>span{flex-direction:column;gap:2px}.chart-summary small{font-size:.51rem}.chart-summary b{font-size:.65rem}.code-rail{width:28px;overflow:visible;padding:6px 0;border:1px solid var(--line);border-left:0}.code-rail span{font-size:.55rem}.code-rail svg{width:13px;height:13px}.code-open .workspace .code-rail{display:none}.chart-legend{gap:6px 9px;font-size:.52rem}.legend-swatch{width:7px;height:7px}.code-drawer.open{position:absolute;z-index:5;top:7px;right:7px;bottom:7px;left:7px;width:auto;height:auto;min-height:0;border:1px solid #263650;border-radius:7px;background:var(--navy);box-shadow:0 10px 28px #111c2e2e}.code-open .visualization-area{visibility:visible}.code-open .code-drawer.open{position:absolute;top:7px;right:7px;bottom:7px;left:7px;width:auto}.bottom-control-area{grid-template-rows:27px 1fr 3px}.step-explanation-inline{gap:7px;padding-inline:10px}.step-description{font-size:.56rem}.step-description{font-size:.61rem}.control-panel-inline{gap:7px;padding-inline:9px}.control-btn-sm{width:29px;height:28px}.speed-control{gap:2px;padding-left:6px}.speed-btn-sm{width:22px;height:23px}.speed-display{min-width:28px;font-size:.58rem}.progress-readout{font-size:.58rem}}@media (max-width: 390px){.trace-kicker{display:none}.toolbar-identity{height:18px}.example-btn{padding-inline:4px;font-size:.55rem}.code-toggle span{display:none}.panel-heading{gap:4px}.chart-summary{gap:5px}.chart-summary small{font-size:.47rem}.chart-summary b{font-size:.59rem}}@media (prefers-reduced-motion: reduce){.example-btn,.custom-input-field,.code-drawer,.workspace,.control-btn-sm,.speed-btn-sm{transition:none}}.explanation-page{min-height:0;flex:1;overflow:auto;background:var(--canvas)}.explanation-container{width:min(1080px,100%);margin:0 auto;padding:34px 28px 56px}.explanation-section{margin:0 0 16px;padding:23px 25px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.section-title{display:flex;align-items:center;gap:10px;margin:0 0 15px;color:var(--ink);font-size:1.16rem;font-weight:700;letter-spacing:-.025em}.section-icon{width:25px;height:25px;display:inline-grid;place-items:center;border-radius:5px;background:#e7eefc;font-size:.9rem}.section-content{color:#475467;font-size:.92rem;line-height:1.75}.section-content p{margin:0 0 12px}.section-content strong{color:var(--ink)}.intro-text{font-size:1rem}.explanation-page code{padding:2px 5px;border-radius:3px;background:#f0f3f7;color:#264d9d;font-family:var(--mono);font-size:.88em}.example-box,.life-example,.why-works,.complexity-method,.math-formula,.concrete-example,.method-example,.step-item{border:1px solid var(--line);border-radius:6px;background:#f8fafc}.example-box{margin-top:15px;padding:14px 16px}.example-title{margin-bottom:6px;color:var(--muted);font-size:.75rem;font-weight:700}.example-content{line-height:1.9}.example-answer{margin-top:5px;padding-top:8px;border-top:1px solid var(--line)}.life-example{margin-top:14px;padding:12px 17px;background:#fff}.day-row{display:flex;align-items:center;gap:13px;padding:9px 0;border-bottom:1px solid #edf0f4;font-size:.87rem}.day-row:last-of-type{border-bottom:0}.day-badge{min-width:62px;padding:3px 6px;border-radius:3px;background:#e7eefc;color:#3157a6;font-size:.7rem;font-weight:700;text-align:center}.day-action{min-width:42px;color:var(--ink);font-family:var(--mono);font-weight:500}.day-result{flex:1}.critical-moment{margin-top:13px;padding:15px;border-left:3px solid var(--amber);background:#fff8ed}.moment-title{margin-bottom:8px;color:#8d5418;font-size:.83rem;font-weight:700}.moment-content p{margin-bottom:10px;font-size:.86rem}.negative{color:var(--red)}.choice-box{display:flex;align-items:stretch;gap:10px}.choice{flex:1;padding:11px;border:1px solid var(--line);border-radius:5px;background:#fff}.choice.bad{border-left:3px solid var(--red)}.choice.good{border-left:3px solid var(--green)}.choice-label{margin-bottom:5px;color:var(--ink);font-size:.8rem;font-weight:700}.choice-calc{margin:4px 0;font-family:var(--mono);font-size:.85rem}.choice-desc{color:var(--muted);font-size:.75rem}.vs{display:grid;place-items:center;color:var(--faint);font-family:var(--mono);font-size:.7rem}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0}.decision-card{padding:15px 16px;border:1px solid var(--line);border-radius:6px;background:#fff}.decision-card.positive-card{border-top:3px solid var(--green)}.decision-card.negative-card{border-top:3px solid var(--red)}.decision-condition{margin-bottom:7px;color:var(--ink);font-size:.9rem;font-weight:700}.decision-action{margin-bottom:4px;color:var(--ink);font-size:.85rem;font-weight:600}.decision-reason{color:var(--muted);font-size:.78rem}.why-works{margin-top:14px;padding:15px;background:#f8fafc}.why-title{margin-bottom:8px;color:var(--ink);font-size:.88rem;font-weight:700}.why-content p{margin-bottom:8px}.math-formula{padding:10px;background:#fff;font-family:var(--mono);font-size:.82rem}.concrete-example{margin-top:9px;padding:10px;background:#fff}.example-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem}.example-label{font-weight:700}.comparison{color:var(--muted)}.result{color:var(--red);font-weight:700}.complexity-comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 0}.complexity-method{padding:15px;background:#fff}.bad-method{border-left:3px solid #a7b0bd}.good-method{border-left:3px solid var(--green)}.method-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.method-label{color:var(--ink);font-size:.86rem;font-weight:700}.method-time{color:var(--blue);font-family:var(--mono);font-size:.9rem;font-weight:500}.method-desc{margin-bottom:8px;color:var(--muted);font-size:.78rem}.method-example{padding:7px 10px;background:#f8fafc}.method-example div{padding:3px 0;font-size:.76rem}.vs-separator{display:none}.highlight-section{border-left:3px solid var(--blue);background:#f5f8ff}.key-takeaway{text-align:left}.takeaway-main{margin-bottom:5px;color:var(--ink);font-size:1.15rem;font-weight:700}.takeaway-sub{color:var(--muted);font-size:.85rem}.steps-container{display:grid;gap:0}.step-item{display:flex;gap:14px;padding:13px 0;border:0;border-bottom:1px solid #edf0f4;border-radius:0;background:transparent}.step-item:last-child{border-bottom:0}.explanation-page .step-number{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;background:#e7eefc;color:#3157a6;font-family:var(--mono);font-size:.72rem;font-weight:500}.step-content{flex:1}.step-title{margin:1px 0 4px;color:var(--ink);font-size:.88rem;font-weight:700}.step-desc{color:var(--muted);font-size:.82rem;line-height:1.65}@media (max-width: 700px){.explanation-container{padding:18px 13px 32px}.explanation-section{padding:17px 15px;margin-bottom:11px}.section-title{font-size:1rem}.section-content{font-size:.85rem}.decision-grid,.complexity-comparison{grid-template-columns:1fr}.choice-box{flex-direction:column}.vs{min-height:12px}.day-row{flex-wrap:wrap;gap:7px}.day-result{flex-basis:100%;padding-left:70px}}.code-page{min-height:0;flex:1;overflow:auto;background:var(--canvas)}.code-container{width:min(1120px,100%);margin:0 auto;padding:30px 28px 56px}.language-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:18px;padding:5px;border:1px solid var(--line);border-radius:7px;background:#fff}.language-tabs>.lang-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;font-size:.76rem;font-weight:700;transition:background .14s ease,color .14s ease}.language-tabs>.lang-tab:hover{background:#f4f6f9;color:var(--ink)}.language-tabs>.lang-tab.active{background:#e7eefc;color:#244fae}.lang-badge{padding:2px 5px;border-radius:3px;background:#edf0f4;color:#475467;font-family:var(--mono);font-size:.61rem;font-weight:500}.lang-badge.js,.lang-badge.ts,.lang-badge.py,.lang-badge.java,.lang-badge.cpp{background:#edf0f4;color:#475467}.code-section{margin-bottom:16px;padding:20px;border:1px solid var(--line);border-radius:8px;background:#fff}.code-section-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--ink);font-size:1rem;font-weight:700}.code-block{margin:0 0 14px;overflow:hidden;border:1px solid #263650;border-radius:6px;background:var(--navy)}.code-block:last-child{margin-bottom:0}.code-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 13px;border-bottom:1px solid #2a3a53;background:#16243a}.code-filename{color:#dce5f2;font-family:var(--mono);font-size:.7rem}.code-desc{color:#9aabc2;font-size:.68rem}.code-content{max-width:100%;margin:0;padding:15px;overflow-x:auto;color:#dce5f2;scrollbar-color:#3b4c66 transparent;scrollbar-width:thin}.code-content code{display:block;color:inherit;font-family:var(--mono);font-size:.77rem;line-height:1.7;white-space:pre}.code-explanation{margin-top:14px;padding:14px 16px;border-left:3px solid var(--blue);background:#f5f8ff}.code-explanation h3{margin:0 0 8px;color:var(--ink);font-size:.85rem}.code-explanation ul{margin:0;padding-left:18px}.code-explanation li{padding:3px 0;color:#475467;font-size:.79rem;line-height:1.6}.code-explanation code,.point-content code,.key-points code{font-family:var(--mono);color:#3157a6}.complexity-section{background:#f8fafc}.complexity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.complexity-item{padding:13px 15px;border:1px solid var(--line);border-radius:5px;background:#fff}.complexity-label{margin-bottom:5px;color:var(--muted);font-size:.72rem}.complexity-value{margin-bottom:4px;color:var(--blue);font-family:var(--mono);font-size:1.35rem;font-weight:500}.complexity-desc{color:var(--muted);font-size:.75rem}.key-points{display:grid;gap:0}.key-point{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #edf0f4}.key-point:last-child{border-bottom:0}.point-icon{flex:0 0 auto;font-size:1rem}.point-content{color:#475467;font-size:.82rem;line-height:1.6}.point-content strong{color:var(--ink)}@media (max-width: 700px){.code-container{padding:18px 13px 32px}.code-section{padding:15px 12px}.code-content{padding:12px}.code-content code{font-size:.69rem}.complexity-grid{grid-template-columns:1fr}}.app{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;background:var(--canvas)}.header{flex:0 0 auto;background:#fffffff0;border-bottom:1px solid var(--line);position:relative;z-index:10}.header-content{width:100%;min-height:0;height:48px;margin:0 auto;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:28px}.header-title{min-width:0}.brand-lockup{display:flex;align-items:center;gap:11px}.brand-mark{width:25px;height:25px;display:grid;place-items:center;border:2px solid var(--navy);border-radius:50%;position:relative;flex:0 0 auto}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";position:absolute;border-radius:50%}.brand-mark:before{width:13px;height:13px;border:1px solid var(--blue)}.brand-mark:after{width:5px;height:5px;background:var(--amber)}.brand-mark span{width:11px;height:1px;background:var(--blue);transform:rotate(-32deg) translate(7px,-3px);transform-origin:left center}.eyebrow{margin:0 0 2px;color:var(--faint);font-family:var(--mono);font-size:.61rem;font-weight:500;letter-spacing:.08em;line-height:1}.header-title h1{margin:0;color:var(--ink);font-size:.86rem;font-weight:800;letter-spacing:-.03em;line-height:1.2}.subtitle{display:none}.navigation{align-self:stretch;display:flex;align-items:stretch;gap:4px}.nav-btn{min-width:108px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer;font-size:.78rem;font-weight:700;transition:color .16s ease,border-color .16s ease,background .16s ease}.nav-btn:hover{background:#f5f7fa;color:var(--ink)}.nav-btn.active{border-bottom-color:var(--blue);color:var(--ink)}.nav-btn.active svg{color:var(--blue)}.main-content{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}@media (max-width: 760px){.header-content{height:42px;align-items:center;gap:10px;padding:0 10px}.brand-lockup{gap:7px}.brand-mark{width:21px;height:21px}.brand-mark:before{width:11px;height:11px}.brand-mark:after{width:4px;height:4px}.brand-mark span{width:8px}.eyebrow{display:none}.header-title h1{font-size:.73rem}.navigation{width:auto;min-height:0;align-self:stretch;gap:0}.nav-btn{min-width:0;flex:0 0 auto;gap:4px;padding:0 7px;font-size:.61rem}.nav-btn svg{width:14px;height:14px}}:root{font-family:Manrope,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172236;background:#eef2f6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #172236;--muted: #667085;--faint: #8b98aa;--line: #d8e0ea;--surface: #ffffff;--canvas: #eef2f6;--navy: #111c2e;--navy-2: #1b2a43;--blue: #356ae6;--blue-soft: #dce8ff;--amber: #e08a24;--amber-soft: #fff0d7;--red: #c94c55;--red-soft: #fae5e7;--green: #168467;--green-soft: #d8f0e7;--mono: "DM Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{min-width:320px;background:var(--canvas);overflow-x:hidden}button,input{font:inherit}button:focus-visible,input:focus-visible{outline:3px solid rgba(53,106,230,.35);outline-offset:2px}code,pre{font-family:var(--mono)}
