.t4-sr,.t4-status{white-space:nowrap}.ct-card:hover,.tool-card:hover{box-shadow:var(--t4-shadow)}.ct-btn,.t4-link{text-decoration:none}.ct-empty,.ct-msg{text-align:center}.ct-modal,.t4-search__clear{opacity:0;visibility:hidden}:root{--t4-ink:#0A2A44;--t4-accent:#1B3A6B;--t4-gold:#B8860B;--t4-surface:#FFFFFF;--t4-page:#FAF7F0;--t4-line:#E2D9C8;--t4-text:#2D3748;--t4-muted:#647287;--t4-shadow:0 8px 24px rgba(27,58,107,.09)}[data-t4-theme=dark]{--t4-ink:#E6EDF5;--t4-accent:#7FB0E8;--t4-gold:#E3C766;--t4-surface:#131A24;--t4-page:#0B1017;--t4-line:#2A3644;--t4-text:#D6DEE8;--t4-muted:#97A6B8;--t4-shadow:0 8px 24px rgba(0,0,0,.45)}[data-t4-theme=dark] body{background:var(--t4-page);color:var(--t4-text)}[data-t4-theme=dark] .tool-card,[data-t4-theme=dark] .t4-bar{background:var(--t4-surface);border-color:var(--t4-line)}[data-t4-theme=dark] .tool-card h3{color:var(--t4-ink)}.t4-search__icon,.t4-search__kbd,[data-t4-theme=dark] .note,[data-t4-theme=dark] .tool-card p{color:var(--t4-muted)}[data-t4-theme=dark] input,[data-t4-theme=dark] select,[data-t4-theme=dark] textarea{background:#0f1720;color:var(--t4-text);border-color:var(--t4-line)}.t4-search input,.t4-theme{border:1.5px solid var(--t4-line)}[data-t4-theme=dark] table{color:var(--t4-text)}[data-t4-theme=dark] th{background:#1a2430}[data-t4-theme=dark] canvas,[data-t4-theme=dark] svg{filter:invert(.92) hue-rotate(180deg)}@media (prefers-reduced-motion:reduce){.t4-groupbody,.tool-card,.t4-flash{transition:none!important;animation:none!important}}.t4-bar{position:sticky;top:0;z-index:30;background:var(--t4-surface);border-bottom:1px solid var(--t4-line);padding:.8rem clamp(.8rem,3vw,1.5rem);box-shadow:0 1px 0 rgba(0,0,0,.04)}.t4-search__clear,.t4-search__icon,.t4-search__kbd{top:50%;transform:translateY(-50%)}.t4-bar__in{max-width:78rem;margin-inline:auto;display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.t4-search{position:relative;flex:1 1 18rem;min-width:0}.t4-search input{width:100%;padding:.7rem 2.4rem .7rem 2.5rem;font:500 1rem/1.2 var(--font-body, Inter, system-ui, sans-serif);color:var(--t4-text);background:var(--t4-page);border-radius:100px;transition:border-color .18s,box-shadow .18s}.t4-search input::placeholder{color:var(--t4-muted)}.t4-search input:focus-visible{outline:0;border-color:var(--t4-accent);box-shadow:0 0 0 4px rgba(27,58,107,.14)}.t4-search__icon{position:absolute;left:.85rem;pointer-events:none;font-size:.95rem}.t4-search__kbd{position:absolute;right:2.3rem;font:600 .7rem/1 var(--font-body, sans-serif);border:1px solid var(--t4-line);border-radius:4px;padding:.15rem .35rem;pointer-events:none}.t4-search.has-value .t4-search__kbd{display:none}.t4-search__clear{position:absolute;right:.45rem;width:1.7rem;height:1.7rem;border:0;border-radius:50%;cursor:pointer;background:var(--t4-line);color:var(--t4-text);transition:opacity .15s}.t4-cms,.t4-status{color:var(--t4-muted)}.ct-modal.is-open,.t4-search.has-value .t4-search__clear{opacity:1;visibility:visible}.t4-status{font-size:.875rem}.t4-cms{font-size:.75rem}.t4-theme{width:2.4rem;height:2.4rem;flex:0 0 auto;cursor:pointer;border-radius:50%;background:var(--t4-page);color:var(--t4-ink);font-size:1rem;transition:background .18s,transform .18s}.t4-theme:hover{background:var(--t4-line);transform:rotate(-15deg)}.t4-theme:focus-visible{outline:2px solid var(--t4-accent);outline-offset:2px}.t4-groupbtn{margin-left:auto;display:inline-flex;align-items:center;gap:.5rem;background:0 0;border:1.5px solid var(--t4-line);border-radius:100px;padding:.3rem .7rem;cursor:pointer;color:var(--t4-muted);font:600 .8rem/1 var(--font-body, sans-serif);transition:border-color .18s,color .18s}.t4-badge,.t4-caret{display:inline-block}.t4-groupbtn:hover{border-color:var(--t4-accent);color:var(--t4-accent)}.t4-groupbtn:focus-visible{outline:2px solid var(--t4-accent);outline-offset:2px}.t4-count{font-variant-numeric:tabular-nums}.t4-caret{transition:transform .22s cubic-bezier(.16,1,.3,1)}.t4-groupbtn[aria-expanded=false] .t4-caret{transform:rotate(-90deg)}.t4-groupbody{animation:.28s cubic-bezier(.16,1,.3,1) t4-in}@keyframes t4-in{from{opacity:0;transform:translateY(-6px)}}.t4-badge{margin-left:.4rem;vertical-align:middle;font:700 .62rem/1 var(--font-body, sans-serif);letter-spacing:.07em;border-radius:100px;padding:.22rem .45rem}.t4-new{background:#1f7a5a;color:#fff}.ct-badge,.t4-feat{background:var(--t4-gold);color:#fff}.t4-link{margin-left:.4rem;opacity:0;font-size:.8rem;transition:opacity .18s}.tool-card:hover .t4-link,.t4-link:focus-visible{opacity:.75}.t4-link:focus-visible{outline:2px solid var(--t4-accent);outline-offset:2px}.t4-flash{animation:1.6s ease-out t4-flash}@keyframes t4-flash{0%,100%{box-shadow:var(--t4-shadow)}15%{box-shadow:0 0 0 3px var(--t4-gold),var(--t4-shadow)}}.tool-card{transition:box-shadow .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);min-width:0}.tool-card[hidden]{display:none!important}.t4-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.ct-card__d,.ct-card__t,.ct-meta{overflow-wrap:anywhere}.ct-section{max-width:78rem;margin:0 auto;padding:2.5rem clamp(.8rem,3vw,1.5rem)}.ct-head{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:1.2rem}.ct-head h2{font-size:clamp(1.3rem,3vw,1.9rem);color:var(--t4-ink)}.ct-badge{border-radius:100px;padding:.25rem .6rem;font:700 .78rem/1 var(--font-body,sans-serif)}.ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1rem}.ct-card{min-width:0;background:var(--t4-surface);border:1px solid var(--t4-line);border-left:4px solid var(--t4-gold);border-radius:14px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.4rem;transition:box-shadow .22s,transform .22s}.ct-btn,.ct-kind{border-radius:100px}.ct-card:hover{transform:translateY(-3px)}.ct-card__h{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.ct-card__t{font-size:1.05rem;color:var(--t4-ink);line-height:1.3}.ct-card__by,.ct-card__d,.ct-meta{color:var(--t4-muted)}.ct-card__by{font-size:.8rem}.ct-card__d{font-size:.85rem;line-height:1.55}.ct-meta{font-size:.72rem}.ct-kind{font:700 .62rem/1 var(--font-body,sans-serif);letter-spacing:.06em;padding:.24rem .5rem}.ct-kind--doc{background:#e4f3ec;color:#14603f}.ct-kind--embed{background:#fdf0e3;color:#8a4b00}.ct-ver{font:600 .72rem/1 var(--font-body,sans-serif);color:var(--t4-muted)}.ct-rate{display:flex;align-items:center;gap:.4rem;font-size:.8rem}.ct-star{color:var(--t4-line)}.ct-star.on{color:var(--t4-gold)}.ct-rate__n{color:var(--t4-muted);font-size:.75rem}.ct-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:auto;padding-top:.6rem}.ct-btn{display:inline-block;padding:.42rem .8rem;cursor:pointer;font:600 .8rem/1 var(--font-body,sans-serif);background:var(--t4-accent);color:#fff;border:1.5px solid var(--t4-accent)}.ct-btn:hover{filter:brightness(1.08)}.ct-btn--ghost{background:0 0;color:var(--t4-accent)}.ct-empty,.ct-field .ct-hint,.ct-state{color:var(--t4-muted)}.ct-btn--warn{background:#b0332a;border-color:#b0332a}.ct-btn:focus-visible{outline:2px solid var(--t4-gold);outline-offset:2px}.ct-empty{grid-column:1/-1;padding:3rem 1rem;line-height:1.7}.ct-wrap{max-width:46rem;margin:0 auto;padding:2rem clamp(.8rem,3vw,1.5rem) 4rem}.ct-field,.ct-msg{margin-bottom:1rem}.ct-field label{display:block;font-weight:600;font-size:.85rem;color:var(--t4-ink);margin-bottom:.3rem}.ct-field .ct-hint{font-weight:400;font-size:.75rem}.ct-field input[type=text],.ct-field input[type=email],.ct-field select,.ct-field textarea{width:100%;padding:.62rem .8rem;font:400 .95rem/1.4 var(--font-body,sans-serif);border:1.5px solid var(--t4-line);border-radius:8px;background:var(--t4-surface);color:var(--t4-text)}.ct-field textarea{min-height:6rem;resize:vertical}.ct-row{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:40rem){.ct-row{grid-template-columns:1fr 1fr}}.ct-state{font-size:.82rem;margin-top:.35rem}.ct-state.is-ok{color:#14603f;font-weight:600}.ct-state.is-err{color:#8a1f1f;font-weight:600}.ct-msg{padding:.9rem 1rem;border-radius:10px;font-weight:600}.ct-msg.is-ok{background:#e4f3ec;color:#14603f;border:1px solid #a9d9c2}.ct-msg.is-err{background:#fdecec;color:#8a1f1f;border:1px solid #e7b7b7}.ct-warn{background:#fdf0e3;border-left:4px solid #b8860b;border-radius:8px;padding:.8rem 1rem;font-size:.83rem;line-height:1.6;color:#7a4b00;margin-top:.5rem}.ct-qrow{display:flex;gap:1rem;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;border:1px solid var(--t4-line);border-radius:12px;padding:.9rem 1.1rem;margin-bottom:.7rem;background:var(--t4-surface)}.ct-qact{display:flex;gap:.4rem;flex-wrap:wrap}.ct-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:1rem;background:rgba(10,42,68,.72);transition:opacity .2s,visibility .2s}.ct-modal__panel{width:min(64rem,100%);height:min(80vh,44rem);background:var(--t4-surface);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.ct-modal__head{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:var(--t4-ink);color:#fff}.ct-modal__head h3{font-size:1rem}.ct-modal__note{font-size:.72rem;opacity:.8}.ct-modal iframe{flex:1;width:100%;border:0;background:#fff}body.ct-locked{overflow:hidden}@media print{.ct-section,.ct-modal,.ct-wrap,.t4-bar,.t4-groupbtn,.t4-link,.t4-badge,.t4-theme{display:none!important}.t4-groupbody,.t4-groupbody[hidden]{display:block!important}[data-t4-theme=dark]{--t4-surface:#fff;--t4-page:#fff;--t4-text:#000}[data-t4-theme=dark] canvas,[data-t4-theme=dark] svg{filter:none}}