:root{font-family:DM Sans,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#e8eaed;background:#0f1219}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh;min-height:100dvh}.app{display:grid;grid-template-columns:minmax(200px,260px) 1fr;min-height:100vh;min-height:100dvh}@media (max-width: 720px){.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.sidebar{flex-shrink:0;max-height:32vh;overflow:auto;border-right:none;border-bottom:1px solid #252a36}.main{flex:1;min-height:0;height:auto}}.sidebar{background:linear-gradient(180deg,#161b26,#12151c);border-right:1px solid #252a36;padding:1rem .75rem}.sidebar h1{font-size:1rem;margin:0 0 1rem .5rem;font-weight:600;letter-spacing:.02em;color:#9aa3b2}.day-list{list-style:none;margin:0;padding:0;max-height:calc(100vh - 4rem);overflow:auto}.day-btn{width:100%;text-align:left;padding:.5rem .65rem;margin-bottom:2px;border:none;border-radius:8px;background:transparent;color:#c4cadb;cursor:pointer;font-size:.9rem}.day-btn:hover{background:#252a38}.day-btn.active{background:#2d3a5c;color:#fff}.main{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;padding:1rem clamp(1rem,3vw,2.5rem) 1.25rem;overflow:hidden;box-sizing:border-box}.main-header{flex-shrink:0;margin-bottom:.75rem}.badge{display:inline-block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#7b8ab8;margin-bottom:.35rem}.main h2{margin:0 0 .5rem;font-size:clamp(1.25rem,2.5vw,1.6rem);font-weight:600;color:#f3f5f9}.lesson-stack{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:.65rem}.panel{flex:1 1 0;min-height:0;display:flex;flex-direction:column;border:1px solid #2a3142;border-radius:10px;background:#141821;overflow:hidden}.panel-label{flex-shrink:0;padding:.45rem .65rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#8b95ad;background:#1a1f2a;border-bottom:1px solid #2a3142}.suggest-scroll{flex:1;min-height:0;overflow:auto;padding:.5rem .65rem .65rem}.suggest-list{margin:0;padding:0;list-style:none;color:#a8b0c4;font-size:.9rem}.suggest-columns{column-count:2;column-gap:1.25rem}.suggest-list li{margin:0 0 .4rem;padding-left:.85rem;position:relative;break-inside:avoid}.suggest-list li:before{content:"·";position:absolute;left:0;color:#5b7cfa}.field-panel .panel-label{cursor:default}.panel-textarea{flex:1;min-height:0;width:100%;padding:.65rem .75rem;border:none;border-radius:0;background:#161b26;color:#e8eaed;font-family:inherit;font-size:.95rem;line-height:1.45;resize:none}.panel-textarea:focus{outline:none;box-shadow:inset 0 0 0 2px #5b7cfa59}.actions{flex-shrink:0;margin-top:.65rem;padding-top:.35rem;display:flex;gap:.75rem;align-items:center}.actions button{padding:.55rem 1.15rem;border-radius:8px;border:none;background:#4f6ef7;color:#fff;font-weight:600;cursor:pointer;font-size:.9rem}.actions button:disabled{opacity:.5;cursor:not-allowed}.actions .msg{font-size:.85rem;color:#7dce9a}.actions .msg.err{color:#f08080}.banner{padding:.75rem 1rem;border-radius:10px;background:#2a2220;border:1px solid #5c3d36;color:#f0c0b0;margin-bottom:1rem;font-size:.9rem}.loading{color:#8b95ad;padding:2rem}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:local("DM Sans")}
