:root,:root[data-theme=dark]{--page:#0a111a;--surface:#0e1621;--surface-raised:#16212e;--line:#1b2735;--line-strong:#2a3a4c;--text:#e8ecf1;--text-sub:#9aa7b4;--text-faint:#8592a0;--accent:#5cc8b0;--accent-ink:#072a23;--star:#e3b04b;--faded:#e58a6c;--nav-on:#16212e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--page:#efebe2;--surface:#f8f5ee;--surface-raised:#fff;--line:#ddd6c6;--line-strong:#cfc7b5;--text:#1e2a33;--text-sub:#5d6b78;--text-faint:#66727e;--accent:#0f7a66;--accent-ink:#f6f3ec;--star:#b7820f;--faded:#c8573a;--nav-on:#e4ded1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--page);color:var(--text);font-family:Noto Sans KR,system-ui,sans-serif;font-size:14px;line-height:1.6;transition:background .3s,color .3s}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}.page-head.notes-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;display:grid}@media (width<=760px){.page-head.notes-head{grid-template-columns:minmax(0,1fr)}}.notes-head>div:first-child{flex-direction:column;gap:6px;display:flex}.notes-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-field{color:var(--text-sub);align-items:center;gap:8px;font-size:13px;display:flex}.subject-rows{flex-direction:column;gap:14px;display:flex}.subject-row{grid-template-columns:180px minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.folder{background:var(--surface-raised);border:1px solid var(--line);border-radius:12px;flex-direction:column;justify-content:space-between;gap:12px;min-height:112px;padding:14px;display:flex}.folder-top h2{overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:700;line-height:1.35}.folder-term{color:var(--text-faint);font-size:12.5px}.folder-bottom{justify-content:space-between;align-items:center;gap:6px;display:flex}.folder-sort{max-width:120px;min-height:36px;color:var(--text-sub);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0 6px;font-size:12.5px}.folder-delete{width:36px;height:36px;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.folder-delete:hover{color:var(--faded)}.note-strip{scroll-snap-type:x proximity;gap:10px;margin:0;padding:0 0 6px;list-style:none;display:flex;overflow-x:auto}.note-strip>li{scroll-snap-align:start;flex:none}.note-tile{background:var(--surface);border:1px solid var(--line);width:168px;height:112px;color:var(--text);border-radius:12px;flex-direction:column;justify-content:space-between;padding:14px;text-decoration:none;transition:border-color .15s;display:flex}.note-tile:hover{border-color:var(--line-strong)}.note-title{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14.5px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.note-meta{color:var(--text-faint);font-size:12px}.note-add{border:1px dashed var(--line-strong);width:56px;height:112px;color:var(--text-sub);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;display:flex}.note-add:hover{color:var(--text);border-color:var(--text-faint)}@media (width<=640px){.subject-row{grid-template-columns:1fr}.folder{flex-direction:row;align-items:center;min-height:0}}.editor{flex-direction:column;gap:12px;max-width:760px;display:flex}.crumbs{color:var(--text-faint);font-size:13px}.crumbs a{color:var(--text-sub);text-decoration:none}.crumbs a:hover{color:var(--text)}.editor-title{width:100%;color:var(--text);background:0 0;border:none;border-bottom:1px solid #0000;padding:4px 0;font-family:Noto Serif KR,serif;font-size:30px;font-weight:700}.editor-title:hover{border-bottom-color:var(--line)}.editor-title:focus{border-bottom-color:var(--accent);outline:none}.editor-status{min-height:20px;color:var(--accent);font-size:12.5px}.editor-foot{margin-top:12px}.setting{border:none;max-width:640px;margin:0;padding:0}.setting legend{margin-bottom:12px;padding:0;font-size:15px;font-weight:700}.choices{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.choice{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.choice.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choice-label{font-weight:500}.choice-hint{color:var(--text-sub);font-size:13px}.settings{flex-direction:column;gap:32px;display:flex}.setting{flex-direction:column;gap:14px;display:flex}.toggle{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;display:flex}.toggle input{width:20px;height:20px;accent-color:var(--accent);margin-top:2px}.toggle>span{flex-direction:column;gap:2px;display:flex}.setting .field{max-width:320px}.login{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.login-card{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}.login-brand{align-items:center;gap:12px;display:flex}.login-brand img{border-radius:10px}.login-brand h1{margin:0;font-family:Noto Serif KR,serif;font-size:30px}.login-lead{color:var(--text-sub);margin:0 0 8px}.shell{flex-wrap:wrap;min-height:100vh;display:flex}.side{border-right:1px solid var(--line);flex-direction:column;flex:200px;gap:28px;max-width:240px;padding:28px 18px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-family:Noto Serif KR,serif;font-size:20px;font-weight:700;display:flex}.brand-mark{border-radius:7px}.menu{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.menu-item{min-height:44px;color:var(--text-sub);border-radius:8px;align-items:center;gap:10px;padding:0 12px;text-decoration:none;display:flex}.menu-item:hover{color:var(--text)}.menu-item.on{color:var(--text);background:var(--nav-on)}.content{flex:999 560px;min-width:0;padding:32px 28px 40px}@media (width<=640px){.shell{flex-direction:column}.side{border-right:none;border-bottom:1px solid var(--line);flex:none;gap:12px;max-width:none;padding:16px}.menu{flex-flow:wrap}.content{padding:20px 16px 32px}}.page-head{flex-direction:column;gap:6px;margin-bottom:24px;display:flex}.page-head h1{margin:0;font-family:Noto Serif KR,serif;font-size:28px;font-weight:700}.page-head p{color:var(--text-sub);margin:0}.empty{border:1px dashed var(--line-strong);border-radius:16px;flex-direction:column;gap:10px;max-width:520px;padding:40px 28px;display:flex}.empty h2{margin:0;font-size:17px}.empty p{color:var(--text-sub);margin:0}.empty .stage{color:var(--text-faint);font-size:12px}.boot{min-height:100vh}.signout{min-height:40px;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;align-self:flex-start;margin-top:auto;padding:0 12px}.signout:hover{color:var(--text)}@media (width<=640px){.signout{margin:0;position:absolute;top:16px;right:16px}.side{position:relative}}.btn{border:1px solid var(--line-strong);min-height:44px;color:var(--text);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-raised)}.btn:disabled{opacity:.6;cursor:progress}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:700}.btn-primary:hover{background:var(--accent);filter:brightness(1.08)}.btn-quiet{color:var(--text-sub);border-color:#0000}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--text-sub);font-size:13px}.input,.select{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--text);border-radius:10px;padding:0 12px;font-size:15px}.input:focus,.select:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.error{color:var(--faded);margin:0;font-size:13px}.dialog{border:1px solid var(--line-strong);background:var(--surface-raised);width:min(460px,100vw - 32px);color:var(--text);border-radius:16px;padding:24px}.dialog::backdrop{background:#050a1099}.dialog h2{margin:0 0 16px;font-family:Noto Serif KR,serif;font-size:20px}.dialog form{flex-direction:column;gap:14px;display:flex}.dialog .actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.row{flex-wrap:wrap;gap:10px;display:flex}.row>*{flex:120px}
