@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,400&family=Noto+Sans+KR:wght@400;500;600;700&family=Noto+Serif+KR:wght@500;600;700&display=swap";:root{--tb-pine-50: #eff7f1;--tb-pine-100: #dcefe2;--tb-pine-200: #bbdfc6;--tb-pine-300: #8fc7a2;--tb-pine-400: #5daa78;--tb-pine-500: #3d8b5c;--tb-pine-600: #2a7049;--tb-pine-700: #235c3d;--tb-pine-800: #1d4a32;--tb-pine-900: #0e2e21;--tb-clay-100: #fbe9e2;--tb-clay-500: #d0653f;--tb-clay-600: #c2543b;--tb-clay-700: #a0432d;--tb-neutral-50: #fafaf8;--tb-neutral-100: #f2f1ec;--tb-neutral-200: #e6e4dc;--tb-neutral-300: #d5d2c7;--tb-neutral-400: #a8a49a;--tb-neutral-500: #7c786e;--tb-neutral-600: #5f5b52;--tb-neutral-700: #4a4740;--tb-neutral-800: #34322d;--tb-neutral-900: #1e1d1a;--tb-primary: var(--tb-pine-600);--tb-primary-strong: var(--tb-pine-700);--tb-primary-soft: var(--tb-pine-50);--tb-on-primary: #ffffff;--tb-success: #2a7049;--tb-warning: #b45309;--tb-warning-soft: #fef3e2;--tb-error: #b3261e;--tb-error-soft: #fdecea;--tb-info: #1d5bbf;--tb-info-soft: #e8f0fd;--tb-bg: #ffffff;--tb-bg-subtle: var(--tb-neutral-50);--tb-bg-muted: var(--tb-neutral-100);--tb-surface: #ffffff;--tb-border: var(--tb-neutral-200);--tb-border-strong: var(--tb-neutral-300);--tb-text: var(--tb-neutral-900);--tb-text-secondary: var(--tb-neutral-600);--tb-text-muted: var(--tb-neutral-500);--tb-font-sans: "Pretendard Variable", "Pretendard", "Noto Sans KR", -apple-system, "Segoe UI", sans-serif;--tb-font-display: "Newsreader", "Noto Serif KR", Georgia, serif;--tb-font-mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", Menlo, monospace;--tb-radius-sm: 6px;--tb-radius-md: 10px;--tb-radius-lg: 14px;--tb-radius-xl: 20px;--tb-radius-full: 999px;--tb-shadow-sm: 0 1px 2px rgba(30, 29, 26, .06);--tb-shadow-md: 0 2px 8px rgba(30, 29, 26, .08), 0 1px 2px rgba(30, 29, 26, .06);--tb-shadow-lg: 0 12px 32px rgba(30, 29, 26, .12), 0 2px 6px rgba(30, 29, 26, .06);--tb-motion-fast: .12s ease-out;--tb-motion-base: .18s ease-out}@media(prefers-reduced-motion:reduce){:root{--tb-motion-fast: 0ms;--tb-motion-base: 0ms}}.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 18px;border-radius:var(--tb-radius-md);font-family:var(--tb-font-sans);font-size:.925rem;font-weight:600;line-height:1;border:1px solid transparent;cursor:pointer;transition:background-color var(--tb-motion-fast),border-color var(--tb-motion-fast),color var(--tb-motion-fast),box-shadow var(--tb-motion-fast);text-decoration:none;white-space:nowrap}.tb-btn:focus-visible{outline:2px solid var(--tb-primary);outline-offset:2px}.tb-btn:disabled{opacity:.55;cursor:not-allowed}.tb-btn-primary{background:var(--tb-primary);color:var(--tb-on-primary)}.tb-btn-primary:hover:not(:disabled){background:var(--tb-primary-strong)}.tb-btn-secondary{background:var(--tb-bg-subtle);color:var(--tb-text);border-color:var(--tb-border)}.tb-btn-secondary:hover:not(:disabled){background:var(--tb-bg-muted);border-color:var(--tb-border-strong)}.tb-btn-ghost{background:transparent;color:var(--tb-text-secondary)}.tb-btn-ghost:hover:not(:disabled){background:var(--tb-bg-muted);color:var(--tb-text)}.tb-btn-danger{background:var(--tb-error);color:#fff}.tb-btn-danger:hover:not(:disabled){background:#8f1d17}.tb-btn-sm{min-height:32px;padding:0 12px;font-size:.825rem;border-radius:var(--tb-radius-sm)}.tb-btn-lg{min-height:48px;padding:0 26px;font-size:1rem}.tb-form-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.tb-list{display:flex;flex-direction:column;border:1px solid var(--tb-border);border-radius:var(--tb-radius-lg);background:var(--tb-surface);overflow:hidden;margin-top:12px}.tb-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--tb-border)}.tb-list-item:last-child{border-bottom:none}.tb-list-item-unread{background:var(--tb-bg-subtle)}.tb-list-item-title{font-weight:600;font-size:.94rem}.tb-list-item-desc{font-size:.85rem;color:var(--tb-text-secondary);margin-top:2px}.tb-load-more{display:flex;justify-content:center;padding:24px 0}.tb-section-title{font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.tb-check{display:flex;gap:8px;align-items:flex-start;font-size:.88rem;margin-top:10px;cursor:pointer}.tb-check input{margin-top:4px}.tb-check a{color:var(--tb-primary-strong);text-decoration:underline;text-underline-offset:2px}.tb-code{display:block;font-family:var(--tb-font-mono, ui-monospace, monospace);font-size:.8rem;background:var(--tb-bg-muted);border:1px solid var(--tb-border);border-radius:var(--tb-radius-sm);padding:10px 12px;margin-top:6px;overflow-wrap:break-word}.tb-btn-block{width:100%}.tb-input,.tb-textarea,.tb-select{width:100%;min-height:40px;padding:0 12px;border:1px solid var(--tb-border-strong);border-radius:var(--tb-radius-md);background:var(--tb-bg);color:var(--tb-text);font-family:var(--tb-font-sans);font-size:.925rem;transition:border-color var(--tb-motion-fast),box-shadow var(--tb-motion-fast)}.tb-textarea{padding:10px 12px;min-height:96px;resize:vertical;line-height:1.6}.tb-input::placeholder,.tb-textarea::placeholder{color:var(--tb-text-muted)}.tb-input:focus,.tb-textarea:focus,.tb-select:focus{outline:none;border-color:var(--tb-primary);box-shadow:0 0 0 3px #2a704929}.tb-input[aria-invalid=true],.tb-textarea[aria-invalid=true]{border-color:var(--tb-error)}.tb-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.tb-label{font-size:.85rem;font-weight:600;color:var(--tb-text)}.tb-hint{font-size:.8rem;color:var(--tb-text-muted)}.tb-error-text{font-size:.8rem;color:var(--tb-error);font-weight:500}.tb-card{background:var(--tb-surface);border:1px solid var(--tb-border);border-radius:var(--tb-radius-lg);box-shadow:var(--tb-shadow-sm)}.tb-card-hover{transition:border-color var(--tb-motion-base),box-shadow var(--tb-motion-base)}.tb-card-hover:hover{border-color:var(--tb-border-strong);box-shadow:var(--tb-shadow-md)}.tb-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--tb-radius-full);font-size:.75rem;font-weight:600;line-height:1.4;background:var(--tb-bg-muted);color:var(--tb-text-secondary);border:1px solid var(--tb-border)}.tb-badge-primary{background:var(--tb-primary-soft);color:var(--tb-primary-strong);border-color:var(--tb-pine-200)}.tb-badge-clay{background:var(--tb-clay-100);color:var(--tb-clay-700);border-color:#f3c9b8}.tb-badge-success{background:var(--tb-success-bg, #e9f5ec);color:var(--tb-success, #1e6b34)}.tb-badge-error{background:var(--tb-error-soft);color:var(--tb-error);border-color:#f3c1bd}.tb-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--tb-radius-full);background:var(--tb-pine-100);color:var(--tb-pine-800);font-weight:700;overflow:hidden;flex-shrink:0}.tb-avatar img{width:100%;height:100%;object-fit:cover}.tb-divider{border:none;border-top:1px solid var(--tb-border);margin:0}.tb-alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--tb-radius-md);font-size:.875rem;line-height:1.5;border:1px solid var(--tb-border);background:var(--tb-bg-subtle);color:var(--tb-text)}.tb-alert-error{background:var(--tb-error-soft);border-color:#f3c1bd;color:#7a1a15}.tb-alert-success{background:var(--tb-primary-soft);border-color:var(--tb-pine-200);color:var(--tb-pine-800)}.tb-alert-warning{background:var(--tb-warning-soft);border-color:#eed9ae;color:#7a4a06}.tb-skeleton{position:relative;overflow:hidden;background:var(--tb-bg-muted);border-radius:var(--tb-radius-sm)}.tb-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:tb-shimmer 1.4s infinite}@keyframes tb-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.tb-skeleton:after{animation:none}}.tb-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;text-align:center;color:var(--tb-text-secondary)}.tb-empty-title{font-size:1rem;font-weight:700;color:var(--tb-text)}.tb-empty-desc{font-size:.875rem;max-width:360px}.tb-spinner{width:20px;height:20px;border-radius:var(--tb-radius-full);border:2px solid var(--tb-border-strong);border-top-color:var(--tb-primary);animation:tb-spin .8s linear infinite}@keyframes tb-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.tb-spinner{animation-duration:2s}}.tb-table-wrap{overflow-x:auto;border:1px solid var(--tb-border);border-radius:var(--tb-radius-lg);background:var(--tb-surface)}.tb-table{width:100%;border-collapse:collapse;font-size:.875rem}.tb-table th{text-align:left;padding:10px 14px;background:var(--tb-bg-subtle);color:var(--tb-text-secondary);font-weight:600;font-size:.78rem;white-space:nowrap;border-bottom:1px solid var(--tb-border)}.tb-table td{padding:12px 14px;border-bottom:1px solid var(--tb-border);vertical-align:middle}.tb-table tr:last-child td{border-bottom:none}.tb-table tbody tr:hover{background:var(--tb-bg-subtle)}.tb-tabs{display:flex;gap:4px;border-bottom:1px solid var(--tb-border);overflow-x:auto}.tb-tab{padding:10px 14px;font-size:.9rem;font-weight:600;color:var(--tb-text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none;cursor:pointer;font-family:var(--tb-font-sans)}.tb-tab:hover{color:var(--tb-text)}.tb-tab[aria-selected=true]{color:var(--tb-primary-strong);border-bottom-color:var(--tb-primary)}.tb-modal-backdrop{position:fixed;inset:0;background:#1e1d1a7a;display:flex;align-items:center;justify-content:center;padding:20px;z-index:200}.tb-modal{background:var(--tb-surface);border-radius:var(--tb-radius-xl);box-shadow:var(--tb-shadow-lg);width:100%;max-width:480px;max-height:calc(100vh - 60px);overflow-y:auto;padding:24px}.tb-modal-title{font-size:1.1rem;font-weight:700;margin:0 0 8px}.tb-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.tb-toast-region{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:300;width:min(420px,calc(100vw - 40px))}.tb-toast{background:var(--tb-neutral-800);color:#fff;border-radius:var(--tb-radius-md);padding:12px 16px;font-size:.875rem;box-shadow:var(--tb-shadow-lg);display:flex;align-items:center;gap:10px}.tb-toast-error{background:var(--tb-error)}.tb-toast-success{background:var(--tb-pine-700)}.tb-prose{line-height:1.85;font-size:1.02rem;color:var(--tb-text);overflow-wrap:break-word}.tb-prose h1,.tb-prose h2,.tb-prose h3{line-height:1.35;margin:1.6em 0 .6em;letter-spacing:-.01em}.tb-prose h1{font-size:1.6em}.tb-prose h2{font-size:1.35em}.tb-prose h3{font-size:1.15em}.tb-prose p{margin:0 0 1.1em}.tb-prose ul,.tb-prose ol{margin:0 0 1.1em;padding-left:1.4em}.tb-prose li{margin-bottom:.35em}.tb-prose blockquote{margin:1.2em 0;padding:2px 0 2px 18px;border-left:3px solid var(--tb-pine-300);color:var(--tb-text-secondary)}.tb-prose pre{background:var(--tb-neutral-900);color:#f2f1ec;border-radius:var(--tb-radius-md);padding:16px;overflow-x:auto;font-family:var(--tb-font-mono);font-size:.85em;margin:1.2em 0}.tb-prose code{font-family:var(--tb-font-mono);font-size:.88em;background:var(--tb-bg-muted);border-radius:4px;padding:1px 5px}.tb-prose pre code{background:none;padding:0}.tb-prose img{max-width:100%;border-radius:var(--tb-radius-md)}.tb-prose a{color:var(--tb-primary-strong);text-decoration:underline;text-underline-offset:3px}.tb-prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.9em}.tb-prose th,.tb-prose td{border:1px solid var(--tb-border);padding:8px 12px;text-align:left}.tb-prose th{background:var(--tb-bg-subtle)}body{margin:0;font-family:var(--tb-font-sans);background:var(--tb-bg);color:var(--tb-text);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font-family:inherit}.tb-console{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}@media(max-width:860px){.tb-console{grid-template-columns:1fr}}.tb-console-side{background:var(--tb-pine-800);color:#e9f2ec;padding:20px 16px;display:flex;flex-direction:column;gap:16px}@media(max-width:860px){.tb-console-side{flex-direction:row;align-items:center;flex-wrap:wrap}}.tb-console-brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:1.05rem;color:#fff}.tb-console-nav{display:flex;flex-direction:column;gap:2px}@media(max-width:860px){.tb-console-nav{flex-direction:row;flex-wrap:wrap}}.tb-console-nav a{padding:8px 12px;border-radius:var(--tb-radius-sm);font-size:.9rem;font-weight:600;color:#cfe0d6}.tb-console-nav a:hover{background:#ffffff1a;color:#fff}.tb-console-nav a.router-link-active{background:#ffffff29;color:#fff}.tb-console-nav-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9db8a9;margin:10px 12px 4px}.tb-console-main{padding:28px;max-width:1080px;width:100%;box-sizing:border-box}@media(max-width:640px){.tb-console-main{padding:18px 14px}}.tb-console-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}.tb-console-title{font-family:var(--tb-font-display);font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.tb-blog-switcher{display:flex;align-items:center;gap:8px}.tb-blog-switcher select{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:var(--tb-radius-sm);padding:6px 10px;font-size:.85rem;font-weight:600;max-width:200px}.tb-blog-switcher select option{color:#111}.tb-editor-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}@media(max-width:1024px){.tb-editor-wrap{grid-template-columns:1fr}}.tb-editor-title-input{width:100%;box-sizing:border-box;border:none;outline:none;font-family:var(--tb-font-display);font-size:2rem;font-weight:600;letter-spacing:-.02em;padding:4px 0 12px;background:transparent;color:var(--tb-text)}.tb-editor-title-input::placeholder{color:var(--tb-text-muted)}.tb-editor-toolbar{display:flex;gap:4px;flex-wrap:wrap;border:1px solid var(--tb-border);border-bottom:none;border-radius:var(--tb-radius-md) var(--tb-radius-md) 0 0;background:var(--tb-surface);padding:8px;position:sticky;top:0;z-index:20}.tb-editor-toolbar button{border:1px solid transparent;background:transparent;border-radius:var(--tb-radius-sm);padding:6px 10px;font-size:.85rem;font-weight:600;color:var(--tb-text-secondary);cursor:pointer;min-width:34px}.tb-editor-toolbar button:hover{background:var(--tb-bg-muted);color:var(--tb-text)}.tb-editor-toolbar button.is-active{background:var(--tb-pine-800);color:#fff}.tb-editor-body{border:1px solid var(--tb-border);border-radius:0 0 var(--tb-radius-md) var(--tb-radius-md);background:var(--tb-surface);padding:20px 22px;min-height:420px}.tb-editor-body .tiptap{outline:none;font-size:1.02rem;line-height:1.8}.tb-editor-body .tiptap p{margin-bottom:.9em}.tb-editor-body .tiptap h1,.tb-editor-body .tiptap h2,.tb-editor-body .tiptap h3{font-family:var(--tb-font-display);letter-spacing:-.01em;margin:1.2em 0 .5em}.tb-editor-body .tiptap img{max-width:100%;border-radius:var(--tb-radius-md)}.tb-editor-body .tiptap blockquote{border-left:3px solid var(--tb-primary);padding-left:14px;margin-left:0;color:var(--tb-text-secondary)}.tb-editor-body .tiptap pre{background:var(--tb-bg-muted);border:1px solid var(--tb-border);border-radius:var(--tb-radius-md);padding:14px;overflow-x:auto;font-size:.85rem}.tb-editor-body .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--tb-text-muted);pointer-events:none;height:0}.tb-side-card{border:1px solid var(--tb-border);border-radius:var(--tb-radius-lg);background:var(--tb-surface);padding:16px;margin-bottom:16px}.tb-side-card h3{font-size:.85rem;font-weight:700;margin-bottom:10px}.tb-conflict{border:1px solid var(--tb-warning, #b45309);background:#fef6e8;border-radius:var(--tb-radius-md);padding:14px 16px;margin-bottom:16px}.tb-conflict p{font-size:.9rem;margin-bottom:10px}.tb-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:16px}.tb-media-card{border:1px solid var(--tb-border);border-radius:var(--tb-radius-md);background:var(--tb-surface);overflow:hidden}.tb-media-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--tb-bg-muted)}.tb-media-card-body{padding:10px 12px;font-size:.8rem}.tb-media-card-body p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.tb-table-wrap{overflow-x:auto}.tb-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:20px}.tb-stat-card{border:1px solid var(--tb-border);border-radius:var(--tb-radius-lg);background:var(--tb-surface);padding:16px}.tb-stat-value{font-family:var(--tb-font-display);font-size:1.7rem;font-weight:600}.tb-stat-label{font-size:.82rem;color:var(--tb-text-secondary)}.tb-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--tb-bg-subtle);padding:20px}.tb-login-card{width:100%;max-width:400px;background:var(--tb-surface);border:1px solid var(--tb-border);border-radius:var(--tb-radius-xl);box-shadow:var(--tb-shadow-md);padding:32px 28px}
