:root{--primary-color: #6366f1;--primary-hover: #4f46e5;--bg-color: #f8fafc;--tab-bg: #e2e8f0;--tab-active: #ffffff;--text-main: #1e293b;--text-muted: #64748b;--border-radius: 12px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--line-number-bg: #f1f5f9;--danger-color: #ef4444;--danger-hover: #dc2626;--editor-bg: #ffffff;--border-color: #e2e8f0;--input-bg: #ffffff}.dark-theme{--bg-color: #0f172a;--tab-bg: #1e293b;--tab-active: #334155;--text-main: #f1f5f9;--text-muted: #94a3b8;--line-number-bg: #1e293b;--editor-bg: #1e293b;--border-color: #334155;--input-bg: #0f172a;--shadow: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -4px rgb(0 0 0 / .5)}.pink-theme{--primary-color: #db2777;--primary-hover: #be185d;--bg-color: #fdf2f8;--tab-bg: #fbcfe8;--tab-active: #ffffff;--text-main: #831843;--text-muted: #be185d;--line-number-bg: #fce7f3;--editor-bg: #ffffff;--border-color: #f9a8d4;--input-bg: #ffffff;--shadow: 0 4px 6px -1px rgba(219, 39, 119, .1), 0 2px 4px -2px rgba(219, 39, 119, .1)}.orange-theme{--primary-color: #f59e0b;--primary-hover: #d97706;--bg-color: #fffbeb;--tab-bg: #fef3c7;--tab-active: #ffffff;--text-main: #92400e;--text-muted: #d97706;--line-number-bg: #fff7ed;--editor-bg: #ffffff;--border-color: #fcd34d;--input-bg: #ffffff;--shadow: 0 4px 6px -1px rgba(245, 158, 11, .1), 0 2px 4px -2px rgba(245, 158, 11, .1)}.banana-theme{--primary-color: #eab308;--primary-hover: #ca8a04;--bg-color: #fefce8;--tab-bg: #fef9c3;--tab-active: #ffffff;--text-main: #854d0e;--text-muted: #ca8a04;--line-number-bg: #fefdf0;--editor-bg: #ffffff;--border-color: #fde047;--input-bg: #ffffff;--shadow: 0 4px 6px -1px rgba(234, 179, 8, .1), 0 2px 4px -2px rgba(234, 179, 8, .1)}.sea-theme{--primary-color: #0d9488;--primary-hover: #0f766e;--bg-color: #f0fdfa;--tab-bg: #ccfbf1;--tab-active: #ffffff;--text-main: #115e59;--text-muted: #0f766e;--line-number-bg: #f5fffd;--editor-bg: #ffffff;--border-color: #99f6e4;--input-bg: #ffffff;--shadow: 0 4px 6px -1px rgba(13, 148, 136, .1), 0 2px 4px -2px rgba(13, 148, 136, .1)}.colorful-theme{--primary-color: #d946ef;--primary-hover: #c026d3;--bg-color: #fdf4ff;--tab-bg: #fae8ff;--tab-active: #ffffff;--text-main: #701a75;--text-muted: #c026d3;--line-number-bg: #fef4ff;--editor-bg: #ffffff;--border-color: #f5d0fe;--input-bg: #ffffff;--shadow: 0 4px 6px -1px rgba(217, 70, 239, .1), 0 2px 4px -2px rgba(217, 70, 239, .1)}.forest-theme{--primary-color: #166534;--primary-hover: #14532d;--bg-color: #f0fdf4;--tab-bg: #dcfce7;--tab-active: #ffffff;--text-main: #064e3b;--text-muted: #15803d;--line-number-bg: #f7fee7;--editor-bg: #ffffff;--border-color: #bbf7d0;--input-bg: #ffffff}.desert-theme{--primary-color: #c2410c;--primary-hover: #9a3412;--bg-color: #fffaf0;--tab-bg: #ffedd5;--tab-active: #ffffff;--text-main: #7c2d12;--text-muted: #9a3412;--line-number-bg: #fffbf0;--editor-bg: #ffffff;--border-color: #fed7aa;--input-bg: #ffffff}.nordic-theme{--primary-color: #334155;--primary-hover: #1e293b;--bg-color: #f8fafc;--tab-bg: #e2e8f0;--tab-active: #ffffff;--text-main: #0f172a;--text-muted: #475569;--line-number-bg: #f1f5f9;--editor-bg: #ffffff;--border-color: #cbd5e1;--input-bg: #ffffff}.deep-space-theme{--primary-color: #8b5cf6;--primary-hover: #7c3aed;--bg-color: #000000;--tab-bg: #111111;--tab-active: #1a1a1a;--text-main: #ffffff;--text-muted: #a78bfa;--line-number-bg: #0a0a0a;--editor-bg: #050505;--border-color: #333333;--input-bg: #000000;--shadow: 0 0 20px rgba(139, 92, 246, .2)}.sepia-theme{--primary-color: #78350f;--primary-hover: #451a03;--bg-color: #f5f2e0;--tab-bg: #e7e0c9;--tab-active: #fdfbf7;--text-main: #451a03;--text-muted: #92400e;--line-number-bg: #ede9d5;--editor-bg: #fdfbf7;--border-color: #d6ccb2;--input-bg: #fdfbf7}.hacker-theme{--primary-color: #22c55e;--primary-hover: #16a34a;--bg-color: #000000;--tab-bg: #050505;--tab-active: #0a0a0a;--text-main: #22c55e;--text-muted: #166534;--line-number-bg: #000000;--editor-bg: #000000;--border-color: #166534;--input-bg: #000000}.cyberpunk-theme{--primary-color: #f0abfc;--primary-hover: #e879f9;--bg-color: #0f0720;--tab-bg: #1e1039;--tab-active: #2d1b4d;--text-main: #22d3ee;--text-muted: #f0abfc;--line-number-bg: #1e1039;--editor-bg: #160b2e;--border-color: #d946ef;--input-bg: #0f0720;--shadow: 0 0 15px rgba(217, 70, 239, .3)}.crt-theme{--primary-color: #fbbf24;--primary-hover: #f59e0b;--bg-color: #1a1a1a;--tab-bg: #262626;--tab-active: #333333;--text-main: #fbbf24;--text-muted: #92400e;--line-number-bg: #1a1a1a;--editor-bg: #1a1a1a;--border-color: #b45309;--input-bg: #1a1a1a}.espresso-theme{--primary-color: #a16207;--primary-hover: #854d0e;--bg-color: #2d241e;--tab-bg: #3d3028;--tab-active: #4d3d33;--text-main: #fef3c7;--text-muted: #d97706;--line-number-bg: #2d241e;--editor-bg: #3d3028;--border-color: #5d432c;--input-bg: #2d241e}.matcha-theme{--primary-color: #65a30d;--primary-hover: #4d7c0f;--bg-color: #f7fee7;--tab-bg: #ecfccb;--tab-active: #ffffff;--text-main: #365314;--text-muted: #4d7c0f;--line-number-bg: #f7fee7;--editor-bg: #ffffff;--border-color: #d9f99d;--input-bg: #ffffff}.grape-theme{--primary-color: #9333ea;--primary-hover: #7e22ce;--bg-color: #faf5ff;--tab-bg: #f3e8ff;--tab-active: #ffffff;--text-main: #581c87;--text-muted: #7e22ce;--line-number-bg: #fdfaff;--editor-bg: #ffffff;--border-color: #e9d5ff;--input-bg: #ffffff}.slate-theme{--primary-color: #475569;--primary-hover: #334155;--bg-color: #f1f5f9;--tab-bg: #e2e8f0;--tab-active: #ffffff;--text-main: #1e293b;--text-muted: #475569;--line-number-bg: #f8fafc;--editor-bg: #ffffff;--border-color: #cbd5e1;--input-bg: #ffffff}.dracula-theme{--primary-color: #ff79c6;--primary-hover: #bd93f9;--bg-color: #282a36;--tab-bg: #44475a;--tab-active: #6272a4;--text-main: #f8f8f2;--text-muted: #bd93f9;--line-number-bg: #282a36;--editor-bg: #282a36;--border-color: #44475a;--input-bg: #282a36}.paper-theme{--primary-color: #3b82f6;--primary-hover: #2563eb;--bg-color: #ffffff;--tab-bg: #f3f4f6;--tab-active: #ffffff;--text-main: #111827;--text-muted: #6b7280;--line-number-bg: #f9fafb;--editor-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #ffffff}.unicorn-theme{--primary-color: #f472b6;--primary-hover: #fb7185;--bg-color: #fff1f2;--tab-bg: #ffe4e6;--tab-active: #ffffff;--text-main: #881337;--text-muted: #fb7185;--line-number-bg: #fff5f5;--editor-bg: #ffffff;--border-color: #fecdd3;--input-bg: #ffffff;--shadow: 0 0 15px rgba(244, 114, 182, .2)}.batman-theme{--primary-color: #facc15;--primary-hover: #eab308;--bg-color: #111111;--tab-bg: #1a1a1a;--tab-active: #222222;--text-main: #ffffff;--text-muted: #facc15;--line-number-bg: #000000;--editor-bg: #111111;--border-color: #333333;--input-bg: #000000}.sea-background{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;overflow:hidden;display:none}.sea-theme .sea-background{display:block}.sea-creature{position:absolute;font-size:2rem;-webkit-user-select:none;user-select:none;opacity:.6}.fish{animation:swim-right 15s linear infinite}.fish-reverse{animation:swim-left 20s linear infinite}.turtle{animation:swim-right 35s linear infinite;font-size:3rem;opacity:.4}@keyframes swim-right{0%{left:-10%}to{left:110%}}@keyframes swim-left{0%{left:110%}to{left:-10%}}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-color);color:var(--text-main);min-height:100vh;margin:0;overflow-y:auto;overscroll-behavior-y:auto}.container{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;max-width:1200px;margin:0 auto;padding:2rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom));transition:padding .3s ease}.tabs-wrapper{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;background:var(--tab-bg);padding:.5rem;border-radius:var(--border-radius)}.tab-bar{display:flex;gap:.5rem;overflow-x:auto;flex:1;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.theme-toggle{width:36px;height:36px;background:var(--editor-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:var(--shadow-sm)}.theme-toggle:hover{background:var(--tab-bg);color:var(--text-main);border-color:var(--primary-color)}.theme-toggle.pink{color:#db2777}.theme-toggle.orange{color:#f59e0b}.theme-toggle.banana{color:#eab308}.theme-toggle.sea{color:#0d9488}.theme-toggle.colorful{color:#d946ef}.theme-toggle.forest{color:#166534}.theme-toggle.desert{color:#c2410c}.theme-toggle.nordic{color:#334155}.theme-toggle.deep-space{color:#8b5cf6}.theme-toggle.sepia{color:#78350f}.theme-toggle.hacker{color:#22c55e}.theme-toggle.cyberpunk{color:#f0abfc}.theme-toggle.crt{color:#fbbf24}.theme-toggle.espresso{color:#a16207}.theme-toggle.matcha{color:#65a30d}.theme-toggle.grape{color:#9333ea}.theme-toggle.slate{color:#475569}.theme-toggle.dracula{color:#ff79c6}.theme-toggle.paper{color:#3b82f6}.theme-toggle.unicorn{color:#f472b6}.theme-toggle.batman{color:#facc15}.tab{position:relative;padding:.75rem 1.25rem;background:transparent;border:none;border-radius:8px;cursor:pointer;white-space:nowrap;font-weight:500;color:var(--text-muted);transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:.5rem;font-size:.9rem}.tab:hover{background:#ffffff80;color:var(--text-main)}.public-indicator{position:absolute;top:4px;right:4px;color:var(--primary-color);opacity:.8;flex-shrink:0}.tab.active .public-indicator{opacity:1}.tab.active{background:var(--tab-active);color:var(--text-main);box-shadow:var(--shadow-sm);font-weight:600}.add-tab{width:36px;height:36px;background:var(--primary-color);border:none;border-radius:8px;cursor:pointer;color:#fff;font-size:1.2rem;font-weight:700;box-shadow:var(--shadow-sm);transition:all .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center}.add-tab:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow)}.add-tab:active{transform:translateY(0) scale(.95)}.editor-container{flex:1;display:flex;flex-direction:column;padding:.5rem 0;gap:.75rem}.title-input{font-size:1.75rem;font-weight:700;border:none;outline:none;flex:1;min-width:0;color:var(--text-main);background:transparent}.slug-row{display:flex;align-items:center;font-size:.8rem;color:var(--text-muted);gap:.25rem}.slug-input{border:none;outline:none;background:transparent;color:var(--primary-color);font-family:inherit;font-size:inherit;padding:0;width:100%}.slug-prefix{white-space:nowrap}.title-row{display:flex;align-items:center;gap:1rem;width:100%}.title-actions{display:flex;align-items:center;gap:.5rem}.public-toggle-btn{background:var(--editor-bg);border:1px solid var(--border-color);padding:.4rem .75rem;border-radius:6px;color:var(--text-muted);font-weight:600;font-size:.75rem;cursor:pointer;transition:all .2s;height:36px;display:flex;align-items:center}.public-toggle-btn.is-public{background:#fdf2f8;border-color:#fbcfe8;color:#9d174d}.public-toggle-btn.is-editable{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.public-toggle-btn:hover{border-color:#cbd5e1;background:#f8fafc}.public-toggle-btn.is-public:hover{background:#fce7f3;border-color:#f9a8d4}.public-toggle-btn.is-editable:hover{background:#dcfce7;border-color:#86efac}.public-badge{background:var(--line-number-bg);color:var(--text-muted);padding:.25rem .75rem;border-radius:9999px;font-weight:600;font-size:.7rem;border:1px solid var(--border-color)}.public-badge.editable{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.copy-link-btn{background:var(--editor-bg);border:1px solid var(--border-color);padding:.5rem;border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.8rem;font-weight:600;min-width:36px;height:36px}.copy-link-btn:hover{border-color:var(--primary-color);color:var(--primary-color);background:#6366f10d}.copy-link-btn.copy-success{background:#f0fdf4;border-color:#4ade80;color:#166534}.editor-wrapper{flex:1;display:flex;border:1px solid var(--border-color);border-radius:8px;position:relative;background:var(--editor-bg);box-shadow:var(--shadow-sm);min-height:400px}.line-numbers{width:45px;background:var(--line-number-bg);color:var(--text-muted);font-family:Courier New,monospace;font-size:1rem;line-height:1.6;padding:1rem .25rem;text-align:right;overflow:hidden;-webkit-user-select:none;user-select:none;border-right:1px solid var(--border-color)}.content-area{flex:1;border:none;outline:none;resize:none;font-size:1rem;line-height:1.6;padding:1rem;color:var(--text-main);font-family:Courier New,monospace;background:transparent;overflow:hidden;height:auto}.status-bar{display:flex;justify-content:flex-end;align-items:center;font-size:.8rem;color:var(--text-muted);padding:1rem 0;border-top:1px solid var(--border-color);gap:.75rem}.btn{padding:.5rem 1rem;border-radius:8px;border:1px solid transparent;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.delete-btn,.clear-all-btn,.logout-btn{background:var(--editor-bg);border:1px solid var(--border-color);padding:.4rem .75rem;border-radius:6px;color:var(--text-muted);font-weight:500;font-size:.75rem;cursor:pointer;transition:all .2s}.delete-btn:hover,.clear-all-btn:hover{color:var(--danger-color);border-color:#ef444433;background:#ef44440d}.logout-btn:hover{color:var(--text-main);border-color:var(--border-color);background:var(--tab-bg)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--editor-bg);padding:2rem;border-radius:16px;border:1px solid var(--border-color);box-shadow:0 20px 25px -5px #0000004d;max-width:400px;width:90%;text-align:center}.modal-content h3{margin-bottom:.75rem;color:var(--text-main);font-size:1.25rem;font-weight:700}.modal-content p{margin-bottom:2rem;color:var(--text-muted);font-size:.95rem;line-height:1.5}.modal-actions{display:flex;gap:.75rem;justify-content:center}.btn-secondary{background:var(--tab-bg);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--tab-active)}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover{background:var(--danger-hover);box-shadow:0 4px 12px #ef44444d}.login-container{height:100vh;display:flex;justify-content:center;align-items:center;background-color:var(--bg-color);padding:1rem}.login-card{background:var(--editor-bg);padding:3rem 2.5rem;border-radius:20px;border:1px solid var(--border-color);box-shadow:var(--shadow);width:100%;max-width:400px;text-align:center}.login-card h1{margin-bottom:.5rem;color:var(--text-main);font-size:1.75rem;font-weight:800}.login-card p{color:var(--text-muted);margin-bottom:2.5rem;font-size:.95rem}.password-input{width:100%;padding:.85rem 1.25rem;border:1px solid var(--border-color);border-radius:10px;margin-bottom:1rem;font-size:1rem;outline:none;transition:all .2s;background:var(--input-bg);color:var(--text-main)}.password-input:focus{border-color:var(--primary-color);background:var(--editor-bg);box-shadow:0 0 0 3px #6366f11a}.btn-primary{background:var(--primary-color);color:#fff;width:100%;padding:.85rem;border-radius:10px;font-size:1rem}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.error-text{color:var(--danger-color);margin-top:1.25rem;font-size:.85rem;font-weight:500}@media (max-width: 768px){.container{padding:1rem}.editor-container{padding:.75rem 0;gap:.75rem}.title-input{font-size:1.5rem}.line-numbers{width:35px;font-size:.9rem}.content-area{font-size:.95rem}}@media (max-width: 480px){.container{padding:.5rem;padding-bottom:calc(3.5rem + env(safe-area-inset-bottom))}.tabs-wrapper{padding:.35rem;gap:.35rem}.tab{padding:.5rem .75rem;font-size:.8rem}.add-tab{width:32px;height:32px}.title-input{font-size:1.25rem;margin-bottom:.25rem}.status-bar{flex-direction:row;flex-wrap:wrap;gap:.4rem;padding-top:.75rem}.status-bar span:last-child{width:100%;text-align:right;order:-1;margin-bottom:.2rem}.delete-btn,.clear-all-btn,.logout-btn{padding:.3rem .5rem;font-size:.7rem}}
