.auth-root[data-v-cc4af54a]{width:100%;min-height:100vh;font-family:Inter,Segoe UI,system-ui,sans-serif;overflow:hidden}.auth-card[data-v-cc4af54a]{background:#fff;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.form-side[data-v-cc4af54a]{z-index:1;background:#fff;justify-content:center;align-items:center;width:50%;min-height:100vh;padding:48px;display:flex;position:relative}.form-inner[data-v-cc4af54a]{width:100%;max-width:380px}.purple-panel[data-v-cc4af54a]{z-index:10;background:linear-gradient(160deg,#3b1f8c 0%,#6b3fd4 40%,#a855f7 80%,#c084fc 100%);border-radius:16px 0 0 16px;justify-content:center;align-items:center;width:50%;height:100%;padding:60px 48px;transition:left .65s cubic-bezier(.77,0,.18,1),width .65s cubic-bezier(.77,0,.18,1),border-radius .65s;display:flex;position:absolute;top:0;left:50%;overflow:hidden}.purple-panel[data-v-cc4af54a]:before{content:"";background:radial-gradient(80% 80% at 30% 40%,#ffffff14 0%,#0000 70%);position:absolute;inset:0}.purple-panel.panel-left[data-v-cc4af54a]{border-radius:0 16px 16px 0;left:0}.purple-panel.panel-fullscreen[data-v-cc4af54a]{border-radius:0!important;width:100%!important;transition:left .55s cubic-bezier(.77,0,.18,1),width .55s cubic-bezier(.77,0,.18,1),border-radius .55s!important;left:0!important}.panel-text-left-enter-active[data-v-cc4af54a]{transition:opacity .45s,transform .45s cubic-bezier(.25,.8,.25,1)}.panel-text-left-leave-active[data-v-cc4af54a]{transition:opacity .3s,transform .3s}.panel-text-left-enter-from[data-v-cc4af54a],.panel-text-left-leave-to[data-v-cc4af54a]{opacity:0;transform:translate(-50px)}.panel-text-right-enter-active[data-v-cc4af54a]{transition:opacity .45s,transform .45s cubic-bezier(.25,.8,.25,1)}.panel-text-right-leave-active[data-v-cc4af54a]{transition:opacity .3s,transform .3s}.panel-text-right-enter-from[data-v-cc4af54a],.panel-text-right-leave-to[data-v-cc4af54a]{opacity:0;transform:translate(50px)}.content-fade-enter-active[data-v-cc4af54a]{transition:opacity .4s .1s}.content-fade-leave-active[data-v-cc4af54a]{transition:opacity .3s}.content-fade-enter-from[data-v-cc4af54a],.content-fade-leave-to[data-v-cc4af54a]{opacity:0}.panel-content[data-v-cc4af54a]{z-index:1;text-align:center;color:#fff;position:relative}.panel-logo[data-v-cc4af54a]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 28px;font-size:44px;display:flex}.panel-title[data-v-cc4af54a]{letter-spacing:-.5px;margin-bottom:16px;font-size:36px;font-weight:800;line-height:1.2}.panel-sub[data-v-cc4af54a]{color:#ffffffd1;max-width:260px;margin-bottom:36px;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.7}.panel-hint[data-v-cc4af54a]{color:#ffffffa6;margin-bottom:14px;font-size:13px}.panel-btn[data-v-cc4af54a]{color:#fff;cursor:pointer;letter-spacing:.5px;background:#ffffff1f;border:1.5px solid #ffffffa6;border-radius:30px;padding:11px 36px;font-size:15px;font-weight:600;transition:background .2s,transform .15s}.panel-btn[data-v-cc4af54a]:hover{background:#ffffff3d;transform:scale(1.04)}.form-title[data-v-cc4af54a]{color:#1e1b4b;letter-spacing:-.5px;margin-bottom:6px;font-size:32px;font-weight:800}.form-sub[data-v-cc4af54a]{color:#94a3b8;margin-bottom:24px;font-size:14px}.signup-tabs[data-v-cc4af54a]{gap:8px;margin-bottom:18px;display:flex}.tab-btn[data-v-cc4af54a]{color:#64748b;cursor:pointer;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;flex:1;padding:10px;font-size:13px;font-weight:500;transition:all .15s}.tab-btn.active[data-v-cc4af54a]{color:#6d28d9;background:#f5f3ff;border-color:#7c3aed;font-weight:600}.auth-form[data-v-cc4af54a]{flex-direction:column;gap:14px;display:flex}.form-err[data-v-cc4af54a]{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;padding:10px 14px;font-size:13px}.form-success[data-v-cc4af54a]{color:#15803d;background:#f0fdf4;border:1px solid #86efac;border-radius:10px;padding:10px 14px;font-size:13px}.field[data-v-cc4af54a]{flex-direction:column;gap:6px;display:flex}.field label[data-v-cc4af54a]{color:#374151;font-size:13px;font-weight:600}.field input[data-v-cc4af54a]{color:#1e1b4b;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.field input[data-v-cc4af54a]:focus{background:#fff;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.field input[data-v-cc4af54a]::placeholder{color:#b0b8c8}.pw-wrap[data-v-cc4af54a]{position:relative}.pw-wrap input[data-v-cc4af54a]{padding-right:42px}.pw-eye[data-v-cc4af54a]{cursor:pointer;background:0 0;border:none;padding:0;font-size:16px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.otp-input[data-v-cc4af54a]{text-align:center;letter-spacing:8px;color:#6d28d9;font-size:22px;font-weight:700}.otp-hint[data-v-cc4af54a]{color:#7c3aed;font-size:11px}.forgot-row[data-v-cc4af54a]{justify-content:flex-start;margin-top:-4px;display:flex}.forgot-row a[data-v-cc4af54a]{color:#7c3aed;font-size:13px;font-weight:500;text-decoration:none}.forgot-row a[data-v-cc4af54a]:hover{text-decoration:underline}.submit-btn[data-v-cc4af54a]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6d28d9,#a855f7);border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-top:4px;padding:13px;font-size:15px;font-weight:700;transition:filter .15s,transform .1s;display:flex}.submit-btn[data-v-cc4af54a]:hover:not(:disabled){filter:brightness(1.1)}.submit-btn[data-v-cc4af54a]:active:not(:disabled){transform:scale(.98)}.submit-btn[data-v-cc4af54a]:disabled{opacity:.6;cursor:not-allowed}.text-btn[data-v-cc4af54a]{color:#94a3b8;cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:0;font-family:inherit;font-size:13px}.text-btn[data-v-cc4af54a]:hover{color:#6d28d9}.bottom-link[data-v-cc4af54a]{color:#94a3b8;margin-top:20px;font-size:13px}.bottom-link a[data-v-cc4af54a]{color:#7c3aed;font-weight:600;text-decoration:none}.bottom-link a[data-v-cc4af54a]:hover{text-decoration:underline}.mini-spin[data-v-cc4af54a]{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-cc4af54a;display:inline-block}@keyframes spin-cc4af54a{to{transform:rotate(360deg)}}.auth-toast[data-v-cc4af54a]{z-index:999;white-space:nowrap;border-radius:12px;padding:12px 24px;font-size:14px;font-weight:500;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}.toast--success[data-v-cc4af54a]{color:#a5b4fc;background:#1a1050;border:1px solid #6366f166}.toast--error[data-v-cc4af54a]{color:#fca5a5;background:#2d0a0a;border:1px solid #ef44444d}.toast-enter-active[data-v-cc4af54a]{transition:all .35s cubic-bezier(.34,1.2,.64,1)}.toast-leave-active[data-v-cc4af54a]{transition:all .2s}.toast-enter-from[data-v-cc4af54a]{opacity:0;transform:translate(-50%)translateY(-20px)scale(.95)}.toast-leave-to[data-v-cc4af54a]{opacity:0;transform:translate(-50%)translateY(-8px)}@media (width<=768px){.auth-card[data-v-cc4af54a]{flex-direction:column}.form-side[data-v-cc4af54a]{width:100%;min-height:50vh;padding:32px 24px}.purple-panel[data-v-cc4af54a]{width:100%;height:auto;min-height:220px;padding:40px 28px;position:relative;left:0!important}}html[data-theme=dark],:root{--bg-page:#08061a;--bg-card:#100d2a;--bg-card2:#14103a;--bg-input:#080618;--border-c:#6366f138;--border-h:#8b5cf673;--accent:#818cf8;--accent-sat:#6366f1;--accent-dim:#6366f124;--accent-mid:#6366f140;--text-1:#ede9fe;--text-2:#a5b4fc;--text-3:#c4b5fd;--text-mute:#4c4a7e;--header-bg:#08061ae6;--overlay-bg:#02010ccc;--shadow:#0000008c;--btn-primary-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--btn-primary-text:#fff;--toast-success-bg:#1a1050;--toast-success-c:#a5b4fc;--toast-success-b:#6366f14d;--toast-error-bg:#2d0a0a;--toast-error-c:#fca5a5;--toast-error-b:#ef44444d}html[data-theme=light]{--bg-page:#eef2ff;--bg-card:#ffffffb8;--bg-card2:#e0e7ff99;--bg-input:#ffffffd9;--border-c:#94a3ff40;--border-h:#6366f173;--accent:#4f46e5;--accent-sat:#4338ca;--accent-dim:#6366f11a;--accent-mid:#6366f12e;--text-1:#1e1b4b;--text-2:#3730a3;--text-3:#6366f1;--text-mute:#818cf8;--header-bg:#e0e7ffbf;--overlay-bg:#1e1b4b73;--shadow:#6366f11a;--btn-primary-bg:linear-gradient(135deg, #6366f1, #8b5cf6);--btn-primary-text:#fff;--toast-success-bg:#e0e7fff2;--toast-success-c:#3730a3;--toast-success-b:#6366f133;--toast-error-bg:#fee2e2f2;--toast-error-c:#dc2626;--toast-error-b:#ef444440}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{min-height:100vh;color:var(--text-1);font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.6}html{background-attachment:fixed;min-height:100%}body{min-height:100vh;margin:0}#app,.app{background:0 0;min-height:100vh;position:relative}html[data-theme=dark]{background-color:#0c0a1e;background-image:radial-gradient(60% 60%,#180f3a 0%,#0000 65%),radial-gradient(40% 40% at 0 0,#03020c 0%,#0000 55%),radial-gradient(40% 40% at 100% 0,#03020c 0%,#0000 55%),radial-gradient(40% 40% at 0 100%,#03020c 0%,#0000 55%),radial-gradient(40% 40% at 100% 100%,#03020c 0%,#0000 55%)}html[data-theme=light]{background-color:#eef1ff;background-image:radial-gradient(70% 70% at 50% 40%,#f5f7ff 0%,#0000 70%),radial-gradient(50% 50% at 0 0,#c5cafe 0%,#0000 55%),radial-gradient(50% 50% at 100% 0,#bad0ff 0%,#0000 55%),radial-gradient(50% 50% at 0 100%,#d4bfff 0%,#0000 55%),radial-gradient(50% 50% at 100% 100%,#bfccff 0%,#0000 55%);background-attachment:fixed}.toast{z-index:999;white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0006}.toast--success{background:var(--toast-success-bg);color:var(--toast-success-c);border:1px solid var(--toast-success-b)}.toast--error{background:var(--toast-error-bg);color:var(--toast-error-c);border:1px solid var(--toast-error-b)}.toast-enter-active,.toast-leave-active{transition:all .35s cubic-bezier(.34,1.2,.64,1)}.toast-enter-from{opacity:0;transform:translate(-50%)translateY(-28px)scale(.95)}.toast-leave-to{opacity:0;transform:translate(-50%)translateY(-10px)scale(.97)}.header{z-index:100;background:var(--header-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-c);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1140px;margin:0 auto;padding:16px 24px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-icon{background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px}.brand-title{letter-spacing:-.3px;color:var(--text-1);font-size:35px;font-weight:700}.note-count{background:var(--accent-dim);color:var(--accent);border:1px solid var(--border-c);border-radius:20px;padding:2px 9px;font-size:12px;font-weight:600}.home-btn{cursor:pointer;color:var(--text-mute);border:1px solid var(--border-c);background:0 0;border-radius:20px;align-items:center;gap:5px;padding:5px 14px;font-size:100%;font-weight:600;transition:all .15s;display:inline-flex}.home-btn:hover{background:var(--accent-dim);color:var(--accent);border-color:var(--border-h)}.home-btn--active{background:var(--accent-dim);color:var(--accent);border-color:#22c55e59}.header-actions{align-items:center;gap:10px;display:flex}.theme-toggle{background:var(--accent-dim);border:1px solid var(--border-c);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;transition:background .2s,border-color .2s,transform .15s;display:flex}.theme-toggle:hover{background:var(--accent-mid);border-color:var(--border-h);transform:rotate(20deg)}html[data-theme=light] .note-card{-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 24px #6366f11a,0 1px 4px #6366f10f}html[data-theme=light] .note-card:hover{box-shadow:0 8px 32px #6366f129,0 2px 8px #6366f114}html[data-theme=light] .modal{-webkit-backdrop-filter:blur(20px);background:radial-gradient(70% 60% at 0 0,#e0e7ff 0%,#0000 55%),radial-gradient(60% 50% at 100% 100%,#ede9fe 0%,#0000 55%),#fff;box-shadow:0 24px 80px #6366f126}html[data-theme=light] .form-input,html[data-theme=light] .form-textarea{color:#1e1b4b;background:#f1f2f6;border-color:#94a3ff4d}html[data-theme=light] .form-input:focus,html[data-theme=light] .form-textarea:focus{background:#eceef8;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}html[data-theme=light] .unsaved-dialog{background:#fff;border-color:#ef44444d;box-shadow:0 16px 48px #6366f126}html[data-theme=light] .unsaved-title{color:#1e1b4b}html[data-theme=light] .unsaved-text{color:#4338ca}html[data-theme=light] .unsaved-actions .btn-ghost{color:#4338ca;background:#6366f11a;border-color:#6366f159}html[data-theme=light] .unsaved-actions .btn-danger{color:#dc2626;background:#ef444414;border-color:#ef44444d}html[data-theme=light] .header{-webkit-backdrop-filter:blur(20px)}html[data-theme=light] .search-input{-webkit-backdrop-filter:blur(8px);background:#ffffffd9}html[data-theme=light] .skeleton-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff8c}.btn.active{color:#fca5a5;background:#ef44441f;border-color:#ef444440}.trash-badge{background:var(--accent-dim);color:var(--text-mute);border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:4px;padding:0 4px;font-size:10px;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.trash-badge--active{color:#fff;background:#ef4444}.toolbar{flex-direction:column;gap:10px;max-width:1140px;margin:0 auto;padding:10px 24px 14px;display:flex}.search-wrap{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.search-icon{color:var(--text-mute);pointer-events:none;z-index:1;font-size:17px;transition:all .75s cubic-bezier(.25,.8,.25,1);position:absolute;left:50%;transform:translate(calc(-50% - 88px))}.search-wrap.expanded .search-icon{left:12px;transform:translate(0)}.search-input{background:var(--bg-card);border:1px solid var(--border-c);width:220px;color:var(--text-1);text-align:center;border-radius:24px;outline:none;padding:9px 20px 9px 36px;font-size:14px;transition:width .75s cubic-bezier(.25,.8,.25,1),border-radius .6s,border-color .15s,box-shadow .15s}.search-wrap.expanded .search-input{text-align:left;border-radius:10px;width:100%}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.search-input::placeholder{color:var(--text-mute);transition:color .2s}.search-clear{color:var(--text-mute);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:13px;transition:color .15s;position:absolute;right:10px}.search-clear:hover{color:var(--text-2)}.tags-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tags-bar--spacer{min-height:30px}.sort-wrap{margin-left:auto;position:relative}.sort-btn{background:var(--accent-dim);border:1px solid var(--border-c);width:30px;height:30px;color:var(--text-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.sort-btn:hover{background:var(--accent-mid);border-color:var(--border-h);color:var(--accent)}.sort-menu{z-index:150;background:var(--bg-card2);border:1px solid var(--border-c);box-shadow:0 8px 24px var(--shadow);border-radius:10px;min-width:190px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.sort-option{width:100%;color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:9px;padding:10px 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:flex}.sort-option:hover{background:var(--accent-dim);color:var(--text-1)}.sort-option.active{color:var(--accent);background:var(--accent-dim)}.sort-option-icon{text-align:center;width:18px;font-size:14px}.dropdown-enter-active{transition:opacity .15s,transform .15s cubic-bezier(.34,1.2,.64,1)}.dropdown-leave-active{transition:opacity .1s,transform .1s}.dropdown-enter-from{opacity:0;transform:translateY(-6px)scale(.97)}.dropdown-leave-to{opacity:0;transform:translateY(-4px)scale(.98)}.tag-pill{background:var(--accent-dim);border:1px solid var(--border-c);color:var(--text-mute);cursor:pointer;border-radius:20px;padding:4px 15px;font-size:14px;font-weight:500;transition:all .15s}.tag-pill:hover{background:rgba(var(--pill-rgb,99,102,241), .12);color:var(--pill-color,var(--accent));border-color:rgba(var(--pill-rgb,99,102,241), .4)}.tag-pill.active{background:rgba(var(--pill-rgb,99,102,241), .18);color:var(--pill-color,#4ade80);border-color:rgba(var(--pill-rgb,99,102,241), .5)}.tag-chip-editable{cursor:pointer;border-radius:12px;align-items:center;display:inline-flex;position:relative;overflow:hidden}.tag-chip-editable input[type=color]{opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.tag-chip-pick{opacity:0;margin-left:2px;font-size:10px;transition:opacity .15s}.tag-chip-editable:hover .tag-chip-pick{opacity:1}.main{max-width:1140px;margin:0 auto;padding:28px 24px 60px}.skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.skeleton-card{background:var(--bg-card);border:1px solid var(--border-c);border-radius:12px;flex-direction:column;gap:10px;padding:18px;display:flex}.skeleton-line{background:linear-gradient(90deg, var(--bg-card) 0%, var(--bg-card2) 50%, var(--bg-card) 100%);background-size:200% 100%;border-radius:6px;animation:1.4s infinite shimmer}.skeleton-title{width:70%;height:18px}.skeleton-body{width:100%;height:13px}.skeleton-body.short{width:55%}.skeleton-footer{gap:8px;margin-top:6px;display:flex}.skeleton-tag{border-radius:10px;width:60px;height:20px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.state-box{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:420px;display:flex}.state-icon{font-size:40px}.state-title{color:var(--text-2);font-size:17px;font-weight:600}.state-text{color:var(--text-mute);font-size:14px}.dog-message{color:var(--accent);letter-spacing:.02em;margin-bottom:4px;font-size:16px;font-weight:500}.dog-container{filter:drop-shadow(0 10px 30px #6366f14d);animation:3.2s ease-in-out infinite dogFloat}@keyframes dogFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.trash-hint{color:var(--text-mute);background:#ef444412;border:1px solid #ef444426;border-radius:8px;margin-bottom:16px;padding:8px 14px;font-size:13px}.rabbit-corner{z-index:90;cursor:pointer;filter:drop-shadow(0 4px 14px #6366f140);flex-direction:column;align-items:center;gap:6px;animation:3.2s ease-in-out infinite dogFloat;display:flex;position:fixed;bottom:24px;right:24px}.rabbit-corner:hover{filter:drop-shadow(0 6px 22px #6366f180)}.dog-sidebar-label{color:var(--accent);text-align:center;background:var(--accent-dim);border:1px solid var(--border-c);white-space:nowrap;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:500;line-height:1.5}.rabbit-bubble{background:var(--bg-card2);border:1px solid var(--border-h);color:var(--text-2);white-space:nowrap;box-shadow:0 4px 16px var(--shadow);pointer-events:none;border-radius:12px;margin-bottom:8px;padding:7px 13px;font-size:12px;font-weight:500;position:absolute;bottom:100%;right:10px}.rabbit-bubble:after{content:"";border:6px solid #0000;border-top-color:var(--border-h);position:absolute;bottom:-7px;right:18px}.bubble-enter-active{transition:opacity .2s,transform .2s cubic-bezier(.34,1.4,.64,1)}.bubble-leave-active{transition:opacity .2s}.bubble-enter-from{opacity:0;transform:scale(.85)translateY(4px)}.bubble-leave-to{opacity:0}.notes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.note-card{background:linear-gradient(135deg, var(--bg-card) 0%, var(--bg-card2) 100%);border:1px solid var(--border-c);cursor:pointer;border-left:3px solid #0000;border-radius:12px;flex-direction:column;transition:border-color .18s,transform .18s,box-shadow .18s,opacity .18s;display:flex;position:relative;overflow:hidden}.note-card:hover{border-left-color:var(--accent);box-shadow:0 8px 28px var(--shadow), 0 0 0 1px var(--accent-dim);transform:translateY(-2px)}.note-card:hover .drag-handle{opacity:1}.note-card--dragging{opacity:.3;transform:scale(.97)}.note-card--dragover{border-left-color:var(--accent);box-shadow:0 0 0 2px var(--accent-mid), 0 8px 28px var(--shadow);transform:translateY(-2px)}.drag-handle{color:var(--text-mute);cursor:grab;opacity:0;-webkit-user-select:none;user-select:none;font-size:16px;line-height:1;transition:opacity .15s,color .15s;position:absolute;top:8px;right:10px}.drag-handle:hover{color:var(--accent)}.drag-handle:active{cursor:grabbing}.note-card--trash{cursor:default;opacity:.65}.note-card--trash:hover{border-left-color:#ef4444;transform:none}.note-card-body{flex:1;padding:18px 18px 12px}.note-title{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;max-width:50%;margin-bottom:6px;font-size:15px;font-weight:650;overflow:hidden}.note-content{color:var(--text-mute);white-space:nowrap;text-overflow:ellipsis;max-width:50%;font-size:13px;line-height:1.55;overflow:hidden}.note-tags{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.tag-chip{border:1px solid #0000;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:500}.note-card-footer{border-top:1px solid var(--border-c);justify-content:space-between;align-items:center;gap:8px;padding:10px 18px 14px;display:flex}.note-time{color:var(--text-mute);white-space:nowrap;font-size:11px}.note-actions{gap:5px;display:flex}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:5px;padding:9px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:filter .15s,background .15s,transform .1s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-ghost{background:var(--accent-dim);color:var(--text-2);border:1px solid var(--border-c)}.btn-ghost:hover:not(:disabled){background:var(--accent-mid);color:var(--text-1);border-color:var(--border-h)}.btn-danger{color:#f87171;background:#ef444414;border:1px solid #ef444433}.btn-danger:hover:not(:disabled){background:#ef44442e}.btn-sm{border-radius:6px;padding:5px 11px;font-size:12px}.btn-lg{border-radius:10px;padding:12px 28px;font-size:15px}.btn-icon{font-size:18px;font-weight:300;line-height:1}.modal-overlay{background:var(--overlay-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:linear-gradient(160deg, var(--bg-card2) 0%, var(--bg-card) 100%);border:1px solid var(--border-c);border-radius:16px;flex-direction:column;width:100%;max-width:640px;max-height:90vh;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #0009}.unsaved-overlay{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:16px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.unsaved-dialog{text-align:center;background:#1e1c3a;border:1px solid #ef444459;border-radius:14px;width:90%;max-width:320px;padding:28px 28px 22px;box-shadow:0 16px 48px #00000059}.unsaved-icon{margin-bottom:10px;font-size:36px}.unsaved-title{color:var(--text-1);margin-bottom:8px;font-size:16px;font-weight:700}.unsaved-text{color:var(--text-2);margin-bottom:20px;font-size:13px;line-height:1.6}.unsaved-actions{flex-direction:column;gap:8px;display:flex}.unsaved-actions .btn{justify-content:center;width:100%;font-weight:600}.unsaved-actions .btn-ghost{color:var(--accent);background:#6366f12e;border-color:#6366f166}.unsaved-actions .btn-ghost:hover{color:var(--text-1);background:#6366f147}.unsaved-actions .btn-danger{color:#e84545;background:#ef444426;border-color:#ef444466}.unsaved-actions .btn-danger:hover{color:#c0392b;background:#ef444440}.unsaved-fade-enter-active{transition:opacity .2s,transform .2s cubic-bezier(.34,1.2,.64,1)}.unsaved-fade-leave-active{transition:opacity .15s}.unsaved-fade-enter-from{opacity:0;transform:scale(.9)}.unsaved-fade-leave-to{opacity:0}.modal-header{border-bottom:1px solid var(--border-c);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 22px 14px;display:flex}.modal-title{color:var(--text-1);font-size:17px;font-weight:700}.modal-header-right{align-items:center;gap:8px;display:flex}.modal-close{color:var(--text-mute);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:17px;transition:color .15s,background .15s}.modal-close:hover{color:var(--text-2);background:#22c55e14}.modal-body{flex-direction:column;flex:1;gap:16px;padding:20px 22px;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-c);flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;padding:14px 22px 18px;display:flex}.shortcut-hint{color:var(--text-mute);margin-right:auto;font-size:11.5px}.form-field{flex-direction:column;gap:7px;display:flex}.form-label{color:var(--text-3);letter-spacing:.03em;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.form-hint{color:var(--text-mute);font-size:11.5px;font-weight:400}.required{color:#f87171}.form-input,.form-textarea{background:var(--bg-input);border:1px solid var(--border-c);color:var(--text-1);resize:vertical;border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.form-input.is-error{border-color:#f87171}.form-textarea{font-family:Fira Code,Cascadia Code,monospace;font-size:13.5px;line-height:1.65}.form-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef444440;border-radius:8px;align-items:center;gap:7px;padding:8px 12px;font-size:13px;display:flex}.tag-preview{flex-wrap:wrap;gap:5px;display:flex}.markdown-preview{flex-direction:column;gap:12px;display:flex}.preview-title{color:var(--text-1);letter-spacing:-.3px;font-size:22px;font-weight:700}.md-body{color:var(--text-2);font-size:14.5px;line-height:1.75}.md-body h1,.md-body h2,.md-body h3{color:var(--text-1);margin:16px 0 8px;font-weight:700}.md-body h1{font-size:20px}.md-body h2{font-size:17px}.md-body h3{font-size:15px}.md-body p{margin-bottom:10px}.md-body strong{color:var(--text-1)}.md-body em{color:var(--text-3)}.md-body code{color:var(--text-3);background:#22c55e1a;border-radius:4px;padding:1px 6px;font-family:Fira Code,monospace;font-size:13px}.md-body pre{background:var(--bg-input);border:1px solid var(--border-c);border-radius:8px;margin-bottom:10px;padding:14px 16px;overflow-x:auto}.md-body pre code{background:0 0;padding:0}.md-body ul,.md-body ol{margin-bottom:10px;padding-left:20px}.md-body li{margin-bottom:4px}.md-body blockquote{border-left:3px solid var(--accent);color:var(--text-mute);margin-bottom:10px;padding-left:14px;font-style:italic}.md-body a{color:var(--accent);text-decoration:underline}.md-body hr{border:none;border-top:1px solid var(--border-c);margin:16px 0}.spinner{border:3px solid var(--accent-dim);border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:.7s linear infinite spin}.spinner-sm{border-width:2px;width:13px;height:13px}@keyframes spin{to{transform:rotate(360deg)}}.notes-grid-wrap{width:100%}.tag-zoom-in-enter-active{transition:opacity .4s,transform .4s cubic-bezier(.22,1,.36,1)}.tag-zoom-in-leave-active{transition:opacity .25s,transform .25s}.tag-zoom-in-enter-from{opacity:0;transform:scale(.75)}.tag-zoom-in-leave-to{opacity:0;transform:scale(.85)}.tag-zoom-out-enter-active{transition:opacity .4s,transform .4s cubic-bezier(.22,1,.36,1)}.tag-zoom-out-leave-active{transition:opacity .25s,transform .25s}.tag-zoom-out-enter-from{opacity:0;transform:scale(1.15)}.tag-zoom-out-leave-to{opacity:0;transform:scale(1.08)}.view-up-enter-active{transition:opacity .35s,transform .35s cubic-bezier(.25,.8,.25,1)}.view-up-leave-active{transition:opacity .28s,transform .28s}.view-up-enter-from{opacity:0;transform:translateY(40px)}.view-up-leave-to{opacity:0;transform:translateY(-40px)}.view-down-enter-active{transition:opacity .35s,transform .35s cubic-bezier(.25,.8,.25,1)}.view-down-leave-active{transition:opacity .28s,transform .28s}.view-down-enter-from{opacity:0;transform:translateY(-40px)}.view-down-leave-to{opacity:0;transform:translateY(40px)}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active{transition:opacity .25s,transform .25s cubic-bezier(.34,1.2,.64,1)}.slide-up-leave-active{transition:opacity .15s,transform .15s}.slide-up-enter-from{opacity:0;transform:translateY(20px)scale(.97)}.slide-up-leave-to{opacity:0;transform:translateY(8px)}@media (width<=900px){.rabbit-corner{bottom:16px;right:16px}.rabbit-corner svg{width:70px;height:80px}}@media (width<=640px){.header-inner{padding:12px 16px}.toolbar{padding:8px 16px 12px}.main{padding:20px 16px 48px}.notes-grid{grid-template-columns:1fr}.modal{border-radius:14px;max-height:95vh}.shortcut-hint{display:none}}
