@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap);:root{--paper:#F7F7F4;--ink:#16171B;--secondary:#9498A0;--accent:#3D5AFE;--accent-hover:#2a47e0;--live:#00C853;--live-muted:rgba(0, 200, 83, 0.08);--hairline:#E3E3DF;--surface:#FFFFFF;--error:#D32F2F;--error-bg:rgba(211, 47, 47, 0.06);--success-bg:rgba(0, 200, 83, 0.06);--mono:'JetBrains Mono','SF Mono','Fira Code','Consolas',monospace;--serif:Georgia,'Times New Roman','Noto Serif',serif;--radius:2px;--ease:cubic-bezier(0.4, 0, 0.2, 1)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--serif);font-size:1rem;background:var(--paper);color:var(--ink);line-height:1.65;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{width:100%;max-width:1000px;margin:0 auto;padding:0 20px}.flex-grow{flex-grow:1}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--secondary)}h1,h2,h3,h4,h5,h6{font-family:var(--mono);font-weight:600;letter-spacing:-.03em;line-height:1.3;color:var(--ink)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}p{color:var(--secondary);font-family:var(--serif)}.mono,code{font-family:var(--mono)}.app-header{position:sticky;top:0;z-index:100;background:var(--paper);border-bottom:1px solid var(--hairline);padding:14px 0}.nav-container{display:flex;align-items:center;justify-content:space-between}.logo-link{font-family:var(--mono);font-size:.875rem;font-weight:700;color:var(--ink);letter-spacing:-.03em;text-decoration:none}.logo-link:hover{color:var(--ink);text-decoration:none}.nav-actions{display:flex;align-items:center;gap:6px}.home-nav-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:.75rem;font-weight:500;color:var(--secondary);padding:4px 0;text-decoration:none}.home-nav-link:hover{color:var(--ink);text-decoration:none}.theme-btn{display:none}.hero{padding:56px 20px 0}.hero-label{font-family:var(--mono);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--secondary);margin-bottom:10px;display:block}.hero-textarea{width:100%;min-height:120px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);padding:16px;font-family:var(--serif);font-size:1.125rem;color:var(--ink);line-height:1.7;resize:vertical;outline:0;transition:border-color .15s var(--ease)}.hero-textarea:focus{border-color:var(--accent)}.hero-textarea::placeholder{color:var(--secondary);opacity:.6}.stats-strip{display:flex;border:1px solid var(--hairline);border-top:none;border-radius:0 0 var(--radius) var(--radius);background:var(--surface);overflow:hidden}.stats-strip-cell{flex:1;padding:10px 16px;display:flex;align-items:baseline;gap:6px;border-right:1px solid var(--hairline)}.stats-strip-cell:last-child{border-right:none}.stats-strip-val{font-family:var(--mono);font-size:1.125rem;font-weight:700;color:var(--live);font-variant-numeric:tabular-nums;position:relative}.stats-strip-cell:first-child .stats-strip-val::after{content:'│';font-weight:300;color:var(--live);animation:blink 1s step-end infinite;margin-left:1px}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.stats-strip-cell:first-child .stats-strip-val::after{animation:none;opacity:.4}.stat-val{transition:none!important}}.stats-strip-label{font-family:var(--mono);font-size:.6875rem;font-weight:500;color:var(--secondary);text-transform:uppercase;letter-spacing:.04em}.tool-index{margin:48px 0 56px}.tool-index-header{font-family:var(--mono);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--secondary);margin-bottom:12px;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}.tool-index-search{display:flex;align-items:center;gap:6px}.tool-index-search input{background:0 0;border:none;border-bottom:1px solid var(--hairline);color:var(--ink);font-family:var(--mono);font-size:.75rem;outline:0;padding:2px 4px;width:140px;transition:border-color .12s var(--ease)}.tool-index-search input:focus{border-color:var(--accent)}.tool-index-search input::placeholder{color:var(--secondary);opacity:.5}.tool-index-item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:start;padding:16px 0;border-top:1px solid var(--hairline);text-decoration:none;color:var(--ink);transition:background .1s var(--ease)}.tool-index-item:last-child{border-bottom:1px solid var(--hairline)}.tool-index-item:hover{text-decoration:none}.tool-index-tag{font-family:var(--mono);font-size:.6875rem;font-weight:600;color:var(--secondary);padding-top:3px}.tool-index-info h3{font-size:.9375rem;font-weight:600;margin-bottom:2px}.tool-index-info p{font-size:.9375rem;color:var(--secondary);margin:0;line-height:1.5}.tool-index-action{font-family:var(--mono);font-size:.75rem;font-weight:500;color:var(--accent);white-space:nowrap;padding-top:3px;text-decoration:none}.tool-index-item:hover .tool-index-action{text-decoration:underline}@media (max-width:560px){.tool-index-item{grid-template-columns:1fr auto;gap:4px 12px}.tool-index-tag{grid-column:1/-1}}.tool-header-info{padding:40px 0 16px;border-bottom:1px solid var(--hairline);margin-bottom:24px}.tool-title-row{display:flex;align-items:center;gap:12px;margin-bottom:4px}.tool-page-icon{width:24px;height:24px;background:0 0;color:var(--ink);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tool-page-icon svg{width:20px;height:20px}.tool-header-info h1{font-size:1.375rem}.tool-header-info p{font-size:.9375rem;margin-top:2px}.tool-workspace{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);padding:20px;margin-bottom:32px}@media (min-width:768px){.tool-workspace{padding:24px}}.tool-workspace.fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background:var(--surface);margin:0;border-radius:0;border:none;padding:24px;display:flex;flex-direction:column;overflow:hidden}.tool-workspace.fullscreen .json-workspace-layout{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:16px;flex-grow:1;min-height:0}.tool-workspace.fullscreen #json-input{height:100%!important;min-height:0;flex-grow:1;resize:none}.tool-workspace.fullscreen .json-output-pane{height:100%!important;min-height:0;flex-grow:1;resize:none}.tool-workspace.fullscreen .json-editor-pane{height:100%;min-height:0;display:flex;flex-direction:column}.tool-workspace.fullscreen .json-output-wrapper{height:100%;min-height:0;display:flex;flex-direction:column}.tool-workspace.fullscreen .json-editor-pane .text-area{flex-grow:1;min-height:0}.word-controls-bar{display:flex;justify-content:flex-end;border-bottom:1px solid var(--hairline);padding-bottom:10px;margin-bottom:16px}.tool-workspace.fullscreen #btn-fullscreen{background-color:var(--error)!important;border-color:var(--error)!important;color:#fff!important}.tool-workspace.fullscreen #btn-fullscreen:hover{background-color:#b71c1c!important;border-color:#b71c1c!important}.tool-workspace.fullscreen .word-counter-layout{display:grid;grid-template-columns:1.6fr 1.4fr;gap:16px;flex-grow:1;min-height:0;height:100%}.tool-workspace.fullscreen .stats-panel{grid-template-columns:repeat(3,1fr)}body.mode-advanced .tool-workspace.fullscreen .stats-panel{grid-template-columns:repeat(5,1fr)}@media (max-width:991px){.tool-workspace.fullscreen{overflow-y:auto!important}.tool-workspace.fullscreen .word-counter-layout{grid-template-columns:1fr;height:auto;overflow-y:visible}.tool-workspace.fullscreen .editor-section{height:auto;min-height:auto}.tool-workspace.fullscreen .editor-section .form-group{flex-grow:0;min-height:auto;height:auto}.tool-workspace.fullscreen #text-input,.tool-workspace.fullscreen .review-area{height:320px!important;min-height:320px;flex-grow:0}.tool-workspace.fullscreen .analysis-section{height:auto;min-height:auto;overflow-y:visible;margin-top:16px}.tool-workspace.fullscreen .stats-panel,body.mode-advanced .tool-workspace.fullscreen .stats-panel{grid-template-columns:repeat(3,1fr)!important}}@media (max-width:767px){.tool-workspace.fullscreen .stats-panel,body.mode-advanced .tool-workspace.fullscreen .stats-panel{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:480px){.word-controls-bar{justify-content:flex-start!important;gap:8px!important}}.tool-workspace.fullscreen .editor-section{display:flex;flex-direction:column;height:100%;min-height:0}.tool-workspace.fullscreen .editor-section .form-group{display:flex;flex-direction:column;flex-grow:1;min-height:0;margin-bottom:12px}.tool-workspace.fullscreen .editor-section .textarea-container{flex-grow:1;min-height:0;display:flex;flex-direction:column}.tool-workspace.fullscreen #text-input{flex-grow:1;height:100%!important;min-height:0;resize:none!important}.tool-workspace.fullscreen .analysis-section{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto}label{display:block;font-family:var(--mono);font-size:.75rem;font-weight:600;margin-bottom:6px;color:var(--ink);text-transform:uppercase;letter-spacing:.04em}.form-group{margin-bottom:16px}.text-area{width:100%;height:220px;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px;color:var(--ink);font-family:var(--serif);font-size:.9375rem;resize:vertical;outline:0;line-height:1.65;transition:border-color .15s var(--ease)}.text-area:focus{border-color:var(--accent)}.text-area.code-font{font-family:var(--mono);font-size:.8125rem;line-height:1.7}.text-area::placeholder{color:var(--secondary);opacity:.6}.input-text{width:100%;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:9px 12px;color:var(--ink);font-family:var(--serif);font-size:.9375rem;outline:0;transition:border-color .15s var(--ease)}.input-text:focus{border-color:var(--accent)}.input-text::placeholder{color:var(--secondary);opacity:.6}.color-picker-row{display:flex;gap:12px}.color-picker-container{flex:1}.color-input-wrapper{display:flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:4px 10px}.color-input-wrapper input[type=color]{border:none;background:0 0;width:24px;height:24px;cursor:pointer;padding:0}.color-input-wrapper input[type=text]{border:none;background:0 0;color:var(--ink);width:100%;font-family:var(--mono);font-size:.8125rem;outline:0}.select-input{width:100%;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:9px 32px 9px 12px;color:var(--ink);font-family:var(--mono);font-size:.8125rem;outline:0;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239498A0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:13px;transition:border-color .15s var(--ease)}.select-input:focus{border-color:var(--accent)}.range-input{width:100%;accent-color:var(--accent);margin-top:4px}.btn-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.btn{background:var(--accent);color:#fff;border:none;padding:7px 14px;border-radius:var(--radius);font-family:var(--mono);font-size:.75rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .12s var(--ease);letter-spacing:-.01em}.btn:hover{background:var(--accent-hover)}.btn-secondary{background:var(--surface);color:var(--ink);border:1px solid var(--hairline)}.btn-secondary:hover{border-color:var(--secondary);background:var(--paper)}.btn-accent{background:var(--accent);color:#fff}.btn-accent svg{color:#fff!important}.btn-accent:hover{background:var(--accent-hover)}.word-counter-layout{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width:992px){.word-counter-layout{grid-template-columns:1.6fr 1.4fr}}.stats-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.stat-item{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:12px;text-align:center}.stat-val{font-family:var(--mono);font-size:1.375rem;font-weight:700;color:var(--ink);line-height:1.2;margin-bottom:2px;font-variant-numeric:tabular-nums}.stat-val.score-green{color:#2e7d32!important}.stat-val.score-yellow{color:#827717!important}.stat-val.score-orange{color:#ef6c00!important}.stat-val.score-red{color:#c62828!important}body.dark-theme .stat-val.score-green{color:#81c784!important}body.dark-theme .stat-val.score-yellow{color:#d4e157!important}body.dark-theme .stat-val.score-orange{color:#ffb74d!important}body.dark-theme .stat-val.score-red{color:#e57373!important}.stat-lbl{font-family:var(--mono);font-size:.625rem;color:var(--secondary);text-transform:uppercase;font-weight:600;letter-spacing:.06em}.density-section{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px}.density-title{font-family:var(--mono);font-size:.75rem;font-weight:600;margin-bottom:10px;display:flex;justify-content:space-between}.density-list{display:flex;flex-direction:column;gap:6px}.density-item{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem}.density-word{font-family:var(--mono);font-size:.75rem;background:var(--hairline);padding:1px 5px;border-radius:1px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.density-progress{flex-grow:1;height:3px;background:var(--hairline);border-radius:1px;margin:0 10px;overflow:hidden}.density-fill{height:100%;background:var(--accent);border-radius:1px}.density-count{font-family:var(--mono);font-weight:500;font-size:.6875rem;color:var(--secondary);min-width:24px;text-align:right}.qr-workspace-layout{display:grid;grid-template-columns:1fr;gap:20px}.qr-templates-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none}.qr-templates-tabs::-webkit-scrollbar{display:none}.qr-tab-btn{background:0 0;border:none;border-bottom:2px solid transparent;color:var(--secondary);padding:8px 14px;font-family:var(--mono);font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;margin-bottom:-1px;transition:color .12s var(--ease),border-color .12s var(--ease)}.qr-tab-btn:hover{color:var(--ink)}.qr-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.qr-input-group{display:none;animation:fadeIn .15s forwards var(--ease)}.qr-input-group.active{display:block}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@media (min-width:768px){.qr-workspace-layout{grid-template-columns:1.2fr 1fr}}.qr-result-pane{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px}#qr-code-output{padding:12px;background:#fff;border:1px solid var(--hairline);border-radius:var(--radius);margin-bottom:16px;display:flex;justify-content:center;align-items:center;max-width:100%}#qr-code-output canvas,#qr-code-output img{max-width:100%;height:auto!important}.qr-placeholder{color:var(--secondary);text-align:center;font-family:var(--mono);font-size:.8125rem}.qr-placeholder svg{margin-bottom:8px;opacity:.3}.json-workspace-layout{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width:992px){.json-workspace-layout{grid-template-columns:1fr 1fr}}.json-editor-pane{display:flex;flex-direction:column;position:relative;min-width:0}.json-output-wrapper{min-width:0}.json-output-pane{display:flex;flex-direction:column;border:1px solid var(--hairline);background:var(--paper);border-radius:var(--radius);height:360px;position:relative;overflow:hidden;resize:vertical}.json-input-header,.json-output-header{background:var(--surface);border-bottom:1px solid var(--hairline);padding:8px 12px;display:flex;align-items:center;justify-content:space-between;height:39px}.json-badge{font-family:var(--mono);font-size:.625rem;font-weight:700;padding:2px 6px;border-radius:1px;text-transform:uppercase;letter-spacing:.04em}.json-badge.valid{background:var(--success-bg);color:var(--live)}.json-badge.invalid{background:var(--error-bg);color:var(--error)}.json-badge.empty{background:var(--paper);color:var(--secondary)}.json-output-body{flex-grow:1;min-height:0;padding:14px 14px 14px 0;overflow:auto;font-family:var(--mono);font-size:.8125rem;line-height:1.7}.json-output-body>span{padding-left:14px;display:inline-block}.json-output-line{display:flex;line-height:1.7}.json-output-line-number{color:var(--secondary);opacity:.55;text-align:right;padding-right:12px;min-width:38px;user-select:none;border-right:1px solid var(--hairline);margin-right:12px}.json-output-line-content{flex-grow:1;white-space:pre-wrap;word-break:break-all}.json-key{color:#3d5afe}.json-string{color:#2e7d32}.json-number{color:#c56200}.json-boolean{color:#7b1fa2}.json-null{color:var(--secondary)}.validation-msg{padding:8px 12px;border-radius:var(--radius);margin-top:10px;font-family:var(--mono);font-size:.75rem;display:none}.validation-msg.success{background:var(--success-bg);color:var(--live);border:1px solid var(--live);display:flex;align-items:center;gap:6px}.validation-msg.error{background:var(--error-bg);color:var(--error);border:1px solid var(--error);display:flex;align-items:center;gap:6px}.app-footer{border-top:1px solid var(--hairline);padding:20px 0;text-align:center;margin-top:auto}.app-footer p{font-family:var(--mono);font-size:.6875rem;color:var(--secondary);margin:0}.footer-links{display:flex;justify-content:center;gap:16px;margin-bottom:6px}.footer-links a{font-family:var(--mono);font-size:.6875rem;color:var(--secondary)}.footer-links a:hover{color:var(--ink)}#toast-container{position:fixed;bottom:16px;right:16px;z-index:10005;display:flex;flex-direction:column;gap:6px}.toast{background:var(--surface);color:var(--ink);border:1px solid var(--hairline);padding:8px 14px;border-radius:var(--radius);display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.75rem;min-width:200px;transform:translateY(8px);opacity:0;animation:toastIn .15s forwards var(--ease)}@keyframes toastIn{to{transform:translateY(0);opacity:1}}.toast.success{border-left:3px solid var(--live)}.toast.error{border-left:3px solid var(--error)}.toast.info{border-left:3px solid var(--accent)}.toast-close{margin-left:auto;background:0 0;border:none;color:var(--secondary);cursor:pointer;font-size:.85rem;padding:0}.toast-close:hover{color:var(--ink)}.info-section{margin-bottom:40px}.info-section h2{font-size:.875rem;margin-bottom:12px;text-transform:uppercase;letter-spacing:.06em}.accordion{display:flex;flex-direction:column;gap:0}.accordion-item{border-top:1px solid var(--hairline)}.accordion-item:last-child{border-bottom:1px solid var(--hairline)}.accordion-header{padding:12px 0;font-family:var(--mono);font-size:.8125rem;font-weight:500;display:flex;justify-content:space-between;align-items:center;cursor:pointer;user-select:none;color:var(--ink)}.accordion-header:hover{color:var(--accent)}.accordion-icon{transition:transform .2s var(--ease);color:var(--secondary);width:16px;height:16px}.accordion-content{padding:0;max-height:0;overflow:hidden;transition:max-height .25s ease-out,padding .25s ease-out;color:var(--secondary);font-family:var(--serif);font-size:.9375rem;line-height:1.65}.accordion-item.active .accordion-icon{transform:rotate(180deg)}.accordion-item.active .accordion-content{padding:0 0 16px;max-height:500px}.tool-page-layout{display:grid;grid-template-columns:1fr;gap:28px;margin-bottom:40px}@media (min-width:768px){.tool-page-layout{grid-template-columns:180px 1fr;align-items:start}}.tool-sidebar{border-bottom:1px solid var(--hairline);padding-bottom:16px}@media (min-width:768px){.tool-sidebar{border-bottom:none;border-right:1px solid var(--hairline);padding-bottom:0;padding-right:20px;position:sticky;top:80px}}.sidebar-title{font-family:var(--mono);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--secondary);margin-bottom:12px}.sidebar-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px}@media (min-width:768px){.sidebar-nav{flex-direction:column;gap:8px}}.sidebar-link{font-family:var(--mono);font-size:.8125rem;font-weight:500;color:var(--secondary);text-decoration:none;transition:color .12s var(--ease)}.sidebar-link:hover{color:var(--ink);text-decoration:none}.sidebar-link.active{color:var(--accent);font-weight:600}.sidebar-link.active::before{content:'→ ';color:var(--accent)}@media (max-width:640px){.hero{padding:40px 16px 0}.hero-textarea{font-size:1rem;min-height:100px}.stats-strip{flex-direction:column}.stats-strip-cell{border-right:none;border-bottom:1px solid var(--hairline);padding:8px 14px}.stats-strip-cell:last-child{border-bottom:none}}.CodeMirror{font-family:var(--mono)!important;font-size:.8125rem!important;background:var(--paper)!important;color:var(--ink)!important;height:360px;width:100%!important;line-height:1.7!important}#json-output-editor-container .CodeMirror{height:100%!important}.CodeMirror-scroll{height:100%!important}.CodeMirror-gutters{background:var(--paper)!important;border-right:1px solid var(--hairline)!important}.CodeMirror-linenumber{color:var(--secondary)!important;padding-left:8px!important;font-family:var(--mono)!important}.CodeMirror-cursor{border-left:2px solid var(--ink)!important}.CodeMirror-selected{background:rgba(61,90,254,.1)!important}.cm-s-default .cm-property{color:#3d5afe!important;font-weight:600}.cm-s-default .cm-string{color:#2e7d32!important}.cm-s-default .cm-number{color:#c56200!important}.cm-s-default .cm-atom{color:#7b1fa2!important}.cm-s-default .cm-punctuation{color:var(--ink)!important}.cm-s-default .cm-bracket{color:var(--ink)!important}.line-error{background:var(--error-bg)!important;border-left:2px solid var(--error)!important}.json-input-pane{display:flex;flex-direction:column;border:1px solid var(--hairline);background:var(--paper);border-radius:var(--radius);height:360px;position:relative;overflow:hidden;resize:vertical}#json-output-editor-container .CodeMirror,.json-input-pane .CodeMirror{height:100%!important}.tool-workspace.fullscreen .CodeMirror,.tool-workspace.fullscreen .json-input-pane,.tool-workspace.fullscreen .json-output-pane{height:100%!important;resize:none!important}body.dark-theme{--paper:#0c0d0f;--surface:#151619;--hairline:#24272f;--ink:#e2e4e9;--secondary:#8d919a;--accent:#5c76ff;--accent-hover:#4a63ff;--live:#00e676;--live-muted:rgba(0, 230, 118, 0.08);--error:#ff5252;--error-bg:rgba(255, 82, 82, 0.08);--success-bg:rgba(0, 230, 118, 0.08);background:var(--paper);color:var(--ink)}.advanced-only{display:none!important}body.mode-advanced .advanced-only{display:block!important}body.mode-advanced button.advanced-only,body.mode-advanced span.advanced-only{display:inline-flex!important}body.mode-advanced .stat-item.advanced-only{display:block!important}body.mode-advanced #advanced-breakdown.advanced-only{display:flex!important}body.mode-advanced .advanced-flex{display:flex!important}body.mode-advanced .advanced-grid{display:grid!important}.editor-tabs{display:flex;gap:4px;margin-bottom:12px;border-bottom:1px solid var(--hairline)}.editor-tab-btn{background:0 0;border:none;border-bottom:2px solid transparent;color:var(--secondary);padding:6px 12px;font-family:var(--mono);font-size:.75rem;font-weight:600;cursor:pointer;transition:color .12s var(--ease),border-color .12s var(--ease);margin-bottom:-1px}.editor-tab-btn:hover{color:var(--ink)}.editor-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.review-area{width:100%;height:220px;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px;color:var(--ink);font-family:var(--serif);font-size:.9375rem;line-height:1.65;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.review-area p{color:inherit;font-family:inherit;margin:0;min-height:1.65em}.tool-workspace.fullscreen .review-area{flex-grow:1;height:100%!important;min-height:0}.highlight{position:relative;cursor:help;border-radius:2px;padding:0 1px;margin:0 -1px;transition:filter .15s ease}.highlight:hover{filter:brightness(.92)}.highlight-passive{background:rgba(156,39,176,.18);border-bottom:2.5px solid #9c27b0;color:#4a0072}.highlight-filler{background:rgba(255,193,7,.25);border-bottom:2.5px solid #f59e0b;color:#7c4d00}.highlight-adverb{background:rgba(61,90,254,.16);border-bottom:2.5px solid #3d5afe;color:#1a237e}.highlight-duplicate{background:rgba(211,47,47,.18);border-bottom:2.5px solid #d32f2f;color:#7f0000}.highlight-long-sentence{background:rgba(211,47,47,.08);outline:2px dashed rgba(211,47,47,.45);outline-offset:2px;border-radius:4px}body.dark-theme .highlight-passive{background:rgba(186,104,200,.22);color:#ce93d8}body.dark-theme .highlight-filler{background:rgba(255,193,7,.2);color:#ffd54f}body.dark-theme .highlight-adverb{background:rgba(61,90,254,.2);color:#8c9eff}body.dark-theme .highlight-duplicate{background:rgba(239,83,80,.22);color:#ef9a9a}body.dark-theme .highlight-long-sentence{background:rgba(239,83,80,.1);outline-color:rgba(239,83,80,.5)}.highlight::before{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translateX(-50%);background:#1e1e24;color:#fff;padding:4px 8px;font-size:.6875rem;font-family:var(--mono);border-radius:3px;white-space:nowrap;box-shadow:0 4px 10px rgba(0,0,0,.15);opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:1000}.highlight:hover::before{opacity:1;transform:translateX(-50%) translateY(-2px)}body.dark-theme .highlight::before{background:#f5f6f8;color:#121316}.goal-container{background:0 0;border:none;padding:0;margin-bottom:16px}body:not(.mode-advanced) #goal-tracker-container #group-long-sentence,body:not(.mode-advanced) #goal-tracker-container .goal-title-row label{display:none!important}body:not(.mode-advanced) #goal-inputs-area{opacity:1!important;pointer-events:auto!important}body:not(.mode-advanced) .editor-section{display:flex;flex-direction:column}body:not(.mode-advanced) #selection-status-badge{order:1}body:not(.mode-advanced) .editor-section .form-group{order:2;margin-bottom:12px}body:not(.mode-advanced) .editor-section .btn-row{order:3;margin-bottom:20px}body:not(.mode-advanced) #goal-tracker-container{order:4;margin-bottom:0}.goal-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.goal-title-row span{font-family:var(--mono);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}.goal-inputs-row{display:flex;gap:10px 16px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.goal-input-group{flex:0 1 auto;display:flex;align-items:center;gap:8px}.goal-input-group label{margin-bottom:0;font-size:.6875rem;white-space:nowrap}.goal-select{font-family:var(--mono);font-size:.6875rem;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);color:var(--ink);padding:4px 24px 4px 8px;outline:0;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%239498a0' d='M0 0.5L5 5.5L10 0.5H0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:10px 6px;transition:border-color .12s var(--ease)}.goal-select:focus{border-color:var(--accent)}body.dark-theme .goal-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23ffffff' d='M0 0.5L5 5.5L10 0.5H0z'/%3E%3C/svg%3E")}.goal-input-group input{width:100%;max-width:70px;padding:4px 8px;font-family:var(--mono);font-size:.75rem;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);color:var(--ink);outline:0;text-align:center;transition:border-color .12s var(--ease)}.goal-input-group input::-webkit-inner-spin-button,.goal-input-group input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.goal-input-group input[type=number]{-moz-appearance:textfield}.goal-input-group input:focus{border-color:var(--accent)}.goal-progress-wrapper{height:6px;background:var(--hairline);border-radius:3px;overflow:hidden;position:relative;margin-top:10px}.goal-progress-bar{height:100%;width:0%;background:var(--live);transition:width .3s ease,background-color .3s ease}.goal-progress-bar.status-under{background-color:var(--secondary)}.goal-progress-bar.status-target{background-color:var(--live)}.goal-progress-bar.status-over{background-color:var(--error)}.goal-status-text{font-family:var(--mono);font-size:.6875rem;font-weight:500;margin-top:6px;display:flex;justify-content:space-between;color:var(--secondary)}.selection-badge{background:var(--success-bg);color:var(--live);border:1px solid var(--live);font-family:var(--mono);font-size:.6875rem;font-weight:600;padding:4px 8px;border-radius:var(--radius);display:inline-flex;align-items:center;gap:6px;margin-bottom:12px}.selection-badge button{background:0 0;border:none;color:var(--live);cursor:pointer;font-weight:700;font-size:.85rem;padding:0;line-height:1}body.distraction-free{background:var(--surface)}body.distraction-free #shared-footer,body.distraction-free #shared-header,body.distraction-free #shared-sidebar,body.distraction-free .info-section,body.distraction-free .tool-header-info{display:none!important}body.distraction-free .tool-page-layout{grid-template-columns:1fr!important;max-width:680px;margin:40px auto;padding:0 16px}body.distraction-free .tool-workspace{border:none!important;background:0 0!important;padding:0!important;box-shadow:none!important}body.distraction-free .word-controls-bar{display:none!important}body.distraction-free .word-counter-layout{grid-template-columns:1fr!important}body.distraction-free #editor-label,body.distraction-free #goal-tracker-container,body.distraction-free .analysis-section,body.distraction-free .btn-row,body.distraction-free .editor-tabs{display:none!important}body.distraction-free #text-input{border:none!important;background:0 0!important;box-shadow:none!important;padding:48px!important;font-size:1.0625rem;line-height:1.8;resize:none!important}.exit-df-btn{position:fixed;top:20px;right:20px;z-index:10000;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:0 0;border:none;color:rgba(239,68,68,.4);cursor:pointer;transition:color .15s,transform .15s}.exit-df-btn:hover{color:#ef4444;transform:scale(1.15)}.advanced-card{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:12px}.advanced-card-title{font-family:var(--mono);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--secondary);margin-bottom:8px;border-bottom:1px solid var(--hairline);padding-bottom:4px}.advanced-stat-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:.75rem;margin-bottom:4px;min-height:20px}.advanced-stat-row:last-child{margin-bottom:0}.advanced-stat-label{color:var(--secondary)}.advanced-stat-value{font-weight:500;color:var(--ink)}.phrase-item{font-size:.75rem;padding:4px 6px;background:var(--surface);border:1px solid var(--hairline);border-radius:2px;margin-bottom:4px;display:flex;justify-content:space-between}.phrase-text{font-family:var(--mono);color:var(--ink)}.phrase-count{font-family:var(--mono);font-weight:600;color:var(--accent)}.help-btn{background:0 0;border:none;cursor:pointer;color:var(--secondary);display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:50%;transition:background-color .15s ease,color .15s ease;margin-left:auto}.help-btn:hover{background:var(--hairline);color:var(--ink)}.help-drawer{position:fixed;top:0;right:-420px;width:420px;max-width:90vw;height:100vh;background:var(--paper);border-left:1px solid var(--hairline);box-shadow:-4px 0 24px rgba(0,0,0,.08);z-index:10010;transition:right .3s cubic-bezier(.4, 0, .2, 1);display:flex;flex-direction:column;font-family:var(--mono)!important}.help-drawer *{font-family:var(--mono)!important}.help-drawer.open{right:0}.help-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:10009}.help-drawer-overlay.open{opacity:1;pointer-events:auto}.help-drawer-header{padding:16px 20px;border-bottom:1px solid var(--hairline);display:flex;justify-content:space-between;align-items:center;background:var(--paper)}.help-drawer-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.02em;font-family:var(--mono)}.help-drawer-close{background:0 0;border:none;font-size:1.75rem;font-weight:300;cursor:pointer;color:var(--secondary);transition:color .15s ease;padding:0 8px;line-height:1}.help-drawer-close:hover{color:var(--error)}.help-drawer-content{padding:20px;overflow-y:auto;flex-grow:1;font-size:.775rem;line-height:1.65;color:var(--ink)}.help-drawer-content h4{margin-top:20px;margin-bottom:6px;font-size:.825rem;font-weight:600;color:var(--ink);font-family:var(--mono);text-transform:uppercase;letter-spacing:.02em;border-bottom:1px dashed var(--hairline);padding-bottom:4px}.help-drawer-content p{margin-bottom:12px;color:var(--ink)}.help-drawer-content ul{margin-bottom:16px;padding-left:18px}.help-drawer-content li{margin-bottom:8px}.help-drawer-content li strong{color:var(--ink)}.consent-banner{position:fixed;bottom:24px;left:24px;right:24px;max-width:480px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);padding:16px 20px;box-shadow:0 12px 32px rgba(0,0,0,.08);z-index:100000;display:flex;flex-direction:column;gap:12px;animation:slide-up .3s var(--ease) forwards}@keyframes slide-up{from{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.consent-text{font-size:.8125rem;line-height:1.5;color:var(--ink)}.consent-text a{color:var(--accent);text-decoration:underline}.consent-buttons{display:flex;justify-content:flex-end;gap:8px}@media (max-width:560px){.consent-banner{bottom:12px;left:12px;right:12px;padding:14px}}.CodeMirror-matchingbracket{color:var(--accent)!important;font-weight:700;border-bottom:2px solid var(--accent);background:rgba(var(--accent-rgb),.1)!important}.CodeMirror-lines{padding:8px 0!important}.CodeMirror-line{padding-left:8px!important}.CodeMirror-linenumber{padding-left:4px!important;padding-right:8px!important}.CodeMirror-foldgutter-folded,.CodeMirror-foldgutter-open{cursor:pointer;color:var(--secondary);font-size:.75rem;line-height:1.5;text-align:center;margin-left:-5px}.CodeMirror-foldgutter-open::after{content:"▾"}.CodeMirror-foldgutter-folded::after{content:"▸";color:var(--accent)}.cm-search-match{background:rgba(253,216,53,.3)!important;border-bottom:1px dashed #fdd835}.cm-search-match-active{background:#ffb300!important;color:#000!important;border:1px solid #ff8f00;border-radius:2px;box-shadow:0 0 4px rgba(0,0,0,.25)}