:root{color-scheme:light dark;--color-bg: #f6f7fb;--color-surface: #ffffff;--color-surface-muted: #f1f3f9;--color-border: #e1e5ee;--color-border-strong: #c3cad9;--color-text: #151927;--color-text-muted: #525a6d;--color-primary: #4338ca;--color-primary-hover: #3730a3;--color-primary-soft: #eef0ff;--color-on-primary: #ffffff;--color-local: #166534;--color-local-soft: #ebf9f0;--color-server: #1e40af;--color-server-soft: #eef3ff;--color-danger: #b42318;--color-danger-soft: #fef3f2;--color-success: #067647;--color-focus: #6366f1;--page-preview-bg: #ffffff;--shadow-sm: 0 1px 2px rgb(16 24 40 / .06);--shadow-md: 0 4px 16px rgb(16 24 40 / .08), 0 1px 3px rgb(16 24 40 / .06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--container: 1120px;--tap: 44px}@media(prefers-color-scheme:dark){:root{--color-bg: #0f1220;--color-surface: #171b2d;--color-surface-muted: #1e2338;--color-border: #2a3049;--color-border-strong: #3c4466;--color-text: #eef0f7;--color-text-muted: #a9b0c5;--color-primary: #8b93ff;--color-primary-hover: #a5abff;--color-primary-soft: #262b52;--color-on-primary: #0f1220;--color-local: #6ee7a0;--color-local-soft: #15281f;--color-server: #93b4ff;--color-server-soft: #18223f;--color-danger: #ff8a80;--color-danger-soft: #3a1c1c;--color-success: #6ee7a0;--color-focus: #a5abff;--page-preview-bg: #f4f5f8;--shadow-sm: 0 1px 2px rgb(0 0 0 / .4);--shadow-md: 0 6px 20px rgb(0 0 0 / .35)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:var(--font-sans);font-size:1rem;line-height:1.55;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;margin:0;letter-spacing:-.015em}p{margin:0}a{color:var(--color-primary)}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:20px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:10px 20px;border:1px solid transparent;border-radius:999px;font:inherit;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-sm{min-height:38px;padding:6px 14px;font-size:.9rem}@media(pointer:coarse){.btn-sm{min-height:var(--tap)}}.btn-lg{min-height:52px;padding-inline:28px;font-size:1.05rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);cursor:pointer}.icon-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn.danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}@media(pointer:coarse){.icon-btn{width:var(--tap);height:var(--tap)}}.field{display:grid;gap:6px}.field-label{font-weight:600;font-size:.92rem}.field-hint{font-size:.85rem;color:var(--color-text-muted)}.input,.select{width:100%;min-height:var(--tap);padding:10px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit}.input:focus-visible,.select:focus-visible{outline:3px solid var(--color-focus);outline-offset:0;border-color:var(--color-primary)}.input[aria-invalid=true]{border-color:var(--color-danger)}.select:disabled{opacity:.6}.tool-page{padding-block:32px 64px}.tool-panel{margin-top:28px;padding:24px}.tool-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}@media(max-width:640px){.tool-panel{padding:16px}.tool-actions .btn{flex:1 1 100%}}.tool-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}.tool-main{display:grid;gap:16px;min-width:0}.tool-sidebar{position:sticky;top:88px;display:grid;gap:16px;padding:20px;border-radius:var(--radius-md);background:var(--color-surface-muted)}.tool-messages{display:grid;gap:12px}.tool-messages:not(:empty){margin-bottom:20px}@media(max-width:860px){.tool-workspace{grid-template-columns:1fr}.tool-sidebar{position:static}}.choice-list{display:grid;gap:8px;margin:0;padding:0;border:0;min-width:0}.choice-list legend{padding:0;margin-bottom:8px;font-size:1.1rem;font-weight:650}.choice{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:start;padding:12px 14px;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer}.choice:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.choice:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.choice input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--color-primary)}.choice-label{font-weight:650}.choice-description{grid-column:2;color:var(--color-text-muted);font-size:.88rem}.file-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.file-row-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary)}.file-row-meta{flex:1;min-width:0}.file-row-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row-size{color:var(--color-text-muted);font-size:.88rem}.link-btn{min-height:var(--tap);padding:0 8px;border:0;background:none;color:var(--color-primary);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}
