:root{--background: #11141a;--background-soft: #171b23;--surface: #1d222c;--surface-muted: #252b36;--surface-raised: #202631;--line: rgba(237, 241, 255, .11);--line-strong: rgba(255, 95, 126, .34);--ink: #f4f6fb;--ink-soft: #a9b1c2;--ink-muted: #747f94;--accent: #ff5f7e;--accent-strong: #ff7a5f;--accent-soft: rgba(255, 95, 126, .13);--amber: #f5b85b;--amber-soft: rgba(245, 184, 91, .13);--green: #70d49b;--green-soft: rgba(112, 212, 155, .12);--purple-haze: rgba(139, 122, 255, .08);--shadow: 0 18px 44px rgba(0, 0, 0, .26);--radius: 8px}:root[data-theme=light]{--background: #f5f4f2;--background-soft: #ebe9e6;--surface: #fffdf9;--surface-muted: #f3f0ea;--surface-raised: #ffffff;--line: rgba(42, 47, 62, .14);--line-strong: rgba(204, 58, 90, .28);--ink: #20232c;--ink-soft: #616978;--ink-muted: #7c8492;--accent: #d94366;--accent-strong: #d86742;--accent-soft: rgba(217, 67, 102, .1);--amber: #a86d14;--amber-soft: rgba(168, 109, 20, .1);--green: #21895a;--green-soft: rgba(33, 137, 90, .1);--purple-haze: rgba(109, 92, 232, .06);--shadow: 0 18px 44px rgba(50, 44, 38, .09)}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark}html[data-theme=light]{color-scheme:light}body{margin:0;min-height:100vh;font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;color:var(--ink);background:radial-gradient(circle at 20% 0%,var(--purple-haze),transparent 28rem),linear-gradient(180deg,var(--background-soft) 0%,var(--background) 100%)}a{color:inherit;text-decoration:none}button,textarea,input{font:inherit}::selection{background:#ff5f7e47}.page-shell{width:min(1200px,calc(100% - 1.5rem));margin:0 auto;padding:1rem 0 2rem}.app-header,.editor-panel,.report-panel{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);border-radius:1.5rem;box-shadow:var(--shadow)}.app-header{display:grid;gap:1rem;padding:1rem 1.1rem}.brand-row{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.brand-link{display:inline-flex;align-items:center;gap:.65rem;font-weight:600}.brand-logo{display:block;height:1.35rem;width:auto}.brand-divider{width:1px;height:1rem;background:var(--line)}.brand-context,.section-kicker,.summary-label{margin:0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.header-copy{display:flex;justify-content:space-between;gap:1rem;align-items:end}.header-copy h1,.panel-header h2{margin:0;font-size:clamp(1.55rem,2vw,2.1rem);line-height:1.05;letter-spacing:-.04em;color:var(--ink)}.panel-header h2{font-size:clamp(1.25rem,1.6vw,1.65rem);letter-spacing:0}.header-copy p{margin:.45rem 0 0;max-width:40rem;color:var(--ink-soft);line-height:1.6}.theme-toggle,.utility-button{appearance:none;min-height:2.65rem;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;white-space:nowrap;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.theme-toggle{background:var(--accent-soft);border-color:var(--line-strong);padding:.72rem .95rem}.utility-button{background:color-mix(in srgb,var(--surface-raised) 58%,transparent);padding:.78rem .95rem;color:var(--ink-soft)}.utility-button-compact{min-height:2.15rem;padding:.45rem .62rem;font-size:.82rem}.theme-toggle:hover,.theme-toggle:focus-visible,.utility-button:hover,.utility-button:focus-visible{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 10px 24px #ff5f7e1f}.utility-button-accent{background:linear-gradient(135deg,var(--accent),var(--accent-strong));border-color:transparent;color:#fff;font-weight:650}.utility-button-report-accent{background:var(--accent-soft);border-color:var(--line-strong);color:var(--ink);font-weight:700}.utility-button-muted{background:color-mix(in srgb,var(--surface-muted) 46%,transparent)}.utility-button:focus-visible,.theme-toggle:focus-visible,textarea:focus-visible,.draft-review:focus-visible{outline:3px solid rgba(255,95,126,.24);outline-offset:3px}.tool-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.95fr);gap:1rem;align-items:start;margin-top:1rem}.editor-panel,.report-panel{padding:1rem}.report-panel{display:flex;max-height:calc(100vh - 8.5rem);min-height:0;flex-direction:column;overflow:hidden}.panel-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.9rem;align-items:start;margin-bottom:.9rem}.panel-header-compact{align-items:center;min-height:2.95rem}.action-row{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:space-between;align-items:center;width:100%}.action-group{display:flex;flex-wrap:wrap;gap:.65rem}.action-group-right{justify-content:flex-end;margin-left:auto}.action-row-draft{flex-wrap:nowrap}.editor-frame{min-height:360px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,95,126,.055),transparent 26%),var(--surface-raised);overflow:hidden}textarea,.draft-review{width:100%;min-height:360px;padding:1rem 1rem 1.1rem;color:var(--ink);font-size:1rem;line-height:1.68}textarea{border:0;background:transparent;resize:vertical}textarea::placeholder{color:var(--ink-muted)}.review-mode-note{margin:0;padding:.75rem 1rem 0;color:var(--ink-muted);font-size:.85rem;line-height:1.4}.draft-review{max-height:38rem;overflow:auto;color:var(--ink-soft);white-space:pre-wrap;word-break:break-word}.empty-report{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised)}.flag-mark{display:inline;border-radius:.25rem;color:var(--ink);outline:1px solid transparent;padding:.05rem .1rem;scroll-margin:4rem}.flag-high{background:#ff5f7e42;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:.16em}.flag-medium{background:#f5b85b38;text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:2px;text-underline-offset:.16em}.flag-low{background:#edf1ff17;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ink-soft) 58%,transparent);text-underline-offset:.16em}.flag-mark-active{outline-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.flag-mark:after{content:attr(data-flag-number);display:inline-grid;width:1rem;height:1rem;margin-left:.16rem;place-items:center;border-radius:999px;background:var(--surface);color:var(--ink);font-size:.64rem;font-weight:800;line-height:1;vertical-align:.08em}.report-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.65rem;align-items:center}.flag-total{margin:0;color:var(--ink);font-size:1rem;font-weight:700}.report-actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.category-strip{margin-top:.65rem}.category-summary{display:flex;flex-wrap:wrap;gap:.45rem}.category-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:1.9rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--ink-soft);font-size:.82rem;line-height:1}.category-chip strong{display:inline-grid;min-width:1.25rem;height:1.25rem;place-items:center;border-radius:999px;background:var(--accent-soft);color:var(--ink);font-size:.75rem}.category-empty{margin:0;color:var(--ink-muted);font-size:.85rem}.issue-report{min-height:0;margin-top:.75rem;flex:1}.issue-list{display:grid;max-height:min(34rem,calc(100vh - 19rem));overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--line);overscroll-behavior:contain}.empty-report h3,.issue-row h4{margin:0;color:var(--ink);letter-spacing:0}.issue-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:start;padding:.72rem .8rem;background:var(--surface-raised);cursor:pointer}.issue-row:hover,.issue-row:focus-visible{background:color-mix(in srgb,var(--surface-raised) 82%,var(--accent-soft));outline:none}.issue-title-line{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.issue-marker{display:inline-grid;width:1.35rem;height:1.35rem;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--ink);font-size:.72rem;font-weight:800}.issue-row h4{font-size:.92rem;line-height:1.25}.severity-pill{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:.16rem .42rem;font-size:.68rem;font-weight:700;line-height:1.1}.severity-high{background:var(--accent-soft);border-color:var(--line-strong);color:var(--accent)}.severity-medium{background:var(--amber-soft);border-color:color-mix(in srgb,var(--amber) 48%,transparent);color:var(--amber)}.severity-low{color:var(--ink-soft)}.issue-flagged,.issue-action,.empty-report p,.app-footer p{color:var(--ink-soft);line-height:1.35}.issue-flagged,.issue-action{margin:.34rem 0 0;font-size:.84rem}.issue-action{color:var(--ink)}.issue-controls{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-top:.55rem}.issue-action-button{appearance:none;min-height:1.85rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--ink);cursor:pointer;font:inherit;font-size:.76rem;font-weight:700;padding:.28rem .55rem}.issue-action-button:hover,.issue-action-button:focus-visible{border-color:var(--accent);outline:none}.issue-apply-button{background:var(--accent-soft);border-color:var(--line-strong)}.issue-ignore-button{color:var(--ink-soft)}.manual-action{color:var(--ink-muted);font-size:.8rem;font-weight:700}.issue-details{align-self:center;color:var(--ink-muted);font-size:.78rem}.issue-details summary{cursor:pointer;list-style:none}.issue-details summary::-webkit-details-marker{display:none}.issue-details p{width:min(16rem,42vw);margin:.45rem 0 0;padding:.55rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted);color:var(--ink-soft);line-height:1.4}.empty-report{border:0;border-radius:0;padding:1rem;background:var(--surface-raised)}.empty-report-line{margin:0;padding:.8rem;background:var(--surface-raised);color:var(--ink-muted);font-size:.9rem;line-height:1.4}.empty-report h3{font-size:1rem}.empty-report p{margin:.5rem 0 0}.clean-report{border-color:color-mix(in srgb,var(--green) 36%,transparent);background:linear-gradient(180deg,var(--green-soft),transparent),var(--surface-raised)}.app-footer{display:flex;flex-wrap:wrap;flex-direction:column;gap:.9rem 1.25rem;justify-content:flex-start;align-items:flex-start;margin-top:1.1rem;padding:.35rem 0 .1rem}.footer-support{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem .9rem;color:var(--ink-soft)}.footer-support p{max-width:34rem;margin:0;font-size:.85rem;line-height:1.5}.footer-support-button{display:inline-flex;align-items:center;min-height:2.25rem}.footer-support-button>*{transform:scale(.9);transform-origin:left center}.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:flex-start}.footer-links a{color:var(--ink-soft);font-size:.85rem;transition:color .16s ease}.footer-links a:hover,.footer-links a:focus-visible{color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{opacity:0;transform:translateY(10px);animation:revealUp .42s ease forwards}.reveal-delay-1{animation-delay:40ms}.reveal-delay-2{animation-delay:90ms}.reveal-delay-3{animation-delay:.14s}@keyframes revealUp{to{opacity:1;transform:translateY(0)}}@media(max-width:1080px){.tool-layout{grid-template-columns:1fr}.report-panel{max-height:none}.issue-list{max-height:28rem}.editor-frame,textarea{min-height:320px}}@media(max-width:720px){.page-shell{width:min(100% - 1rem,1200px);padding-bottom:1.2rem}.header-copy,.panel-header,.app-footer{display:grid}.action-row,.action-group-right{width:100%;justify-content:stretch}.utility-button,.theme-toggle{flex:1 1 150px}.issue-row{grid-template-columns:1fr}.issue-details{align-self:start}.editor-frame,textarea{min-height:320px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
