:root{--bg-main:#0a0d14;--bg-surface:#111622;--bg-surface-hover:#171e2e;--bg-surface-active:#1d2538;--bg-subtle:#141b29;--border-subtle:#1e2638;--border-default:#28334a;--border-hover:#3b4b6b;--border-focus:#3b82f6;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-active:#1e40af;--primary-subtle:#2563eb24;--primary-border:#2563eb66;--text-main:#f1f5f9;--text-muted:#94a3b8;--text-dim:#64748b;--text-inverse:#0a0d14;--danger:#ef4444;--danger-hover:#dc2626;--danger-subtle:#ef444424;--danger-border:#ef444459;--success:#10b981;--success-hover:#059669;--success-subtle:#10b98124;--success-border:#10b98159;--warning:#f59e0b;--warning-subtle:#f59e0b24;--warning-border:#f59e0b59;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Roboto Mono", Menlo, Consolas, Monaco, monospace;--editor-font-size:15px;--radius-xs:5px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 3px #00000059;--shadow-md:0 4px 16px #00000073;--shadow-lg:0 10px 30px #0009;--transition-fast:.15s ease;--transition-normal:.2s ease;--max-width:1240px;--nav-height:60px;--touch-target-min:42px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}@media (width>=768px){html{font-size:16px}}html,body{background-color:var(--bg-main);min-height:100%;color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-hover)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}button{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible{outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-xs)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.app-container{max-width:var(--max-width);width:100%;margin:0 auto;padding:0 clamp(.75rem,3vw,1.5rem)}.main-content{flex-direction:column;flex:1;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.75rem 0 1rem;display:flex}.topbar-brand{color:var(--text-main);letter-spacing:-.02em;align-items:center;gap:.5rem;font-size:1.35rem;font-weight:700;display:flex}.topbar-brand:hover{color:var(--text-main)}.topbar-brand .brand-icon{width:24px;height:24px;color:var(--primary)}.topbar-tagline{color:var(--text-dim);border:1px solid var(--border-subtle);border-radius:12px;margin-left:.35rem;padding:2px 8px;font-size:.75rem;font-weight:500}.topbar-actions{align-items:center;gap:.6rem;display:flex}@media (width<=600px){.topbar{gap:.5rem;padding:.6rem 0 .85rem}.topbar-tagline{display:none}.hide-on-mobile{display:none!important}}.navbar-inner{justify-content:space-between;align-items:center;width:100%;display:flex}.navbar-brand{color:var(--text-main);letter-spacing:-.02em;align-items:center;gap:.6rem;font-size:1.25rem;font-weight:700;display:flex}.brand-icon{width:24px;height:24px;color:var(--primary)}.navbar-links{align-items:center;gap:1.5rem;display:flex}.nav-link{color:var(--text-muted);border-radius:var(--radius-sm);transition:color var(--transition-fast), background-color var(--transition-fast);align-items:center;gap:.45rem;padding:.4rem .6rem;font-size:.95rem;font-weight:500;display:flex}.nav-link:hover,.nav-link.active{color:var(--text-main);background-color:var(--bg-subtle)}.navbar-actions{align-items:center;gap:.75rem;display:flex}.mobile-menu-btn{color:var(--text-muted);border-radius:var(--radius-sm);min-height:var(--touch-target-min);min-width:var(--touch-target-min);justify-content:center;align-items:center;padding:.6rem;display:none}.mobile-nav-drawer{display:none}@media (width<=768px){.navbar-links{display:none}.mobile-menu-btn{display:inline-flex}.mobile-nav-drawer{top:var(--nav-height);background:var(--bg-surface);border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-lg);z-index:50;flex-direction:column;gap:.75rem;padding:1.25rem 1rem;display:flex;position:absolute;left:0;right:0}}.footer{border-top:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-dim);margin-top:auto;padding:1.5rem 0;font-size:.875rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-links{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.footer-link{color:var(--text-dim)}.footer-link:hover{color:var(--text-muted)}.btn{border-radius:var(--radius-sm);min-height:40px;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform .1s ease;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;padding:.55rem 1.05rem;font-size:.925rem;font-weight:500;line-height:1.3;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn-sm{min-height:34px;padding:.4rem .75rem;font-size:.85rem}.btn-lg{min-height:48px;padding:.75rem 1.4rem;font-size:1.025rem;font-weight:600}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-primary:active:not(:disabled){background-color:var(--primary-active)}.btn-secondary{background-color:var(--bg-surface);border-color:var(--border-default);color:var(--text-main)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-surface-hover);border-color:var(--border-hover)}.btn-ghost{color:var(--text-muted);background-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--bg-surface-hover);color:var(--text-main)}.btn-danger{background-color:var(--danger-subtle);border-color:var(--danger-border);color:var(--danger)}.btn-danger:hover:not(:disabled),.btn-danger-solid{background-color:var(--danger);color:#fff}.btn-danger-solid:hover:not(:disabled){background-color:var(--danger-hover)}.btn-icon{min-width:40px;padding:.55rem}.form-group{flex-direction:column;gap:.45rem;display:flex}.form-label{color:var(--text-muted);font-size:.875rem;font-weight:500}.input,.select,.textarea{background-color:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--text-main);transition:border-color var(--transition-fast), background-color var(--transition-fast);padding:.65rem .9rem;font-size:.95rem}.input:focus,.input:focus-visible,.textarea:focus,.textarea:focus-visible{border-color:var(--border-default);box-shadow:none;background-color:var(--bg-surface-active);outline:none}.select:focus,.select:focus-visible{border-color:var(--border-focus);background-color:var(--bg-surface-active)}.input::placeholder,.textarea::placeholder{color:var(--text-dim)}.input-error{border-color:var(--danger)}.form-error{color:var(--danger);font-size:.85rem}.form-hint{color:var(--text-dim);font-size:.8rem;line-height:1.4}.checkbox-label{cursor:pointer;color:var(--text-main);align-items:center;gap:.6rem;min-height:32px;font-size:.925rem;display:inline-flex}.checkbox-input{appearance:none;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-xs);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);flex-shrink:0;place-content:center;display:grid}.checkbox-input:checked{background:var(--primary);border-color:var(--primary)}.checkbox-input:checked:before{content:"";clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);background:#fff;width:10px;height:10px}.badge{border-radius:var(--radius-xs);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.775rem;font-weight:600;display:inline-flex}.badge-primary{background:var(--primary-subtle);border-color:var(--primary-border);color:#60a5fa}.badge-success{background:var(--success-subtle);border-color:var(--success-border);color:#34d399}.badge-warning{background:var(--warning-subtle);border-color:var(--warning-border);color:#fbbf24}.badge-danger{background:var(--danger-subtle);border-color:var(--danger-border);color:#f87171}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background-color:#05070bd1;place-items:center;padding:1rem;animation:.15s fadeIn;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-dialog{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:480px;margin:auto;animation:.18s scaleIn;overflow:hidden}@media (width<=640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-dialog{border-bottom:none;border-left:none;border-right:none;border-bottom-right-radius:0;border-bottom-left-radius:0;flex-direction:column;max-width:100%;max-height:90vh;animation:.2s slideUpModal;display:flex}}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:1.15rem 1.4rem;display:flex}.modal-title{color:var(--text-main);font-size:1.15rem;font-weight:600}.modal-body{padding:1.4rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-main);flex-wrap:wrap;justify-content:flex-end;gap:.75rem;padding:1rem 1.4rem;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}.toast-container{z-index:150;pointer-events:none;flex-direction:column;gap:.6rem;max-width:90vw;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}@media (width<=640px){.toast-container{bottom:1rem;left:1rem;right:1rem}}.toast{pointer-events:auto;background:var(--bg-surface);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);border-radius:var(--radius-sm);color:var(--text-main);align-items:center;gap:.85rem;min-width:260px;padding:.8rem 1.1rem;font-size:.9rem;animation:.18s slideUp;display:flex}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-info{border-left:4px solid var(--primary)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.editor-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.editor-toolbar{background:var(--bg-subtle);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.editor-toolbar-group{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.editor-select-wrapper{align-items:center;display:inline-flex;position:relative}.editor-select{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);height:38px;color:var(--text-main);cursor:pointer;width:100%;padding:.45rem .75rem .45rem 2.1rem;font-size:.9rem}.editor-select-icon{color:var(--text-dim);pointer-events:none;position:absolute;left:10px}@media (width<=768px){.editor-toolbar{flex-direction:column;align-items:stretch;gap:.65rem;padding:.75rem}.editor-toolbar-group{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.editor-toolbar-group:first-child{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.editor-toolbar-group:first-child>div{flex:calc(50% - .25rem);min-width:120px}.editor-toolbar-group:first-child .tabs-container{flex:100%;justify-content:space-between;width:100%}.editor-toolbar-group:last-child{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.5rem;padding-top:.5rem;display:flex}.editor-toolbar-group:last-child .btn-primary{flex:1}}.editor-workspace{background:var(--bg-surface);font-family:var(--font-mono);border-radius:0 0 var(--radius-md) var(--radius-md);font-size:14px;line-height:24px;display:flex;position:relative;overflow:hidden}.editor-gutter{text-align:right;color:var(--text-dim);background:var(--bg-main);border-right:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;min-width:52px;font-family:var(--font-mono);box-sizing:border-box;padding:.85rem .75rem .85rem .6rem;font-size:14px;line-height:24px}.editor-gutter-line{box-sizing:border-box;height:24px;line-height:24px}.editor-textarea{color:var(--text-main);font-family:var(--font-mono);box-sizing:border-box;white-space:pre;tab-size:2;resize:none;background:0 0;border:none;outline:none;flex:1;padding:.85rem 1rem;font-size:14px;line-height:24px;overflow:auto}.editor-textarea:focus,.editor-textarea:focus-visible{box-shadow:none;border:none;outline:none}.editor-textarea.wrap-text{white-space:pre-wrap;word-break:break-all}.editor-title-input{width:100%;box-shadow:none;color:var(--text-main);background:0 0;border:none;outline:none;padding:.35rem 0;font-family:inherit;font-size:1.1rem;font-weight:600}.editor-title-input:focus,.editor-title-input:focus-visible{box-shadow:none;background:0 0;border:none;outline:none}.editor-footer{background:var(--bg-subtle);border-top:1px solid var(--border-subtle);color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem 1.1rem;font-size:.825rem;display:flex}.options-panel{background:var(--bg-subtle);border-top:1px solid var(--border-subtle);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.35rem;padding:1.35rem 1.1rem;display:grid}.paste-view-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.paste-view-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.paste-view-title{color:var(--text-main);letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.paste-view-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.85rem;font-size:.85rem;display:flex}.paste-view-meta-item{align-items:center;gap:.35rem;display:flex}.code-viewer-container{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.code-viewer-header,.code-viewer-toolbar{background:var(--bg-subtle);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 1.1rem;display:flex}.code-viewer-scroll-pane{background:var(--bg-surface);border-radius:0 0 var(--radius-md) var(--radius-md);display:flex;position:relative}.code-viewer-gutter{text-align:right;color:var(--text-dim);background:var(--bg-main);border-right:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;min-width:52px;font-family:var(--font-mono);box-sizing:border-box;z-index:2;flex-shrink:0;padding:.85rem .75rem .85rem .6rem;font-size:13.5px;line-height:24px;position:sticky;left:0}.code-viewer-gutter-line{box-sizing:border-box;height:24px;line-height:24px}.code-viewer-pre{font-family:var(--font-mono);box-sizing:border-box;flex:1;margin:0;padding:.85rem 1.1rem;font-size:13.5px;line-height:24px;overflow:visible;background:0 0!important}.code-viewer-pre code{font-family:inherit;font-size:inherit;line-height:inherit}.markdown-preview,.html-preview{color:var(--text-main);padding:1.75rem;font-size:1rem;line-height:1.75}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{color:#fff;margin:1.4rem 0 .6rem;font-weight:600}.markdown-preview p{margin-bottom:.9rem}.markdown-preview ul,.markdown-preview ol{margin-bottom:.9rem;padding-left:1.75rem}.markdown-preview code{background:var(--bg-main);border-radius:var(--radius-xs);font-family:var(--font-mono);color:#93c5fd;padding:.2rem .4rem;font-size:.875em}.markdown-preview pre{background:var(--bg-main);border-radius:var(--radius-sm);margin-bottom:1.1rem;padding:1.1rem;overflow-x:auto}.markdown-preview blockquote{border-left:3px solid var(--primary);color:var(--text-muted);margin-bottom:1.1rem;padding-left:1.1rem}.table-container{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-sm);overflow-x:auto}.table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.table th{background:var(--bg-subtle);border-bottom:1px solid var(--border-subtle);color:var(--text-muted);white-space:nowrap;padding:.85rem 1.15rem;font-weight:600}.table td{border-bottom:1px solid var(--border-subtle);color:var(--text-main);padding:.85rem 1.15rem}.table tr:last-child td{border-bottom:none}.table tr:hover td{background-color:var(--bg-surface-hover)}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;padding:1.25rem 0 1rem;display:flex}.home-headline{letter-spacing:-.02em;color:var(--text-main);font-size:1.5rem;font-weight:700}.home-tagline{color:var(--text-muted);font-size:.9rem}code[class*=language-],pre[class*=language-]{color:#f1f5f9;font-family:var(--font-mono);text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:2;-webkit-hyphens:none;hyphens:none;font-size:13.5px;line-height:24px}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#64748b;font-style:italic}.token.punctuation{color:#94a3b8}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#f87171}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#34d399}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#38bdf8}.token.atrule,.token.attr-value,.token.keyword{color:#60a5fa;font-weight:500}.token.function,.token.class-name{color:#fbbf24}.token.regex,.token.important,.token.variable{color:#c084fc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
