:root{color:#24233d;font-synthesis:none;background:#f6f5fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:#38364c;cursor:pointer;background:#fff;border:1px solid #dedbea;border-radius:10px;min-height:42px;padding:0 16px;font-weight:650}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #c8c1ff}button:disabled{cursor:not-allowed;opacity:.45}.primary{color:#fff;background:#6f5ee8;border-color:#6f5ee8}.wide{width:100%}label{color:#615e76;gap:7px;font-size:13px;font-weight:700;display:grid}input,select,textarea{color:#24233d;background:#fff;border:1px solid #dcd9e8;border-radius:10px;width:100%;padding:11px 12px;font-size:15px}textarea{resize:vertical;min-height:84px;line-height:1.55}.login-shell{background:radial-gradient(circle at top,#eeebff,#f7f6fb 45%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #e5e2ef;border-radius:20px;gap:18px;width:min(420px,100%);padding:42px;display:grid;box-shadow:0 24px 70px #342d601f}.login-card h1{margin:0;font-size:30px}.brand-mark{color:#fff;background:#6f5ee8;border-radius:15px;place-items:center;width:52px;height:52px;font-size:25px;font-weight:800;display:grid}.brand-mark.small{border-radius:11px;width:38px;height:38px;font-size:18px}.eyebrow{color:#6f5ee8;letter-spacing:.14em;margin:0;font-size:11px;font-weight:800}.muted,.save-state{color:#77748a}.error{color:#a72e4d;background:#fff0f4;border-radius:10px;padding:11px}.loading{color:#6f5ee8;place-items:center;min-height:100vh;font-weight:700;display:grid}.app-shell{grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:#211f35;flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 24px;display:flex}.brand span{color:#aaa6bd;margin-top:2px;font-size:11px;display:block}.sidebar nav{gap:6px;display:grid}.sidebar nav p{color:#77728e;letter-spacing:.14em;margin:23px 12px 6px;font-size:10px;font-weight:800}.sidebar nav button,.sign-out{color:#bcb8cb;text-align:left;background:0 0;border:0}.sidebar nav button.active{color:#fff;background:#37334e}.sign-out{margin-top:auto}.workspace{min-width:0;padding:34px clamp(20px,4vw,54px)}.page-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-header h1{margin:5px 0 0;font-size:30px}.toolbar{align-items:center;gap:9px;display:flex}.save-state{max-width:220px;font-size:13px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-grid article,.notice{background:#fff;border:1px solid #e4e1ed;border-radius:16px;padding:22px}.metric-grid span{color:#77748a;margin-bottom:12px;font-size:13px;display:block}.metric-grid strong{font-size:19px}.notice{max-width:720px;margin-top:20px}.notice p{color:#77748a;line-height:1.6}.selectors{background:#ece9f7;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;padding:15px;display:grid}.editor-layout{grid-template-columns:minmax(480px,1fr) 360px;align-items:start;gap:24px;display:grid}.editor-column{min-width:0}.lesson-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;display:flex}.lesson-heading>div{flex:1}.lesson-heading span{color:#77748a;margin-top:6px;font-size:13px;display:block}.validation{color:#8e2745;background:#fff0f4;border:1px solid #f0c9d5;border-radius:12px;margin-bottom:12px;padding:14px 17px}.validation p{margin:6px 0 0;font-size:13px}.card-list{gap:12px;display:grid}.editor-card{background:#fff;border:1px solid #e1deea;border-radius:15px;gap:14px;padding:17px;display:grid}.editor-card:focus-within{border-color:#8b7df0;box-shadow:0 0 0 3px #eeebff}.editor-card__header{align-items:center;gap:10px;display:flex}.drag{color:#aaa6b8;cursor:grab}.position-field{width:44px;margin:0}.position-field input{text-align:center;color:#5f50d4;background:#eeebff;border-radius:8px;width:44px;height:32px;padding:4px;font-weight:800}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-actions{gap:5px;margin-left:auto;display:flex}.icon-button{min-height:32px;padding:0 10px;font-size:12px}.danger{color:#a72e4d}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.checkbox{align-items:center;gap:8px;display:flex}.checkbox input{width:18px;height:18px}.preview-panel{position:sticky;top:24px}.phone{background:#f7f6fe;border:9px solid #23212e;border-radius:40px;width:330px;height:674px;margin:0 auto;overflow:hidden;box-shadow:0 20px 50px #201d372e}.phone__status{justify-content:space-between;padding:14px 23px 7px;font-size:11px;font-weight:800;display:flex}.phone__body{flex-direction:column;height:calc(100% - 35px);padding:14px 18px 20px;display:flex}.phone__top{align-items:center;gap:12px;font-size:14px;display:flex}.phone__top span{color:#6f5ee8;font-size:20px}.phone__progress{background:#e8e5f5;border-radius:99px;height:7px;margin:20px 0;overflow:hidden}.phone__progress span{background:#6f5ee8;height:100%;display:block}.study-card{text-align:center;background:#fff;border:1px solid #e3e0ee;border-radius:22px;flex:1;padding:24px 19px;overflow:auto}.study-card small{color:#6f5ee8;text-transform:uppercase;font-size:11px;font-weight:800}.study-card h2{min-height:24px;margin:22px 0;font-size:19px;line-height:1.35}.japanese,.prompt{font-size:20px;font-weight:750;line-height:1.8}.furigana-text ruby{ruby-position:over}.furigana-text rt{color:#6e6a80;font-size:.48em;font-weight:550}.meaning,.explanation{color:#555267;font-size:14px;line-height:1.65}.dialogue{text-align:left;background:#f7f6fb;border-radius:9px;gap:4px;margin:6px 0;padding:9px;font-size:14px;display:grid}.choice{border:1px solid #dedbea;border-radius:9px;margin:7px 0;padding:9px;font-size:13px}.preview-empty{color:#8a869a;flex:1;place-items:center;display:grid}.phone__actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:15px;display:grid}@media (width<=1080px){.editor-layout{grid-template-columns:1fr}.preview-panel{position:static}.metric-grid{grid-template-columns:1fr 1fr}}@media (width<=720px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;height:auto;position:static}.sidebar nav{margin-left:auto;display:flex}.sidebar nav p,.sign-out,.brand span{display:none}.workspace{padding:20px 14px}.page-header,.lesson-heading{flex-direction:column;align-items:stretch}.toolbar{flex-wrap:wrap}.selectors,.form-grid{grid-template-columns:1fr}.editor-layout{grid-template-columns:minmax(0,1fr)}.metric-grid{grid-template-columns:1fr}.phone{width:min(330px,100%)}}
