@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Variable;font-style:italic;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-italic-DUE6_iCb.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:italic;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-italic-Cz4n9dED.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-italic-BicUS2cM.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-italic-BfTTTDIL.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-italic-Py8at3oI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Delius Swash Caps;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/delius-swash-caps-latin-400-normal-BMme4KBi.woff2)format("woff2"),url(/assets/delius-swash-caps-latin-400-normal-C1_s7SRG.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box;margin:0;padding:0}:root{--font-display:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-body:"DM Sans Variable", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono Variable", "SF Mono", Monaco, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--duration-instant:.1s;--duration-fast:.18s;--duration-normal:.28s;--duration-slow:.4s;--duration-slower:.6s;--ease-default:cubic-bezier(.4, 0, .2, 1);--ease-in:cubic-bezier(.55, 0, 1, .45);--ease-out:cubic-bezier(0, .55, .45, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.25, .1, .25, 1);--ease-elastic:cubic-bezier(.68, -.55, .265, 1.55);--z-base:0;--z-dropdown:100;--z-sticky:500;--z-header:1000;--z-overlay:1500;--z-modal:2000;--z-lightbox:3000;--z-tooltip:4000;--bg-primary:#faf7f2;--bg-secondary:#fffcf7;--bg-tertiary:#f5f1ea;--bg-elevated:#fff;--bg-overlay:#2c241666;--bg-paper:#fdf9f3;--bg-canvas:#f0ebe3;--text-primary:#2c2416;--text-secondary:#5c4a32;--text-tertiary:#7d6b52;--text-muted:#74644f;--text-inverse:#fffcf7;--border-color:#5c4a323d;--border-color-strong:#9b8a73;--border-focus:#c4785d;--accent-color:#c4785d;--accent-hover:#b0684d;--accent-active:#9c5840;--accent-light:#c4785d1f;--accent-lighter:#c4785d0f;--accent-secondary:#e8a844;--accent-secondary-light:#e8a84426;--success-color:#7d9b76;--success-light:#7d9b7626;--warning-color:#d4a84b;--warning-light:#d4a84b26;--error-color:#9f3f3f;--error-light:#c17b7b26;--info-color:#7b9bb5;--info-light:#7b9bb526;--shadow-xs:0 1px 2px #2c24160f;--shadow-sm:0 2px 4px #2c241614, 0 1px 2px #2c24160a;--shadow-md:0 4px 8px #2c241614, 0 2px 4px #2c24160a;--shadow-lg:0 8px 16px #2c24161a, 0 4px 8px #2c24160f;--shadow-xl:0 16px 32px #2c24161f, 0 8px 16px #2c241614;--shadow-2xl:0 24px 48px #2c241629, 0 12px 24px #2c24161a;--shadow-focus:0 0 0 3px #c4785d4d;--shadow-paper:0 1px 3px #2c24161a, 0 0 0 1px #2c24160d;--shadow-lifted:0 12px 24px #2c241626, 0 4px 8px #2c24161a;--hover-overlay:#2c24160a;--active-overlay:#2c241614;--selected-overlay:#c4785d1a;--header-bg:#e8dfd0;--header-text:#2c2416;--note-white:#fffcf7;--note-red:#f2d4cf;--note-orange:#f5dfc4;--note-yellow:#f7ebc4;--note-green:#d4e8d0;--note-teal:#c9e5e0;--note-cyan:#c9dfe8;--note-blue:#d0dbe8;--note-purple:#e0d4e8;--note-pink:#f0d4e0;--note-brown:#e0d4c4;--note-gray:#e5e0d8}body.dark-mode{--bg-primary:#1a1814;--bg-secondary:#242019;--bg-tertiary:#2e2a22;--bg-elevated:#302b23;--bg-overlay:#0009;--bg-paper:#282420;--bg-canvas:#1e1b17;--text-primary:#f5f1ea;--text-secondary:#c9c0b0;--text-tertiary:#9e9484;--text-muted:#6e6458;--text-inverse:#1a1814;--border-color:#f5f1ea1a;--border-color-strong:#f5f1ea33;--border-focus:#d4906e;--accent-color:#d4906e;--accent-hover:#e0a080;--accent-active:#ebb090;--accent-light:#d4906e26;--accent-lighter:#d4906e14;--accent-secondary:#f0b850;--accent-secondary-light:#f0b8502e;--success-color:#8fb085;--success-light:#8fb0852e;--warning-color:#e0b860;--warning-light:#e0b8602e;--error-color:#d09090;--error-light:#d090902e;--info-color:#90b0c8;--info-light:#90b0c82e;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 2px 4px #00000040, 0 1px 2px #0003;--shadow-md:0 4px 8px #0000004d, 0 2px 4px #0003;--shadow-lg:0 8px 16px #00000059, 0 4px 8px #00000040;--shadow-xl:0 16px 32px #0006, 0 8px 16px #0000004d;--shadow-2xl:0 24px 48px #00000080;--shadow-focus:0 0 0 3px #d4906e66;--shadow-paper:0 1px 3px #0000004d, 0 0 0 1px #ffffff0d;--shadow-lifted:0 12px 24px #0006, 0 4px 8px #0000004d;--hover-overlay:#ffffff0a;--active-overlay:#ffffff14;--selected-overlay:#d4906e1f;--header-bg:#2e2a22;--header-text:#f5f1ea;--note-white:#2a2620;--note-red:#3d2a28;--note-orange:#3d3020;--note-yellow:#3d3820;--note-green:#283d28;--note-teal:#203838;--note-cyan:#203038;--note-blue:#202838;--note-purple:#302838;--note-pink:#382030;--note-brown:#302820;--note-gray:#303028}body.oled-mode{--bg-primary:#000;--bg-secondary:#0a0908;--bg-tertiary:#141210;--bg-elevated:#1a1816;--bg-overlay:#000c;--bg-paper:#0f0e0c;--bg-canvas:#050504;--text-primary:#f5f1ea;--text-secondary:#b8afa0;--text-tertiary:#8a8070;--text-muted:#5c5448;--text-inverse:#000;--border-color:#f5f1ea14;--border-color-strong:#f5f1ea26;--border-focus:#d4906e;--header-bg:#0a0908;--header-text:#f5f1ea;--note-white:#141210;--note-red:#2a1a18;--note-orange:#2a2010;--note-yellow:#2a2810;--note-green:#182a18;--note-teal:#102828;--note-cyan:#102028;--note-blue:#101828;--note-purple:#201828;--note-pink:#281020;--note-brown:#201810;--note-gray:#202018}body.eink-mode{--bg-primary:#fff;--bg-secondary:#f8f8f8;--bg-tertiary:#f0f0f0;--bg-elevated:#fff;--bg-overlay:#0000004d;--bg-paper:#fff;--bg-canvas:#f5f5f5;--text-primary:#000;--text-secondary:#333;--text-tertiary:#555;--text-muted:#777;--text-inverse:#fff;--border-color:#000;--border-color-strong:#000;--border-focus:#000;--accent-color:#000;--accent-hover:#333;--accent-active:#000;--accent-light:#e8e8e8;--accent-lighter:#f0f0f0;--success-color:#000;--success-light:#e8e8e8;--warning-color:#555;--warning-light:#e8e8e8;--error-color:#000;--error-light:#e8e8e8;--info-color:#000;--info-light:#e8e8e8;--shadow-xs:none;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;--shadow-2xl:none;--shadow-focus:none;--shadow-paper:none;--shadow-lifted:none;--hover-overlay:#e0e0e0;--active-overlay:#ccc;--selected-overlay:#d8d8d8;--header-bg:#fff;--header-text:#000;--note-white:#fff;--note-red:#e8e8e8;--note-orange:#e0e0e0;--note-yellow:#f0f0f0;--note-green:#e8e8e8;--note-teal:#e4e4e4;--note-cyan:#e0e0e0;--note-blue:#e0e0e0;--note-purple:#e4e4e4;--note-pink:#e8e8e8;--note-brown:#d8d8d8;--note-gray:#d0d0d0}body.eink-mode,body.eink-mode *,body.eink-mode :before,body.eink-mode :after{transition:none!important;animation:none!important}html{height:100%!important;overflow:hidden!important}body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-normal);line-height:var(--leading-normal);letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--duration-slow) var(--ease-smooth), color var(--duration-normal) var(--ease-smooth);height:100%!important;overflow:hidden!important}#root{height:100%!important;overflow:hidden!important}h1,h2,h3,.heading{font-family:var(--font-display);font-weight:var(--font-medium);letter-spacing:0;line-height:var(--leading-tight)}code,pre,.mono{font-family:var(--font-mono)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus{outline:none}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}::selection{background:var(--accent-light);color:var(--text-primary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-full);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary);background-clip:padding-box;border:3px solid #0000}*{scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent}body.eink-mode ::-webkit-scrollbar-thumb{background:#666;border:2px solid #fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes gentlePulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes paperGrain{0%,to{transform:translate(0)}10%{transform:translate(-1%,-1%)}20%{transform:translate(1%,1%)}30%{transform:translate(-1%,1%)}40%{transform:translate(1%,-1%)}50%{transform:translate(-1%)}60%{transform:translate(1%)}70%{transform:translateY(1%)}80%{transform:translateY(-1%)}90%{transform:translate(1%,1%)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.paper-texture{position:relative}.paper-texture:before{content:"";opacity:.03;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:absolute;inset:0}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{font-family:var(--font-body);background:var(--bg-canvas);color:var(--text-primary);transition:background var(--duration-slow) var(--ease-smooth), color var(--duration-normal) var(--ease-smooth)}body:before{content:"";opacity:.025;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:fixed;inset:0}body.dark-mode:before,body.oled-mode:before{opacity:.015}body.eink-mode:before{display:none}#root{z-index:1;height:100%;position:relative;overflow:hidden}.App{background:0 0;flex-direction:column;display:flex;height:100vh!important;overflow:hidden!important}.App-header{background:var(--header-bg);color:var(--header-text);padding:var(--space-4) var(--space-6);box-shadow:var(--shadow-sm);z-index:var(--z-header);border-bottom:1px solid var(--border-color);transition:all var(--duration-slow) var(--ease-smooth);animation:headerSlideDown .4s var(--ease-out) both;flex-shrink:0;position:relative}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.App-header:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent-color) 20%, var(--accent-secondary) 50%, var(--accent-color) 80%, transparent 100%);opacity:.6;height:3px;position:absolute;bottom:0;left:0;right:0}.oled-mode .App-header{border-bottom-color:var(--border-color)}.oled-mode .App-header:after{opacity:.4}.eink-mode .App-header{box-shadow:none;border-bottom:2px solid #000}.eink-mode .App-header:after{display:none}.header-content{width:100%;max-width:100%;padding:0 var(--space-4);align-items:center;gap:var(--space-8);grid-template-columns:auto 1fr auto;margin:0 auto;display:grid}.App-header h1{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-medium);align-items:center;gap:var(--space-3);letter-spacing:-.02em;margin:0;display:flex}.App-header p{font-size:var(--font-size-sm);opacity:.7;font-weight:var(--font-normal);margin:0}.user-info{align-items:center;gap:var(--space-4);display:flex}.demo-user-identity{align-items:center;gap:var(--space-2);display:flex}.demo-user-icon{color:var(--text-secondary);flex-shrink:0}.demo-user-badge,.mobile-demo-badge{min-height:24px;padding:2px var(--space-2);color:#172033;font-size:var(--font-size-xs);font-weight:var(--font-bold);letter-spacing:.04em;text-transform:uppercase;background:#f4a340;border:1px solid #263d5b;border-radius:5px;align-items:center;line-height:1;display:inline-flex;transform:rotate(1deg)}.demo-banner{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);color:#334155;font-size:var(--font-size-sm);line-height:var(--leading-relaxed);z-index:calc(var(--z-header) - 1);background:#fff7ed;border-bottom:2px solid #d97706;flex-wrap:wrap;display:flex;position:relative}.demo-banner strong{color:#7c3500;font-weight:var(--font-bold)}.demo-banner span+span:before{content:"•";margin-right:var(--space-3);color:#d97706;font-weight:var(--font-bold)}.dark-mode .demo-user-badge,.oled-mode .demo-user-badge,.dark-mode .mobile-demo-badge,.oled-mode .mobile-demo-badge{color:#172033;background:#f4b860;border-color:#f8fafc}.dark-mode .demo-banner,.oled-mode .demo-banner{color:#e2e8f0;background:#251d16;border-bottom-color:#f4b860}.dark-mode .demo-banner strong,.oled-mode .demo-banner strong{color:#f4b860}.eink-mode .demo-user-badge,.eink-mode .mobile-demo-badge{color:#000;background:#fff;border:2px solid #000;transform:none}.eink-mode .demo-banner{color:#000;background:#fff;border-bottom:2px solid #000}.eink-mode .demo-banner strong,.eink-mode .demo-banner span+span:before{color:#000}.user-info .theme-toggle{background:var(--hover-overlay);width:40px;height:40px;box-shadow:none;border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-smooth);border:none;justify-content:center;align-items:center;margin:0;padding:0;font-size:20px;display:flex;position:static}.user-info .theme-toggle:hover{background:var(--active-overlay);transform:rotate(15deg)scale(1.05)}.user-name{font-family:var(--font-body);font-weight:var(--font-medium);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-5);background:var(--bg-paper);border-radius:var(--radius-2xl);cursor:default;border:1px solid var(--border-color);color:var(--text-primary);transition:all var(--duration-normal) var(--ease-smooth);box-shadow:var(--shadow-xs)}.user-name.clickable{cursor:pointer}.user-name.clickable:hover{background:var(--bg-elevated);box-shadow:var(--shadow-md);border-color:var(--accent-color);transform:translateY(-2px)}.eink-mode .user-name{box-shadow:none;background:#fff;border:2px solid #000}.btn-primary{padding:var(--space-3) var(--space-6);background:var(--accent-color);color:var(--text-inverse);font-family:var(--font-body);font-weight:var(--font-semibold);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-normal) var(--ease-smooth);font-size:var(--font-size-sm);border:none;position:relative;overflow:hidden;box-shadow:0 2px 8px #c4785d40,inset 0 1px #ffffff26}.btn-primary:before{content:"";width:100%;height:100%;transition:left var(--duration-slower) var(--ease-smooth);background:linear-gradient(90deg,#0000,#ffffff26,#0000);position:absolute;top:0;left:-100%}.btn-primary:hover:not(:disabled):before{left:100%}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-3px)scale(1.02);box-shadow:0 8px 20px #c4785d59,inset 0 1px #fff3}.btn-primary:active:not(:disabled){transition-duration:.1s;transform:translateY(0)scale(.98);box-shadow:0 2px 4px #c4785d33}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:var(--space-3) var(--space-6);background:var(--bg-paper);border:1px solid var(--border-color-strong);color:var(--text-primary);font-family:var(--font-body);font-weight:var(--font-medium);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-normal) var(--ease-smooth);font-size:var(--font-size-sm)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--accent-color);color:var(--accent-color);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{padding:var(--space-2) var(--space-4);color:var(--text-secondary);font-family:var(--font-body);font-weight:var(--font-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-fast) var(--ease-smooth);font-size:var(--font-size-sm);background:0 0;border:none}.btn-ghost:hover{background:var(--hover-overlay);color:var(--text-primary)}.btn-ghost:active{background:var(--active-overlay)}.btn-icon{border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;color:var(--text-tertiary);transition:all var(--duration-fast) var(--ease-smooth);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:var(--hover-overlay);color:var(--text-primary);transform:scale(1.12)}.btn-icon:active{background:var(--active-overlay);transition-duration:.1s;transform:scale(.9)}.btn-icon.active{background:var(--accent-light);color:var(--accent-color)}.btn-danger{padding:var(--space-3) var(--space-6);background:var(--error-color);color:#fff;font-family:var(--font-body);font-weight:var(--font-semibold);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-normal) var(--ease-smooth);font-size:var(--font-size-sm);border:none}.btn-danger:hover:not(:disabled){filter:brightness(.9);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-logout{padding:var(--space-2) var(--space-5);border:1px solid var(--border-color);color:var(--text-secondary);font-family:var(--font-body);font-weight:var(--font-medium);border-radius:var(--radius-2xl);cursor:pointer;transition:all var(--duration-normal) var(--ease-smooth);font-size:var(--font-size-sm);background:0 0}.btn-logout:hover{background:var(--error-light);border-color:var(--error-color);color:var(--error-color);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-logout:active{transition-duration:.1s;transform:translateY(0)scale(.97)}.eink-mode .btn-logout{background:#fff;border:2px solid #000}.eink-mode .btn-logout:hover{color:#fff;background:#000;transform:none}.App-container{background:var(--bg-primary);flex:1;min-height:0;display:flex;overflow:hidden!important}.App-main{max-width:1400px;padding:var(--space-8) var(--space-6);scrollbar-width:none;-ms-overflow-style:none;flex:1;width:100%;margin:0 auto;overflow:hidden auto!important}.App-main::-webkit-scrollbar{display:none}.loading{text-align:center;padding:var(--space-16);font-size:var(--font-size-base);color:var(--text-tertiary);align-items:center;gap:var(--space-5);flex-direction:column;display:flex}.loading-spinner{border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;width:44px;height:44px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 0%, var(--bg-secondary) 50%, var(--bg-tertiary) 100%);border-radius:var(--radius-md);background-size:200% 100%;animation:2s ease-in-out infinite shimmer}.skeleton-card{height:140px;margin-bottom:var(--space-4);border-radius:var(--radius-lg)}.skeleton-text{height:14px;margin-bottom:var(--space-3);border-radius:var(--radius-sm)}.skeleton-text.short{width:55%}.auth-loading{justify-content:center;align-items:center;gap:var(--space-5);background:var(--bg-canvas);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex}.auth-loading:before{content:"";background:radial-gradient(circle at 50% 30%, var(--accent-lighter) 0%, transparent 60%);opacity:.5;position:absolute;inset:0}.empty-state{text-align:center;padding:var(--space-20) var(--space-8);color:var(--text-muted)}.empty-state p:first-child{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-light);margin-bottom:var(--space-3);color:var(--text-tertiary);letter-spacing:-.02em}.empty-hint{font-size:var(--font-size-sm);color:var(--text-muted);margin-top:var(--space-3)}.empty-hint kbd{background:var(--bg-paper);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:3px var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-medium);box-shadow:var(--shadow-xs);color:var(--text-secondary)}.pagination{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-10) 0;margin-top:var(--space-8);display:flex}.pagination button{padding:var(--space-2) var(--space-5);background:var(--bg-paper);border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-body);font-weight:var(--font-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-normal) var(--ease-smooth);font-size:var(--font-size-sm)}.pagination button:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--accent-color);color:var(--accent-color);box-shadow:var(--shadow-sm);transform:translateY(-2px)scale(1.03)}.pagination button:active:not(:disabled){transition-duration:.1s;transform:translateY(0)scale(.97)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{font-family:var(--font-display);font-weight:var(--font-medium);color:var(--text-secondary);font-size:var(--font-size-sm)}.keyboard-shortcuts-hint{margin-top:var(--space-12);padding:var(--space-5);background:var(--bg-paper);border-radius:var(--radius-lg);border:1px solid var(--border-color);max-width:560px;box-shadow:var(--shadow-paper);margin-left:auto;margin-right:auto}.keyboard-shortcuts-hint summary{cursor:pointer;font-family:var(--font-display);font-weight:var(--font-medium);color:var(--text-primary);padding:var(--space-2);-webkit-user-select:none;user-select:none;font-size:var(--font-size-base);transition:color var(--duration-normal) var(--ease-smooth)}.keyboard-shortcuts-hint summary:hover{color:var(--accent-color)}.keyboard-shortcuts-hint ul{margin-top:var(--space-5);padding-left:var(--space-4);list-style:none}.keyboard-shortcuts-hint li{margin-bottom:var(--space-3);color:var(--text-secondary);font-size:var(--font-size-sm);align-items:center;gap:var(--space-4);display:flex}.keyboard-shortcuts-hint kbd{background:var(--bg-canvas);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-medium);color:var(--text-primary);text-align:center;min-width:100px;box-shadow:inset 0 -1px 0 var(--border-color)}.notes-section{margin-bottom:var(--space-10);animation:fadeInUp var(--duration-slow) var(--ease-out)}.section-title{font-family:var(--font-display);font-size:var(--font-size-xs);font-weight:var(--font-semibold);letter-spacing:.15em;color:var(--text-muted);margin:0 0 var(--space-4) var(--space-2);text-transform:uppercase;animation:slideInRight var(--duration-slow) var(--ease-out) both}.floating-controls{top:var(--space-5);right:var(--space-5);gap:var(--space-2);z-index:var(--z-header);display:flex;position:fixed}.mobile-menu-toggle{background:var(--bg-paper);border:1px solid var(--border-color);padding:var(--space-2);cursor:pointer;color:var(--text-primary);margin-right:var(--space-2);border-radius:var(--radius-md);transition:all var(--duration-normal) var(--ease-smooth);box-shadow:var(--shadow-xs);display:none}.mobile-menu-toggle:hover{background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.eink-mode .mobile-menu-toggle{border:2px solid #000}@media (width<=1200px){.App-main{max-width:100%;padding:var(--space-6) var(--space-4)}}@media (width<=768px){.App-header{padding:var(--space-3) var(--space-4)}.App-header h1{font-size:var(--font-size-xl)}.App-main{padding:var(--space-4) var(--space-3)}.header-content{gap:var(--space-3);grid-template-columns:auto 1fr auto}.user-info{gap:var(--space-2)}.demo-banner{justify-content:flex-start;align-items:flex-start;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs)}.demo-banner strong,.demo-banner span{width:100%}.demo-banner span+span:before{margin-right:var(--space-2)}.pagination{gap:var(--space-3);padding:var(--space-6) 0;flex-wrap:wrap}.keyboard-shortcuts-hint{margin-top:var(--space-8)}.keyboard-shortcuts-hint li{align-items:flex-start;gap:var(--space-2);flex-direction:column}.keyboard-shortcuts-hint kbd{min-width:auto}.section-title{margin-left:var(--space-1)}.floating-controls{top:var(--space-3);right:var(--space-3)}.mobile-menu-toggle{display:flex!important}.App-header .logo-container{display:none}.empty-state p:first-child{font-size:var(--font-size-2xl)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes noteAppear{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.visually-hidden{clip:rect(1px, 1px, 1px, 1px);overflow:hidden;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important}.paper-card{background:var(--bg-paper);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-paper);transition:all var(--duration-normal) var(--ease-smooth)}.paper-card:hover{box-shadow:var(--shadow-lifted);transform:translateY(-2px)}body.doodle-mode{--font-display:"Delius Swash Caps", "Comic Sans MS", cursive;--font-body:"Delius Swash Caps", "Comic Sans MS", cursive;--font-mono:"JetBrains Mono Variable", "SF Mono", Monaco, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:8px;--radius-xl:8px;--radius-2xl:8px;--bg-primary:#f8fcff;--bg-secondary:#fff;--bg-tertiary:#eaf7fd;--bg-elevated:#fff;--bg-overlay:#11182759;--bg-paper:#fff;--bg-canvas:#f8fcff;--text-primary:#111827;--text-secondary:#263d5b;--text-tertiary:#4b5563;--text-muted:#6b7280;--text-inverse:#fff;--border-color:#263d5b47;--border-color-strong:#263d5b;--border-focus:#49b6e5;--accent-color:#263d5b;--accent-hover:#1d2f48;--accent-active:#142239;--accent-light:#49b6e52e;--accent-lighter:#49b6e514;--accent-secondary:#49b6e5;--accent-secondary-light:#49b6e538;--success-color:#16a34a;--success-light:#16a34a24;--warning-color:#d97706;--warning-light:#d9770626;--error-color:#dc2626;--error-light:#dc262621;--info-color:#263d5b;--info-light:#49b6e52e;--shadow-xs:2px 2px 0 #263d5b1f;--shadow-sm:3px 3px 0 #263d5b24;--shadow-md:4px 4px 0 #263d5b29;--shadow-lg:5px 5px 0 #263d5b2e;--shadow-xl:7px 7px 0 #263d5b33;--shadow-2xl:9px 9px 0 #263d5b38;--shadow-focus:0 0 0 3px #49b6e559, 3px 3px 0 #263d5b38;--shadow-paper:4px 4px 0 #263d5b29;--shadow-lifted:7px 7px 0 #263d5b33;--hover-overlay:#49b6e51f;--active-overlay:#263d5b24;--selected-overlay:#49b6e538;--header-bg:#49b6e5;--header-text:#111827;--note-white:#fff;--note-red:#ffe2e2;--note-orange:#ffe8cc;--note-yellow:#fff6bf;--note-green:#dcfce7;--note-teal:#ccfbf1;--note-cyan:#d8f3ff;--note-blue:#dbeafe;--note-purple:#ede9fe;--note-pink:#fce7f3;--note-brown:#f1e3d3;--note-gray:#f3f4f6}body.doodle-mode:before{opacity:1;background-image:linear-gradient(#49b6e521 1px,#0000 1px),linear-gradient(90deg,#49b6e521 1px,#0000 1px);background-size:28px 28px}body.doodle-mode .note,body.doodle-mode .note-modal,body.doodle-mode .sidebar,body.doodle-mode .settings-modal,body.doodle-mode .auth-box,body.doodle-mode .toast{border:2px solid var(--border-color-strong);border-radius:var(--radius-md);box-shadow:4px 4px #263d5b29}body.doodle-mode button,body.doodle-mode input,body.doodle-mode textarea,body.doodle-mode select{border-radius:var(--radius-md)}body.doodle-mode input,body.doodle-mode textarea,body.doodle-mode select{border-color:var(--border-color-strong)}body.doodle-mode .note:hover,body.doodle-mode .user-name.clickable:hover{transform:translate(-1px,-1px);box-shadow:6px 6px #263d5b2e}body.doodle-mode .note-tag,body.doodle-mode .tag-pill{border:1px dashed var(--border-color-strong)}body.doodle-mode .btn-primary,body.doodle-mode .btn-secondary,body.doodle-mode .auth-button{border:2px solid var(--border-color-strong);box-shadow:3px 3px #263d5b2e}body.doodle-mode .auth-container{background:0 0}body.doodle-mode .auth-box{border-radius:8px 5px 7px 4px;box-shadow:7px 7px #263d5b33}body.doodle-mode .auth-box:before{border-top-style:dashed;border-top-color:#d97706}body.doodle-mode .auth-button{color:#fff;background:#263d5b}.doodle-mode .App-header{border-bottom:2px solid var(--border-color-strong);box-shadow:0 3px #263d5b38}.doodle-mode .App-header:after{opacity:1;background:repeating-linear-gradient(90deg,#263d5b 0 18px,#fff 18px 24px,#d97706 24px 36px,#fff 36px 42px);height:4px}.note-form-container{max-width:600px;margin:0 auto var(--space-8);animation:formSlideDown .5s var(--ease-bounce) both}@keyframes formSlideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.note-form-button{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);transition:all .3s var(--ease-bounce);cursor:pointer;align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--font-size-sm);text-align:left;font-family:inherit;display:flex}.note-form-button:hover{box-shadow:var(--shadow-md);background:var(--bg-primary);border-color:var(--border-color-strong);transform:translateY(-2px)}.note-form-button:active{transition-duration:.1s;transform:translateY(0)scale(.99)}.note-form-button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.note-form-button svg{opacity:.6;transition:opacity var(--duration-normal) var(--ease-default);flex-shrink:0}.note-form-button:hover svg{opacity:1}.note-form-button span{flex:1}.note-form-title{width:100%;font-size:var(--font-size-base);font-weight:var(--font-medium);margin-bottom:var(--space-3);color:var(--text-primary);transition:color var(--duration-normal) var(--ease-default);background:0 0;border:none;outline:none;padding:0;font-family:inherit}.note-form-content{width:100%;font-size:var(--font-size-sm);resize:none;color:var(--text-primary);font-family:inherit;line-height:var(--leading-normal);min-height:46px;transition:color var(--duration-normal) var(--ease-default);background:0 0;border:none;outline:none;padding:0}.note-form-tags{width:100%;font-size:var(--font-size-xs);padding:var(--space-3) 0 0 0;border:none;border-top:1px solid var(--border-color);margin-top:var(--space-3);color:var(--text-secondary);background:0 0;outline:none;font-family:inherit}.note-form-tags::placeholder,.note-form-title::placeholder,.note-form-content::placeholder{color:var(--text-muted);opacity:.8}.note-form-actions{margin-top:var(--space-4);padding-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.form-buttons{align-items:center;gap:var(--space-2);display:flex}.eink-mode .note-form-button{box-shadow:none;background:#fff;border:2px solid #000}.eink-mode .note-form-button:hover{box-shadow:none;background:#f5f5f5}.eink-mode .note-form-tags{border-top-color:#000}@media (width<=768px){.note-form-container{margin:0 0 var(--space-6) 0}.note-form-button{border-left:none;border-right:none;border-radius:0}}.note{background:var(--bg-paper);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-md);transition:transform .35s var(--ease-bounce), box-shadow .3s var(--ease-smooth), border-color .3s var(--ease-smooth);cursor:pointer;border:1px solid var(--border-color);break-inside:avoid;animation:noteSlideIn .5s var(--ease-bounce) both;animation-delay:calc(var(--note-index,0) * 60ms);flex-direction:column;display:flex;position:relative;overflow:hidden}@keyframes noteSlideIn{0%{opacity:0;transform:translateY(20px)scale(.95)}40%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)}}.note:hover{box-shadow:var(--shadow-lg);border-color:var(--accent-color);transform:translateY(-4px)scale(1.01)}.note:active{transition-duration:.1s;transform:translateY(-1px)scale(.99)}.note.editing{cursor:default}.note.dragging{opacity:.6;cursor:grabbing;box-shadow:var(--shadow-xl);transform:rotate(2deg)scale(1.02)}.note.drag-over{border:2px dashed var(--accent-color);background:var(--accent-light)}.note.drag-over-tag{border:2px dashed var(--success);background:#4b7f5214;transform:scale(1.02)}.note-content-wrapper{flex:1;min-height:60px}.note-title{font-size:var(--font-size-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-3) 0;color:var(--text-primary);font-family:var(--font-display);word-wrap:break-word;letter-spacing:-.01em;line-height:1.4;transition:color .3s}.note-content{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;line-height:1.65;font-family:var(--font-body);-webkit-line-clamp:6;-webkit-box-orient:vertical;max-height:9em;margin:0;transition:color .3s;display:-webkit-box;position:relative;overflow:hidden}.note-content:after{content:"";background:linear-gradient(to bottom, transparent, var(--note-bg-color,var(--bg-paper)));pointer-events:none;height:2em;position:absolute;bottom:0;left:0;right:0}.note-todo-list{gap:var(--space-2);flex-direction:column;max-height:9em;margin:0;padding:0;display:flex;position:relative;overflow:hidden}.note-todo-list:after{content:"";background:linear-gradient(to bottom, transparent, var(--note-bg-color,var(--bg-paper)));pointer-events:none;height:2em;position:absolute;bottom:0;left:0;right:0}.note-todo-item{align-items:flex-start;gap:var(--space-2);padding:var(--space-1) 0;display:flex}.note-todo-checkbox{cursor:pointer;border-radius:var(--radius-xs);width:16px;height:16px;accent-color:var(--accent-color);flex-shrink:0;margin-top:2px}.note-todo-text{font-size:var(--font-size-sm);color:var(--text-primary);word-break:break-word;line-height:1.5;font-family:var(--font-body);flex:1}.note-todo-text.completed{color:var(--text-muted);text-decoration:line-through}.dark-mode .note-todo-text{color:#ffffffde}.dark-mode .note-todo-text.completed{color:#ffffff80}.note-link-previews{margin-top:var(--space-3)}.note-images{gap:var(--space-2);margin-top:var(--space-3);border-radius:var(--radius-md);grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}.note-images.single{grid-template-columns:1fr}.note-image-preview{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--bg-secondary);position:relative;overflow:hidden}.note-image-preview img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.note-image-preview:hover img{transform:scale(1.08)}.note-images-more{color:#fff;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-semibold);border-radius:var(--radius-sm) 0 0 0;background:#2c2416cc;position:absolute;bottom:0;right:0}.dark-mode .note-image-preview{background:#ffffff0d}.oled-mode .note-image-preview{background:#ffffff14}.note-link{color:var(--accent-color);font-weight:var(--font-medium);cursor:pointer;border-bottom:1px solid #0000;text-decoration:none;transition:all .2s;position:relative}.note-link:hover{border-bottom-color:var(--accent-color);opacity:.85}.note-link:hover:after{content:attr(data-url);background:var(--bg-inverse);color:var(--text-inverse);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-xs);white-space:nowrap;z-index:100;text-overflow:ellipsis;max-width:300px;margin-bottom:var(--space-2);box-shadow:var(--shadow-lg);pointer-events:none;animation:.2s fadeIn;position:absolute;bottom:100%;left:0;overflow:hidden}.dark-mode .note-link{color:var(--accent-color)}.dark-mode .note-link:hover:after{color:#000000de;background:#fffffff2}.todo-item{align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;margin-right:var(--space-2);display:inline-flex}.todo-checkbox{appearance:none;border:2px solid var(--border-strong);border-radius:var(--radius-xs);cursor:pointer;flex-shrink:0;width:18px;height:18px;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.todo-checkbox:hover{border-color:var(--accent-color);background:var(--accent-light)}.todo-checkbox:checked{background:var(--accent-color);border-color:var(--accent-color)}.todo-checkbox:checked:after{content:"✓";color:#fff;font-size:11px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dark-mode .todo-checkbox{border-color:#fff6}.dark-mode .todo-checkbox:hover{border-color:var(--accent-color)}.dark-mode .todo-checkbox:checked{background:var(--accent-color);border-color:var(--accent-color)}.note-tags{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.note-tag{background:var(--accent-light);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--accent-color);font-weight:var(--font-medium);font-family:var(--font-body);transition:all .25s var(--ease-bounce);border:1px solid #0000}.note-tag:hover{border-color:var(--accent-color);background:#c4785d26;transform:translateY(-2px)scale(1.05)}.note-collaborators{align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) 0;font-size:var(--font-size-xs);color:var(--text-muted);display:flex}.dark-mode .note-collaborators{color:#ffffffb3}.oled-mode .note-collaborators{color:#fffc}.collaborators-text{font-weight:var(--font-medium);margin-right:var(--space-1)}.collaborator-avatars{align-items:center;gap:-4px;display:flex}.collaborator-avatar{border-radius:var(--radius-full);background:var(--accent-color);color:#fff;width:24px;height:24px;font-size:var(--font-size-xs);font-weight:var(--font-semibold);border:2px solid var(--bg-paper);cursor:default;justify-content:center;align-items:center;margin-left:-6px;transition:all .2s;display:flex}.collaborator-avatar:first-child{margin-left:0}.collaborator-avatar:hover{z-index:1;transform:scale(1.15)}.collaborator-avatar.more{background:var(--bg-tertiary);color:var(--text-muted);font-size:.5rem}.dark-mode .collaborator-avatar.more{background:#fff3}.oled-mode .collaborator-avatar.more{background:#ffffff40}.note-hover-actions{opacity:0;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-2);transition:opacity .25s var(--ease-smooth), transform .25s var(--ease-bounce);border-top:1px solid #0000;display:flex;transform:translateY(6px)}.note:hover .note-hover-actions,.note:focus .note-hover-actions,.note:focus-within .note-hover-actions{opacity:1;border-top-color:var(--border-color);transform:translateY(0)}.note:focus-visible{outline:3px solid var(--focus-color,#1a73e8);outline-offset:3px}.action-btn{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);transition:all .2s var(--ease-bounce);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.action-btn:hover{background:var(--hover-overlay);color:var(--text-primary);transform:scale(1.15)}.action-btn:active{background:var(--active-overlay);transform:scale(.9)}.action-btn svg{transition:transform .2s cubic-bezier(.4,0,.2,1)}.pin-btn:active svg{animation:.5s cubic-bezier(.4,0,.2,1) pinPulse;transform:rotate(20deg)scale(1.2)}@keyframes pinPulse{0%{transform:rotate(0)scale(1)}50%{transform:rotate(20deg)scale(1.3)}to{transform:rotate(0)scale(1)}}.pin-btn.pinned{color:var(--accent-color)}.pin-btn.pinned svg{fill:var(--accent-color);animation:.3s cubic-bezier(.4,0,.2,1) pinned}@keyframes pinned{0%{transform:rotate(0)scale(1)}25%{transform:rotate(-15deg)scale(1.2)}75%{transform:rotate(15deg)scale(1.2)}to{transform:rotate(0)scale(1)}}.note-edit-title,.note-edit-content,.note-edit-tags{width:100%;font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;padding:0}.note-edit-title{font-size:var(--font-size-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-3);font-family:var(--font-display)}.note-edit-title::placeholder{color:var(--text-muted)}.note-edit-content{font-size:var(--font-size-sm);resize:none;min-height:80px;margin-bottom:var(--space-3);line-height:1.65}.note-edit-content::placeholder{color:var(--text-muted)}.note-edit-tags{font-size:var(--font-size-xs);padding:var(--space-2) 0;border-top:1px solid var(--border-color);margin-bottom:var(--space-2);color:var(--text-secondary)}.note-edit-tags::placeholder{color:var(--text-muted)}.note-edit-footer{margin-top:var(--space-1);justify-content:space-between;align-items:center;display:flex;position:relative}.note-toolbar{align-items:center;gap:var(--space-1);display:flex}.toolbar-btn{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.toolbar-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.toolbar-btn:active{background:var(--active-overlay)}.color-picker-popup{z-index:100;animation:.2s cubic-bezier(.4,0,.2,1) slideUp;position:absolute;bottom:40px;left:0}.note-edit-actions{gap:var(--space-2);display:flex}.btn-text{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-medium);color:var(--text-primary);font-family:var(--font-body);background:0 0;border:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-text:hover{background:var(--hover-overlay)}.btn-text:active{background:var(--active-overlay)}.dark-mode .note{background:var(--bg-paper);border-color:var(--border-color);box-shadow:0 2px 8px #0000004d,0 1px 3px #0003}.dark-mode .note:hover{box-shadow:0 4px 16px #0006,0 2px 6px #0000004d}.dark-mode .note-title,.dark-mode .note-content,.dark-mode .note-edit-title,.dark-mode .note-edit-content{color:var(--text-primary)}.dark-mode .note-tag{color:#e8a87c;background:#c4785d33}.dark-mode .note-edit-tags{color:#ffffffb3;border-top-color:#ffffff1f}.dark-mode .action-btn,.dark-mode .toolbar-btn{color:#ffffffb3}.dark-mode .action-btn:hover,.dark-mode .toolbar-btn:hover{color:#fffffff2;background:#ffffff14}.dark-mode .action-btn:active,.dark-mode .toolbar-btn:active{background:#ffffff29}.dark-mode .btn-text{color:#ffffffde}.dark-mode .btn-text:hover{background:#ffffff14}.dark-mode .btn-text:active{background:#ffffff29}.dark-mode .pin-btn.pinned{color:var(--accent-color)}.dark-mode .pin-btn.pinned svg{fill:var(--accent-color)}.dark-mode .note.drag-over-tag{background:#7cb97f1f;border:2px dashed #7cb97f}.oled-mode .note{background:#0a0a0a;border-color:#ffffff1a;box-shadow:0 1px 4px #00000080,0 1px 2px #0000004d}.oled-mode .note:hover{box-shadow:0 4px 12px #0009,0 2px 4px #0006}.oled-mode .note-title,.oled-mode .note-content,.oled-mode .note-edit-title,.oled-mode .note-edit-content{color:#fffffff2}.oled-mode .note-tag{color:#e8a87c;background:#c4785d40}.oled-mode .note-edit-tags{color:#fffc;border-top-color:#ffffff26}.oled-mode .action-btn,.oled-mode .toolbar-btn{color:#ffffffd9}.oled-mode .action-btn:hover,.oled-mode .toolbar-btn:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .action-btn:active,.oled-mode .toolbar-btn:active{background:#ffffff2e}.oled-mode .btn-text{color:#fffffff2}.oled-mode .btn-text:hover{background:#ffffff1a}.oled-mode .btn-text:active{background:#ffffff2e}.oled-mode .pin-btn.pinned{color:#e8a87c}.oled-mode .pin-btn.pinned svg{fill:#e8a87c}.oled-mode .note-todo-text{color:#fffffff2}.oled-mode .note-todo-text.completed{color:#ffffff80}.oled-mode .note-link{color:#e8a87c}.oled-mode .note-link:hover:after{background:#e8a87c26}.oled-mode .todo-checkbox{background:#ffffff14;border-color:#ffffff4d}.oled-mode .todo-checkbox:hover{background:#ffffff1f}.oled-mode .todo-checkbox:checked{background:var(--accent-color);border-color:var(--accent-color)}.oled-mode .note.drag-over-tag{background:#7cb97f26;border:2px dashed #7cb97f}.eink-mode .note{box-shadow:none;background:#fff;border:2px solid #000;border-radius:0}.eink-mode .note:hover{box-shadow:none;background:#f5f5f5;transform:none}.eink-mode .note-title,.eink-mode .note-content,.eink-mode .note-edit-title,.eink-mode .note-edit-content{color:#000;font-family:Georgia,Times New Roman,serif}.eink-mode .note-tag{color:#000;background:#e0e0e0;border:1px solid #000;border-radius:0}.eink-mode .note-edit-tags{color:#333;border-top-color:#000}.eink-mode .action-btn,.eink-mode .toolbar-btn{color:#000}.eink-mode .action-btn:hover,.eink-mode .toolbar-btn:hover{background:#e0e0e0}.eink-mode .action-btn:active,.eink-mode .toolbar-btn:active{background:#ccc}.eink-mode .btn-text{color:#000}.eink-mode .btn-text:hover{background:#e0e0e0}.eink-mode .btn-text:active{background:#ccc}.eink-mode .pin-btn.pinned{color:#000;background:#ccc}.eink-mode .pin-btn.pinned svg{fill:#000}.eink-mode .note-todo-text{color:#000}.eink-mode .note-todo-text.completed{color:#666}.eink-mode .note-link{color:#000;text-decoration:underline}.eink-mode .todo-checkbox{background:#fff;border-width:2px;border-color:#000;border-radius:0}.eink-mode .todo-checkbox:hover{background:#e0e0e0}.eink-mode .todo-checkbox:checked{background:#000;border-color:#000}.eink-mode .note.drag-over-tag{background:#e0e0e0;border:2px dashed #000}.eink-mode .note-collaborators{color:#333}.eink-mode .collaborator-avatar{color:#fff;background:#000;border:2px solid #fff}.eink-mode .collaborator-avatar.more{background:#666}.eink-mode .note-image-preview{background:#f0f0f0;border:1px solid #000}.eink-mode .note-content:after,.eink-mode .note-todo-list:after{background:linear-gradient(#0000,#fff)}@media (width<=768px){.note{padding:var(--space-3) var(--space-4)}.note-title{font-size:var(--font-size-base)}.note-content{font-size:var(--font-size-xs)}.note-hover-actions{display:none!important}.note:hover{transform:none}}.confirm-dialog-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s ease-in-out fadeIn;display:flex;position:fixed;inset:0}.confirm-dialog{background:#fff;border-radius:12px;width:90%;max-width:400px;padding:2rem;animation:.3s ease-out slideUp;box-shadow:0 10px 40px #0000004d}.confirm-dialog-title{color:#333;margin:0 0 1rem;font-size:1.5rem;font-weight:600}.confirm-dialog-message{color:#666;margin:0 0 1.5rem;font-size:1rem;line-height:1.5}.confirm-dialog-actions{justify-content:flex-end;gap:.75rem;display:flex}.btn-cancel-confirm,.btn-confirm{cursor:pointer;border:none;border-radius:6px;padding:.6rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.btn-cancel-confirm{color:#333;background:#e0e0e0}.btn-cancel-confirm:hover{background:#d0d0d0}.btn-confirm{color:#fff;background:#f44336}.btn-confirm:hover{background:#d32f2f;transform:scale(1.02)}@media (width<=768px){.confirm-dialog{padding:1.5rem}.confirm-dialog-title{font-size:1.3rem}.confirm-dialog-message{font-size:.95rem}}.link-preview{cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:8px;margin-top:.75rem;transition:all .2s;display:flex;position:relative;overflow:hidden}.link-preview:hover{border-color:#0003;box-shadow:0 2px 8px #0000001a}.link-preview:focus-visible{outline:3px solid var(--focus-color,#1a73e8);outline-offset:2px}.dark-mode .link-preview{background:#2d2e30;border-color:#ffffff1f}.dark-mode .link-preview:hover{border-color:#fff3;box-shadow:0 2px 8px #0000004d}.link-preview-image-container{background:#0000000d;flex-shrink:0;width:120px;height:120px;overflow:hidden}.link-preview-image{object-fit:cover;width:100%;height:100%}.dark-mode .link-preview-image-container{background:#ffffff0d}.link-preview-content{flex-direction:column;flex:1;gap:.25rem;min-width:0;padding:.75rem 1rem;display:flex;overflow:hidden}.link-preview-site{color:#0009;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:500;overflow:hidden}.dark-mode .link-preview-site{color:#fff9}.link-preview-title{color:#000000de;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.938rem;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.dark-mode .link-preview-title{color:#ffffffde}.link-preview-description{color:#0009;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.813rem;line-height:1.4;display:-webkit-box;overflow:hidden}.dark-mode .link-preview-description{color:#fff9}.link-preview-url{color:#00000080;white-space:nowrap;text-overflow:ellipsis;margin-top:auto;font-size:.75rem;overflow:hidden}.dark-mode .link-preview-url{color:#ffffff80}.link-preview-remove{cursor:pointer;color:#0009;opacity:0;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex;position:absolute;top:.5rem;right:.5rem;box-shadow:0 2px 4px #0000001a}.link-preview:hover .link-preview-remove,.link-preview:focus-within .link-preview-remove,.link-preview-remove:focus-visible{opacity:1}.link-preview-remove:hover{color:#000000de;background:#fff;transform:scale(1.1)}.dark-mode .link-preview-remove{color:#ffffffb3;background:#000000b3}.dark-mode .link-preview-remove:hover{color:#ffffffde;background:#000000e6}@media (width<=768px){.link-preview-image-container{width:100px;height:100px}.link-preview-content{padding:.5rem .75rem}}.note-list{column-count:4;animation:listFadeIn .3s var(--ease-out) both;column-gap:16px;margin-top:24px;padding:0 16px}@keyframes listFadeIn{0%{opacity:0}to{opacity:1}}@media (width<=1600px){.note-list{column-count:3}}@media (width<=1200px){.note-list{column-count:2}}@media (width<=768px){.note-list{column-count:1;padding:0 8px}}.note-list .note{width:100%;margin-bottom:16px;display:inline-block}.empty-state{text-align:center;color:#00000061;grid-column:1/-1;padding:4rem 2rem}.empty-state p:first-child{margin-bottom:1rem;font-size:3rem}.empty-state p:last-child{color:#0000008a;font-size:1.2rem}.dark-mode .empty-state{color:#ffffff80}.dark-mode .empty-state p:last-child{color:#ffffffb3}.oled-mode .empty-state{color:#fff9}.oled-mode .empty-state p:last-child{color:#fffc}.search-bar{max-width:600px;animation:fadeInScale .4s var(--ease-bounce) both;flex:1;margin:0;position:relative}.search-input{border:2px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);transition:all .35s var(--ease-bounce);border-radius:24px;padding:.75rem 3rem .75rem 1rem;font-family:inherit;font-size:1rem}.search-input:focus{border-color:var(--accent-color);outline:none;transform:scale(1.02);box-shadow:0 4px 16px #c4785d33}.search-input::placeholder{color:var(--text-muted);transition:opacity .3s}.search-input:focus::placeholder{opacity:.5}.search-icon{pointer-events:none;opacity:.5;transition:opacity .3s ease, transform .3s var(--ease-bounce);font-size:1.2rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.search-input:focus~.search-icon{opacity:.8;transform:translateY(-50%)scale(1.1)}.search-clear{cursor:pointer;color:#999;width:24px;height:24px;transition:all .25s var(--ease-bounce);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.25rem;font-size:1.2rem;display:flex;position:absolute;top:50%;right:3rem;transform:translateY(-50%)}.search-clear:hover{color:#333;background:#0000001a;transform:translateY(-50%)scale(1.15)rotate(90deg)}.eink-mode .search-input{background:#fff;border:2px solid #000}.eink-mode .search-input:focus{box-shadow:none;border-color:#000}.eink-mode .search-clear:hover{color:#000;background:#e0e0e0}@media (width<=768px){.search-bar{max-width:100%;margin-bottom:1.5rem}.search-input{padding:.65rem 3rem .65rem .875rem;font-size:.95rem}}.theme-toggle{display:none}.user-info .theme-toggle,.sidebar-mobile-actions .theme-toggle{transition:transform .35s var(--ease-bounce);display:flex}.user-info .theme-toggle:hover,.sidebar-mobile-actions .theme-toggle:hover{transform:rotate(30deg)scale(1.1)}.user-info .theme-toggle:active,.sidebar-mobile-actions .theme-toggle:active{transition-duration:.5s;transform:rotate(180deg)scale(.9)}.logo-container{align-items:center;gap:10px;animation:.5s cubic-bezier(.4,0,.2,1) logoFadeIn;display:flex}.logo-svg{filter:drop-shadow(0 1px 3px #0000001f);flex-shrink:0;transition:transform .2s}.logo-svg:hover{transform:scale(1.06)}.logo-text{color:#1a1a1a;letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.dark-mode .logo-text,.oled-mode .logo-text{color:#fff}.dark-mode .logo-svg,.oled-mode .logo-svg{filter:drop-shadow(0 1px 4px #0000004d)}@keyframes logoFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.sidebar{background:var(--bg-secondary);width:260px;height:100%;transition:all var(--duration-slow) var(--ease-default);border-right:1px solid var(--border-color);flex-shrink:0;overflow:hidden auto!important}.dark-mode .sidebar{background:#1e1c1a99}.oled-mode .sidebar{background:#0a0a0acc}.eink-mode .sidebar{background:#fff;border-right:2px solid #000}.sidebar.collapsed{width:72px}.sidebar-toggle{top:var(--space-2);right:var(--space-2);padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);transition:all var(--duration-normal) var(--ease-default);z-index:10;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.sidebar-toggle:hover{background:var(--hover-overlay);color:var(--text-primary)}.sidebar-toggle:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.eink-mode .sidebar-toggle:hover{background:#e0e0e0}.sidebar-nav{padding:var(--space-3) 0}.sidebar-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-6);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--duration-normal) var(--ease-default);border-radius:0 var(--radius-xl) var(--radius-xl) 0;margin:var(--space-1) var(--space-3) var(--space-1) 0;text-align:left;font-family:var(--font-body);background:0 0;border:none;display:flex}.sidebar-item:hover{background:var(--accent-light);color:var(--accent-color)}.sidebar-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}.sidebar-item.active{color:var(--accent-color);font-weight:var(--font-semibold);border-left:3px solid var(--accent-color);padding-left:calc(var(--space-6) - 3px);background:#c4785d33}.sidebar-item.dragging{opacity:.5;cursor:grabbing}.dark-mode .sidebar-item:hover{color:#e8a87c;background:#c4785d26}.dark-mode .sidebar-item.active{color:#e8a87c;background:#c4785d33;border-left-color:#e8a87c}.oled-mode .sidebar-item:hover{color:#e8a87c;background:#c4785d2e}.oled-mode .sidebar-item.active{color:#e8a87c;background:#c4785d40;border-left-color:#e8a87c}.eink-mode .sidebar-item:hover{background:#e0e0e0}.eink-mode .sidebar-item.active{color:#000;background:#ccc;border:1px solid #000;border-left-width:3px}.sidebar-admin{color:var(--accent-secondary);font-weight:var(--font-semibold)}.sidebar-admin:hover{color:var(--accent-secondary);background:#e8a8441f}.dark-mode .sidebar-admin{color:#e8a844}.dark-mode .sidebar-admin:hover{background:#e8a84426}.oled-mode .sidebar-admin{color:#e8a844}.oled-mode .sidebar-admin:hover{background:#e8a8442e}.eink-mode .sidebar-admin{color:#000;font-weight:var(--font-bold)}.sidebar-item svg{transition:transform var(--duration-normal) var(--ease-default);color:inherit;flex-shrink:0}.sidebar-item:hover svg{transform:scale(1.1)}.sidebar-item span{white-space:nowrap;opacity:1;transition:opacity var(--duration-normal) var(--ease-default);flex:1;overflow:hidden}.sidebar.collapsed .sidebar-item span{opacity:0;width:0}.sidebar-item .count{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:var(--font-normal);background:var(--bg-tertiary);padding:2px var(--space-2);border-radius:var(--radius-full);text-align:center;min-width:20px;transition:all var(--duration-normal) var(--ease-default);flex:0}.sidebar-item:hover .count,.sidebar-item.active .count{color:var(--accent-color);background:#c4785d33}.dark-mode .sidebar-item:hover .count,.dark-mode .sidebar-item.active .count{color:#e8a87c;background:#e8a87c33}.sidebar.collapsed .sidebar-item{padding:var(--space-3);border-radius:var(--radius-md);justify-content:center;margin-right:0}.sidebar-section-title{padding:var(--space-4) var(--space-6) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;transition:all var(--duration-slow) var(--ease-default);max-height:40px;font-family:var(--font-body);overflow:hidden}.sidebar.collapsed .sidebar-section-title{opacity:0;max-height:0;margin:0;padding:0}.sidebar-divider,.sidebar-mobile-controls{display:none}@media (width<=768px){.sidebar{width:300px;height:100vh;z-index:var(--z-header);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) var(--ease-default);background:var(--bg-paper);-webkit-backdrop-filter:blur(20px);position:fixed;top:0;left:0;transform:translate(-100%)}.dark-mode .sidebar{background:#1e1c1afa}.oled-mode .sidebar{background:#0a0a0afa}.eink-mode .sidebar{box-shadow:none;background:#fff;border-right:2px solid #000}.sidebar.mobile-open{transform:translate(0)}.sidebar-mobile-controls{padding:var(--space-5);border-bottom:1px solid var(--border-color);background:var(--bg-secondary);display:block}.sidebar-mobile-logo{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-color);justify-content:center;display:flex}.sidebar-mobile-logo .logo-container{gap:var(--space-2)}.sidebar-mobile-logo .logo-text{font-size:var(--font-size-lg);font-family:var(--font-display);color:var(--text-primary)}.sidebar-mobile-user{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--accent-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-normal) var(--ease-default);text-align:left;width:100%;font-family:var(--font-body);border:1px solid #c4785d4d;display:flex}.sidebar-mobile-user:hover{border-color:var(--accent-color);box-shadow:var(--shadow-sm);background:#c4785d33;transform:translateY(-1px)}.sidebar-mobile-user-static{cursor:default}.sidebar-mobile-user-static:hover{background:var(--accent-light);box-shadow:none;border-color:#c4785d4d;transform:none}.sidebar-mobile-user:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.dark-mode .sidebar-mobile-user{background:#c4785d26;border-color:#e8a87c33}.dark-mode .sidebar-mobile-user:hover{background:#c4785d33;border-color:#e8a87c}.oled-mode .sidebar-mobile-user{background:#c4785d2e;border-color:#e8a87c40}.oled-mode .sidebar-mobile-user:hover{background:#c4785d40;border-color:#e8a87c}.eink-mode .sidebar-mobile-user{background:#f0f0f0;border:2px solid #000}.eink-mode .sidebar-mobile-user:hover{box-shadow:none;background:#e0e0e0;transform:none}.mobile-user-icon{font-size:32px}.mobile-user-name{font-size:var(--font-size-base);font-weight:var(--font-semibold);color:var(--text-primary)}.mobile-demo-badge{margin-left:auto}.sidebar-mobile-actions{justify-content:center;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.sidebar-mobile-logout{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3);background:var(--accent-color);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-normal) var(--ease-default);font-family:var(--font-body);border:none;display:flex;box-shadow:0 2px 8px #c4785d4d}.sidebar-mobile-logout:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #c4785d66}.sidebar-mobile-logout:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.eink-mode .sidebar-mobile-logout{color:#fff;box-shadow:none;background:#000}.eink-mode .sidebar-mobile-logout:hover{box-shadow:none;background:#333;transform:none}.sidebar-mobile-logout svg{width:18px;height:18px}.user-info{display:none!important}.mobile-menu-toggle{display:flex!important}}.sidebar-overlay{z-index:calc(var(--z-header) - 1);animation:overlayFadeIn var(--duration-normal) var(--ease-default);-webkit-backdrop-filter:blur(4px);background:#2c241699;display:none;position:fixed;inset:0}@media (width<=768px){.sidebar-overlay{display:block}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.toast{bottom:var(--space-8);min-width:320px;max-width:500px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-xl);align-items:center;gap:var(--space-3);z-index:var(--z-modal);animation:toastSlideIn .4s var(--ease-bounce);border:1px solid var(--border-color);display:flex;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)}.toast:after{content:"";background:var(--toast-accent-color,var(--accent-color));opacity:.8;height:3px;animation:3s linear forwards toastProgress;position:absolute;bottom:0;left:0}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%)translateY(100%)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes toastProgress{0%{width:100%}to{width:0%}}.toast-icon{font-size:var(--font-size-xl);font-weight:var(--font-bold);border-radius:var(--radius-full);background:var(--toast-icon-bg,var(--accent-light));flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.toast-message{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-medium);line-height:var(--leading-snug);flex:1}.toast-close{color:var(--text-tertiary);cursor:pointer;font-size:var(--font-size-lg);padding:var(--space-1);border-radius:var(--radius-sm);transition:all var(--duration-normal) var(--ease-default);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.toast-close:hover{background:var(--hover-overlay);color:var(--text-primary)}.toast-close:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.toast-success{border-left:4px solid var(--success-color);--toast-accent-color:var(--success-color);--toast-icon-bg:var(--success-light)}.toast-success .toast-icon{color:var(--success-color)}.toast-error{border-left:4px solid var(--error-color);--toast-accent-color:var(--error-color);--toast-icon-bg:var(--error-light)}.toast-error .toast-icon{color:var(--error-color)}.toast-warning{border-left:4px solid var(--warning-color);--toast-accent-color:var(--warning-color);--toast-icon-bg:var(--warning-light)}.toast-warning .toast-icon{color:var(--warning-color)}.toast-info{border-left:4px solid var(--info-color);--toast-accent-color:var(--info-color);--toast-icon-bg:var(--info-light)}.toast-info .toast-icon{color:var(--info-color)}.eink-mode .toast{box-shadow:none;border:2px solid #000}.eink-mode .toast:after{background:#000}.eink-mode .toast-icon{color:#000;background:#e0e0e0}.eink-mode .toast-success,.eink-mode .toast-error,.eink-mode .toast-warning,.eink-mode .toast-info{border-left:4px solid #000}@media (width<=768px){.toast{min-width:auto;left:var(--space-4);right:var(--space-4);max-width:none;bottom:var(--space-4);transform:none}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}body:not(.dark-mode):not(.oled-mode):not(.eink-mode):not(.doodle-mode) .auth-container{--bg-canvas:#edf3f6;--bg-secondary:#fff;--bg-primary:#f8fafc;--bg-tertiary:#e5e7eb;--text-primary:#111827;--text-secondary:#334155;--text-muted:#64748b;--border-color:#263d5b3d;--border-color-strong:#64748b;--border-focus:#d97706;--accent-secondary:#e9a23b;--shadow-focus:0 0 0 3px #49b6e552}.auth-container{background:var(--bg-canvas);height:100%;min-height:100%;padding:max(var(--space-5), env(safe-area-inset-top)) max(var(--space-5), env(safe-area-inset-right)) max(var(--space-5), env(safe-area-inset-bottom)) max(var(--space-5), env(safe-area-inset-left));justify-content:center;align-items:flex-start;display:flex;overflow-y:auto}.auth-box{background:var(--bg-secondary);border:2px solid var(--border-color-strong);padding:var(--space-10);width:100%;max-width:440px;animation:authFadeIn .4s var(--ease-out);border-radius:8px;margin:auto;position:relative;box-shadow:7px 7px #263d5b29}.auth-box:before{content:"";top:var(--space-3);left:var(--space-6);right:var(--space-6);border-top:3px solid var(--accent-secondary);pointer-events:none;position:absolute;transform:rotate(-.4deg)}@keyframes authFadeIn{0%{opacity:0;transform:translateY(var(--space-5))}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-header h1{margin:0 0 var(--space-3) 0;color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-semibold)}.auth-header p{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--leading-relaxed);margin:0}.demo-login-panel{gap:var(--space-4);margin:calc(-1 * var(--space-2)) 0 var(--space-8);padding:var(--space-5);background:#fff7ed;border:2px solid #d97706;border-radius:8px;flex-direction:column;display:flex;position:relative;overflow:hidden;transform:rotate(-.15deg);box-shadow:4px 4px #d9770633}.demo-login-panel:after{content:"";pointer-events:none;border-top:3px solid #263d5b;border-bottom:2px solid #e9a23b;width:56px;height:16px;position:absolute;top:12px;right:-18px;transform:rotate(24deg)}.demo-login-copy{z-index:1;position:relative}.demo-login-kicker{margin-bottom:var(--space-2);color:#8a3f00;font-size:var(--font-size-xs);font-weight:var(--font-bold);letter-spacing:.06em;text-transform:uppercase;display:inline-block}.demo-login-copy h2{margin:0 0 var(--space-2);color:#172033;font-family:var(--font-display);font-size:var(--font-size-xl);line-height:var(--leading-tight)}.demo-login-copy p{color:#334155;font-size:var(--font-size-sm);line-height:var(--leading-relaxed);margin:0}.demo-login-button{z-index:1;justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);color:#172033;cursor:pointer;font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-bold);transition:transform var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default), background-color var(--duration-fast) var(--ease-default);background:#f4a340;border:2px solid #263d5b;border-radius:6px;display:flex;position:relative}.demo-login-button:hover:not(:disabled){background:#ffb75d;transform:translate(-1px,-1px);box-shadow:3px 3px #263d5b}.demo-login-button:active:not(:disabled){transform:translate(1px,1px);box-shadow:1px 1px #263d5b}.demo-login-button:focus-visible{outline-offset:3px;outline:3px solid #49b6e5}.demo-login-button:disabled{cursor:not-allowed;opacity:.65}.auth-form{gap:var(--space-5);flex-direction:column;display:flex}.auth-error{background:var(--error-light);border:1px solid var(--error-color);color:var(--error-color);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center;animation:shake .4s var(--ease-default)}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group label{font-weight:var(--font-semibold);color:var(--text-primary);font-size:var(--font-size-sm)}.form-group input{padding:var(--space-3) var(--space-4);border:2px solid var(--border-color-strong);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--bg-primary);color:var(--text-primary);transition:border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default), background-color var(--duration-fast) var(--ease-default);font-family:inherit}.form-group input::placeholder{color:var(--text-muted)}.form-group input:hover:not(:disabled){border-color:var(--border-color-strong)}.form-group input:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus);outline:none}.form-group input:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-tertiary)}.form-hint{color:var(--text-muted);font-size:var(--font-size-xs);margin-top:calc(-1 * var(--space-1));line-height:var(--leading-relaxed)}.auth-button{padding:var(--space-4) var(--space-6);font-size:var(--font-size-base);font-weight:var(--font-semibold);cursor:pointer;transition:transform var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default), background-color var(--duration-fast) var(--ease-default);color:#fff;margin-top:var(--space-3);background:#263d5b;border:2px solid #263d5b;border-radius:8px;font-family:inherit}.auth-button:hover:not(:disabled){background:#1d2f48;transform:translate(-1px,-1px);box-shadow:4px 4px #263d5b3d}.auth-button:active:not(:disabled){transform:translateY(0);box-shadow:1px 1px #263d5b33}.auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.oauth-section{margin-top:var(--space-6)}.oauth-divider{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.oauth-divider:before,.oauth-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.oauth-divider span{color:var(--text-muted);font-size:var(--font-size-sm);white-space:nowrap}.oauth-buttons{gap:var(--space-3);display:flex}.oauth-button{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:2px solid var(--border-color-strong);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-normal) var(--ease-default);flex:1;font-family:inherit;display:flex}.oauth-button:hover:not(:disabled){border-color:var(--border-color-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.oauth-button:active:not(:disabled){transform:translateY(0)}.oauth-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.oauth-button svg{flex-shrink:0}.oauth-google:hover:not(:disabled){background:#4285f40d;border-color:#4285f4}.oauth-github:hover:not(:disabled){background:#0000000d;border-color:#333}.auth-footer{margin-top:var(--space-6);text-align:center;padding-top:var(--space-6);border-top:1px solid var(--border-color)}.auth-footer p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.auth-link{color:var(--accent-active);font-weight:var(--font-semibold);cursor:pointer;font-size:inherit;transition:all var(--duration-normal) var(--ease-default);background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none}.auth-link:hover:not(:disabled){color:var(--text-primary);text-decoration:underline}.auth-link:disabled{opacity:.6;cursor:not-allowed}.auth-link:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}body.dark-mode .auth-container{background:var(--bg-canvas)}body.dark-mode .auth-error{border-color:var(--error-color);color:var(--error-color);background:#f28b8226}body.dark-mode .demo-login-panel,body.oled-mode .demo-login-panel{background:#251d16;border-color:#f4b860;box-shadow:4px 4px #f4b86038}body.dark-mode .demo-login-kicker,body.oled-mode .demo-login-kicker{color:#f4b860}body.dark-mode .demo-login-copy h2,body.oled-mode .demo-login-copy h2{color:#f8fafc}body.dark-mode .demo-login-copy p,body.oled-mode .demo-login-copy p{color:#e2e8f0}body.dark-mode .auth-button{color:#111827;background:#49b6e5;border-color:#49b6e5}body.dark-mode .auth-link{color:#8ab4f8}body.dark-mode .auth-link:hover:not(:disabled){color:#aecbfa}body.dark-mode .oauth-button{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}body.dark-mode .oauth-google:hover:not(:disabled){background:#8ab4f81a;border-color:#8ab4f8}body.dark-mode .oauth-github:hover:not(:disabled){background:#ffffff14;border-color:#aaa}body.oled-mode .auth-container{background:var(--bg-canvas)}body.oled-mode .auth-box{border:1px solid #ffffff1a}body.eink-mode .auth-container{background:var(--bg-canvas)}body.eink-mode .auth-box{box-shadow:none;border:2px solid #000}body.eink-mode .auth-button{color:#fff;background:#000}body.eink-mode .auth-button:hover:not(:disabled){box-shadow:none;background:#333;transform:none}body.eink-mode .auth-link{color:#000;text-decoration:underline}body.eink-mode .auth-error{color:#000;background:#f0f0f0;border:2px solid #000}body.eink-mode .demo-login-panel{box-shadow:none;background:#fff;border:2px solid #000;transform:none}body.eink-mode .demo-login-panel:after{border-color:#000}body.eink-mode .demo-login-kicker,body.eink-mode .demo-login-copy h2,body.eink-mode .demo-login-copy p{color:#000}body.eink-mode .demo-login-button{color:#000;background:#fff;border-color:#000}body.eink-mode .demo-login-button:hover:not(:disabled){box-shadow:none;color:#fff;background:#000;transform:none}body.eink-mode .form-group input:focus{box-shadow:none;border-color:#000}body.eink-mode .oauth-button{background:#fff;border:2px solid #000}body.eink-mode .oauth-button:hover:not(:disabled){box-shadow:none;background:#f0f0f0;transform:none}@media (width<=500px){.auth-box{padding:var(--space-8) var(--space-5);border-radius:8px}.auth-header h1{font-size:var(--font-size-2xl)}.auth-header p{font-size:var(--font-size-sm)}}@media (width<=360px){.auth-container{padding:var(--space-3)}.auth-box{padding:var(--space-6) var(--space-4)}}.admin-console-overlay{-webkit-backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:2rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.admin-console{background:var(--bg-primary);border-radius:16px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;display:flex;position:relative;box-shadow:0 24px 48px #0000004d,0 8px 16px #0003}.admin-console-header{justify-content:space-between;align-items:center;padding:2rem;display:flex}.admin-console-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.admin-close-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.admin-close-btn:hover{color:var(--text-primary);background:#00000014}.dark-mode .admin-close-btn:hover{background:#ffffff14}.admin-tabs{background:var(--bg-secondary);padding:0 2rem;display:flex}.admin-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:1rem;font-size:.95rem;font-weight:500;transition:all .2s}.admin-tab:hover{color:var(--text-primary);background:#0000000d}.admin-tab.active{color:#667eea;background:#667eea1a;border-bottom-color:#667eea}.admin-content{flex:1;padding:1.5rem;overflow-y:auto}.admin-loading{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem;display:flex}.admin-error{color:#c33;background:#fee;border:1px solid #fcc;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;display:flex}.admin-error button{color:#fff;cursor:pointer;background:#c33;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem}.admin-stats{flex-direction:column;gap:1.5rem;display:flex}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.stat-card h3{color:var(--text-primary);margin:0 0 1rem;font-size:1.1rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}.stat-item{flex-direction:column;gap:.5rem;display:flex}.stat-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.stat-value{color:#667eea;font-size:2rem;font-weight:700}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table thead{background:var(--bg-primary);border-bottom:2px solid var(--border-color)}.admin-table th{text-align:left;color:var(--text-primary);padding:.75rem;font-weight:600}.admin-table td{border-bottom:1px solid var(--border-color);color:var(--text-secondary);padding:.75rem}.admin-table tbody tr:hover{background:#667eea0d}.user-actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn-admin-toggle,.btn-user-delete{cursor:pointer;border:none;border-radius:4px;padding:.4rem .8rem;font-size:.8rem;font-weight:500;transition:all .2s}.btn-admin-toggle{color:#fff;background:#667eea}.btn-admin-toggle:hover:not(:disabled){background:#5568d3;transform:translateY(-1px)}.btn-user-delete{color:#fff;background:#ff6b6b}.btn-user-delete:hover:not(:disabled){background:#ee5a5a;transform:translateY(-1px)}.btn-admin-toggle:disabled,.btn-user-delete:disabled{opacity:.5;cursor:not-allowed}.admin-settings{padding:1.5rem}.settings-section{background:var(--bg-secondary);border-radius:12px;margin-bottom:1rem;padding:1.5rem}.settings-section h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.25rem}.settings-description{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.938rem;line-height:1.5}.setting-item{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.toggle-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;display:flex}.toggle-checkbox{display:none}.toggle-switch{background:#ccc;border-radius:24px;width:48px;height:24px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.toggle-checkbox:checked+.toggle-switch{background:var(--accent-color)}.toggle-checkbox:checked+.toggle-switch:after{left:26px}.toggle-checkbox:disabled+.toggle-switch{opacity:.5;cursor:not-allowed}.toggle-text{color:var(--text-primary);font-size:1rem;font-weight:500}.loading-indicator{color:var(--text-secondary);font-size:.875rem;font-style:italic}.settings-note{color:var(--text-secondary);border-left:3px solid var(--accent-color);background:#00000008;border-radius:8px;margin:.75rem 0 0;padding:.75rem;font-size:.875rem}.dark-mode .settings-note{background:#ffffff08}.dark-mode .admin-console{background:var(--bg-primary)}.dark-mode .stat-card{background:#ffffff0d}.dark-mode .admin-error{color:#f88;background:#ff646433;border-color:#ff646466}.oled-mode .admin-close-btn:hover{background:#ffffff1a}.oled-mode .settings-note{background:#ffffff0d}.oled-mode .admin-console{background:#0a0a0a}.oled-mode .stat-card{background:#ffffff14}.oled-mode .admin-error{color:#f99;background:#ff646440;border-color:#ff646480}@media (width<=768px){.admin-console{border-radius:0;max-width:100%;max-height:100vh}.admin-table{font-size:.8rem}.admin-table th,.admin-table td{padding:.5rem}.user-actions{flex-direction:column}.btn-admin-toggle,.btn-user-delete{width:100%}.stat-grid{grid-template-columns:1fr}}.admin-users-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.admin-users-header h3{color:var(--text-primary);margin:0;font-size:1.25rem}.btn-create-user{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s}.btn-create-user:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e84d}.create-user-form{background:var(--bg-secondary);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;animation:.3s slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-primary);font-size:.875rem;font-weight:500}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{border:2px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);border-radius:8px;padding:.75rem;font-size:.875rem;transition:all .2s}.form-group input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #1a73e81a}.checkbox-group{grid-column:span 2}.checkbox-group label{cursor:pointer;flex-direction:row;align-items:center;gap:.75rem}.checkbox-group input[type=checkbox]{cursor:pointer;width:20px;height:20px}.btn-submit-user{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-submit-user:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e84d}.btn-submit-user:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.form-grid{grid-template-columns:1fr}.checkbox-group{grid-column:span 1}}.note-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2000;padding:var(--space-8);background:#2c2416bf;justify-content:center;align-items:flex-start;animation:.25s cubic-bezier(.4,0,.2,1) modalFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.note-modal{background:var(--bg-paper);border-radius:var(--radius-xl);width:100%;max-width:720px;margin:var(--space-8) 0;border:1px solid var(--border-color);flex-direction:column;transition:all .3s;animation:.35s cubic-bezier(.4,0,.2,1) modalSlideUp;display:flex;position:relative;box-shadow:0 32px 64px #2c241640,0 16px 32px #2c241626}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(32px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.dark-mode .note-modal{background:var(--bg-paper);border-color:var(--border-color);box-shadow:0 32px 64px #00000080,0 16px 32px #0000004d}.note-modal-close{top:var(--space-4);right:var(--space-4);padding:var(--space-2);cursor:pointer;color:var(--text-muted);border-radius:var(--radius-full);z-index:10;background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.note-modal-close:hover{background:var(--hover-overlay);color:var(--text-primary)}.dark-mode .note-modal-close{color:#fff9}.dark-mode .note-modal-close:hover{color:#ffffffe6;background:#ffffff14}.note-modal-body{padding:var(--space-8);gap:var(--space-4);flex-direction:column;display:flex}.note-modal-title{width:100%;font-size:var(--font-size-2xl);font-weight:var(--font-semibold);color:var(--text-primary);font-family:var(--font-display);padding:var(--space-2) 0;letter-spacing:-.02em;background:0 0;border:none;border-bottom:2px solid #0000;outline:none;transition:all .2s}.note-modal-title:focus{border-bottom-color:#0000}.note-modal-title:focus-visible{box-shadow:none;outline:none}.note-modal-title::placeholder{color:var(--text-muted)}.dark-mode .note-modal-title{color:#fffffff2}.dark-mode .note-modal-title::placeholder{color:#fff6}.note-modal-content{width:100%;font-size:var(--font-size-base);resize:none;color:var(--text-primary);line-height:1.7;font-family:var(--font-body);padding:var(--space-2) 0;background:0 0;border:none;outline:none;min-height:120px;overflow:hidden}.note-modal-content:focus-visible{box-shadow:none;outline:none}.note-modal-content::placeholder{color:var(--text-muted)}.dark-mode .note-modal-content{color:#ffffffe6}.dark-mode .note-modal-content::placeholder{color:#fff6}.note-modal-tags-container{width:100%;padding:var(--space-2) 0}.note-modal-tags-pills{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.tag-pill{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--accent-light);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-medium);color:var(--accent-color);cursor:pointer;font-family:var(--font-body);border:1px solid #c4785d4d;transition:all .2s;display:inline-flex}.tag-pill:hover{border-color:var(--accent-color);box-shadow:var(--shadow-sm);background:#c4785d33;transform:translateY(-1px)}.tag-pill:active{box-shadow:none;transform:translateY(0)}.tag-pill-text{line-height:1}.tag-pill-remove{opacity:.6;flex-shrink:0;transition:opacity .2s}.tag-pill:hover .tag-pill-remove{opacity:1}.dark-mode .tag-pill{color:#e8a87c;background:#c4785d33;border-color:#e8a87c4d}.dark-mode .tag-pill:hover{background:#c4785d4d;border-color:#e8a87c;box-shadow:0 2px 4px #0000004d}.oled-mode .tag-pill{color:#e8a87c;background:#c4785d40;border-color:#e8a87c59}.oled-mode .tag-pill:hover{background:#c4785d59;border-color:#e8a87c;box-shadow:0 2px 4px #00000080}.note-modal-tags-input{width:100%;font-size:var(--font-size-sm);color:var(--text-secondary);font-family:var(--font-body);padding:var(--space-2) 0;background:0 0;border:none;outline:none}.note-modal-tags-input::placeholder{color:var(--text-muted)}.note-modal-tags-input:focus-visible{box-shadow:none;outline:none}.dark-mode .note-modal-tags-input{color:#ffffffb3}.dark-mode .note-modal-tags-input::placeholder{color:#fff6}.note-modal-tags{width:100%;font-size:var(--font-size-sm);color:var(--text-secondary);font-family:var(--font-body);padding:var(--space-3) 0;background:0 0;border:none;outline:none}.note-modal-tags::placeholder{color:var(--text-muted)}.note-modal-tags:focus-visible{box-shadow:none;outline:none}.dark-mode .note-modal-tags{color:#ffffffb3}.dark-mode .note-modal-tags::placeholder{color:#fff6}.note-modal-footer{padding:var(--space-5) var(--space-8);border-top:1px solid var(--border-color);background:var(--bg-secondary);border-radius:0 0 var(--radius-xl) var(--radius-xl);justify-content:space-between;align-items:center;display:flex}.note-modal-actions{gap:var(--space-3);display:flex}.btn-modal-cancel,.btn-modal-save{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;font-family:var(--font-body);border:none;transition:all .2s}.btn-modal-cancel{color:var(--text-primary);border:2px solid var(--border-color);background:0 0}.btn-modal-cancel:hover{background:var(--hover-overlay);border-color:var(--border-strong)}.dark-mode .btn-modal-cancel:hover{background:#ffffff0d}.btn-modal-save{background:var(--accent-color);color:#fff;box-shadow:0 2px 8px #c4785d59}.btn-modal-save:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #c4785d66}.btn-modal-save:disabled{opacity:.5;cursor:not-allowed}.note-modal-toolbar{align-items:center;gap:var(--space-2);display:flex}.btn-modal-checkbox{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-modal-checkbox:hover{background:var(--hover-overlay);color:var(--text-primary)}.btn-modal-checkbox:active{background:var(--active-overlay)}.btn-modal-checkbox.active{background:var(--accent-light);color:var(--accent-color)}.dark-mode .btn-modal-checkbox{color:#ffffffb3}.dark-mode .btn-modal-checkbox:hover{color:#fffffff2;background:#ffffff14}.dark-mode .btn-modal-checkbox:active{background:#ffffff29}.dark-mode .btn-modal-checkbox.active{color:#e8a87c;background:#c4785d33}.btn-modal-archive,.btn-modal-collaborate,.btn-modal-pin,.btn-modal-delete{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-modal-archive:hover,.btn-modal-collaborate:hover,.btn-modal-pin:hover,.btn-modal-delete:hover{background:var(--hover-overlay);color:var(--text-primary)}.btn-modal-archive:active,.btn-modal-collaborate:active,.btn-modal-pin:active,.btn-modal-delete:active{background:var(--active-overlay)}.btn-modal-archive.archived{color:var(--accent-secondary);background:#e8a84426}.btn-modal-pin.pinned{background:var(--accent-light);color:var(--accent-color)}.btn-modal-delete:hover{color:var(--error);background:#b44b4b1a}.dark-mode .btn-modal-archive,.dark-mode .btn-modal-collaborate,.dark-mode .btn-modal-pin,.dark-mode .btn-modal-delete{color:#ffffffb3}.dark-mode .btn-modal-archive:hover,.dark-mode .btn-modal-collaborate:hover,.dark-mode .btn-modal-pin:hover{color:#fffffff2;background:#ffffff14}.dark-mode .btn-modal-archive:active,.dark-mode .btn-modal-collaborate:active,.dark-mode .btn-modal-pin:active{background:#ffffff29}.dark-mode .btn-modal-archive.archived{color:#e8a844;background:#e8a84433}.dark-mode .btn-modal-pin.pinned{color:#e8a87c;background:#c4785d33}.dark-mode .btn-modal-delete:hover{color:#e87c7c;background:#b44b4b26}.oled-mode .btn-modal-archive,.oled-mode .btn-modal-collaborate,.oled-mode .btn-modal-pin,.oled-mode .btn-modal-delete{color:#ffffffd9}.oled-mode .btn-modal-archive:hover,.oled-mode .btn-modal-collaborate:hover,.oled-mode .btn-modal-pin:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .btn-modal-archive:active,.oled-mode .btn-modal-collaborate:active,.oled-mode .btn-modal-pin:active{background:#ffffff26}.oled-mode .btn-modal-archive.archived{color:#e8a844;background:#e8a84440}.oled-mode .btn-modal-pin.pinned{color:#e8a87c;background:#e8a87c33}.oled-mode .btn-modal-delete:hover{color:#e87c7c;background:#e87c7c33}.todo-list-container{gap:var(--space-2);padding:var(--space-2) 0;flex-direction:column;min-height:50px;display:flex}.todo-item{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid #0000;transition:all .2s;display:flex}.todo-item:hover{border-bottom-color:var(--border-color)}.dark-mode .todo-item:hover{border-bottom-color:#ffffff1a}.todo-item-checkbox{cursor:pointer;border-radius:var(--radius-full);width:18px;height:18px;accent-color:var(--accent-color);flex-shrink:0}.todo-item-input{font-size:var(--font-size-base);color:var(--text-primary);line-height:1.5;font-family:var(--font-body);padding:var(--space-1) 0;background:0 0;border:none;outline:none;flex:1;transition:all .2s}.todo-item-input.completed{color:var(--text-muted);text-decoration:line-through}.todo-item-input::placeholder{color:var(--text-muted)}.todo-item-input:focus-visible{box-shadow:none;outline:none}.dark-mode .todo-item-input{color:#ffffffe6}.dark-mode .todo-item-input.completed{color:#ffffff80}.dark-mode .todo-item-input::placeholder{color:#fff6}.todo-item-delete{padding:var(--space-1);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.todo-item:hover .todo-item-delete{opacity:1}.todo-item-delete:hover{background:var(--hover-overlay);color:var(--error)}.dark-mode .todo-item-delete{color:#ffffff80}.dark-mode .todo-item-delete:hover{color:#e87c7c;background:#ffffff14}.todo-add-item{padding:var(--space-3) 0;cursor:pointer;color:var(--text-muted);font-size:var(--font-size-sm);font-family:var(--font-body);align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;transition:all .2s;display:flex}.todo-add-item:hover{background:var(--hover-overlay);color:var(--text-primary)}.dark-mode .todo-add-item{color:#fff9}.dark-mode .todo-add-item:hover{color:#ffffffe6;background:#ffffff0d}.oled-mode .note-modal{background:#0a0a0a;border-color:#ffffff1a;box-shadow:0 32px 64px #000000b3,0 16px 32px #00000080}.oled-mode .note-modal-close{color:#ffffffb3}.oled-mode .note-modal-close:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .note-modal-title{color:#fffffff2}.oled-mode .note-modal-title::placeholder{color:#ffffff73}.oled-mode .note-modal-content{color:#fffffff2}.oled-mode .note-modal-content::placeholder{color:#ffffff73}.oled-mode .note-modal-tags{color:#fffc}.oled-mode .note-modal-tags::placeholder{color:#ffffff73}.oled-mode .btn-modal-cancel:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .btn-modal-checkbox{color:#ffffffd9}.oled-mode .btn-modal-checkbox:hover{background:#ffffff1a}.oled-mode .btn-modal-checkbox:active{background:#ffffff26}.oled-mode .btn-modal-checkbox.active{color:#e8a87c;background:#e8a87c33}.oled-mode .todo-item:hover{background:#ffffff08}.oled-mode .todo-item-input{color:#fffffff2}.oled-mode .todo-item-input.completed{color:#ffffff80}.oled-mode .todo-item-input::placeholder{color:#ffffff73}.oled-mode .todo-item-delete{color:#fff9}.oled-mode .todo-item-delete:hover{color:#e87c7c;background:#e87c7c26}.oled-mode .todo-add-item{color:#ffffffb3}.oled-mode .todo-add-item:hover{color:#fffffff2;background:#ffffff14}.note-modal-link-previews{margin-top:var(--space-3)}.note-modal-images{margin-top:var(--space-2)}.uploaded-images,.new-images-preview{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.image-preview{aspect-ratio:1;border-radius:var(--radius-md);border:2px solid var(--border-color);transition:all .2s;position:relative;overflow:hidden}.image-preview:hover{border-color:var(--accent-color);transform:scale(1.02)}.image-preview.new{border-color:var(--accent-color);border-style:dashed}.image-preview img{object-fit:cover;width:100%;height:100%}.image-delete-btn{top:var(--space-1);right:var(--space-1);padding:var(--space-1);border-radius:var(--radius-full);cursor:pointer;color:#fff;opacity:0;background:#2c2416cc;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.image-preview:hover .image-delete-btn{opacity:1}.image-delete-btn:hover{background:var(--error);transform:scale(1.1)}.new-badge{bottom:var(--space-1);right:var(--space-1);background:var(--accent-color);color:#fff;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-semibold);position:absolute}.btn-modal-image-select,.btn-modal-image-upload{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.btn-modal-image-select:hover,.btn-modal-image-upload:hover{background:var(--hover-overlay);color:var(--text-primary)}.btn-modal-image-select:active,.btn-modal-image-upload:active{background:var(--active-overlay)}.btn-modal-image-upload.uploading{background:var(--accent-light);color:var(--accent-color)}.btn-modal-image-upload:disabled{opacity:.5;cursor:not-allowed}.image-count-badge{background:var(--accent-color);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-bold);border-radius:var(--radius-full);min-width:16px;height:16px;padding:0 var(--space-1);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:flex;position:absolute;top:2px;right:2px}.dark-mode .btn-modal-image-select,.dark-mode .btn-modal-image-upload{color:#ffffffb3}.dark-mode .btn-modal-image-select:hover,.dark-mode .btn-modal-image-upload:hover{color:#fffffff2;background:#ffffff14}.dark-mode .btn-modal-image-select:active,.dark-mode .btn-modal-image-upload:active{background:#ffffff29}.dark-mode .btn-modal-image-upload.uploading{color:#e8a87c;background:#c4785d33}.dark-mode .image-preview{border-color:#fff3}.dark-mode .image-preview:hover{border-color:#e8a87c}.oled-mode .btn-modal-image-select,.oled-mode .btn-modal-image-upload{color:#ffffffd9}.oled-mode .btn-modal-image-select:hover,.oled-mode .btn-modal-image-upload:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .btn-modal-image-select:active,.oled-mode .btn-modal-image-upload:active{background:#ffffff26}.oled-mode .btn-modal-image-upload.uploading{color:#e8a87c;background:#e8a87c33}.oled-mode .image-preview{border-color:#ffffff40}.oled-mode .image-preview:hover{border-color:#e8a87c}.btn-modal-voice{padding:var(--space-2);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.btn-modal-voice:hover{background:var(--hover-overlay);color:var(--text-primary)}.btn-modal-voice:active{background:var(--active-overlay)}.btn-modal-voice.recording{color:var(--error);background:#b44b4b26;animation:1.5s ease-in-out infinite pulse-recording}.btn-modal-voice.recording:hover{background:#b44b4b40}.btn-modal-voice.transcribing{background:var(--accent-light);color:var(--accent-color);cursor:wait}.btn-modal-voice:disabled{opacity:.5;cursor:not-allowed}@keyframes pulse-recording{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.dark-mode .btn-modal-voice{color:#ffffffb3}.dark-mode .btn-modal-voice:hover{color:#fffffff2;background:#ffffff14}.dark-mode .btn-modal-voice:active{background:#ffffff29}.dark-mode .btn-modal-voice.recording{color:#e87c7c;background:#e87c7c33}.dark-mode .btn-modal-voice.recording:hover{background:#e87c7c4d}.dark-mode .btn-modal-voice.transcribing{color:#e8a87c;background:#c4785d33}.oled-mode .btn-modal-voice{color:#ffffffd9}.oled-mode .btn-modal-voice:hover{color:#fffffff2;background:#ffffff1a}.oled-mode .btn-modal-voice:active{background:#ffffff26}.oled-mode .btn-modal-voice.recording{color:#e87c7c;background:#e87c7c33}.oled-mode .btn-modal-voice.recording:hover{background:#e87c7c4d}.oled-mode .btn-modal-voice.transcribing{color:#e8a87c;background:#e8a87c33}.eink-mode .note-modal{box-shadow:none;background:#fff;border:2px solid #000;border-radius:0}.eink-mode .note-modal-close{color:#000;border:1px solid #000}.eink-mode .note-modal-close:hover{color:#000;background:#e0e0e0}.eink-mode .note-modal-title{color:#000;border-bottom-color:#0000;font-family:Georgia,Times New Roman,serif}.eink-mode .note-modal-title::placeholder{color:#666}.eink-mode .note-modal-content{color:#000;font-family:Georgia,Times New Roman,serif}.eink-mode .note-modal-content::placeholder{color:#666}.eink-mode .note-modal-tags{color:#333}.eink-mode .note-modal-tags::placeholder{color:#666}.eink-mode .note-modal-tags-input{color:#333}.eink-mode .note-modal-tags-input::placeholder{color:#666}.eink-mode .tag-pill{color:#000;background:#e0e0e0;border:1px solid #000;border-radius:0}.eink-mode .tag-pill:hover{box-shadow:none;background:#ccc;border-color:#000;transform:none}.eink-mode .note-modal-footer{background:#f5f5f5;border-radius:0}.eink-mode .btn-modal-cancel{color:#000;background:#fff;border:2px solid #000}.eink-mode .btn-modal-cancel:hover{background:#e0e0e0;border-color:#000}.eink-mode .btn-modal-save{color:#fff;box-shadow:none;background:#000}.eink-mode .btn-modal-save:hover:not(:disabled){box-shadow:none;background:#333;transform:none}.eink-mode .btn-modal-checkbox{color:#000}.eink-mode .btn-modal-checkbox:hover{background:#e0e0e0}.eink-mode .btn-modal-checkbox:active{background:#ccc}.eink-mode .btn-modal-checkbox.active{color:#000;background:#ccc}.eink-mode .btn-modal-archive,.eink-mode .btn-modal-collaborate,.eink-mode .btn-modal-pin,.eink-mode .btn-modal-delete{color:#000}.eink-mode .btn-modal-archive:hover,.eink-mode .btn-modal-collaborate:hover,.eink-mode .btn-modal-pin:hover{background:#e0e0e0}.eink-mode .btn-modal-archive:active,.eink-mode .btn-modal-collaborate:active,.eink-mode .btn-modal-pin:active{background:#ccc}.eink-mode .btn-modal-archive.archived,.eink-mode .btn-modal-pin.pinned{color:#000;background:#ccc}.eink-mode .btn-modal-delete:hover{color:#000;background:#e0e0e0}.eink-mode .todo-item:hover{background:#f5f5f5;border-bottom-color:#000}.eink-mode .todo-item-input{color:#000;font-family:Georgia,Times New Roman,serif}.eink-mode .todo-item-input.completed,.eink-mode .todo-item-input::placeholder,.eink-mode .todo-item-delete{color:#666}.eink-mode .todo-item-delete:hover{color:#000;background:#e0e0e0}.eink-mode .todo-add-item{color:#666}.eink-mode .todo-add-item:hover{color:#000;background:#e0e0e0}.eink-mode .btn-modal-image-select,.eink-mode .btn-modal-image-upload{color:#000}.eink-mode .btn-modal-image-select:hover,.eink-mode .btn-modal-image-upload:hover{background:#e0e0e0}.eink-mode .btn-modal-image-select:active,.eink-mode .btn-modal-image-upload:active{background:#ccc}.eink-mode .btn-modal-image-upload.uploading{color:#000;background:#ccc}.eink-mode .image-preview{border-color:#000;border-radius:0}.eink-mode .image-preview:hover{border-width:2px;border-color:#000}.eink-mode .btn-modal-voice{color:#000}.eink-mode .btn-modal-voice:hover{background:#e0e0e0}.eink-mode .btn-modal-voice:active{background:#ccc}.eink-mode .btn-modal-voice.recording{color:#000;background:#ccc}.eink-mode .btn-modal-voice.recording:hover{background:#b0b0b0}.eink-mode .btn-modal-voice.transcribing{color:#000;background:#e0e0e0}.lightbox-overlay{z-index:3000;background:#2c2416f2;justify-content:center;align-items:center;animation:.2s modalFadeIn;display:flex;position:fixed;inset:0}.lightbox-close{top:var(--space-6);right:var(--space-6);padding:var(--space-3);cursor:pointer;color:#fff;border-radius:var(--radius-full);z-index:3002;background:#ffffff1a;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.lightbox-close:hover{background:#fff3;transform:scale(1.1)}.lightbox-prev,.lightbox-next{padding:var(--space-4) var(--space-3);cursor:pointer;color:#fff;border-radius:var(--radius-md);z-index:3002;background:#ffffff1a;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:var(--space-8)}.lightbox-next{right:var(--space-8)}.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff40;transform:translateY(-50%)scale(1.1)}.lightbox-content{align-items:center;gap:var(--space-4);flex-direction:column;max-width:90vw;max-height:90vh;display:flex}.lightbox-content img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:85vh;box-shadow:0 8px 32px #00000080}.lightbox-counter{color:#fff;font-size:var(--font-size-base);font-weight:var(--font-medium);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(10px);background:#0009}.image-preview{cursor:pointer}.image-preview:hover{cursor:zoom-in}@media (width<=768px){.lightbox-prev,.lightbox-next{padding:var(--space-3) var(--space-2)}.lightbox-prev{left:var(--space-4)}.lightbox-next{right:var(--space-4)}.lightbox-close{top:var(--space-4);right:var(--space-4)}.lightbox-content{max-width:95vw;max-height:95vh}.lightbox-content img{max-height:90vh}.note-modal{border-radius:0;max-width:100%;min-height:100vh;margin:0;padding:0}.note-modal-overlay{padding:0}.note-modal-body{padding:var(--space-6)}.note-modal-footer{padding:var(--space-4) var(--space-6);gap:var(--space-4);border-radius:0;flex-direction:column;align-items:stretch}.note-modal-toolbar{order:2;justify-content:center}.note-modal-actions{order:1;width:100%}.btn-modal-cancel,.btn-modal-save{flex:1}.note-modal-close{padding:var(--space-2)}}.color-picker-wrapper{display:inline-block;position:relative}.color-picker-toggle{cursor:pointer;color:#000000b5;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.color-picker-toggle:hover{background:#5f636828}.dark-mode .color-picker-toggle{color:#ffffffde}.dark-mode .color-picker-toggle:hover{background:#ffffff14}.oled-mode .color-picker-toggle{color:#fffffff2}.oled-mode .color-picker-toggle:hover{background:#ffffff1a}.color-picker-popup{z-index:1000;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:12px;animation:.2s cubic-bezier(.4,0,.2,1) slideUpFade;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 3px 12px #0003,0 1px 4px #0000001f}@keyframes slideUpFade{0%{opacity:0;transform:translateY(8px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.color-picker-grid{grid-template-columns:repeat(6,1fr);gap:8px;min-width:240px;display:grid}.color-picker-option{cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:0 1px 3px #0003,inset 0 0 0 1px #0000001a}.color-picker-option:hover{transform:scale(1.2);box-shadow:0 2px 8px #0000004d,inset 0 0 0 1px #0003}.color-picker-option.selected{box-shadow:0 0 0 2px var(--bg-primary), 0 0 0 4px #0000004d;border-width:2px;border-color:#00000080}.dark-mode .color-picker-option.selected{box-shadow:0 0 0 2px var(--bg-primary), 0 0 0 4px #fff6;border-color:#fff9}.oled-mode .color-picker-option.selected{box-shadow:0 0 0 2px var(--bg-primary), 0 0 0 4px #ffffff80;border-color:#ffffffb3}.color-picker-option svg{filter:drop-shadow(0 0 2px #00000080)}@media (width<=768px){.color-picker-popup{left:50%;transform:translate(-50%)}.color-picker-grid{gap:6px;min-width:200px}.color-picker-option{width:28px;height:28px}}.friends-modal{background:var(--bg-primary);width:90%;max-width:600px;max-height:80vh;box-shadow:var(--shadow-lg);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.friends-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.friends-modal-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.close-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:50%;padding:8px;transition:background .2s}.close-btn:hover{background:#0000001a}.dark-mode .close-btn:hover{background:#ffffff1a}.friends-modal-tabs{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);display:flex}.tab-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:12px 16px;font-size:.875rem;font-weight:500;transition:all .2s}.tab-btn:hover{background:#0000000d}.dark-mode .tab-btn:hover{background:#ffffff0d}.tab-btn.active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.friends-modal-content{flex:1;padding:16px 24px;overflow-y:auto}.error-message{color:#c33;background:#fee;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;display:flex}.error-message button{cursor:pointer;color:#c33;background:0 0;border:none;font-size:1.5rem}.loading{text-align:center;color:var(--text-secondary);padding:2rem}.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.empty-state p{margin:.5rem 0}.empty-state .hint{font-size:.875rem}.friends-list{flex-direction:column;gap:8px;display:flex}.friend-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.btn-remove{cursor:pointer;color:#ea4335;background:0 0;border:none;border-radius:50%;padding:8px;transition:background .2s}.btn-remove:hover{background:#ea43351a}.requests-list{flex-direction:column;gap:12px;display:flex}.request-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px}.request-info{margin-bottom:12px}.request-name{color:var(--text-primary);margin-bottom:4px;font-weight:500}.request-email{color:var(--text-secondary);font-size:.875rem}.request-actions{gap:8px;display:flex}.btn-accept,.btn-reject{cursor:pointer;border:none;border-radius:4px;flex:1;padding:8px 16px;font-weight:500;transition:all .2s}.btn-accept{color:#fff;background:#34a853}.btn-accept:hover{background:#2d8e47}.btn-reject{color:#fff;background:#ea4335}.btn-reject:hover{background:#c5372d}.add-friend{flex-direction:column;gap:16px;display:flex}.search-box{gap:8px;display:flex}.search-box input{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;flex:1;padding:12px 16px;font-size:.9375rem}.search-box button{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:12px 24px;font-weight:500;transition:background .2s}.search-box button:hover:not(:disabled){background:var(--accent-hover)}.search-box button:disabled{opacity:.5;cursor:not-allowed}.search-results{flex-direction:column;gap:8px;display:flex}.search-result-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.user-info{flex:1}.user-name{color:var(--text-primary);margin-bottom:4px;font-weight:500}.user-email{color:var(--text-secondary);font-size:.875rem}.btn-add{background:var(--accent-color);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:8px 16px;font-weight:500;transition:background .2s}.btn-add:hover:not(:disabled){background:var(--accent-hover)}.btn-add:disabled{opacity:.5;cursor:not-allowed;background:var(--text-muted)}@media (width<=768px){.friends-modal{width:95%;max-height:90vh}.friends-modal-header{padding:16px 20px}.friends-modal-content{padding:12px 20px}.search-box{flex-direction:column}.search-box button{width:100%}}.collaborate-modal{background:var(--bg-primary);width:90%;max-width:500px;max-height:80vh;box-shadow:var(--shadow-lg);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.collaborate-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.collaborate-modal-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.collaborate-modal-content{flex:1;padding:20px 24px;overflow-y:auto}.note-preview{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:16px}.note-title{color:var(--text-primary);margin-bottom:8px;font-size:1.125rem;font-weight:600}.note-snippet{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.friends-list h3,.shared-with-section h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px;font-size:.875rem;font-weight:600}.friends-list .friend-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 16px;display:flex}.friend-info{flex:1}.friend-name{color:var(--text-primary);margin-bottom:4px;font-weight:500}.friend-email{color:var(--text-secondary);font-size:.875rem}.btn-share{background:var(--accent-color);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:8px 16px;font-weight:500;transition:all .2s}.btn-share:hover{background:var(--accent-hover)}.btn-share.shared{background:#34a853}.btn-share.shared:hover{background:#2d8e47}.shared-with-section{border-top:1px solid var(--border-color);margin-top:24px;padding-top:24px}.shared-users{flex-wrap:wrap;gap:8px;display:flex}.shared-user{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:16px;align-items:center;gap:8px;padding:6px 12px;font-size:.875rem;display:flex}.btn-remove-share{cursor:pointer;color:#ea4335;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:1.25rem;transition:background .2s;display:flex}.btn-remove-share:hover{background:#ea43351a}@media (width<=768px){.collaborate-modal{width:95%;max-height:90vh}.collaborate-modal-header,.collaborate-modal-content{padding:16px 20px}}.settings-overlay{-webkit-backdrop-filter:blur(4px);z-index:2000;background:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.settings-modal{background:var(--bg-primary);border-radius:16px;width:100%;max-width:700px;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;box-shadow:0 24px 48px #0000004d,0 8px 16px #0003}.settings-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:2rem 2rem 1rem;display:flex}.settings-header h2{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600}.settings-close{cursor:pointer;color:#0009;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.settings-close:hover{color:#000000de;background:#00000014}.dark-mode .settings-close{color:#fff9}.dark-mode .settings-close:hover{color:#ffffffde;background:#ffffff14}.settings-content{max-height:60vh;padding:1.5rem 2rem;overflow-y:auto}.settings-section{margin-bottom:2rem}.settings-section-title{color:var(--text-primary);align-items:center;margin:0 0 .5rem;font-size:1.125rem;font-weight:600;display:flex}.settings-section-description{color:var(--text-secondary);margin:0 0 1rem;font-size:.875rem}.settings-item{background:var(--bg-secondary);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex}.settings-item-info{flex:1}.settings-item-label{color:var(--text-primary);cursor:pointer;margin-bottom:.25rem;font-size:1rem;font-weight:500;display:block}.settings-item-description{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}.settings-item-control{flex-shrink:0}.toggle-switch{width:48px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#ccc;border-radius:24px;transition:all .3s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.toggle-slider{background-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(24px)}.dark-mode .toggle-slider{background-color:#555}.dark-mode input:checked+.toggle-slider{background-color:var(--accent-color)}.settings-info-box{border-left:4px solid var(--accent-color);color:var(--text-primary);background:#1a73e81a;border-radius:4px;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:1rem;font-size:.875rem;line-height:1.5;display:flex}.dark-mode .settings-info-box{background:#1a73e833}.settings-info-box svg{flex-shrink:0;margin-top:2px}.settings-footer{border-top:1px solid var(--border-color);justify-content:flex-end;padding:1rem 2rem 1.5rem;display:flex}.btn-settings-close{cursor:pointer;background:var(--accent-color);color:#fff;border:none;border-radius:8px;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.btn-settings-close:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e866}.settings-config-box{background:var(--bg-secondary);border-radius:8px;margin-top:1rem;padding:1rem;font-size:.875rem;line-height:1.6}.settings-code{border:1px solid var(--border-color);color:#d63384;background:#0000000d;border-radius:4px;margin:.5rem 0;padding:.5rem .75rem;font-family:Courier New,monospace;font-size:.875rem;display:inline-block}.dark-mode .settings-code{color:#f685b9;background:#ffffff0d}.settings-code-inline{border:1px solid var(--border-color);color:#d63384;background:#0000000d;border-radius:3px;padding:.125rem .375rem;font-family:Courier New,monospace;font-size:.8125rem}.dark-mode .settings-code-inline{color:#f685b9;background:#ffffff0d}.settings-code-block{border:1px solid var(--border-color);color:#d63384;background:#00000008;border-radius:4px;margin:.5rem 0;padding:.75rem;font-family:Courier New,monospace;font-size:.8125rem;overflow-x:auto}.dark-mode .settings-code-block{color:#f685b9;background:#ffffff08}.settings-instructions{border:1px solid var(--border-color);background:#00000005;border-radius:6px;margin-top:1rem;padding:1rem}.dark-mode .settings-instructions{background:#ffffff05}.settings-instructions strong{color:var(--text-primary);margin-bottom:.75rem;display:block}.settings-instructions ol{margin:0;padding-left:1.5rem;line-height:1.8}.settings-instructions li{color:var(--text-primary);margin-bottom:.75rem}.settings-warning-box{color:var(--text-primary);background:#ffc1071a;border-left:4px solid #ff9800;border-radius:4px;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:1rem;font-size:.875rem;line-height:1.5;display:flex}.dark-mode .settings-warning-box{background:#ffc10726}.settings-warning-box svg{color:#ff9800;flex-shrink:0;margin-top:2px}.settings-input-group{margin-bottom:1.5rem}.settings-input-label{color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.settings-input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:6px;padding:.625rem .875rem;font-family:inherit;font-size:.875rem;transition:all .2s}.settings-input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #1a73e81a}.settings-input::placeholder{color:var(--text-muted)}.dark-mode .settings-input:focus{box-shadow:0 0 0 3px #8ab4f826}.oled-mode .settings-input:focus{box-shadow:0 0 0 3px #8ab4f833}.settings-input-hint{color:var(--text-secondary);margin:.5rem 0 0;font-size:.75rem;line-height:1.4}.btn-admin-console{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;font-family:inherit;font-size:.9375rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #667eea4d}.btn-admin-console:hover{transform:translateY(-2px);box-shadow:0 4px 16px #667eea80}.btn-admin-console:active{transform:translateY(0);box-shadow:0 2px 8px #667eea4d}.btn-admin-console svg{flex-shrink:0}.dark-mode .btn-admin-console{color:#000;background:linear-gradient(135deg,#8ab4f8 0%,#aecbfa 100%);box-shadow:0 2px 8px #8ab4f84d}.dark-mode .btn-admin-console:hover{box-shadow:0 4px 16px #8ab4f880}.oled-mode .btn-admin-console{color:#000;background:linear-gradient(135deg,#8ab4f8 0%,#aecbfa 100%);box-shadow:0 2px 8px #8ab4f866}.oled-mode .btn-admin-console:hover{box-shadow:0 4px 16px #8ab4f899}.api-key-create-form{margin-bottom:1rem}.api-key-create-inputs{align-items:stretch;gap:.5rem;display:flex}.api-key-create-inputs .settings-input{flex:1;min-width:0}.api-key-expiry-select{min-width:120px;flex:none!important;width:auto!important}.btn-create-key{background:var(--accent-color);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;flex-shrink:0;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .2s}.btn-create-key:hover{background:var(--accent-hover);transform:translateY(-1px)}.api-key-error{color:#d32f2f;margin:.5rem 0 0;font-size:.8125rem}.api-key-list{flex-direction:column;gap:.5rem;display:flex}.api-key-item{background:var(--bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.api-key-item-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.api-key-item-name{color:var(--text-primary);font-size:.9rem;font-weight:500}.api-key-item-meta{color:var(--text-secondary);font-size:.75rem}.btn-revoke-key{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.btn-revoke-key:hover{color:#d32f2f;background:#d32f2f1a}.api-key-created-value{align-items:flex-start;gap:.5rem;margin-top:.25rem;display:flex}.btn-copy-key{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:4px;flex-shrink:0;margin-top:.5rem;padding:.375rem .75rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .2s}.btn-copy-key:hover{background:var(--accent-hover)}.btn-dismiss-key{border:1px solid var(--border-color);width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border-radius:4px;margin-top:.75rem;padding:.5rem;font-family:inherit;font-size:.8125rem;transition:all .2s;display:block}.btn-dismiss-key:hover{background:var(--bg-secondary)}@media (width<=768px){.settings-modal{border-radius:0;max-width:100%;max-height:100vh}.settings-overlay{padding:0}.settings-item{flex-direction:column;align-items:flex-start}.settings-item-control{align-self:flex-end}.api-key-create-inputs{flex-direction:column}.api-key-expiry-select{min-width:0}.settings-instructions ol{padding-left:1.25rem}.settings-code-block{font-size:.75rem}}.error-boundary{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);padding:var(--space-5);font-family:var(--font-body);justify-content:center;align-items:center;display:flex}.error-boundary-content{background:var(--bg-elevated);border:2px solid var(--border-color-strong);border-radius:var(--radius-lg) var(--radius-xl) var(--radius-md) var(--radius-xl);padding:var(--space-10);width:100%;max-width:600px;box-shadow:7px 8px 0 var(--border-color);text-align:center;position:relative}.error-boundary h1{justify-content:center;align-items:center;gap:var(--space-3);margin:0 0 var(--space-5);color:var(--text-primary);font-family:var(--font-display);font-size:var(--font-size-3xl);line-height:var(--leading-tight);display:flex}.error-boundary-mark{width:34px;height:34px;font-family:var(--font-body);font-size:var(--font-size-xl);border:2px solid;border-radius:48% 55% 46% 52%;flex:none;justify-content:center;align-items:center;display:inline-flex;transform:rotate(-3deg)}.error-boundary-message{color:var(--text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--space-6);line-height:var(--leading-relaxed)}.error-boundary-diagnostics{margin:0 0 var(--space-5)}.error-boundary-diagnostic{padding:var(--space-2) var(--space-3);border:1px dashed var(--border-color-strong);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-sm);margin:0;display:inline-block}.error-boundary-diagnostic code{color:var(--text-primary);font-family:var(--font-mono);font-weight:var(--font-semibold)}.error-boundary-hint{margin:var(--space-3) auto 0;max-width:500px;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--leading-relaxed)}.error-boundary-hint code{overflow-wrap:anywhere;color:var(--text-primary);font-family:var(--font-mono);font-size:.9em}.error-boundary-details{text-align:left;margin:var(--space-5) 0;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--space-4)}.error-boundary-details summary{cursor:pointer;color:var(--accent-color);margin-bottom:var(--space-3);-webkit-user-select:none;user-select:none;font-weight:600}.error-boundary-details summary:hover{color:var(--accent-hover)}.error-boundary-stack{color:#f8f8f2;border-radius:var(--radius-sm);margin-top:var(--space-3);background:#2d2d2d;padding:15px;font-family:Courier New,monospace;font-size:.85em;line-height:1.5;overflow-x:auto}.error-boundary-actions{gap:var(--space-3);margin:var(--space-6) 0;justify-content:center;display:flex}.error-boundary-button{min-height:46px;padding:var(--space-3) var(--space-6);font:inherit;font-weight:var(--font-semibold);border:2px solid var(--accent-active);border-radius:var(--radius-md) var(--radius-lg) var(--radius-md) var(--radius-lg);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:var(--accent-color);color:var(--text-inverse)}.error-boundary-button:hover{box-shadow:3px 4px 0 var(--border-color-strong);transform:translateY(-1px)rotate(-.2deg)}.error-boundary-button:focus-visible{outline:3px solid var(--border-focus);outline-offset:3px}.error-boundary-button:disabled{cursor:wait;opacity:.72;box-shadow:none;transform:none}.error-boundary-button-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-color-strong)}.error-boundary-button-secondary:hover{background:var(--bg-tertiary);box-shadow:3px 4px 0 var(--border-color)}.error-boundary-help{margin:var(--space-5) auto 0;max-width:450px;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--leading-relaxed)}.error-boundary-status{margin:calc(var(--space-3) * -1) auto var(--space-4);color:var(--text-secondary);font-size:var(--font-size-sm)}.error-boundary-status-error{color:var(--error-color)}@media (width<=600px){.error-boundary-content{padding:var(--space-8) var(--space-5)}.error-boundary h1{font-size:var(--font-size-2xl)}.error-boundary-actions{flex-direction:column}.error-boundary-button{width:100%}}@media (prefers-reduced-motion:reduce){.error-boundary-button{transition:none}.error-boundary-button:hover{transform:none}}
