@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--bg-primary:#0a0a0f;--bg-secondary:#111118;--bg-card:#16161f;--bg-card-hover:#1c1c28;--border:#2a2a3a;--border-subtle:#1e1e2a;--text-primary:#e8e4d9;--text-secondary:#8884a0;--text-muted:#4a4860;--color-accent:#7c9ef8;--color-accent-notes:#f0a8a8;--color-accent-jun:#f7e08a;--color-success:#a8d8b9;--color-warning:#f7c59f;--color-hub:#e8d5b7;--node-hub:#e8d5b7;--node-anime:#7c9ef8;--node-phrase:#a8d8b9;--node-subject:#f0a8a8;--node-note:#f7c59f;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px}*{box-sizing:border-box}html{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased}body{background-color:var(--bg-primary);color:var(--text-primary);margin:0;font-family:DM Sans,Noto Sans JP,sans-serif}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-family:Syne,Noto Sans JP,sans-serif;font-weight:700}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.h-4{height:calc(var(--spacing) * 4)}.w-40{width:calc(var(--spacing) * 40)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.justify-center{justify-content:center}.rounded-md{border-radius:var(--radius-md)}.lowercase{text-transform:lowercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}.login-final-root{background:var(--bg-primary);width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-final-left{flex:1.35;justify-content:center;align-items:center;min-height:840px;display:flex;position:relative}.login-final-canvas{position:absolute;inset:0}.login-final-seal{z-index:10;filter:drop-shadow(0 0 18px #7c9ef873)drop-shadow(0 0 40px #7c9ef82e)drop-shadow(0 0 6px #f0a8a833);width:450px;height:450px;animation:5s ease-in-out infinite loginSealFloat;position:relative}.login-final-root:has(.login-final-google-button:active) .login-final-seal{animation:5s ease-in-out infinite loginSealFloat,.5s ease-out loginSealPulse}@keyframes loginSealFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-9px)scale(1.02)}}@keyframes loginSealPulse{0%{filter:drop-shadow(0 0 18px #7c9ef873)drop-shadow(0 0 60px #7c9ef899)drop-shadow(0 0 80px #f7e08a66);transform:scale(1.12)}to{filter:drop-shadow(0 0 18px #7c9ef873)drop-shadow(0 0 40px #7c9ef82e);transform:scale(1)}}.login-final-seal img{object-fit:contain;width:100%;height:100%;display:block}.login-final-divider{z-index:20;background:linear-gradient(#0000 5%,#ffffff0d 30%,#7c9ef81f 50%,#ffffff0d 70%,#0000 95%);flex-shrink:0;align-self:stretch;width:1px;position:relative}.login-final-connector{transform-origin:0;opacity:0;z-index:5;pointer-events:none;background:linear-gradient(90deg,#7c9ef899,#0000);width:0;height:1px;transition:width .6s cubic-bezier(.22,1,.36,1),opacity .4s;position:absolute;top:50%;left:0}.login-final-root:has(.login-final-google-button:hover) .login-final-connector{opacity:1;width:min(44vw,640px)}.login-final-right{z-index:20;flex:.65;justify-content:center;align-items:center;padding:48px 52px;display:flex;position:relative}.login-final-form-area{flex-direction:column;width:100%;max-width:320px;display:flex}.login-final-eyebrow{letter-spacing:.22em;color:#2e2c3e;text-transform:uppercase;margin-bottom:20px;font-size:.65rem;font-weight:400}.login-final-title{color:#e8e4d9;letter-spacing:0;margin-bottom:10px;font-family:Syne,sans-serif;font-size:2.25rem;font-weight:800;line-height:1.05}.login-final-title span{-webkit-text-fill-color:transparent;background:linear-gradient(120deg,#e8e4d9 0%,#7c9ef8 100%);-webkit-background-clip:text;background-clip:text}.login-final-subtitle{color:#3a3850;margin-bottom:44px;font-size:.8125rem;font-weight:300;line-height:1.6}.login-final-orbs{justify-content:center;align-items:center;gap:24px;margin-bottom:42px;padding:4px 0;display:flex}.login-final-module-orb{opacity:.88;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:4.5s ease-in-out infinite loginModuleOrbFloat;display:inline-block;position:relative}.login-final-module-orb:nth-child(2){animation-delay:-1.2s}.login-final-module-orb:nth-child(3){animation-delay:-2.4s}@keyframes loginModuleOrbFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.08)}}.login-final-google-button{color:#8884a0;cursor:pointer;letter-spacing:.01em;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;margin-bottom:16px;padding:14px 24px;font-family:DM Sans,sans-serif;font-size:.875rem;font-weight:400;transition:all .25s;display:flex;position:relative;overflow:hidden}.login-final-google-button:after{content:"";opacity:0;background:linear-gradient(135deg,#7c9ef812 0%,#f0a8a80a 100%);border-radius:12px;transition:opacity .25s;position:absolute;inset:0}.login-final-google-button svg,.login-final-google-button span{z-index:1;position:relative}.login-final-google-button:hover{color:#c8c4d8;border-color:#7c9ef84d;box-shadow:0 0 20px #7c9ef80f,inset 0 1px #ffffff0a}.login-final-google-button:hover:after{opacity:1}.login-final-google-button:active{transform:scale(.985)}.login-final-foot{color:#1e1c2c;letter-spacing:.14em;text-transform:uppercase;text-align:center;font-size:.65rem}@media (max-width:860px){.login-final-root{flex-direction:column}.login-final-left{flex:none;min-height:54vh}.login-final-seal{width:256px;height:256px}.login-final-divider{background:linear-gradient(90deg,#0000,#7c9ef81f,#0000);align-self:auto;width:100%;height:1px}.login-final-connector{display:none}.login-final-right{flex:none;padding:40px 24px 56px}}.app-shell{background:var(--bg-primary);flex-direction:column;min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-content{flex:1;padding:28px 32px;overflow-y:auto}.topbar{-webkit-backdrop-filter:blur(6px);z-index:50;background:linear-gradient(#14141ed9,#0a0a12bf);border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-logo-btn{cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:0;display:flex}.topbar-logo-btn:focus-visible{outline:none}.topbar-logo-btn:focus-visible .topbar-logo-img{filter:drop-shadow(0 0 18px #7c9ef8b8)}.topbar-logo-btn:focus-visible .topbar-logo-name{text-shadow:0 0 14px #7c9ef861}.topbar-logo-img{object-fit:contain;filter:drop-shadow(0 0 8px #7c9ef84d);width:36px;height:36px;transition:filter .3s,transform .25s}.topbar-logo-btn:hover .topbar-logo-img,.topbar-logo-active .topbar-logo-img{filter:drop-shadow(0 0 18px #7c9ef8b3);transform:scale(1.06)}.topbar-logo-name{letter-spacing:-.045em;align-items:baseline;font-family:DM Sans,sans-serif;font-size:.94rem;font-weight:500;line-height:.9;display:flex}.topbar-logo-koto{color:#f2f0ec}.topbar-logo-nexus{color:#0000;background:linear-gradient(100deg,#8cafff 0%,#c8adff 58%,#e6acc6 100%);-webkit-background-clip:text;background-clip:text}.topbar-right{align-items:center;gap:12px;display:flex}.topbar-sync{color:var(--text-muted);letter-spacing:.04em;font-size:.7rem}.topbar-sync-error{color:#fb7185}.topbar-refresh{border:1px solid var(--border-subtle);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s;display:flex}.topbar-refresh:hover{border-color:var(--color-accent);color:var(--color-accent)}.topbar-refresh-spin svg{animation:.8s linear infinite topbarSpin}@keyframes topbarSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.topbar-avatar{border:1px solid var(--border);object-fit:cover;border-radius:50%;width:28px;height:28px}.nav-overlay{z-index:45;pointer-events:none;position:fixed;inset:56px 0 0}.nav-overlay-open{pointer-events:all}.nav-backdrop{cursor:default;background:#07070e00;border:0;width:100%;padding:0;transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;position:absolute;inset:0}.nav-overlay-open .nav-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07070e8c}.nav-items{scrollbar-width:thin;flex-direction:column;gap:6px;width:min(290px,100vw - 28px);max-height:calc(100vh - 72px);padding:24px 28px;display:flex;position:absolute;top:0;left:0;overflow-y:auto}.nav-thread{transform-origin:top;background:linear-gradient(#7c9ef84d,#7c9ef814,#0000);width:1px;height:auto;transition:transform .5s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:22px;left:33px;transform:scaleY(0)}.nav-overlay-open .nav-thread{transform:scaleY(1)}.nav-item{cursor:pointer;opacity:0;background:0 0;border:none;align-items:center;gap:14px;width:100%;padding:2px 0;font-family:DM Sans,sans-serif;text-decoration:none;transition:opacity .35s,transform .4s cubic-bezier(.34,1.2,.64,1),color .15s;display:flex;position:relative;transform:translate(-16px)translateY(4px)}.nav-item:before{content:"";background:#7c9ef826;width:14px;height:1px;position:absolute;top:50%;left:-14px;transform:translateY(-50%)}.nav-overlay-open .nav-item{opacity:1;transform:translate(0)translateY(0)}.nav-overlay-open .nav-item:nth-child(2){transition-delay:70ms}.nav-overlay-open .nav-item:nth-child(3){transition-delay:.13s}.nav-overlay-open .nav-item:nth-child(4){transition-delay:.19s}.nav-overlay-open .nav-item:nth-child(5){transition-delay:.25s}.nav-overlay-open .nav-item:nth-child(6){transition-delay:.31s}.nav-overlay-open .nav-item:nth-child(7){transition-delay:.37s}.nav-node{background:#1e1e2c;border:1px solid #3a3858;border-radius:50%;flex-shrink:0;width:10px;height:10px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.nav-item:hover .nav-node,.nav-item-active .nav-node{background:var(--nc,#7c9ef8);border-color:var(--nc,#7c9ef8);box-shadow:0 0 10px var(--nc,#7c9ef8), 0 0 22px var(--nc)}@supports (color:color-mix(in lab, red, red)){.nav-item:hover .nav-node,.nav-item-active .nav-node{box-shadow:0 0 10px var(--nc,#7c9ef8), 0 0 22px color-mix(in srgb, var(--nc) 35%, transparent)}}.nav-item:hover .nav-node,.nav-item-active .nav-node{transform:scale(1.3)}.nav-label{color:#b4b1db;letter-spacing:-.01em;font-size:.9375rem;font-weight:400;transition:color .2s}.nav-item:hover .nav-label{color:var(--text-secondary)}.nav-item:focus-visible,.nav-subitem:focus-visible{outline:2px solid var(--nc,#c4a8f7);border-radius:4px}@supports (color:color-mix(in lab, red, red)){.nav-item:focus-visible,.nav-subitem:focus-visible{outline:2px solid color-mix(in srgb, var(--nc,#c4a8f7) 70%, white)}}.nav-item:focus-visible,.nav-subitem:focus-visible{outline-offset:3px}.nav-item-active .nav-label{color:var(--text-primary);font-weight:500}.nav-group{gap:4px;display:grid}.nav-group-toggle{list-style:none}.nav-subitems{opacity:0;pointer-events:none;border-left:1px solid #0000;gap:2px;max-height:0;margin:0 0 0 19px;padding:0 0 0 18px;transition:max-height .36s cubic-bezier(.22,1,.36,1),margin .3s,padding .3s,border-color .2s,opacity .22s,transform .32s cubic-bezier(.22,1,.36,1);display:grid;overflow:hidden;transform:translateY(-8px)}.nav-overlay-open .nav-group-open .nav-subitems{opacity:1;pointer-events:auto;border-left-color:#c4a8f72e;max-height:150px;margin-bottom:4px;padding-top:3px;padding-bottom:5px;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.nav-subitems{transition:none}}.nav-subitem{color:#777494;border-radius:5px;padding:5px 8px;font-size:.72rem;line-height:1.3;text-decoration:none;transition:color .16s,background .16s}.nav-subitem:hover,.nav-subitem-active{color:#ddd3f5;background:#c4a8f712}.nav-subitem-active{font-weight:600}.nav-item-signout .nav-node{background:#1a1a28;border-color:#2a2a3a}.nav-item-signout:hover .nav-node{background:var(--color-accent-notes);border-color:var(--color-accent-notes);box-shadow:0 0 10px var(--color-accent-notes);transform:scale(1.3)}.nav-item-signout:hover .nav-label{color:var(--color-accent-notes)}.nav-divider{background:var(--border-subtle);opacity:0;width:1px;height:16px;margin-left:4px;transition:opacity .3s .3s}.nav-overlay-open .nav-divider{opacity:1}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:20px 24px}.card-highlight{border-color:#7c9ef833;box-shadow:inset 0 0 0 1px #7c9ef80f}.card-ghost{background:0 0;border-color:#0000;padding:0}.progress-wrap{flex-direction:column;gap:6px;width:100%;display:flex}.progress-label{color:var(--text-muted);letter-spacing:.04em;align-self:flex-end;font-size:.7rem}.progress-track{background:var(--border-subtle);border-radius:999px;width:100%;overflow:hidden}.progress-track-sm{height:3px}.progress-track-md{height:5px}.progress-fill{border-radius:999px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.progress-fill-default{background:var(--color-accent)}.progress-fill-success{background:var(--color-success)}.progress-fill-warning{background:var(--color-warning)}.badge{letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:.6875rem;font-weight:500;display:inline-flex}.badge-default{background:var(--bg-card-hover);color:var(--text-secondary);border:1px solid var(--border)}.badge-success{color:var(--color-success);background:#a8d8b91a;border:1px solid #a8d8b933}.badge-warning{color:var(--color-warning);background:#f7c59f1a;border:1px solid #f7c59f33}.badge-accent{color:var(--color-accent);background:#7c9ef81a;border:1px solid #7c9ef833}.badge-notes{color:var(--color-accent-notes);background:#f0a8a81a;border:1px solid #f0a8a833}.badge-jun{color:var(--color-accent-jun);background:#f7e08a1a;border:1px solid #f7e08a33}.spinner{border:2px solid var(--border);border-top-color:var(--color-accent);border-radius:50%;flex-shrink:0;animation:.7s linear infinite spinnerRotate}.spinner-sm{width:16px;height:16px}.spinner-md{width:24px;height:24px}.spinner-lg{width:36px;height:36px}@keyframes spinnerRotate{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--bg-card) 25%, var(--bg-card-hover) 50%, var(--bg-card) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite skeletonShimmer}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.empty-state-icon{color:var(--text-muted);opacity:.5;margin-bottom:4px}.empty-state-title{color:var(--text-secondary);font-size:.875rem;font-weight:500}.empty-state-desc{color:var(--text-muted);max-width:280px;font-size:.8rem;line-height:1.6}.empty-state-action{margin-top:8px}.brain-page{height:calc(100vh - 56px);margin:-28px -32px;overflow:hidden}.brain-wrap{width:100%;height:100%;position:relative}.brain-canvas{width:100%;height:100%;display:block}.brain-loading{height:100%;color:var(--text-muted);letter-spacing:.06em;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.8125rem;display:flex}.brain-loading-spinner{border:2px solid var(--border);border-top-color:var(--color-accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spinnerRotate}.brain-retry-button{border:1px solid var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.brain-retry-button{border:1px solid color-mix(in srgb, var(--color-accent) 45%, transparent)}}.brain-retry-button{background:var(--color-accent);border-radius:999px;padding:7px 12px}@supports (color:color-mix(in lab, red, red)){.brain-retry-button{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}}.brain-retry-button{color:var(--color-accent);font:inherit;cursor:pointer}.brain-stats{color:var(--text-muted);letter-spacing:.04em;pointer-events:none;align-items:center;gap:8px;font-size:.7rem;display:flex;position:absolute;bottom:20px;left:24px}.brain-stats-dot{background:var(--border);border-radius:50%;width:3px;height:3px}.brain-jlpt-load-error{z-index:20;border-radius:var(--radius-md);background:var(--bg-card);border:1px solid #fb4d6d59;align-items:center;gap:10px;padding:9px 12px;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.brain-jlpt-load-error{background:color-mix(in srgb, var(--bg-card) 94%, transparent)}}.brain-jlpt-load-error{color:var(--text-secondary);box-shadow:var(--shadow-md);font-size:.7rem}.brain-jlpt-load-error button,.jlpt-level-load-error button{background:var(--jlpt-level,#e879f9);border:0;border-radius:999px;padding:5px 9px}@supports (color:color-mix(in lab, red, red)){.brain-jlpt-load-error button,.jlpt-level-load-error button{background:color-mix(in srgb, var(--jlpt-level,#e879f9) 16%, transparent)}}.brain-jlpt-load-error button,.jlpt-level-load-error button{color:var(--jlpt-level,#e879f9);font:inherit;cursor:pointer;font-weight:700}@media (max-width:768px){.brain-stats{flex-wrap:wrap;font-size:.58rem;bottom:12px;left:12px;right:12px}}.node-tooltip{z-index:60;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);pointer-events:none;flex-direction:column;gap:6px;max-width:220px;padding:10px 12px;display:flex;position:fixed;box-shadow:0 8px 32px #0006}.node-tooltip-header{align-items:center;gap:8px;display:flex}.node-tooltip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.node-tooltip-label{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.node-tooltip-meta{color:var(--text-muted);font-size:.75rem}.node-panel{border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:55;background:#101018eb;width:280px;animation:.25s cubic-bezier(.22,1,.36,1) both panelIn;position:absolute;top:20px;right:20px;overflow:hidden;box-shadow:0 16px 48px #00000080}@keyframes panelIn{0%{opacity:0;transform:translate(12px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}.node-panel-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex}.node-panel-inline-badge{margin-bottom:12px}.node-panel-anime-hero{flex-direction:row;align-items:center;gap:14px;margin-bottom:16px;display:flex}.node-panel-anime-meta{min-width:0}.node-panel-anime-title{color:var(--text-primary,#f2f4ff);font-size:1.05rem;font-weight:700;line-height:1.2}.node-panel-title-row{align-items:center;gap:10px;min-width:0;display:flex}.node-panel-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.node-panel-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-family:Syne,sans-serif;font-size:.9375rem;font-weight:700;overflow:hidden}.node-panel-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.node-panel-close{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.node-panel-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.node-panel-content{flex-direction:column;gap:10px;padding:14px 16px 16px;display:flex}.node-panel-desc{color:var(--text-secondary);font-size:.8125rem;line-height:1.6}.node-panel-meta{color:var(--text-muted);font-size:.75rem}.node-panel-jp-large{color:var(--text-primary);letter-spacing:.04em;font-size:1.5rem;font-weight:300}.node-panel-stats{gap:20px;display:flex}.node-panel-stat{flex-direction:column;gap:2px;display:flex}.node-panel-stat-value{color:var(--text-primary);font-family:Syne,sans-serif;font-size:1.25rem;font-weight:700}.node-panel-stat-label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem}.node-panel-list{flex-direction:column;gap:6px;max-height:240px;display:flex;overflow-y:auto}.node-panel-list-item{border-radius:var(--radius-sm);background:var(--bg-card-hover);flex-direction:column;gap:2px;padding:6px 8px;display:flex}.node-panel-jp{color:var(--color-accent);font-size:.875rem}.node-panel-meaning{color:var(--text-muted);font-size:.75rem}.node-panel-note-title{color:var(--text-secondary);font-size:.8125rem}.node-panel-hero{flex-direction:row;align-items:center;gap:12px;margin-bottom:16px;display:flex}.node-panel-cover{object-fit:cover;border-radius:12px;flex-shrink:0;width:90px;height:120px}.node-panel-meta{flex-direction:column;justify-content:center;min-width:0;display:flex}.node-panel-title-inline{color:#f2f4ff;font-size:1rem;font-weight:700;line-height:1.2}.node-panel-more{color:var(--text-muted);text-align:center;padding-top:4px;font-size:.75rem}.node-panel-review{flex-direction:column;gap:6px;display:flex}.node-panel-task-row{align-items:center;gap:10px;display:flex}.node-panel-task-dot{border:1.5px solid var(--text-muted);border-radius:50%;flex-shrink:0;width:10px;height:10px}.node-panel-task-done{background:var(--color-success);border-color:var(--color-success);box-shadow:0 0 6px var(--color-success)}.node-panel-jlpt-levels{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.node-panel-jlpt-levels span{border:1px solid var(--node-level-color);border-radius:7px;padding:6px 2px}@supports (color:color-mix(in lab, red, red)){.node-panel-jlpt-levels span{border:1px solid color-mix(in srgb, var(--node-level-color) 40%, transparent)}}.node-panel-jlpt-levels span{background:var(--node-level-color)}@supports (color:color-mix(in lab, red, red)){.node-panel-jlpt-levels span{background:color-mix(in srgb, var(--node-level-color) 12%, transparent)}}.node-panel-jlpt-levels span{color:var(--node-level-color);text-align:center;font-family:Syne,sans-serif;font-size:.65rem;font-weight:700}.node-panel-jlpt-section{flex-direction:row;justify-content:space-between;align-items:center}.node-panel-link{color:#c4a8f7;align-self:flex-start;font-size:.75rem;font-weight:600;text-decoration:none;transition:color .18s}.node-panel-link:hover{color:#e5d9ff}.node-panel-retry{cursor:pointer;background:0 0;border:0;padding:0}.dashboard{z-index:1;background:#08080f;position:fixed;inset:56px 0 0;overflow:hidden}.dashboard-mobile-header{display:none}.brain-preview{position:absolute;inset:0;overflow:hidden}.brain-preview-canvas{width:100%;height:100%;position:absolute;inset:0}.brain-preview-label{color:#1e1c30;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;font-size:.6rem;position:absolute;bottom:18px;left:20px}.brain-preview-bottom{text-align:center;pointer-events:none;width:300px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.brain-preview-bottom .brain-preview-btn{pointer-events:auto}.brain-focus-label{color:#35335a;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:.6rem}.brain-focus-phrase{color:#e8e4ff;margin-bottom:4px;font-family:Syne,sans-serif;font-size:1.05rem;font-weight:700}.brain-focus-sub{color:#35335a;margin-bottom:12px;font-size:.68rem}.brain-focus-divider{background:#7c9ef833;width:40px;height:1px;margin:0 auto 14px}.brain-preview-btn{color:#b0bcfe;letter-spacing:.03em;cursor:pointer;background:0 0;border:1px solid #7c9ef847;border-radius:100px;width:200px;margin:0 auto;padding:11px 0;font-family:DM Sans,sans-serif;font-size:.82rem;font-weight:500;transition:background .2s,border-color .2s;display:block}.brain-preview-btn:hover{background:#7c9ef814;border-color:#7c9ef873}.dash-overlay{z-index:10;flex-direction:column;justify-content:space-between;width:210px;padding:22px 20px;display:flex;position:absolute;top:0;bottom:0}.dash-overlay-left{left:0}.dash-overlay-right{text-align:right;align-items:flex-end;right:0}.overlay-label{color:#35335a;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:.6rem}.dashboard-metric-head,.dashboard-section-head{display:block}.dashboard-metric-icon,.dashboard-metric-value>span,.dashboard-section-head h2,.dashboard-section-head>span,.jlpt-dashboard-kicker{display:none}.streak-num{color:var(--color-accent-jun);margin-bottom:4px;font-family:Syne,sans-serif;font-size:3.5rem;font-weight:800;line-height:1}.streak-sub{color:#45435a;font-size:.68rem}.recent-activity{margin-top:auto;margin-bottom:auto}.activity-list{flex-direction:column;gap:12px;margin-top:2px;display:flex}.activity-item{align-items:flex-start;gap:8px;display:flex}.activity-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:3px}.activity-body{flex:1;min-width:0}.activity-text{color:#b0acd8;white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.75rem;font-weight:500;overflow:hidden}.activity-sub{color:#35335a;margin-top:1px;font-size:.62rem}.activity-time{color:#2e2c48;white-space:nowrap;margin-top:2px;font-size:.62rem}.week-progress-block{text-align:right}.week-progress-num{color:#fff;margin-bottom:8px;font-family:Syne,sans-serif;font-size:2.4rem;font-weight:800;line-height:1}.week-progress-track{background:#ffffff12;border-radius:1px;width:100%;height:2px;margin-bottom:5px}.week-progress-fill{background:var(--color-accent);border-radius:1px;height:2px;transition:width .6s}.week-progress-sub{color:#35335a;font-size:.68rem}.week-schedule-list{flex-direction:column;gap:7px;margin-top:2px;display:flex}.week-schedule-row{justify-content:flex-end;align-items:center;gap:10px;display:flex}.week-day-name{color:#45435a;letter-spacing:.08em;text-transform:uppercase;text-align:left;width:48px;font-size:.62rem}.week-day-today{color:var(--color-accent-jun)}.week-dot{border-radius:50%;width:5px;height:5px}.week-dot-on{background:#a8d8b9;box-shadow:0 0 6px #a8d8b98c}.week-dot-off{background:0 0;border:1px solid #ffffff1a}.week-pill{border-radius:8px;width:44px;height:16px}.week-pill-on{background:#a8d8b92e;border:1px solid #a8d8b952}.week-pill-off{background:#ffffff08;border:1px solid #ffffff14}.quick-add-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:2px;display:grid}.quick-btn{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex}.quick-btn-icon{background:var(--quick-color,#7c9ef8);border-radius:50%;width:36px;height:36px}@supports (color:color-mix(in lab, red, red)){.quick-btn-icon{background:color-mix(in srgb, var(--quick-color,#7c9ef8) 14%, transparent)}}.quick-btn-icon{border:1px solid var(--quick-color,#7c9ef8)}@supports (color:color-mix(in lab, red, red)){.quick-btn-icon{border:1px solid color-mix(in srgb, var(--quick-color,#7c9ef8) 25%, transparent)}}.quick-btn-icon{justify-content:center;align-items:center;transition:background .2s;display:flex}.quick-btn:hover .quick-btn-icon{background:var(--quick-color,#7c9ef8)}@supports (color:color-mix(in lab, red, red)){.quick-btn:hover .quick-btn-icon{background:color-mix(in srgb, var(--quick-color,#7c9ef8) 22%, transparent)}}.quick-btn-label{color:#35335a;letter-spacing:.05em;white-space:nowrap;font-size:.58rem}.jlpt-dashboard{text-align:left;width:100%}.jlpt-dashboard-header{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.jlpt-dashboard-header .overlay-label{margin-bottom:2px}.jlpt-dashboard-header h2{color:#e8e4ff;font-family:Syne,sans-serif;font-size:.9rem;font-weight:700}.jlpt-dashboard-header a{color:#8176a8;white-space:nowrap;font-size:.62rem;text-decoration:none;transition:color .18s}.jlpt-dashboard-header a:hover{color:#c4a8f7}.jlpt-dashboard-summary{align-items:baseline;gap:6px;margin-top:8px;display:flex}.jlpt-dashboard-summary strong{color:#fff;font-family:Syne,sans-serif;font-size:1.35rem;line-height:1}.jlpt-dashboard-summary span{color:#45435a;font-size:.58rem;line-height:1.35}.jlpt-dashboard-levels{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:9px;display:grid}.jlpt-dashboard-level{border-top:1px solid var(--dashboard-level-color);flex-direction:column;align-items:center;gap:3px;padding:5px 2px;display:flex}@supports (color:color-mix(in lab, red, red)){.jlpt-dashboard-level{border-top:1px solid color-mix(in srgb, var(--dashboard-level-color) 60%, transparent)}}.jlpt-dashboard-level{background:linear-gradient(180deg, var(--dashboard-level-color), transparent)}@supports (color:color-mix(in lab, red, red)){.jlpt-dashboard-level{background:linear-gradient(180deg, color-mix(in srgb, var(--dashboard-level-color) 10%, transparent), transparent)}}.jlpt-dashboard-level span{color:var(--dashboard-level-color);font-family:Syne,sans-serif;font-size:.58rem;font-weight:700}.jlpt-dashboard-level strong{color:#aaa6c4;font-size:.62rem;font-weight:500}.schedule-loading{justify-content:center;align-items:center;height:50vh;display:flex}.schedule-page{flex-direction:column;gap:20px;display:flex;position:relative}.schedule-page:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(#7c9ef80d 0%,#0000 70%);width:600px;height:280px;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.schedule-header{isolation:isolate;z-index:1;justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:relative}.schedule-title{color:var(--text-primary);letter-spacing:-.03em;margin:0 0 4px;font-family:Syne,sans-serif;font-size:2rem;font-weight:800;line-height:1}.schedule-sub{color:var(--text-muted);font-size:.75rem}.schedule-energy{background:#7c9ef80a;border:1px solid #7c9ef81a;border-radius:14px;flex-shrink:0;align-items:center;gap:16px;padding:12px 18px;display:flex}.schedule-streak-num{color:var(--color-accent-jun);text-shadow:0 0 24px #f7e08a59;font-family:Syne,sans-serif;font-size:2rem;font-weight:800;line-height:1}.schedule-streak-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.65rem}.schedule-energy-divider{background:var(--border-subtle);width:1px;height:36px}.schedule-energy-label{color:#3a3858;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:.65rem}.schedule-energy-val{color:var(--text-primary);font-family:Syne,sans-serif;font-size:.875rem;font-weight:700}.week-calendar-section{z-index:1;flex-direction:column;gap:8px;display:flex;position:relative}.week-prog-track{background:#ffffff0d;border-radius:999px;height:4px;overflow:hidden}.week-prog-fill{background:linear-gradient(90deg, var(--color-accent), #9b7cf8);border-radius:999px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 0 10px #7c9ef873}.week-prog-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000) 0 0/200% 100%;animation:2s ease-in-out infinite weekProgShimmer;position:absolute;inset:0}@keyframes weekProgShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.week-cal-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.week-cal-day{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-family:DM Sans,sans-serif;transition:all .2s;display:flex;position:relative}.week-cal-day:hover{background:var(--bg-card-hover);transform:translateY(-3px)}.week-cal-day-selected{border-color:var(--color-accent);background:#7c9ef812;transform:scale(1.04);box-shadow:0 0 0 1px #7c9ef833,0 4px 16px #7c9ef826}.week-cal-day-today{box-shadow:0 0 0 1px #f7e08a4d,0 0 14px #f7e08a1a}.week-cal-day-today .week-cal-name{color:var(--color-accent-jun)}.week-cal-name{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;font-weight:500}.week-cal-pct{color:var(--text-primary);font-family:Syne,sans-serif;font-size:.9rem;font-weight:800}.week-cal-bar-track{background:#ffffff0d;border-radius:999px;width:100%;height:3px;overflow:hidden}.week-cal-bar-fill{background:linear-gradient(90deg, var(--color-accent), #9b7cf8);border-radius:999px;height:100%;transition:width .4s}.week-cal-day-done .week-cal-bar-fill{background:linear-gradient(90deg, var(--color-success), #6ec49a);box-shadow:0 0 6px #a8d8b966}.week-cal-done-dot{background:var(--color-success);border-radius:50%;width:5px;height:5px;box-shadow:0 0 6px #a8d8b999}.task-list-wrap{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);z-index:1;flex-direction:column;gap:16px;padding:20px 24px;display:flex;position:relative}.task-list-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.task-list-focus{color:var(--text-primary);margin-bottom:4px;font-family:Syne,sans-serif;font-size:1.125rem;font-weight:700}.task-list-meta{color:var(--text-muted);font-size:.75rem}.task-pct-big{background:linear-gradient(135deg, var(--color-accent), #9b7cf8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;flex-shrink:0;font-family:Syne,sans-serif;font-size:2rem;font-weight:800;line-height:1}.task-done-badge{color:var(--color-success);background:#a8d8b91a;border:1px solid #a8d8b933;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:.75rem;font-weight:500}.task-items{flex-direction:column;gap:6px;display:flex}.task-item{background:var(--bg-secondary);border-radius:var(--radius-sm);width:100%;font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;align-items:center;gap:12px;padding:11px 14px;transition:all .2s;display:flex;position:relative;overflow:hidden}.task-item:before{content:"";background:var(--color-accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:0;bottom:0;left:0}.task-item-done:before{background:var(--color-success)}.task-item:hover{background:var(--bg-card);border-color:var(--border-subtle);transform:translateY(-2px)}.task-item-done{opacity:.38;filter:grayscale(.2)}.task-item:disabled{cursor:default}.task-item-syncing{opacity:1;background:linear-gradient(90deg, #f7e08a33, #f7e08a0a 48%, transparent), var(--bg-secondary);border-color:#f7e08ab3;box-shadow:0 0 0 1px #f7e08a2e,0 0 32px #f7e08a33}.task-item-syncing:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#f7e08a57,#0000);animation:1s ease-in-out infinite taskSyncSweep;position:absolute;inset:0;transform:translate(-100%)}.task-item-syncing .task-dot{border-color:var(--color-accent-jun);animation:.9s ease-in-out infinite taskDotPulse;box-shadow:0 0 #f7e08a80}.task-item-syncing .task-duration{color:var(--color-accent-jun)}.task-item-synced{animation:1.1s ease-out taskSyncedFlash}.task-dot{border:1.5px solid var(--text-muted);border-radius:50%;flex-shrink:0;width:9px;height:9px;transition:all .2s}.task-dot-done{background:var(--color-success);border-color:var(--color-success);box-shadow:0 0 8px #a8d8b98c}.task-name{color:var(--text-primary);flex:1;font-size:.875rem}.task-item-done .task-name{color:var(--text-muted);-webkit-text-decoration:line-through #3a3858;text-decoration:line-through #3a3858}.task-duration{color:var(--text-muted);font-size:.72rem}@keyframes taskSyncSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes taskDotPulse{0%{box-shadow:0 0 #f7e08a73}70%{box-shadow:0 0 0 8px #f7e08a00}to{box-shadow:0 0 #f7e08a00}}@keyframes taskSyncedFlash{0%{background:linear-gradient(90deg, #a8d8b92e, transparent), var(--bg-secondary);border-color:#a8d8b9f2;box-shadow:0 0 0 1px #a8d8b959,0 0 36px #a8d8b959}to{box-shadow:none;border-color:#0000}}nextjs-portal{display:none!important}.vocab-loading{justify-content:center;align-items:center;height:50vh;display:flex}.vocab-page{flex-direction:column;gap:24px;display:flex}.vocab-header{justify-content:space-between;align-items:flex-end;display:flex}.vocab-title{color:var(--text-primary);letter-spacing:-.03em;margin:0 0 4px;font-family:Syne,sans-serif;font-size:2rem;font-weight:800;line-height:1}.vocab-sub{color:var(--text-muted);font-size:.75rem}.vocab-header-stats{align-items:flex-end;gap:20px;display:flex}.vocab-stat{text-align:right}.vocab-stat-val{color:var(--color-accent);font-family:Syne,sans-serif;font-size:1.25rem;font-weight:800;line-height:1}.vocab-stat-pink{color:var(--color-accent-notes)}.vocab-stat-label{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.6rem}.anime-row-wrapper{align-items:center;display:flex;position:relative}.anime-row{flex:1;align-items:flex-start;gap:12px;display:flex}.anime-row-few .anime-card:hover{box-shadow:none;flex-basis:calc(25% - 15px);transform:none}.anime-page-btn{z-index:10;width:28px;height:48px;color:var(--text-muted);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;background:#06060e99;border:1px solid #ffffff0f;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1.4rem;line-height:1;transition:opacity .2s,color .2s,border-color .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.anime-row-wrapper:hover .anime-page-btn{opacity:1}.anime-page-btn:hover{color:var(--color-accent);border-color:#7c9ef840}.anime-page-btn-prev{left:-14px}.anime-page-btn-next{right:-14px}.anime-card{cursor:pointer;border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:16px;flex:0 calc(25% - 15px);transition:flex-basis .45s cubic-bezier(.4,0,.2,1),box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.anime-card-hero{flex-basis:calc(32.5% - 7.5px)}.anime-card:hover{flex-basis:calc(50% - 18px);box-shadow:0 12px 40px #00000080}.anime-cover-img{object-fit:contain;width:100%;height:auto;transition:transform .45s cubic-bezier(.4,0,.2,1);display:block}.anime-card:hover .anime-cover-img{transform:scale(1.03)}.anime-cover-fallback{aspect-ratio:2/3;background:linear-gradient(135deg, var(--bg-card-hover) 0%, var(--bg-secondary) 100%);width:100%}.anime-overlay{pointer-events:none;background:linear-gradient(#06060e0d 0%,#06060e73 60%,#06060ef7 100%);transition:opacity .3s;position:absolute;inset:0}.anime-new-badge{color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 0 12px #7c9ef899;background:#06060eb8;border:1px solid #7c9ef88c;border-radius:999px;padding:3px 10px;font-size:.65rem;font-weight:600;position:absolute;top:12px;left:12px}.anime-content{pointer-events:none;padding:16px;position:absolute;bottom:0;left:0;right:0}.anime-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:5px;font-family:Syne,sans-serif;font-size:.9375rem;font-weight:700;line-height:1.2;overflow:hidden}.anime-card-hero .anime-title,.anime-card:hover .anime-title{font-size:1.125rem}.anime-meta{align-items:center;gap:6px;display:flex}.anime-count{color:var(--color-accent);font-size:.7rem;font-weight:500}.anime-reviews{color:var(--text-muted);font-size:.68rem}.phrase-fallback{opacity:.8;letter-spacing:.01em;font-style:italic;color:var(--text-muted)!important;font-size:.75rem!important}.phrase-section{flex-direction:column;gap:14px;display:flex}.phrase-section-header{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:16px;display:flex}.phrase-section-left{flex-shrink:0;align-items:baseline;gap:10px;display:flex}.phrase-section-title{color:var(--text-primary);font-family:Syne,sans-serif;font-size:1.125rem;font-weight:700}.phrase-section-sub{color:var(--text-muted);font-size:.72rem}.phrase-filters{align-items:center;gap:6px;display:flex}.phrase-search-wrap{align-items:center;display:flex;position:relative}.phrase-search{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:8px;outline:none;width:130px;padding:4px 28px 4px 10px;font-size:.7rem;transition:border-color .15s,width .25s}.phrase-search::placeholder{color:var(--text-muted)}.phrase-search:focus{border-color:#7c9ef866;width:170px}.phrase-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-size:.9rem;line-height:1;display:flex;position:absolute;right:6px}.phrase-search-clear:hover{color:var(--text-secondary)}.anime-filter-wrap{position:relative}.anime-filter-btn{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;align-items:center;gap:5px;max-width:140px;padding:4px 10px;font-size:.7rem;transition:border-color .15s,color .15s;display:flex;overflow:hidden}.anime-filter-btn:hover{color:var(--text-secondary);border-color:#7c9ef84d}.anime-filter-btn-active{color:var(--color-accent);background:#7c9ef814;border-color:#7c9ef873}.anime-filter-chevron{opacity:.6;flex-shrink:0;font-size:.5rem}.anime-filter-dropdown{background:var(--bg-card);border:1px solid var(--border-subtle);z-index:50;border-radius:10px;min-width:180px;max-height:240px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 32px #0006}.anime-filter-option{text-align:left;width:100%;color:var(--text-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:.7rem;transition:background .1s,color .1s;display:block;overflow:hidden}.anime-filter-option:hover{background:var(--bg-card-hover);color:var(--text-primary)}.anime-filter-option-active{color:var(--color-accent)}.anime-filter-clear{color:var(--text-muted);border-bottom:1px solid var(--border-subtle);border-radius:6px 6px 0 0;margin-bottom:2px;padding-bottom:8px}.phrase-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.phrase-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:default;flex-direction:column;gap:4px;padding:12px 14px;transition:background .15s,border-color .15s,transform .2s;display:flex;position:relative;overflow:hidden}.phrase-card:before{content:"";background:var(--color-accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:0;bottom:0;left:0}.phrase-card:hover{background:var(--bg-card-hover);border-color:#7c9ef82e;transform:translateY(-2px)}.phrase-jp{color:#c8c4f8;font-size:.9375rem;font-weight:400;line-height:1.3}.phrase-meaning{color:var(--text-secondary);font-size:.75rem;line-height:1.4}.phrase-notes{color:var(--text-muted);font-size:.7rem;font-style:italic;line-height:1.4}.phrase-reviews{color:var(--text-muted);letter-spacing:.04em;margin-top:2px;font-size:.62rem}.phrase-reviews-done{color:var(--color-success)}.subject-cover-fallback{background:linear-gradient(135deg, #f0a8a826 0%, var(--bg-secondary) 100%)!important}.note-card{cursor:default}.note-title{color:var(--text-primary);margin-bottom:2px;font-family:Syne,sans-serif;font-size:.875rem;font-weight:700;line-height:1.3}.note-review-wrap{flex-direction:column;gap:4px;margin-top:4px;display:flex}.note-review-track{background:var(--border-subtle);border-radius:999px;height:2px;overflow:hidden}.note-review-fill{background:linear-gradient(90deg, var(--color-accent-notes), #e870a8);border-radius:999px;height:100%;transition:width .4s}.note-last-reviewed{color:var(--text-muted);letter-spacing:.04em;margin-top:2px;font-size:.6rem}.note-card:before{background:var(--color-accent-notes)}.note-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#06060ebf;justify-content:center;align-items:center;padding:24px;animation:.2s both backdropIn;display:flex;position:fixed;inset:0}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.note-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:560px;max-height:70vh;animation:.25s cubic-bezier(.22,1,.36,1) both modalIn;display:flex;overflow:hidden;box-shadow:0 24px 80px #0009}@keyframes modalIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.note-modal-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 14px;display:flex}.note-modal-title-wrap{flex-direction:column;gap:4px;min-width:0;display:flex}.note-modal-title{color:var(--text-primary);margin:0;font-family:Syne,sans-serif;font-size:1.125rem;font-weight:700;line-height:1.2}.note-modal-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.note-modal-mastered{color:var(--color-success);font-size:.7rem;font-weight:500}.note-modal-reviews{color:var(--color-accent-notes);font-size:.7rem}.note-modal-date{color:var(--text-muted);font-size:.7rem}.note-modal-close{border:1px solid var(--border-subtle);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.note-modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.note-modal-bar-track{background:var(--border-subtle);flex-shrink:0;height:2px}.note-modal-bar-fill{background:linear-gradient(90deg, var(--color-accent-notes), #e870a8);height:100%;transition:width .4s}.note-modal-body{flex:1;padding:20px;overflow-y:auto}.note-modal-body::-webkit-scrollbar{width:3px}.note-modal-body::-webkit-scrollbar-track{background:0 0}.note-modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.note-modal-content{color:var(--text-secondary);white-space:pre-wrap;font-size:.875rem;line-height:1.8}.node-panel-note-scroll{max-height:200px;padding-right:4px;overflow-y:auto}.node-panel-note-scroll::-webkit-scrollbar{width:3px}.node-panel-note-scroll::-webkit-scrollbar-track{background:0 0}.node-panel-note-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media (max-width:768px){.app-content{background:radial-gradient(circle at top,#7c9ef81a,#0000 38%),linear-gradient(#0a0c12,#080a0e);padding:16px;overflow-x:hidden}.topbar{padding:0 14px}.topbar-sync{display:none}.dashboard{background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;padding-bottom:24px;display:grid;position:static;overflow:visible}.dashboard-mobile-header{order:1;grid-column:1/-1;padding:4px 2px 8px;display:block}.dashboard-mobile-header p{color:#77729a;letter-spacing:.14em;text-transform:uppercase;font-size:.65rem}.dashboard-mobile-header h1{color:#f2efff;margin-top:3px;font-family:Syne,sans-serif;font-size:clamp(1.65rem,8vw,2.15rem);font-weight:800;line-height:1.05}.dashboard-mobile-header span{color:#55516f;margin-top:7px;font-size:.75rem;display:block}.brain-preview{display:none!important}.dash-overlay{display:contents}.dash-overlay-left,.dash-overlay-right{text-align:left}.streak-block,.week-progress-block,.jlpt-dashboard,.week-schedule,.recent-activity,.quick-add{background:linear-gradient(150deg,#14151ff7,#0d0e15eb);border:1px solid #7c9ef81c;border-radius:18px;min-width:0;padding:15px;box-shadow:0 12px 32px #0003,inset 0 1px #ffffff06}.streak-block{order:2;grid-column:1;min-height:132px}.week-progress-block{text-align:left;order:2;grid-column:2;min-height:132px}.jlpt-dashboard{order:3;grid-column:1/-1}.streak-num{margin-top:12px;font-size:2.65rem;line-height:1}.week-progress-num{margin-top:13px;font-size:1.9rem}.week-progress-track{margin-top:12px}.jlpt-dashboard-header h2{font-size:1rem}.jlpt-dashboard-summary{margin-top:12px}.jlpt-dashboard-summary strong{font-size:1.65rem}.jlpt-dashboard-level{border-radius:0 0 8px 8px;gap:5px;padding:8px 3px}.jlpt-dashboard-level span,.jlpt-dashboard-level strong{font-size:.68rem}.week-schedule-list{gap:9px;margin-top:10px}.week-schedule-row{justify-content:initial;grid-template-columns:minmax(52px,1fr) auto 44px;display:grid}.week-day-name{width:auto}.activity-list{margin-top:10px}.activity-text{max-width:none}.quick-add{width:auto}.quick-add-grid{grid-template-columns:repeat(4,minmax(0,1fr));place-items:center;gap:10px;width:100%}.quick-btn{background:#ffffff08;border:1px solid #ffffff12;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;padding:0;display:flex;box-shadow:0 6px 18px #0000002e}.quick-btn:active{background:#ffffff0f;border-color:#7c9ef838;transform:scale(.96)}.quick-btn-label{display:none}.quick-btn svg{width:22px;height:22px}.dashboard{isolation:isolate;background:radial-gradient(circle at 88% 3%,#b085f526,#0000 26%),radial-gradient(circle at 4% 24%,#7c9ef81c,#0000 30%),linear-gradient(#0b0b14 0%,#08090f 42%,#07080c 100%);gap:12px;margin:-16px;padding:22px 16px 38px;position:relative;overflow:hidden}.dashboard:before{content:"";z-index:-1;opacity:.22;pointer-events:none;background-image:linear-gradient(#7c9ef814 1px,#0000 1px),linear-gradient(90deg,#7c9ef814 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 42%);mask-image:linear-gradient(#000,#0000 42%)}.dashboard-mobile-header{z-index:2;order:1;padding:2px 3px 9px;position:relative}.dashboard-mobile-kicker{color:#8580a8;letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:7px;font-size:.58rem;font-weight:600;display:flex}.dashboard-mobile-kicker>span{background:#a8d8b9;border-radius:50%;width:6px;height:6px;margin:0;box-shadow:0 0 10px #a8d8b9bf}.dashboard-mobile-heading-row{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:13px;display:flex}.dashboard-mobile-header .dashboard-mobile-heading-row h1{color:#f5f2ff;letter-spacing:-.055em;margin:0;font-size:clamp(2rem,10vw,2.75rem);line-height:.95}.dashboard-mobile-header .dashboard-mobile-heading-row p{color:#77738e;letter-spacing:0;text-transform:none;margin-top:10px;font-size:.73rem;line-height:1.45}.brain-preview{background:#090914;border:1px solid #7c9ef82e;border-radius:26px;order:2;grid-column:1/-1;height:272px;min-height:272px;position:relative;box-shadow:0 24px 60px #0000005c,0 0 45px #7c9ef812,inset 0 1px #ffffff0a;display:block!important}.brain-preview:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#0909140a 36%,#07070eeb 100%),radial-gradient(circle at 50% 32%,#0000 20%,#04040a2e 100%);position:absolute;inset:0}.brain-preview-label{z-index:2;color:#c4bcf27a;align-items:center;font-size:.52rem;display:flex;top:16px;bottom:auto;left:18px}.brain-preview-label:before{content:"";background:#7c9ef8;border-radius:50%;width:5px;height:5px;margin-right:7px;box-shadow:0 0 8px #7c9ef8bf}.brain-preview-bottom{z-index:3;text-align:left;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3px 12px;width:auto;display:grid;bottom:17px;left:18px;right:18px;transform:none}.brain-focus-label{color:#6d688d;grid-column:1;margin:0;font-size:.52rem}.brain-focus-phrase{color:#f0edff;text-overflow:ellipsis;white-space:nowrap;grid-column:1;max-width:210px;margin:0;font-size:.95rem;line-height:1.25;overflow:hidden}.brain-focus-divider{display:none}.brain-preview-bottom .brain-preview-btn{color:#c4ccff;background:#7c9ef817;border-color:#7c9ef852;grid-area:1/2/3;width:auto;margin:0;padding:9px 13px;font-size:.68rem}.streak-block,.week-progress-block,.jlpt-dashboard,.week-schedule,.recent-activity,.quick-add{z-index:1;background:linear-gradient(145deg,#181825f5,#0c0d14f2);border:1px solid #8682b529;border-radius:22px;padding:17px;position:relative;overflow:hidden;box-shadow:0 16px 38px #0000003d,inset 0 1px #ffffff09}.streak-block,.week-progress-block{order:3;min-height:166px}.streak-block:before,.week-progress-block:before{content:"";pointer-events:none;border-radius:50%;width:128px;height:128px;position:absolute;top:-52px;right:-48px}.streak-block:before{background:radial-gradient(circle,#f7e08a26,#0000 68%)}.week-progress-block:before{background:radial-gradient(circle,#7c9ef82b,#0000 68%)}.dashboard-metric-head,.dashboard-section-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dashboard-metric-head .overlay-label,.dashboard-section-head .overlay-label{color:#686481;margin:0 0 4px}.dashboard-metric-icon{color:#9fb2ff;background:#7c9ef814;border:1px solid #7c9ef838;border-radius:9px;flex:0 0 29px;place-items:center;width:29px;height:29px;display:grid}.dashboard-metric-icon-streak{color:#f7e08a;background:#f7e08a14;border-color:#f7e08a38}.dashboard-metric-value{align-items:flex-end;gap:8px;margin-top:16px;display:flex}.dashboard-metric-value>span{color:#55516b;letter-spacing:.08em;text-transform:uppercase;padding-bottom:4px;font-size:.54rem;line-height:1.25;display:block}.streak-num,.week-progress-num{letter-spacing:-.055em;margin:0;font-size:clamp(2.25rem,11vw,3rem)}.week-progress-num{color:#dce3ff}.streak-sub,.week-progress-sub{color:#625e78;margin-top:8px;font-size:.61rem;line-height:1.4}.week-progress-track{background:#ffffff0e;border-radius:999px;height:4px;margin:12px 0 0;overflow:hidden}.week-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#7c9ef8,#b085f5);height:100%;box-shadow:0 0 12px #7c9ef866}.quick-add{order:4;grid-column:1/-1}.dashboard-section-head h2{color:#e8e4ff;letter-spacing:-.02em;font-family:Syne,sans-serif;font-size:.93rem;font-weight:700;display:block}.quick-add-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.quick-btn{border:1px solid var(--quick-color);flex-direction:row;justify-content:flex-start;gap:10px;width:100%;height:auto;min-height:72px;padding:12px;position:relative}@supports (color:color-mix(in lab, red, red)){.quick-btn{border:1px solid color-mix(in srgb, var(--quick-color) 18%, #ffffff0d)}}.quick-btn{background:linear-gradient(135deg, var(--quick-color), #ffffff04);border-radius:15px}@supports (color:color-mix(in lab, red, red)){.quick-btn{background:linear-gradient(135deg, color-mix(in srgb, var(--quick-color) 8%, transparent), #ffffff04)}}.quick-btn{box-shadow:none;text-align:left}.quick-btn:after{content:"↗";color:var(--quick-color);position:absolute;top:10px;right:11px}@supports (color:color-mix(in lab, red, red)){.quick-btn:after{color:color-mix(in srgb, var(--quick-color) 55%, #55516b)}}.quick-btn:after{font-size:.66rem}.quick-btn-icon{flex:0 0 38px;width:38px;height:38px}.quick-btn-label{color:#bcb7d5;letter-spacing:.01em;font-size:.67rem;font-weight:600;display:block}.jlpt-dashboard{background:radial-gradient(circle at 90% 0,#e879f91f,#0000 38%),linear-gradient(145deg,#181625fa,#0c0d14f5);order:5;grid-column:1/-1;padding:19px}.jlpt-dashboard-header{align-items:flex-start}.jlpt-dashboard-header h2{margin-top:2px;font-family:Noto Sans JP,sans-serif;font-size:1.1rem}.jlpt-dashboard-kicker{color:#5f5a79;margin-top:4px;font-size:.59rem;display:block}.jlpt-dashboard-header a{color:#b88bc2;background:#e879f90f;border:1px solid #e879f92e;border-radius:999px;padding:7px 10px}.jlpt-dashboard-summary{gap:9px;margin-top:20px}.jlpt-dashboard-summary strong{letter-spacing:-.05em;font-size:2rem}.jlpt-dashboard-summary span{color:#625d78;max-width:170px;font-size:.61rem}.jlpt-dashboard-levels{gap:7px;margin-top:16px}.jlpt-dashboard-level{border:1px solid var(--dashboard-level-color);gap:6px;padding:10px 3px}@supports (color:color-mix(in lab, red, red)){.jlpt-dashboard-level{border:1px solid color-mix(in srgb, var(--dashboard-level-color) 19%, transparent)}}.jlpt-dashboard-level{background:var(--dashboard-level-color);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.jlpt-dashboard-level{background:color-mix(in srgb, var(--dashboard-level-color) 7%, #ffffff03)}}.jlpt-dashboard-level span{font-size:.64rem}.jlpt-dashboard-level strong{color:#aaa5bf;font-size:.67rem}.week-schedule{order:6;grid-column:1/-1}.dashboard-section-count,.dashboard-live-badge{color:#77729a;letter-spacing:.08em;text-transform:uppercase;background:#7c9ef80d;border:1px solid #7c9ef824;border-radius:999px;padding:5px 8px;font-size:.54rem;font-weight:600}.dashboard-section-count{display:inline-flex}.dashboard-live-badge{align-items:center;gap:5px;display:inline-flex}.dashboard-live-badge i{background:#a8d8b9;border-radius:50%;width:5px;height:5px;box-shadow:0 0 7px #a8d8b9a6}.week-schedule-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:17px;display:grid}.week-schedule-row{flex-direction:column;justify-content:flex-start;gap:7px;min-width:0;display:flex}.week-day-name{text-align:center;width:auto;font-size:.54rem}.week-dot{width:6px;height:6px}.week-pill{border-radius:999px;width:100%;height:6px}.recent-activity{order:7;grid-column:1/-1;margin:0}.activity-list{gap:7px;margin-top:14px}.activity-item{background:#ffffff05;border:1px solid #ffffff0b;border-radius:13px;align-items:center;gap:10px;padding:10px 11px}.activity-dot{width:8px;height:8px;margin:0;box-shadow:0 0 8px}.activity-text{color:#c8c3df;font-size:.72rem}.activity-sub,.activity-time{color:#5e5972}@media (max-width:370px){.dashboard{padding-left:12px;padding-right:12px}.streak-block,.week-progress-block{padding:14px}.dashboard-metric-value>span{display:none}.brain-preview-bottom .brain-preview-btn{padding-left:10px;padding-right:10px}}.schedule-page{gap:16px}.schedule-header{flex-direction:column;align-items:flex-start;gap:10px}.schedule-title{font-size:1.5rem}.schedule-energy{background:linear-gradient(#12141cf5,#0e1016e0);border:1px solid #7c9ef81f;border-radius:16px;flex-wrap:wrap;justify-content:space-between;width:100%;padding:12px 14px}.schedule-energy-divider{display:none}.task-list-wrap{background:linear-gradient(#12141cf5,#0e1016e0);border:1px solid #7c9ef81f;border-radius:18px;padding:16px}.task-list-header{flex-direction:column;align-items:flex-start}.task-item{padding:10px 12px}.week-cal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.week-cal-day{padding:10px 4px}.anime-row-wrapper{flex-direction:column;align-items:stretch;padding:0;display:flex}.anime-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.anime-card{width:100%}.anime-card-hero{grid-column:1/-1}.anime-page-btn{justify-content:center;align-items:center;width:auto;height:auto;margin-top:12px;display:flex;position:static}.anime-page-btn-prev,.anime-page-btn-next{position:static}.anime-row-wrapper{gap:10px}.anime-page-btn-prev:before,.anime-page-btn-next:before{font-size:1.2rem}.phrase-grid{grid-template-columns:1fr}.phrase-section-header{flex-direction:column;align-items:flex-start;gap:10px}.phrase-filters{flex-direction:column;gap:8px;width:100%}.phrase-search-wrap,.anime-filter-wrap,.phrase-search{width:100%}.vocab-header-stats{display:none}}.topbar-install{display:none}.denied-root{color:#e8e4d9;perspective:1000px;background:#07070e;justify-content:center;align-items:center;min-height:100vh;font-family:DM Sans,sans-serif;display:flex;position:relative;overflow:hidden}.denied-canvas{z-index:0;pointer-events:none;position:absolute;inset:0}.denied-bg-kanji-wrap{perspective:600px;pointer-events:none;z-index:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.denied-bg-kanji{color:#0000;-webkit-text-stroke:1px #dc3c3c0a;-webkit-user-select:none;user-select:none;filter:blur(.5px);font-size:72vw;font-weight:900;line-height:1;animation:12s ease-in-out infinite alternate deniedKanjiDrift;transform:rotateX(18deg)rotateY(-8deg)translateZ(-80px)}@keyframes deniedKanjiDrift{0%{transform:rotateX(18deg)rotateY(-8deg)translateZ(-80px)}to{transform:rotateX(22deg)rotateY(4deg)translateZ(-60px)}}.denied-scanlines{pointer-events:none;z-index:1;background:repeating-linear-gradient(#0000,#0000 3px,#ffffff02 3px 4px);position:absolute;inset:0}.denied-vignette{pointer-events:none;z-index:2;background:radial-gradient(#0000 30%,#07070ee6 100%);position:absolute;inset:0}.denied-content{z-index:10;text-align:center;transform-style:preserve-3d;flex-direction:column;align-items:center;animation:.8s cubic-bezier(.22,1,.36,1) both deniedFadeUp;display:flex;position:relative}@keyframes deniedFadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.denied-stamp-wrap{transform-style:preserve-3d;margin-bottom:32px;animation:.7s cubic-bezier(.34,1.56,.64,1) .2s both deniedStampIn}@keyframes deniedStampIn{0%{opacity:0;transform:scale(.3)rotateY(-90deg)}to{opacity:1;transform:scale(1)rotateY(0)}}.denied-stamp{width:110px;height:110px;transform-style:preserve-3d;border-radius:50%;justify-content:center;align-items:center;animation:4s ease-in-out infinite deniedStampFloat;display:flex;position:relative}@keyframes deniedStampFloat{0%,to{transform:translateY(0)rotateX(0)rotateY(0)}25%{transform:translateY(-6px)rotateX(4deg)rotateY(3deg)}75%{transform:translateY(-3px)rotateX(-3deg)rotateY(-4deg)}}.denied-stamp-ring{border:2px solid #dc3c3c8c;border-radius:50%;animation:3s ease-in-out infinite deniedRingPulse;position:absolute;inset:0;box-shadow:0 0 0 1px #dc3c3c1a,0 0 20px #dc3c3c33,0 0 60px #dc3c3c14,inset 0 0 20px #dc3c3c0f}.denied-stamp:before{content:"";border:1px solid #dc3c3c2e;border-radius:50%;position:absolute;inset:8px}@keyframes deniedRingPulse{0%,to{box-shadow:0 0 0 1px #dc3c3c1a,0 0 20px #dc3c3c33,0 0 60px #dc3c3c14,inset 0 0 20px #dc3c3c0f}50%{box-shadow:0 0 0 1px #dc3c3c26,0 0 32px #dc3c3c52,0 0 90px #dc3c3c1f,inset 0 0 28px #dc3c3c1a}}.denied-stamp-shadow-1{border:2px solid #dc3c3c1f;border-radius:50%;position:absolute;inset:0;transform:translateZ(-8px)scale(1.04)}.denied-stamp-shadow-2{border:2px solid #dc3c3c0f;border-radius:50%;position:absolute;inset:0;transform:translateZ(-16px)scale(1.08)}.denied-stamp-kanji{color:#dc3c3cd9;text-shadow:0 0 12px #dc3c3c99,0 0 32px #dc3c3c4d,2px 2px #8c141466,4px 4px #640a0a33;font-size:2.8rem;line-height:1;display:block;transform:translateZ(12px)}.denied-eyebrow{letter-spacing:.22em;color:#dc3c3c80;text-transform:uppercase;text-shadow:0 0 20px #dc3c3c33;margin-bottom:10px;font-size:.58rem;animation:.6s .35s both deniedFadeUp}.denied-title-jp{color:#e8e4d9;letter-spacing:.14em;text-shadow:0 1px #ffffff1a,0 -1px #00000080,0 4px 20px #0006;margin-bottom:6px;font-size:2rem;font-weight:300;animation:.6s .42s both deniedFadeUp}.denied-title-en{color:#2a2838;letter-spacing:.16em;text-transform:uppercase;margin-bottom:36px;font-family:Syne,sans-serif;font-size:.8rem;font-weight:700;animation:.6s .48s both deniedFadeUp}.denied-divider{background:linear-gradient(90deg,#0000,#dc3c3c59,#0000);width:48px;height:1px;margin-bottom:24px;animation:.6s .52s both deniedFadeUp}.denied-message{color:#2e2c48;max-width:280px;margin-bottom:36px;font-size:.8rem;line-height:1.9;animation:.6s .56s both deniedFadeUp}.denied-message em{color:#3e3c58;margin-top:4px;font-style:normal;display:block}.denied-back-btn{color:#3a3858;cursor:pointer;background:#ffffff05;border:1px solid #ffffff12;border-radius:999px;align-items:center;gap:8px;padding:11px 28px;font-family:DM Sans,sans-serif;font-size:.78rem;transition:all .2s;animation:.6s .62s both deniedFadeUp;display:inline-flex;transform:translateY(0);box-shadow:0 2px #0006,0 4px 12px #0000004d,inset 0 1px #ffffff0a}.denied-back-btn:hover{color:#dc5050b3;border-color:#dc3c3c47;transform:translateY(1px);box-shadow:0 1px #0006,0 2px 8px #dc3c3c1a,inset 0 1px #ffffff0a}.denied-footer{color:#ffffff0d;letter-spacing:.2em;white-space:nowrap;pointer-events:none;z-index:3;font-size:.55rem;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.dashboard.dashboard-home{z-index:1;background:radial-gradient(circle at 18% 9%,#2052aa3d,#0000 34%),radial-gradient(circle at 78% 5%,#6d47962b,#0000 31%),radial-gradient(circle at 91% 88%,#75365d29,#0000 31%),linear-gradient(135deg,#07101d 0%,#0b0d18 48%,#12101d 100%);min-height:calc(100vh - 56px);margin:-28px -32px;padding:34px 48px 44px;font-family:DM Sans,Noto Sans JP,sans-serif;position:relative;inset:auto;overflow:hidden}.dashboard.dashboard-home:before{content:"";pointer-events:none;opacity:.82;transform-origin:50%;will-change:transform, opacity;background:radial-gradient(circle at 20% 24%,#2667da3b 0%,#0000 31%),radial-gradient(circle at 76% 18%,#8952c12e 0%,#0000 29%),radial-gradient(circle at 82% 78%,#a1426f29 0%,#0000 32%),radial-gradient(circle at 36% 82%,#2d639e21 0%,#0000 28%);animation:20s ease-in-out infinite alternate dashboard-gradient-drift;position:absolute;inset:-28%;transform:translate(-3%,-2%)scale(1.04)}.dashboard.dashboard-home:after{content:"";pointer-events:none;opacity:.25;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");position:absolute;inset:0}@keyframes dashboard-gradient-drift{0%{opacity:.72;transform:translate(-4%,-3%)scale(1.04)rotate(-1deg)}45%{opacity:.92;transform:translate(3%,1%)scale(1.1)rotate(1.5deg)}to{opacity:.78;transform:translate(-1%,4%)scale(1.06)rotate(-.5deg)}}@media (prefers-reduced-motion:reduce){.dashboard.dashboard-home:before{animation:none;transform:none}}.dashboard-home-inner{z-index:1;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;width:min(100%,1316px);margin:0 auto;display:grid;position:relative}.home-header{grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:32px;min-height:150px;padding:2px 2px 22px;display:flex}.home-eyebrow,.dashboard-home .overlay-label{color:#8daefb;letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:.68rem;font-weight:600}.home-header h1{color:#f2f0ec;letter-spacing:-.045em;margin:0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(2.35rem,3.4vw,3.4rem);font-weight:700;line-height:1.1}.home-subtitle{color:#9a98ac;margin:12px 0 0;font-size:.88rem}.home-calendar-link{color:#eceaf2;background:#ffffff04;border:1px solid #e9e8f694;border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:50px;margin-top:25px;padding:0 20px;font-size:.78rem;text-decoration:none;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.home-calendar-link:hover{background:#7c9ef814;border-color:#7c9ef8e6;transform:translateY(-1px)}.home-focus-card{flex-direction:column;grid-column:1/8;justify-content:space-between;min-height:380px;padding:30px 32px 26px;display:flex;position:relative;overflow:hidden}.home-focus-content,.home-focus-progress{z-index:2;position:relative}.home-card-label{color:#a9c0ff;align-items:center;gap:10px;margin:0;font-size:.9rem;font-weight:600;display:flex}.home-focus-card h2{color:#f5f3ee;letter-spacing:-.04em;max-width:590px;margin:24px 0 0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(1.85rem,2.7vw,2.75rem);font-weight:700;line-height:1.18}.home-focus-description{color:#c2cbe7;max-width:540px;margin:10px 0 0;font-size:.84rem;line-height:1.65}.home-time-pill{color:#eef2ff;background:#ffffff09;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:7px;width:fit-content;margin-top:17px;padding:6px 12px;font-size:.74rem;display:inline-flex}.home-primary-action{color:#fff;background:linear-gradient(110deg,#7097ff,#4e79f3);border-radius:10px;align-items:center;gap:10px;width:fit-content;min-height:48px;margin-top:18px;padding:0 23px;font-size:.82rem;font-weight:600;text-decoration:none;transition:filter .18s,transform .18s;display:inline-flex;box-shadow:0 12px 30px #2852cb57}.home-primary-action:hover{filter:brightness(1.08);transform:translateY(-1px)}.home-focus-progress{margin-top:28px}.home-focus-progress-head{color:#9faed8;justify-content:space-between;align-items:center;gap:16px;margin-bottom:9px;font-size:.61rem;display:flex}.home-focus-progress-head span{letter-spacing:.1em}.home-focus-progress-head strong{color:#d5dcf3;font-weight:500}.home-progress-track{background:#dae1f738;border-radius:999px;height:7px;overflow:hidden}.home-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#6f96ff,#769fff);height:100%;transition:width .55s;display:block;box-shadow:0 0 14px #7c9ef861}.home-metrics-column{grid-column:8/13;grid-template-rows:1fr .68fr;gap:16px;display:grid}.dashboard-home .home-focus-card,.dashboard-home .home-card,.dashboard-home .jlpt-dashboard,.dashboard-home .quick-add,.dashboard-home .recent-activity{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle at 8% 0,#2052aa24,#0000 42%),radial-gradient(circle at 100% 100%,#75365d1c,#0000 44%),linear-gradient(135deg,#07101df0 0%,#0b0d18eb 48%,#12101ded 100%);border:1px solid #8e91a54f;border-radius:18px;min-width:0;position:relative;box-shadow:0 18px 50px #0003,inset 0 1px #ffffff06}.home-card{padding:25px 28px}.home-card-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.home-card-heading h2,.dashboard-home .dashboard-section-head h2,.dashboard-home .jlpt-dashboard-header h2{color:#f0eef2;letter-spacing:-.02em;align-items:center;gap:10px;margin:0;font-family:DM Sans,Noto Sans JP,sans-serif;font-size:1rem;font-weight:600;display:flex}.home-rhythm-card .home-card-heading h2{color:#f5f0e8}.home-rhythm-card .home-card-heading h2 svg{color:#f7c267;fill:#f7c267}.home-rhythm-body{grid-template-columns:minmax(120px,.78fr) 1.22fr;align-items:end;gap:24px;margin-top:17px;display:grid}.home-streak-value{color:#f5c167;letter-spacing:-.06em;font-family:Syne,Noto Sans JP,sans-serif;font-size:3rem;font-weight:700;line-height:.98;display:block}.home-streak-unit{color:#f0c36f;margin-top:5px;font-size:.8rem;display:block}.home-rhythm-body p,.home-week-card>p{color:#a4a2ae;margin:13px 0 0;font-size:.72rem;line-height:1.55}.home-week-dots{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.home-week-dots span{color:#9a98a5;place-items:center;gap:10px;display:grid}.home-week-dots small{font-size:.62rem;font-weight:500}.home-week-dots i{background:0 0;border:1px solid #e0dacf7a;border-radius:50%;width:17px;height:17px}.home-week-dots .is-active i{background:#f4bf64;border-color:#f4bf64;box-shadow:0 0 12px #f4bf6438}.home-week-card{flex-direction:column;justify-content:center;display:flex}.home-week-card .home-card-heading h2 svg{color:#7c9ef8}.home-week-summary{grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:34px;margin-top:15px;display:grid}.home-week-summary>strong{color:#7fa3ff;letter-spacing:-.055em;font-family:Syne,sans-serif;font-size:2.25rem;font-weight:700;line-height:1}.home-continue-card{grid-column:1/6;min-height:244px}.home-card-heading-link>a,.dashboard-home .jlpt-dashboard-header>a{color:#9da8c8;place-items:center;text-decoration:none;display:grid}.home-continue-list{gap:9px;margin-top:17px;display:grid}.home-continue-row{color:#dcd9df;background:#ffffff03;border:1px solid #979aad47;border-radius:10px;grid-template-columns:auto minmax(0,1fr) minmax(92px,.74fr) auto;align-items:center;gap:12px;min-height:69px;padding:11px 14px;text-decoration:none;transition:border-color .18s,background .18s;display:grid}.home-continue-row:hover{background:#7c9ef80a;border-color:#7c9ef880}.home-continue-dot{border-radius:50%;width:9px;height:9px;box-shadow:0 0 9px}@supports (color:color-mix(in lab, red, red)){.home-continue-dot{box-shadow:0 0 9px color-mix(in srgb, currentColor 50%, transparent)}}.home-continue-copy{gap:3px;min-width:0;display:grid}.home-continue-copy strong{color:#eae7e9;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:500;overflow:hidden}.home-continue-copy small{color:#777789;font-size:.63rem}.home-continue-meter{gap:6px;display:grid}.home-continue-meter>strong{color:#9ab4a7;justify-self:end;font-size:.66rem;font-weight:500}.home-continue-meter>i{background:#ffffff17;border-radius:999px;height:5px;overflow:hidden}.home-continue-meter b{border-radius:inherit;height:100%;display:block}.home-card-empty{color:#777789;margin:24px 0 0;font-size:.75rem}.dashboard-home .jlpt-dashboard{text-align:left;grid-column:6/9;min-height:244px;padding:25px 23px}.dashboard-home .jlpt-dashboard-header{align-items:flex-start}.dashboard-home .jlpt-dashboard-header h2 svg{color:#aebeff}.dashboard-home .jlpt-dashboard-header>a{background:0 0;border:0;padding:0}.dashboard-home .jlpt-dashboard-kicker{color:#777789;margin-top:5px;font-size:.62rem;display:block}.dashboard-home .jlpt-dashboard-summary{align-items:baseline;gap:8px;margin-top:21px;display:flex}.dashboard-home .jlpt-dashboard-summary strong{color:#83a5ff;font-family:Syne,sans-serif;font-size:2.15rem}.dashboard-home .jlpt-dashboard-summary span{color:#858392;font-size:.65rem}.dashboard-home .jlpt-dashboard-levels{gap:6px;margin-top:17px}.dashboard-home .jlpt-dashboard-level{border:1px solid var(--dashboard-level-color);min-height:47px;padding:7px 2px}@supports (color:color-mix(in lab, red, red)){.dashboard-home .jlpt-dashboard-level{border:1px solid color-mix(in srgb, var(--dashboard-level-color) 35%, transparent)}}.dashboard-home .jlpt-dashboard-level{background:var(--dashboard-level-color);border-radius:8px;justify-content:center}@supports (color:color-mix(in lab, red, red)){.dashboard-home .jlpt-dashboard-level{background:color-mix(in srgb, var(--dashboard-level-color) 7%, transparent)}}.dashboard-home .quick-add{grid-column:9/13;width:auto;min-height:244px;padding:25px 23px}.dashboard-home .quick-add-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:18px;display:grid}.dashboard-home .quick-btn{background:#ffffff03;border:1px solid #979aad47;border-radius:10px;flex-direction:row;justify-content:flex-start;gap:11px;width:100%;min-height:67px;padding:11px 13px}.dashboard-home .quick-btn:hover{border-color:var(--quick-color)}@supports (color:color-mix(in lab, red, red)){.dashboard-home .quick-btn:hover{border-color:color-mix(in srgb, var(--quick-color) 56%, transparent)}}.dashboard-home .quick-btn:hover{background:var(--quick-color)}@supports (color:color-mix(in lab, red, red)){.dashboard-home .quick-btn:hover{background:color-mix(in srgb, var(--quick-color) 7%, transparent)}}.dashboard-home .quick-btn-icon{background:0 0;border:0;border-radius:7px;flex:0 0 34px;width:34px;height:34px}.dashboard-home .quick-btn-label{color:#e4e1e5;font-size:.75rem;font-weight:500;display:block}.dashboard-home .recent-activity{grid-column:1/-1;min-height:110px;margin:0;padding:22px 28px 18px}.dashboard-home .recent-activity .dashboard-section-head{justify-content:space-between;align-items:center;display:flex}.dashboard-home .recent-activity .overlay-label{display:none}.home-activity-link{color:#83a5ff;font-size:.68rem;text-decoration:none}.dashboard-home .activity-list{border-top:1px solid #fff1;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:15px;display:grid}.dashboard-home .activity-item{background:0 0;border:0;border-right:1px solid #ffffff0d;border-radius:0;min-width:0;padding:13px 14px 0}.dashboard-home .activity-item:last-child{border-right:0}.dashboard-home .activity-text{color:#c9c6ce;max-width:100%}.dashboard-home .activity-sub,.dashboard-home .activity-time{color:#747382}@media (max-width:1100px){.dashboard.dashboard-home{padding-left:32px;padding-right:32px}.home-header{min-height:132px}.home-focus-card{grid-column:1/8}.home-metrics-column{grid-column:8/13}.home-rhythm-body{grid-template-columns:1fr}.home-week-dots{max-width:280px}.home-continue-card{grid-column:1/7}.dashboard-home .jlpt-dashboard{grid-column:7/13}.dashboard-home .quick-add{grid-column:1/13}.dashboard-home .quick-add-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:768px){.dashboard.dashboard-home{min-height:calc(100vh - 56px);margin:-16px;padding:23px 16px 38px;display:block;overflow:hidden}.dashboard-home-inner{grid-template-columns:1fr;gap:13px;display:grid}.home-header,.home-focus-card,.home-metrics-column,.home-continue-card,.dashboard-home .jlpt-dashboard,.dashboard-home .quick-add,.dashboard-home .recent-activity{grid-column:1}.home-header{align-items:flex-end;min-height:auto;padding:2px 2px 11px}.home-header h1{font-size:clamp(1.75rem,8.8vw,2.35rem)}.home-subtitle{max-width:250px;font-size:.68rem;line-height:1.55}.home-calendar-link{min-height:42px;margin-top:0;padding:0 13px;font-size:.68rem}.home-focus-card{min-height:360px;padding:24px 22px 22px}.home-focus-card h2{margin-top:20px;font-size:clamp(1.55rem,7vw,2.15rem)}.home-focus-description{font-size:.74rem}.home-primary-action{min-height:45px}.home-metrics-column{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.home-card{padding:20px}.home-rhythm-body{display:block}.home-week-dots{gap:5px;margin-top:18px}.home-week-dots i{width:11px;height:11px}.home-week-summary{grid-template-columns:1fr;gap:13px}.home-continue-row{grid-template-columns:auto minmax(0,1fr) auto}.home-continue-meter{display:none}.dashboard-home .quick-add-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-home .recent-activity{padding:20px}.dashboard-home .activity-list{grid-template-columns:1fr}.dashboard-home .activity-item{border-bottom:1px solid #ffffff0d;border-right:0;padding:12px 0}}@media (max-width:460px){.home-header{flex-direction:column;align-items:flex-start;gap:13px}.home-calendar-link{align-self:stretch}.home-metrics-column{grid-template-columns:1fr}}.jlpt-page{--jlpt-level:var(--color-accent);flex-direction:column;gap:22px;width:min(100%,1440px);margin:0 auto;padding-bottom:40px;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;display:flex;position:relative}.jlpt-page:before{content:"";background:radial-gradient(ellipse, var(--jlpt-level), transparent 70%);width:min(55vw,720px);height:320px;position:absolute;top:-80px;right:-40px}@supports (color:color-mix(in lab, red, red)){.jlpt-page:before{background:radial-gradient(ellipse, color-mix(in srgb, var(--jlpt-level) 8%, transparent), transparent 70%)}}.jlpt-page:before{pointer-events:none;opacity:.75}.jlpt-header{z-index:1;justify-content:space-between;align-items:flex-end;gap:24px;display:flex;position:relative}.jlpt-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--jlpt-level);margin:0 0 9px;font-size:.62rem;font-weight:500}.jlpt-title{letter-spacing:-.04em;color:var(--text-primary);margin:0;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:clamp(2.1rem,4.5vw,4rem);font-weight:700;line-height:1}.jlpt-subtitle{max-width:540px;color:var(--text-secondary);margin:12px 0 0;font-size:.82rem;line-height:1.5}.jlpt-overview{border:1px solid var(--jlpt-level);flex-shrink:0;align-items:center;gap:18px;padding:12px 17px;display:flex}@supports (color:color-mix(in lab, red, red)){.jlpt-overview{border:1px solid color-mix(in srgb, var(--jlpt-level) 14%, var(--border-subtle))}}.jlpt-overview{background:var(--jlpt-level);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.jlpt-overview{background:color-mix(in srgb, var(--jlpt-level) 4%, var(--bg-card))}}.jlpt-overview-item{flex-direction:column;gap:3px;display:flex}.jlpt-overview-item strong{color:var(--jlpt-level);font-family:Syne,sans-serif;font-size:1.35rem;line-height:1}.jlpt-overview-item span{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);white-space:nowrap;font-size:.56rem}.jlpt-overview-divider{background:var(--border-subtle);width:1px;height:34px}.jlpt-level-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--jlpt-level), var(--bg-card));overflow:hidden}@supports (color:color-mix(in lab, red, red)){.jlpt-level-card{background:linear-gradient(135deg, color-mix(in srgb, var(--jlpt-level) 5%, var(--bg-card)), var(--bg-card))}}.jlpt-level-card{z-index:1;position:relative}.jlpt-level-tabs{border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.jlpt-level-tab{border:0;border-right:1px solid var(--border-subtle);min-width:0;min-height:65px;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:#ffffff01;align-items:center;gap:10px;padding:14px 18px;transition:background .2s,color .2s;display:flex;position:relative}.jlpt-level-tab:last-child{border-right:0}.jlpt-level-tab:after{content:"";background:var(--jlpt-tab-color);height:2px;box-shadow:0 0 12px var(--jlpt-tab-color);border-radius:999px 999px 0 0;position:absolute;bottom:-1px;left:18px;right:18px}@supports (color:color-mix(in lab, red, red)){.jlpt-level-tab:after{box-shadow:0 0 12px color-mix(in srgb, var(--jlpt-tab-color) 50%, transparent)}}.jlpt-level-tab:after{transition:transform .22s;transform:scaleX(0)}.jlpt-level-tab:hover{background:var(--jlpt-tab-color)}@supports (color:color-mix(in lab, red, red)){.jlpt-level-tab:hover{background:color-mix(in srgb, var(--jlpt-tab-color) 4%, transparent)}}.jlpt-level-tab:hover{color:var(--text-secondary)}.jlpt-level-tab-active{background:var(--jlpt-tab-color)}@supports (color:color-mix(in lab, red, red)){.jlpt-level-tab-active{background:color-mix(in srgb, var(--jlpt-tab-color) 7%, transparent)}}.jlpt-level-tab-active{color:var(--text-primary)}.jlpt-level-tab-active:after{transform:scaleX(1)}.jlpt-level-tab:focus-visible,.jlpt-section-link:focus-visible,.jlpt-search:focus-within,.jlpt-no-results button:focus-visible{outline:2px solid var(--jlpt-level);outline-offset:-2px}.jlpt-level-code{color:var(--jlpt-tab-color);font-family:Syne,sans-serif;font-size:1.05rem;font-weight:800}.jlpt-level-tab-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.69rem;overflow:hidden}.jlpt-level-summary{justify-content:space-between;align-items:center;gap:24px;min-height:126px;padding:22px 24px;display:flex}.jlpt-level-kicker{letter-spacing:.14em;text-transform:uppercase;margin:0 0 5px;color:var(--jlpt-level)!important;font-size:.56rem!important}.jlpt-level-summary h2{letter-spacing:-.025em;margin:0 0 6px;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:1.2rem;font-weight:700}.jlpt-level-summary p{max-width:720px;color:var(--text-secondary);margin:0;font-size:.78rem;line-height:1.55}.jlpt-level-count{border:1px solid var(--jlpt-level);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:84px;height:72px;display:flex}@supports (color:color-mix(in lab, red, red)){.jlpt-level-count{border:1px solid color-mix(in srgb, var(--jlpt-level) 16%, var(--border-subtle))}}.jlpt-level-count{background:var(--jlpt-level);border-radius:13px}@supports (color:color-mix(in lab, red, red)){.jlpt-level-count{background:color-mix(in srgb, var(--jlpt-level) 4%, #00000026)}}.jlpt-level-count strong{color:var(--jlpt-level);font-family:Syne,sans-serif;font-size:1.55rem;line-height:1}.jlpt-level-count span{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin-top:5px;font-size:.54rem}.jlpt-toolbar{z-index:1;justify-content:space-between;align-items:center;gap:14px;display:flex;position:relative}.jlpt-section-nav{scrollbar-width:none;align-items:center;gap:6px;min-width:0;padding:2px;display:flex;overflow-x:auto}.jlpt-section-nav::-webkit-scrollbar{display:none}.jlpt-section-link{border:1px solid var(--border-subtle);min-height:34px;color:var(--text-secondary);background:#ffffff03;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 10px;font-size:.66rem;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.jlpt-section-link>span{color:var(--jlpt-level)}.jlpt-section-link small{background:var(--jlpt-level);border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.jlpt-section-link small{background:color-mix(in srgb, var(--jlpt-level) 8%, var(--bg-secondary))}}.jlpt-section-link small{color:var(--text-muted);font-size:.52rem}.jlpt-section-link:hover{border-color:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-section-link:hover{border-color:color-mix(in srgb, var(--jlpt-level) 28%, var(--border))}}.jlpt-section-link:hover{background:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-section-link:hover{background:color-mix(in srgb, var(--jlpt-level) 5%, transparent)}}.jlpt-section-link:hover{color:var(--text-primary)}.jlpt-search{border:1px solid var(--border-subtle);background:var(--bg-card);width:min(360px,36vw);min-height:38px;color:var(--text-muted);border-radius:10px;flex-shrink:0;align-items:center;gap:8px;padding:0 11px;transition:border-color .15s,box-shadow .15s;display:flex}.jlpt-search:focus-within{border-color:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-search:focus-within{border-color:color-mix(in srgb, var(--jlpt-level) 45%, var(--border))}}.jlpt-search:focus-within{box-shadow:0 0 0 3px var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-search:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--jlpt-level) 8%, transparent)}}.jlpt-search:focus-within{outline:none}.jlpt-search-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.jlpt-search input{width:100%;min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;font-family:inherit;font-size:.7rem}.jlpt-search input::placeholder{color:var(--text-muted)}.jlpt-search input::-webkit-search-cancel-button{display:none}.jlpt-search button{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.jlpt-search button:hover{color:var(--text-primary);background:#ffffff0a}.jlpt-search-result{color:var(--text-muted);margin:-12px 0 -6px;font-size:.66rem}.jlpt-sections{flex-direction:column;gap:18px;display:flex}.jlpt-level-loading{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);min-height:220px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.72rem;display:flex}.jlpt-level-loading .brain-loading-spinner{border-top-color:var(--jlpt-level);width:22px;height:22px}.jlpt-level-load-error{border-color:#fb4d6d}@supports (color:color-mix(in lab, red, red)){.jlpt-level-load-error{border-color:color-mix(in srgb, #fb4d6d 30%, var(--border-subtle))}}.jlpt-level-load-error svg{color:#fb4d6d}.jlpt-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);scroll-margin-top:76px;position:relative;overflow:hidden}.jlpt-section:before{content:"";background:linear-gradient(to bottom, var(--jlpt-level), transparent 75%);opacity:.7;width:2px;position:absolute;top:0;bottom:0;left:0}.jlpt-section-header{border-bottom:1px solid var(--border-subtle);background:linear-gradient(90deg, var(--jlpt-level), transparent 45%);align-items:center;gap:14px;min-height:82px;padding:15px 20px;display:flex}@supports (color:color-mix(in lab, red, red)){.jlpt-section-header{background:linear-gradient(90deg, color-mix(in srgb, var(--jlpt-level) 4%, transparent), transparent 45%)}}.jlpt-section-index{color:var(--jlpt-level);font-family:Syne,sans-serif;font-size:.68rem}@supports (color:color-mix(in lab, red, red)){.jlpt-section-index{color:color-mix(in srgb, var(--jlpt-level) 70%, var(--text-muted))}}.jlpt-section-index{letter-spacing:.08em}.jlpt-section-heading{flex:1;min-width:0}.jlpt-section-title-row{align-items:baseline;gap:9px;display:flex}.jlpt-section-title-row h2{letter-spacing:-.02em;margin:0;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:1rem;font-weight:700}.jlpt-section-title-row span{color:var(--jlpt-level);font-size:.75rem}.jlpt-section-heading>p{color:var(--text-muted);margin:4px 0 0;font-size:.67rem;line-height:1.45}.jlpt-section-total{border:1px solid var(--border-subtle);color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:5px 8px;font-size:.55rem}.jlpt-table-wrap{width:100%;overflow-x:auto}.jlpt-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:920px}.jlpt-table th,.jlpt-table td{text-align:left;vertical-align:top}.jlpt-table th{border-bottom:1px solid var(--border-subtle);color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;background:#0000001f;padding:10px 15px;font-size:.55rem;font-weight:500}.jlpt-table th:first-child{width:15%}.jlpt-table th:nth-child(2){width:21%}.jlpt-table th:nth-child(3){width:25%}.jlpt-table th:nth-child(4){width:39%}.jlpt-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);padding:17px 15px 18px;font-size:.73rem}.jlpt-table td.jlpt-table-empty{color:var(--text-muted);text-align:center;padding:28px 16px}.jlpt-table tbody tr:last-child td{border-bottom:0}.jlpt-table tbody tr{transition:background .15s}.jlpt-table tbody tr:hover{background:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-table tbody tr:hover{background:color-mix(in srgb, var(--jlpt-level) 2.8%, transparent)}}.jlpt-entry-label{color:var(--text-primary);font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:.86rem;font-weight:700;line-height:1.45;display:block}.jlpt-entry-tags{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.jlpt-entry-tags span{background:var(--jlpt-level);border-radius:999px;padding:3px 6px}@supports (color:color-mix(in lab, red, red)){.jlpt-entry-tags span{background:color-mix(in srgb, var(--jlpt-level) 7%, var(--bg-secondary))}}.jlpt-entry-tags span{color:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-entry-tags span{color:color-mix(in srgb, var(--jlpt-level) 70%, var(--text-muted))}}.jlpt-entry-tags span{font-size:.52rem}.jlpt-entry-reading,.jlpt-entry-structure,.jlpt-entry-meaning,.jlpt-entry-note,.jlpt-example p{margin:0}.jlpt-entry-reading{color:var(--jlpt-level);font-size:.76rem;line-height:1.5}.jlpt-entry-structure{border:1px solid var(--jlpt-level);width:fit-content;margin-top:5px;padding:4px 7px}@supports (color:color-mix(in lab, red, red)){.jlpt-entry-structure{border:1px solid color-mix(in srgb, var(--jlpt-level) 12%, var(--border-subtle))}}.jlpt-entry-structure{color:var(--text-secondary);background:#00000026;border-radius:6px;font-family:inherit;font-size:.65rem;line-height:1.5}.jlpt-entry-meaning{color:var(--text-secondary);line-height:1.6}.jlpt-entry-note{border-left:1px solid var(--jlpt-level);margin-top:8px;padding-left:8px}@supports (color:color-mix(in lab, red, red)){.jlpt-entry-note{border-left:1px solid color-mix(in srgb, var(--jlpt-level) 30%, var(--border))}}.jlpt-entry-note{color:var(--text-muted);font-size:.62rem;line-height:1.5}.jlpt-empty-cell{color:var(--text-muted)}.jlpt-examples{flex-direction:column;gap:12px;display:flex}.jlpt-example+.jlpt-example{border-top:1px dashed var(--border-subtle);padding-top:12px}.jlpt-example-japanese{color:var(--text-primary);font-size:.84rem;line-height:1.55}.jlpt-example-reading{color:var(--jlpt-level);margin-top:3px!important}@supports (color:color-mix(in lab, red, red)){.jlpt-example-reading{color:color-mix(in srgb, var(--jlpt-level) 72%, var(--text-muted))}}.jlpt-example-reading{font-size:.62rem;line-height:1.5}.jlpt-example-translation{color:var(--text-muted);font-size:.66rem;line-height:1.5;margin-top:5px!important}.jlpt-no-results{border:1px dashed var(--border);border-radius:var(--radius-lg);min-height:260px;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:36px 20px;display:flex}.jlpt-no-results h2{margin:12px 0 5px;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:1rem}.jlpt-no-results p{margin:0 0 16px;font-size:.72rem}.jlpt-no-results button{border:1px solid var(--jlpt-level);padding:7px 11px}@supports (color:color-mix(in lab, red, red)){.jlpt-no-results button{border:1px solid color-mix(in srgb, var(--jlpt-level) 25%, var(--border))}}.jlpt-no-results button{background:var(--jlpt-level);border-radius:7px}@supports (color:color-mix(in lab, red, red)){.jlpt-no-results button{background:color-mix(in srgb, var(--jlpt-level) 5%, var(--bg-card))}}.jlpt-no-results button{color:var(--jlpt-level);cursor:pointer;font-family:inherit;font-size:.68rem}@media (max-width:768px){.jlpt-page{gap:16px;padding-bottom:24px}.jlpt-page:before{width:420px;height:240px;top:-40px;right:-100px}.jlpt-header{flex-direction:column;align-items:flex-start;gap:18px}.jlpt-title{font-size:2.7rem}.jlpt-subtitle{margin-top:9px}.jlpt-overview{justify-content:space-around;width:100%}.jlpt-level-tab{flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-height:72px;padding:11px 12px}.jlpt-level-tab:after{left:12px;right:12px}.jlpt-level-code{font-size:.95rem}.jlpt-level-tab-meta{width:100%;font-size:.57rem}.jlpt-level-summary{align-items:flex-start;min-height:auto;padding:18px}.jlpt-level-count{width:68px;height:63px}.jlpt-toolbar{flex-direction:column-reverse;align-items:stretch;gap:10px}.jlpt-search{width:100%}.jlpt-section-nav{width:calc(100vw - 32px)}.jlpt-search-result{margin:-7px 0 -2px}.jlpt-section-header{grid-template-columns:auto minmax(0,1fr);min-height:auto;padding:15px 16px;display:grid}.jlpt-section-total{display:none}.jlpt-table-wrap{overflow:visible}.jlpt-table,.jlpt-table tbody{width:100%;min-width:0;display:block}.jlpt-table thead{display:none}.jlpt-table tbody{padding:0 14px 14px}.jlpt-table tbody tr{border:1px solid var(--border-subtle);background:#0000001f;border-radius:12px;margin-top:14px;display:block;overflow:hidden}.jlpt-table tbody tr:hover{background:#0000001f}.jlpt-table td{border-bottom:1px solid var(--border-subtle);grid-template-columns:104px minmax(0,1fr);gap:12px;width:100%;padding:12px;display:grid}.jlpt-table td:before{content:attr(data-label);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.52rem;font-weight:500}.jlpt-table td.jlpt-table-empty{text-align:center;padding:22px 12px;display:block}.jlpt-table td.jlpt-table-empty:before{display:none}.jlpt-table tbody tr:last-child td,.jlpt-table tbody tr td:last-child{border-bottom:0}}@media (max-width:430px){.jlpt-level-summary{flex-direction:column}.jlpt-level-count{flex-direction:row;gap:7px;width:100%;height:auto;min-height:48px}.jlpt-level-count span{margin-top:0}.jlpt-table td{display:block}.jlpt-table td:before{margin-bottom:7px;display:block}}@media (prefers-reduced-motion:reduce){.jlpt-level-tab,.jlpt-level-tab:after,.jlpt-section-link,.jlpt-table tbody tr{transition:none}}.system-state-page{min-height:100vh;color:var(--text-primary);background:radial-gradient(circle at 22% 12%, #7c9ef824, transparent 35%), radial-gradient(circle at 84% 84%, #b085f51a, transparent 34%), var(--bg-primary);place-items:center;padding:32px;font-family:DM Sans,Noto Sans JP,sans-serif;display:grid}.system-state-card{text-align:center;background:#12121ce6;border:1px solid #7c9ef82e;border-radius:22px;width:min(100%,520px);padding:42px;box-shadow:0 24px 70px #00000047}.system-state-code{color:var(--color-accent);letter-spacing:.22em;margin:0 0 15px;font-family:Syne,sans-serif;font-size:.7rem;font-weight:700}.system-state-card h1{margin:0;font-size:clamp(1.55rem,5vw,2.25rem)}.system-state-card>p:not(.system-state-code){color:var(--text-secondary);margin:14px 0 0;font-size:.82rem;line-height:1.7}.system-state-card a,.system-state-card button{color:#dce4ff;min-height:44px;font:inherit;cursor:pointer;background:#7c9ef814;border:1px solid #7c9ef873;border-radius:999px;justify-content:center;align-items:center;margin-top:26px;padding:0 20px;text-decoration:none;display:inline-flex}.jlpt-page.jlpt-page-v2{gap:18px;width:min(100%,1320px);padding-bottom:48px;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}.jlpt-page-v2:before{display:none}.jlpt-index-header{justify-content:space-between;align-items:flex-end;gap:28px;min-height:92px;display:flex}.jlpt-index-heading{min-width:0}.jlpt-index-header-side{justify-items:end;gap:16px;padding-bottom:3px;display:grid}.jlpt-index-actions{align-items:center;gap:6px;display:flex}.jlpt-index-actions a{border:1px solid var(--border-subtle);min-height:34px;color:var(--text-muted);border-radius:6px;align-items:center;gap:6px;padding:7px 10px;font-size:.61rem;text-decoration:none;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.jlpt-index-actions a:hover{border-color:#c4a8f7}@supports (color:color-mix(in lab, red, red)){.jlpt-index-actions a:hover{border-color:color-mix(in srgb, #c4a8f7 38%, var(--border))}}.jlpt-index-actions a:hover{color:var(--text-primary);background:#c4a8f70d}.jlpt-index-actions a.is-primary{color:#ddd3f5;background:#c4a8f717;border-color:#c4a8f752}.jlpt-index-actions a:focus-visible{outline:2px solid #c4a8f7}@supports (color:color-mix(in lab, red, red)){.jlpt-index-actions a:focus-visible{outline:2px solid color-mix(in srgb, #c4a8f7 72%, var(--color-accent))}}.jlpt-index-actions a:focus-visible{outline-offset:2px}.jlpt-index-kicker,.jlpt-index-heading>p,.jlpt-index-stats span,.jlpt-index-level-summary p,.jlpt-index-sections-nav>p,.jlpt-index-toolbar p,.jlpt-index-toolbar span,.jlpt-index-section-header p,.jlpt-index-section-header span,.jlpt-index-entry-info p,.jlpt-index-examples>p{margin:0}.jlpt-index-kicker{letter-spacing:.17em;text-transform:uppercase;font-family:DM Sans,sans-serif;font-weight:600;color:var(--color-accent)!important;margin-bottom:8px!important;font-size:.58rem!important}.jlpt-index-heading h1{color:var(--text-primary);letter-spacing:-.045em;margin:0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(2rem,3.5vw,3rem);font-weight:800;line-height:1}.jlpt-index-heading>p:not(.jlpt-index-kicker){color:var(--text-muted);margin-top:10px;font-size:.72rem;line-height:1.6}.jlpt-index-stats{align-items:flex-end;gap:24px;padding-bottom:0;display:flex}.jlpt-index-stats>div{white-space:nowrap;align-items:baseline;gap:7px;display:flex}.jlpt-index-stats strong{color:var(--text-primary);font-family:Syne,sans-serif;font-size:1.15rem;line-height:1}.jlpt-index-stats span{color:var(--text-muted);letter-spacing:.08em;font-size:.56rem}.jlpt-index-levels{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.jlpt-index-levels button{--jlpt-tab-color:var(--color-accent);border:0;border-right:1px solid var(--border-subtle);min-width:0;min-height:55px;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 16px;transition:color .16s,background .16s;display:grid;position:relative}.jlpt-index-levels button:last-child{border-right:0}.jlpt-index-levels button:after{content:"";background:var(--jlpt-tab-color);border-radius:999px 999px 0 0;height:2px;transition:transform .18s;position:absolute;bottom:-1px;left:16px;right:16px;transform:scaleX(0)}.jlpt-index-levels button:hover{color:var(--text-secondary);background:#ffffff04}.jlpt-index-levels button.is-active{color:var(--text-primary)}.jlpt-index-levels button.is-active:after{transform:scaleX(1)}.jlpt-index-levels button:focus-visible,.jlpt-index-sections-nav button:focus-visible,.jlpt-index-search:focus-within,.jlpt-index-entry summary:focus-visible,.jlpt-index-empty button:focus-visible{outline:2px solid var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-index-levels button:focus-visible,.jlpt-index-sections-nav button:focus-visible,.jlpt-index-search:focus-within,.jlpt-index-entry summary:focus-visible,.jlpt-index-empty button:focus-visible{outline:2px solid color-mix(in srgb, var(--jlpt-level) 72%, var(--color-accent))}}.jlpt-index-levels button:focus-visible,.jlpt-index-sections-nav button:focus-visible,.jlpt-index-search:focus-within,.jlpt-index-entry summary:focus-visible,.jlpt-index-empty button:focus-visible{outline-offset:-2px}.jlpt-index-level-code{color:var(--jlpt-tab-color);font-family:Syne,sans-serif;font-size:.95rem;font-weight:800}.jlpt-index-level-name{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.jlpt-index-levels small{color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:.56rem}.jlpt-index-workspace{grid-template-columns:218px minmax(0,1fr);align-items:start;gap:28px;display:grid}.jlpt-index-sidebar{min-width:0;position:sticky;top:78px}.jlpt-index-level-summary{border-bottom:1px solid var(--border-subtle);padding:18px 0 20px;position:relative}.jlpt-index-level-marker{color:var(--jlpt-level);position:absolute;top:18px;right:0}@supports (color:color-mix(in lab, red, red)){.jlpt-index-level-marker{color:color-mix(in srgb, var(--jlpt-level) 26%, transparent)}}.jlpt-index-level-marker{pointer-events:none;font-family:Syne,sans-serif;font-size:2.65rem;font-weight:800;line-height:.85}.jlpt-index-level-summary>p{color:var(--jlpt-level);letter-spacing:.12em;text-transform:uppercase;font-size:.55rem}.jlpt-index-level-summary h2{margin:5px 0 8px;font-family:Syne,Noto Sans JP,sans-serif;font-size:1.2rem}.jlpt-index-level-summary>div{max-width:190px;color:var(--text-muted);font-size:.65rem;line-height:1.65}.jlpt-index-level-summary>strong{color:var(--text-secondary);align-items:baseline;gap:5px;margin-top:14px;font-family:Syne,sans-serif;font-size:.9rem;display:inline-flex}.jlpt-index-level-summary>strong small{color:var(--text-muted);font-family:inherit;font-size:.52rem;font-weight:500}.jlpt-index-sections-nav{flex-direction:column;padding-top:18px;display:flex}.jlpt-index-sections-nav>p{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font-size:.54rem}.jlpt-index-sections-nav button{border:0;border-bottom:1px solid var(--border-subtle);grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;min-height:38px;padding:7px 8px 7px 0;display:grid}@supports (color:color-mix(in lab, red, red)){.jlpt-index-sections-nav button{border-bottom:1px solid color-mix(in srgb, var(--border-subtle) 70%, transparent)}}.jlpt-index-sections-nav button{color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;transition:color .15s,padding-left .15s}.jlpt-index-sections-nav button:hover,.jlpt-index-sections-nav button.is-active{color:var(--text-primary);padding-left:5px}.jlpt-index-sections-nav button.is-active span{color:var(--jlpt-level)}.jlpt-index-sections-nav button span,.jlpt-index-sections-nav button small{color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:.53rem;font-weight:500}.jlpt-index-sections-nav button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;font-weight:500;overflow:hidden}.jlpt-index-content{min-width:0}.jlpt-index-toolbar{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding:8px 0 12px;display:flex}.jlpt-index-toolbar>div{align-items:baseline;gap:9px;min-width:0;display:flex}.jlpt-index-toolbar p{color:var(--text-primary);font-size:.8rem;font-weight:600}.jlpt-index-toolbar span{color:var(--text-muted);font-size:.58rem}.jlpt-index-search{border:1px solid var(--border-subtle);background:var(--bg-card);width:min(310px,40vw);min-height:34px;color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.jlpt-index-search input{width:100%;min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;font-size:.67rem}.jlpt-index-search input::placeholder{color:var(--text-muted)}.jlpt-index-search input::-webkit-search-cancel-button{display:none}.jlpt-index-search button{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;flex-shrink:0;place-items:center;padding:0;display:grid}.jlpt-index-search button:hover{color:var(--text-primary);background:#ffffff0a}.jlpt-index-sections{min-height:280px}.jlpt-index-section{scroll-margin-top:78px}.jlpt-index-section-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-end;gap:20px;min-height:112px;padding:22px 2px 18px;display:flex}.jlpt-index-section-header p{color:var(--jlpt-level);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-family:DM Sans,sans-serif;font-size:.54rem}.jlpt-index-section-header h2{margin:0 0 7px;font-family:Syne,Noto Sans JP,sans-serif;font-size:1.35rem;line-height:1.1}.jlpt-index-section-header span{max-width:680px;color:var(--text-muted);font-size:.65rem;line-height:1.55;display:block}.jlpt-index-section-header>strong{color:var(--text-secondary);flex-shrink:0;align-items:baseline;gap:5px;font-family:Syne,sans-serif;font-size:1rem;display:flex}.jlpt-index-section-header>strong small{color:var(--text-muted);font-family:inherit;font-size:.52rem;font-weight:500}.jlpt-index-entry-list{border-bottom:1px solid var(--border-subtle)}.jlpt-index-entry{border-bottom:1px solid var(--border-subtle);background:0 0}.jlpt-index-entry:last-child{border-bottom:0}.jlpt-index-entry summary{cursor:pointer;grid-template-columns:36px minmax(140px,210px) minmax(0,1fr) 20px;align-items:center;gap:14px;min-height:72px;padding:13px 2px;list-style:none;transition:background .15s;display:grid}.jlpt-index-entry summary::-webkit-details-marker{display:none}.jlpt-index-entry summary:hover{background:#ffffff03}.jlpt-index-entry[open] summary{background:var(--jlpt-level)}@supports (color:color-mix(in lab, red, red)){.jlpt-index-entry[open] summary{background:color-mix(in srgb, var(--jlpt-level) 2.5%, transparent)}}.jlpt-index-entry-number{color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:.53rem}.jlpt-index-entry-name{flex-direction:column;gap:3px;min-width:0;display:flex}.jlpt-index-entry-name strong{color:var(--text-primary);text-overflow:ellipsis;font-size:.84rem;line-height:1.45;overflow:hidden}.jlpt-index-entry-name small{color:var(--jlpt-level);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;font-weight:400;overflow:hidden}.jlpt-index-entry-preview{min-width:0;color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.67rem;line-height:1.55;display:-webkit-box;overflow:hidden}.jlpt-index-entry-chevron{color:var(--text-muted);transition:color .16s,transform .2s}.jlpt-index-entry[open] .jlpt-index-entry-chevron{color:var(--jlpt-level);transform:rotate(180deg)}.jlpt-index-entry-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;padding:4px 36px 22px 52px;display:grid}.jlpt-index-entry-info,.jlpt-index-examples{min-width:0}.jlpt-index-entry-info{flex-direction:column;gap:13px;display:flex}.jlpt-index-entry-info>div>p,.jlpt-index-examples>p{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-family:DM Sans,sans-serif;font-size:.51rem;font-weight:600}.jlpt-index-entry-info code{background:var(--bg-secondary);width:fit-content;max-width:100%;color:var(--text-secondary);white-space:normal;border-radius:6px;padding:5px 8px;font-family:inherit;font-size:.62rem;line-height:1.55;display:block}.jlpt-index-entry-info>div>span{color:var(--text-secondary);font-size:.66rem;line-height:1.65}.jlpt-index-entry-note{border-left:1px solid var(--jlpt-level);padding-left:9px}@supports (color:color-mix(in lab, red, red)){.jlpt-index-entry-note{border-left:1px solid color-mix(in srgb, var(--jlpt-level) 35%, var(--border))}}.jlpt-index-entry-tags{display:flex;flex-flow:wrap!important;gap:5px!important}.jlpt-index-entry-tags span{background:var(--bg-secondary);border-radius:999px;padding:3px 6px;color:var(--text-muted)!important;font-size:.5rem!important;line-height:1!important}.jlpt-index-examples{background:var(--bg-secondary);border-radius:9px;padding:13px 15px}@supports (color:color-mix(in lab, red, red)){.jlpt-index-examples{background:color-mix(in srgb, var(--bg-secondary) 76%, transparent)}}.jlpt-index-examples>div+div{border-top:1px dashed var(--border-subtle);margin-top:11px;padding-top:11px}.jlpt-index-examples strong,.jlpt-index-examples span,.jlpt-index-examples small{display:block}.jlpt-index-examples strong{color:var(--text-primary);font-size:.78rem;font-weight:500;line-height:1.6}.jlpt-index-examples span{color:var(--jlpt-level);margin-top:3px}@supports (color:color-mix(in lab, red, red)){.jlpt-index-examples span{color:color-mix(in srgb, var(--jlpt-level) 65%, var(--text-muted))}}.jlpt-index-examples span{font-size:.57rem;line-height:1.5}.jlpt-index-examples small{color:var(--text-muted);margin-top:5px;font-size:.59rem;line-height:1.55}.jlpt-index-empty{min-height:320px;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.jlpt-index-empty svg{color:var(--jlpt-level)}.jlpt-index-empty h2{margin:12px 0 5px;font-family:Noto Sans JP,sans-serif;font-size:.92rem}.jlpt-index-empty p{margin:0;font-size:.65rem}.jlpt-index-empty button{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font:inherit;cursor:pointer;border-radius:7px;margin-top:14px;padding:7px 11px;font-size:.63rem}.jlpt-page-v2 .jlpt-level-loading{background:0 0;border:0;border-radius:0;min-height:320px}@media (max-width:900px){.jlpt-index-workspace{grid-template-columns:1fr;gap:0}.jlpt-index-sidebar{position:static}.jlpt-index-level-summary{grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;min-height:88px;padding:14px 0;display:grid}.jlpt-index-level-marker,.jlpt-index-level-summary>p{display:none}.jlpt-index-level-summary h2{grid-row:1/3;margin:0}.jlpt-index-level-summary>div{max-width:none;font-size:.62rem}.jlpt-index-level-summary>strong{grid-area:1/3/3;margin:0}.jlpt-index-sections-nav{border-bottom:1px solid var(--border-subtle);scrollbar-width:none;flex-direction:row;gap:5px;width:100%;padding:10px 0;overflow-x:auto}.jlpt-index-sections-nav::-webkit-scrollbar{display:none}.jlpt-index-sections-nav>p{display:none}.jlpt-index-sections-nav button{border:1px solid var(--border-subtle);border-radius:7px;flex-shrink:0;grid-template-columns:auto auto auto;gap:6px;width:auto;min-height:32px;padding:6px 9px}.jlpt-index-sections-nav button:hover,.jlpt-index-sections-nav button.is-active{border-color:var(--jlpt-level);padding-left:9px}@supports (color:color-mix(in lab, red, red)){.jlpt-index-sections-nav button:hover,.jlpt-index-sections-nav button.is-active{border-color:color-mix(in srgb, var(--jlpt-level) 30%, var(--border))}}}@media (max-width:680px){.jlpt-page.jlpt-page-v2{gap:14px;padding-bottom:26px}.jlpt-index-header{flex-direction:column;align-items:flex-start;gap:14px;min-height:auto}.jlpt-index-header-side{justify-items:stretch;gap:12px;width:100%}.jlpt-index-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.jlpt-index-actions a{justify-content:center;padding-inline:7px}.jlpt-index-heading h1{font-size:2.1rem}.jlpt-index-stats{gap:18px;padding-bottom:0}.jlpt-index-levels{scroll-snap-type:x proximity;scrollbar-width:none;display:flex;overflow-x:auto}.jlpt-index-levels::-webkit-scrollbar{display:none}.jlpt-index-levels button{scroll-snap-align:start;flex:1 0 112px;min-width:112px;min-height:51px;padding:9px 12px}.jlpt-index-levels button:after{left:12px;right:12px}.jlpt-index-level-summary{grid-template-columns:auto minmax(0,1fr)}.jlpt-index-level-summary>strong{display:none}.jlpt-index-toolbar{flex-direction:column;align-items:stretch;gap:9px;padding:12px 0}.jlpt-index-search{width:100%;min-height:38px}.jlpt-index-section-header{min-height:96px;padding:17px 0 14px}.jlpt-index-section-header h2{font-size:1.15rem}.jlpt-index-section-header>strong{font-size:.85rem}.jlpt-index-entry summary{grid-template-columns:28px minmax(0,1fr) 18px;gap:9px;padding:12px 0}.jlpt-index-entry-name{grid-column:2}.jlpt-index-entry-preview{-webkit-line-clamp:1;grid-column:2;font-size:.64rem}.jlpt-index-entry-chevron{grid-area:1/3/3}.jlpt-index-entry-body{grid-template-columns:1fr;gap:16px;padding:4px 0 18px 37px}}@media (max-width:430px){.jlpt-index-heading>p:not(.jlpt-index-kicker),.jlpt-index-level-summary>div,.jlpt-index-section-header span{display:none}.jlpt-index-level-summary{min-height:55px;padding:10px 0;display:flex}.jlpt-index-section-header{min-height:78px}.jlpt-index-entry-name strong{font-size:.8rem}.jlpt-index-entry-body{padding-left:0}.jlpt-index-examples{border-radius:7px}}@media (prefers-reduced-motion:reduce){.jlpt-index-levels button,.jlpt-index-levels button:after,.jlpt-index-sections-nav button,.jlpt-index-entry summary,.jlpt-index-entry-chevron{transition:none}}.schedule-page{--schedule-surface:radial-gradient(circle at 8% 0%, #2052aa24, transparent 42%), radial-gradient(circle at 100% 100%, #75365d1c, transparent 44%), linear-gradient(135deg, #07101df0 0%, #0b0d18eb 48%, #12101ded 100%);z-index:1;color:#f1eff4;background:radial-gradient(circle at 18% 9%,#2052aa3d,#0000 34%),radial-gradient(circle at 78% 5%,#6d47962b,#0000 31%),radial-gradient(circle at 91% 88%,#75365d29,#0000 31%),linear-gradient(135deg,#07101d 0%,#0b0d18 48%,#12101d 100%);min-height:calc(100vh - 56px);margin:-28px -32px;padding:35px 48px 50px;font-family:DM Sans,Noto Sans JP,sans-serif;display:block;position:relative;overflow:hidden}.schedule-page:before{content:"";z-index:0;pointer-events:none;opacity:.24;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");position:absolute;inset:0}.schedule-page-inner{z-index:1;flex-direction:column;gap:18px;width:min(100%,1316px);margin:0 auto;display:flex;position:relative}.schedule-page .schedule-loading{color:#89879b;flex-direction:column;justify-content:center;align-items:center;gap:13px;height:auto;min-height:62vh;font-size:.78rem;display:flex}.schedule-state-inner{justify-content:center;min-height:70vh}.schedule-state-header{text-align:center}.schedule-state-card{background:var(--schedule-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #8e91a542;border-radius:19px;box-shadow:0 18px 50px #0003}.schedule-hero{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:42px;min-height:169px;padding:2px 2px 23px;display:grid}.schedule-hero-copy{min-width:0}.schedule-eyebrow{color:#8daefb;letter-spacing:.16em;margin:0 0 10px;font-size:.68rem;font-weight:600}.schedule-page .schedule-title{color:#f2f0ec;letter-spacing:-.045em;margin:0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(2.35rem,3.4vw,3.4rem);font-weight:700;line-height:1.08}.schedule-description{color:#9a98ac;max-width:590px;margin:12px 0 0;font-size:.84rem;line-height:1.65}.schedule-date-range{color:#c9c7d4;align-items:center;gap:9px;width:fit-content;margin-top:17px;font-size:.72rem;display:inline-flex}.schedule-date-range svg{color:#789cf6}.schedule-date-range i{background:#c9c7d457;width:22px;height:1px}.schedule-hero-stats{grid-template-columns:repeat(3,minmax(138px,1fr));gap:10px;padding-top:23px;display:grid}.schedule-stat-card{background:var(--schedule-surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #8e91a53d;border-radius:15px;align-items:center;gap:12px;min-height:77px;padding:14px 16px;display:flex;box-shadow:0 15px 36px #0000002b,inset 0 1px #ffffff06}.schedule-stat-icon{color:#8cabfb;background:#7c9ef813;border:1px solid #7c9ef833;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.schedule-stat-icon-streak{color:#f7c267;background:#f7c26712;border-color:#f7c26733}.schedule-stat-card>span:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.schedule-stat-card small{color:#777587;white-space:nowrap;font-size:.61rem}.schedule-stat-card strong{color:#f1eff2;font-family:Syne,Noto Sans JP,sans-serif;font-size:1.35rem;line-height:1}.schedule-stat-card em{color:#8f8c9e;margin-left:3px;font-family:DM Sans,Noto Sans JP,sans-serif;font-size:.62rem;font-style:normal;font-weight:500}.schedule-week-panel,.schedule-page .task-list-wrap,.schedule-side-card{background:var(--schedule-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #8e91a545;border-radius:19px;min-width:0;box-shadow:0 18px 50px #0003,inset 0 1px #ffffff06}.schedule-week-panel{padding:24px 25px 25px}.schedule-week-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.schedule-week-heading p,.schedule-side-heading p{color:#89879a;letter-spacing:.12em;margin:0;font-size:.63rem;font-weight:600}.schedule-week-heading h2{color:#efedf1;margin:5px 0 0;font-family:DM Sans,Noto Sans JP,sans-serif;font-size:1rem;font-weight:600}.schedule-week-progress-copy{align-items:baseline;gap:10px;display:flex}.schedule-week-progress-copy span{color:#737185;font-size:.62rem}.schedule-week-progress-copy strong{color:#9eb8ff;font-family:Syne,sans-serif;font-size:1.15rem}.schedule-week-track,.schedule-summary-track,.task-list-progress-track{background:#d3daf01a;border-radius:999px;height:5px;overflow:hidden}.schedule-week-track{margin:17px 0 16px}.schedule-week-track>span,.schedule-summary-track>span,.task-list-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#648bf6,#8c78ee);height:100%;transition:width .45s;display:block;box-shadow:0 0 13px #7c9ef852}.schedule-page .week-cal-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.schedule-page .week-cal-day{min-width:0;min-height:132px;color:inherit;text-align:left;box-shadow:none;cursor:pointer;background:#ffffff05;border:1px solid #8e91a529;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:14px;transition:border-color .18s,background .18s,transform .18s;display:flex}.schedule-page .week-cal-day:hover{background:#7c9ef80e;border-color:#7c9ef861;transform:translateY(-2px)}.schedule-page .week-cal-day-selected{background:linear-gradient(150deg,#385eb430,#281f481f),#ffffff05;border-color:#6f96ffc2;transform:none;box-shadow:0 0 0 1px #6f96ff1f,0 10px 24px #142c662e}.schedule-page .week-cal-day-today:not(.week-cal-day-selected){box-shadow:none;border-color:#f7c26757}.week-cal-topline{align-items:center;gap:7px;min-height:23px;display:flex}.schedule-page .week-cal-name{color:#e9e7ed;letter-spacing:0;font-family:Noto Sans JP,sans-serif;font-size:.82rem;font-weight:600}.week-cal-topline small{color:#f7d483;background:#f7c26717;border-radius:999px;padding:2px 6px;font-size:.53rem}.week-cal-topline svg{color:#9bd4b3;margin-left:auto}.schedule-page .week-cal-date{color:#666476;margin-top:3px;font-size:.58rem}.schedule-page .week-cal-focus{color:#b7b4c1;text-overflow:ellipsis;white-space:nowrap;margin-top:13px;font-size:.68rem;line-height:1.4;overflow:hidden}.week-cal-progress-row{align-items:center;gap:8px;margin-top:auto;display:flex}.schedule-page .week-cal-bar-track{background:#d3daf01a;border-radius:999px;flex:1;height:4px;overflow:hidden}.schedule-page .week-cal-bar-track i{border-radius:inherit;background:linear-gradient(90deg,#648bf6,#8c78ee);height:100%;display:block}.schedule-page .week-cal-day-done .week-cal-bar-track i{background:linear-gradient(90deg,#6eb990,#8ad3aa)}.week-cal-progress-row>strong{color:#858295;text-align:right;min-width:26px;font-family:Syne,sans-serif;font-size:.58rem}.schedule-content-grid{grid-template-columns:minmax(0,1.85fr) minmax(282px,.65fr);align-items:start;gap:18px;display:grid}.schedule-weekly-targets{background:radial-gradient(circle at 92% 0%, #74c39017, transparent 28%), var(--schedule-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #9bd4b33b;border-radius:19px;min-width:0;padding:23px 25px 25px;box-shadow:0 18px 50px #0003,inset 0 1px #ffffff06}.schedule-target-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.schedule-target-heading .schedule-side-heading>span{color:#a3d8b5;background:#74c39013;border-color:#9bd4b338}.schedule-target-overview{flex:none;align-items:baseline;gap:9px;display:flex}.schedule-target-overview strong{color:#b2e0c1;font-family:Syne,sans-serif;font-size:1.45rem;line-height:1}.schedule-target-overview strong small{color:#789b85;margin-left:2px;font-size:.67rem}.schedule-target-overview>span{color:#777f83;font-size:.62rem}.schedule-sunday-reflection{background:radial-gradient(circle at 7% 2%,#74c39026,#0000 35%),linear-gradient(135deg,#0a1d1bdb,#111623e6);border:1px solid #9bd4b33d;border-radius:22px;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);align-items:center;gap:clamp(28px,6vw,74px);min-width:0;padding:clamp(27px,4.5vw,50px);display:grid;box-shadow:0 22px 60px #00000038,inset 0 1px #ffffff08}.schedule-reflection-copy{align-items:flex-start;gap:16px;min-width:0;display:flex}.schedule-reflection-icon{color:#a3d8b5;background:#74c3901a;border:1px solid #9bd4b347;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;display:grid}.schedule-reflection-copy p{color:#8fbc9d;letter-spacing:.12em;margin:1px 0 0;font-size:.65rem;font-weight:600}.schedule-reflection-copy h2{color:#f0f0ec;letter-spacing:-.035em;max-width:550px;margin:10px 0 0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(1.45rem,2.8vw,2.35rem);font-weight:700;line-height:1.28}.schedule-reflection-copy>div>span{color:#929ba1;max-width:570px;margin-top:15px;font-size:.75rem;line-height:1.75;display:block}.schedule-reflection-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.schedule-reflection-stats article{background:#ffffff07;border:1px solid #9bd4b31f;border-radius:14px;flex-direction:column;justify-content:space-between;min-height:94px;padding:16px;display:flex}.schedule-reflection-stats small{color:#878e94;font-size:.61rem}.schedule-reflection-stats strong{color:#e6eee9;font-family:Syne,Noto Sans JP,sans-serif;font-size:1.4rem;line-height:1}.schedule-reflection-stats strong em{color:#90aa99;margin-left:3px;font-family:DM Sans,Noto Sans JP,sans-serif;font-size:.62rem;font-style:normal;font-weight:500}.schedule-reflection-targets{background:#74c39011!important;border-color:#9bd4b33b!important}.schedule-task-column,.schedule-insights{min-width:0}.schedule-page .task-list-wrap{flex-direction:column;gap:0;padding:29px 30px 30px;display:flex}.schedule-page .task-list-header{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.task-list-heading-copy{min-width:0}.task-list-kicker{color:#89a9fb;letter-spacing:.08em;align-items:center;gap:8px;margin:0;font-size:.66rem;font-weight:600;display:flex}.schedule-page .task-list-focus{color:#f3f0ef;letter-spacing:-.035em;max-width:700px;margin:12px 0 0;font-family:Syne,Noto Sans JP,sans-serif;font-size:clamp(1.55rem,2.4vw,2.2rem);font-weight:700;line-height:1.22}.schedule-page .task-list-meta{color:#747285;margin:9px 0 0;font-size:.7rem}.task-list-progress-copy{flex-direction:column;flex:none;align-items:flex-end;gap:5px;display:flex}.task-list-progress-copy strong{color:#98b2ff;font-family:Syne,sans-serif;font-size:2.25rem;line-height:1}.task-list-progress-copy strong small{margin-left:2px;font-size:.95rem}.task-list-progress-copy span{color:#747285;font-size:.62rem}.task-list-progress-track{margin-top:23px}.task-list-section-heading{justify-content:space-between;align-items:center;gap:14px;margin:26px 0 11px;display:flex}.task-list-section-heading span{color:#d5d2da;font-size:.76rem;font-weight:600}.task-list-section-heading small{color:#5f5d6f;font-size:.58rem}.schedule-page .task-items{flex-direction:column;gap:7px;display:flex}.schedule-page .task-item{width:100%;min-height:64px;color:inherit;text-align:left;cursor:pointer;background:#ffffff05;border:1px solid #8e91a521;border-radius:13px;grid-template-columns:34px 22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 15px 10px 12px;transition:border-color .18s,background .18s,transform .18s,opacity .18s;display:grid;position:relative;overflow:hidden}.schedule-page .task-item:before{display:none}.schedule-page .task-item:hover{background:#7c9ef80b;border-color:#7c9ef852;transform:translate(2px)}.task-order{color:#535164;text-align:center;font-family:Syne,sans-serif;font-size:.64rem}.task-status{color:#0a1511;border:1px solid #5f6078;border-radius:6px;place-items:center;width:19px;height:19px;transition:border-color .18s,background .18s;display:grid}.task-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.schedule-page .task-name{color:#dedbe2;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:500;overflow:hidden}.task-copy small{color:#5f5d70;font-size:.57rem}.schedule-page .task-duration{color:#858295;text-align:center;background:#ffffff05;border:1px solid #8e91a521;border-radius:8px;min-width:54px;padding:6px 9px;font-size:.62rem}.schedule-page .task-item-done{opacity:.52;filter:none}.schedule-page .task-item-done .task-status{color:#0b1711;background:#82caa0;border-color:#82caa0}.schedule-page .task-item-done .task-name{color:#8b8997;text-decoration-color:#666475}.schedule-page .task-item-syncing{opacity:1;background:linear-gradient(90deg,#f7c2671a,#ffffff05);border-color:#f7c26794}.schedule-page .task-item-syncing .task-status{border-color:#f7c267;animation:.9s ease-in-out infinite taskDotPulse}.schedule-page .task-item-syncing .task-duration{color:#f7c267}.task-list-empty{color:#747285;text-align:center;border:1px dashed #8e91a52e;border-radius:13px;margin:0;padding:32px 18px;font-size:.72rem}.schedule-insights{flex-direction:column;gap:18px;display:flex}.schedule-side-card{padding:23px 22px}.schedule-side-heading{align-items:center;gap:11px;display:flex}.schedule-side-heading>span{color:#8cabfb;background:#7c9ef811;border:1px solid #7c9ef82e;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.schedule-side-heading small{color:#5f5d6f;margin-top:3px;font-size:.57rem;display:block}.schedule-summary-progress{justify-content:space-between;align-items:flex-end;gap:14px;margin-top:26px;display:flex}.schedule-summary-progress strong{color:#f2eff2;font-family:Syne,sans-serif;font-size:2.45rem;line-height:1}.schedule-summary-progress strong small{color:#8ea9f4;margin-left:2px;font-size:1rem}.schedule-summary-progress>span{color:#777486;font-size:.61rem}.schedule-summary-track{margin-top:13px}.schedule-target-track{background:#d3daf01a;border-radius:999px;height:4px;margin-top:19px;overflow:hidden}.schedule-target-track>span{border-radius:inherit;background:linear-gradient(90deg,#69b68d,#9bd4b3);height:100%;transition:width .35s;display:block;box-shadow:0 0 12px #74c39042}.schedule-target-list{flex-direction:column;gap:6px;margin-top:15px;display:flex}.schedule-weekly-targets .schedule-target-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.schedule-target-item{width:100%;min-height:50px;color:inherit;text-align:left;cursor:pointer;background:#ffffff05;border:1px solid #8e91a521;border-radius:11px;grid-template-columns:19px minmax(0,1fr);align-items:center;gap:9px;padding:8px 9px;transition:border-color .18s,background .18s,opacity .18s;display:grid}.schedule-weekly-targets .schedule-target-item{min-height:58px;padding:10px 12px}.schedule-target-item:hover{background:#74c3900e;border-color:#9bd4b357}.schedule-target-status{color:#0b1711;border:1px solid #5f6078;border-radius:999px;place-items:center;width:17px;height:17px;display:grid}.schedule-target-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.schedule-target-copy strong{color:#d9d7df;text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;font-weight:500;line-height:1.4;overflow:hidden}.schedule-weekly-targets .schedule-target-copy strong{text-overflow:clip;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.schedule-target-copy small{color:#656376;font-size:.55rem}.schedule-target-item-done{opacity:.58}.schedule-target-item-done .schedule-target-status{background:#82caa0;border-color:#82caa0}.schedule-target-item-done .schedule-target-copy strong{color:#9b99a6;-webkit-text-decoration:line-through #6d6b78;text-decoration:line-through #6d6b78}.schedule-target-item-syncing{border-color:#f7c26794}.schedule-target-item-syncing .schedule-target-status{border-color:#f7c267;animation:.9s ease-in-out infinite taskDotPulse}.schedule-target-item-synced{animation:1.1s ease-out taskSyncedFlash}.schedule-summary-list{flex-direction:column;margin:22px 0 0;display:flex}.schedule-summary-list>div{border-top:1px solid #ffffff0e;justify-content:space-between;align-items:center;gap:14px;min-height:38px;display:flex}.schedule-summary-list dt{color:#777486;font-size:.65rem}.schedule-summary-list dd{color:#c9c6cf;margin:0;font-size:.67rem;font-weight:600}.schedule-load-list{flex-direction:column;gap:9px;margin-top:20px;display:flex}.schedule-load-list button{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:20px minmax(0,1fr) 42px;align-items:center;gap:9px;padding:2px 0;display:grid}.schedule-load-day{color:#706e80;text-align:left;font-size:.62rem}.schedule-load-track{background:#d3daf017;border-radius:999px;height:5px;overflow:hidden}.schedule-load-track i{border-radius:inherit;background:linear-gradient(90deg,#556fae,#7766a7);height:100%;transition:width .35s,background .18s;display:block}.schedule-load-list strong{color:#777486;text-align:right;font-size:.57rem;font-weight:500}.schedule-load-list button.is-selected .schedule-load-day,.schedule-load-list button.is-selected strong{color:#a8bcf5}.schedule-load-list button.is-selected .schedule-load-track i{background:linear-gradient(90deg,#648bf6,#8c78ee);box-shadow:0 0 9px #7c9ef840}@media (max-width:1100px){.schedule-page{padding-left:32px;padding-right:32px}.schedule-hero{grid-template-columns:1fr;gap:0}.schedule-hero-stats{padding-top:22px}.schedule-content-grid{grid-template-columns:minmax(0,1.55fr) minmax(270px,.7fr)}.schedule-sunday-reflection{grid-template-columns:1fr;gap:31px}}@media (max-width:900px){.schedule-content-grid{grid-template-columns:1fr}.schedule-insights{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-page .week-cal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-reflection-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-weekly-targets .schedule-target-list{grid-template-columns:1fr}}@media (max-width:768px){.schedule-page{min-height:calc(100vh - 56px);margin:-16px;padding:23px 16px 38px}.schedule-page-inner{gap:13px}.schedule-hero{min-height:auto;padding:2px 2px 12px}.schedule-page .schedule-title{font-size:clamp(1.85rem,9vw,2.45rem)}.schedule-description{max-width:480px;font-size:.72rem}.schedule-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.schedule-stat-card{gap:8px;min-height:68px;padding:11px}.schedule-stat-icon{width:30px;height:30px}.schedule-stat-card strong{font-size:1.05rem}.schedule-week-panel{padding:20px 0 20px 18px;overflow:hidden}.schedule-week-heading,.schedule-week-track{margin-right:18px}.schedule-week-track{margin-top:15px}.schedule-page .week-cal-grid{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:minmax(166px,61vw);grid-auto-flow:column;gap:8px;padding-right:18px;overflow-x:auto}.schedule-page .week-cal-grid::-webkit-scrollbar{display:none}.schedule-page .week-cal-day{scroll-snap-align:start;min-height:126px}.schedule-page .task-list-wrap{padding:23px 20px 22px}.schedule-page .task-list-focus{font-size:clamp(1.4rem,6.4vw,1.9rem)}.schedule-insights{gap:13px}}@media (max-width:600px){.schedule-date-range{margin-top:14px}.schedule-hero-stats{grid-template-columns:1fr}.schedule-stat-card{grid-template-columns:30px minmax(0,1fr);min-height:58px;display:grid}.schedule-stat-card>span:last-child{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.schedule-stat-card strong{grid-area:1/2;font-size:1.15rem}.schedule-insights{grid-template-columns:1fr}.schedule-reflection-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-page .task-list-header{flex-direction:column;gap:18px}.schedule-weekly-targets{padding:20px}.task-list-progress-copy{flex-direction:row;justify-content:space-between;align-items:baseline;width:100%}.task-list-progress-copy strong{font-size:1.75rem}.task-list-section-heading small{display:none}.schedule-page .task-item{grid-template-columns:21px 20px minmax(0,1fr) auto;gap:8px;min-height:61px;padding-left:9px;padding-right:10px}.task-order{font-size:.56rem}.schedule-page .task-duration{min-width:45px;padding:5px 6px}}@media (max-width:390px){.schedule-page .task-list-wrap{padding-left:15px;padding-right:15px}.schedule-page .task-item{grid-template-columns:19px minmax(0,1fr) auto}.task-order{display:none}.schedule-stat-card small{font-size:.58rem}}@media (prefers-reduced-motion:reduce){.schedule-page .week-cal-day,.schedule-page .task-item,.schedule-week-track>span,.schedule-summary-track>span,.schedule-target-track>span,.task-list-progress-track>span,.schedule-load-track i{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
