:root{--sn-bg:#f6f8fb;--sn-card:#fff;--sn-ink:#1d2433;--sn-mute:#5b6576;--sn-line:#e2e7ef;--sn-brand:#0b6bcb;--sn-brand-ink:#fff;--sn-ok:#0f7b4b;--sn-warn:#9a5b00;--sn-soft:#eaf3fd}
*{box-sizing:border-box}
body{margin:0;background:var(--sn-bg);color:var(--sn-ink);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--sn-brand)}
.sn-wrap{max-width:900px;margin:0 auto;padding:0 16px}
.sn-top{background:#fff;border-bottom:1px solid var(--sn-line)}
.sn-top .sn-wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;flex-wrap:wrap}
.sn-logo{font-weight:700;font-size:18px;text-decoration:none;color:var(--sn-ink)}
.sn-top nav{display:flex;gap:14px;font-size:14px}
.sn-top nav a{text-decoration:none}
main.sn-wrap{padding-top:12px;padding-bottom:32px}
.sn-crumbs{font-size:13px;color:var(--sn-mute);margin:4px 0 8px;overflow-wrap:anywhere}
.sn-crumbs a{color:var(--sn-mute)}
h1{font-size:26px;line-height:1.3;margin:6px 0 12px}
h2{font-size:20px;margin:28px 0 10px}
.sn-lead{font-size:17px}
.sn-answer{background:var(--sn-card);border:1px solid var(--sn-line);border-left:5px solid var(--sn-ok);border-radius:10px;padding:12px 16px;font-size:17px}
.sn-answer ul{margin:6px 0 8px;padding-left:20px}
.sn-box{background:var(--sn-card);border:1px solid var(--sn-line);border-radius:10px;padding:14px 16px;margin:18px 0}
.sn-box h2{margin:0 0 8px;font-size:18px}
.sn-box label{display:block;font-size:14px;color:var(--sn-mute);margin-bottom:4px}
.sn-box input[type=text],.sn-box input[type=search]{width:100%;font-size:16px;padding:10px 12px;border:1px solid #c7d0dd;border-radius:8px}
.sn-box fieldset{border:0;padding:0;margin:10px 0 0}
.sn-box legend{font-size:14px;color:var(--sn-mute)}
.sn-opt{display:flex!important;gap:8px;align-items:center;color:var(--sn-ink)!important;font-size:16px!important;padding:6px 0}
.sn-out{margin:12px 0 8px;background:var(--sn-soft);border-radius:8px;padding:10px 12px;font-weight:600;min-height:46px;overflow-wrap:anywhere}
.sn-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.sn-actions button{background:var(--sn-brand);color:var(--sn-brand-ink);border:0;border-radius:8px;padding:10px 16px;font-size:15px;cursor:pointer}
.sn-actions button.sn-done{background:var(--sn-ok)}
.sn-note{font-size:13px;color:var(--sn-mute)}
.sn-quote{margin:8px 0;padding:10px 14px;background:#fff;border-left:4px solid var(--sn-line);font-size:15px;color:#333}
.sn-src{padding-left:20px}
.sn-src li.sn-part{color:var(--sn-warn)}
.sn-src li.sn-part a{color:var(--sn-warn)}
.sn-cols{columns:2;column-gap:24px;padding-left:18px}
.sn-cols li{break-inside:avoid;margin-bottom:4px}
.sn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:12px 0}
.sn-card{display:flex;flex-direction:column;background:var(--sn-card);border:1px solid var(--sn-line);border-radius:10px;padding:10px 12px;text-decoration:none;color:var(--sn-ink)}
.sn-card span{font-size:13px;color:var(--sn-mute)}
.sn-tablewrap{overflow-x:auto;background:var(--sn-card);border:1px solid var(--sn-line);border-radius:10px}
.sn-table{width:100%;border-collapse:collapse;font-size:15px}
.sn-table th,.sn-table td{padding:8px 10px;border-bottom:1px solid var(--sn-line);vertical-align:top;text-align:left}
.sn-table th{background:#f0f3f8;font-size:13px;color:var(--sn-mute)}
.sn-table sup{color:var(--sn-warn)}
.sn-find{list-style:none;padding:0;margin:8px 0 0}
.sn-find li a{display:block;padding:8px 4px;border-bottom:1px solid var(--sn-line);text-decoration:none}
.sn-faq details{background:var(--sn-card);border:1px solid var(--sn-line);border-radius:8px;padding:8px 12px;margin-bottom:8px}
.sn-faq summary{font-weight:600;cursor:pointer}
.sn-dora{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;background:#fff8e6;border:1px solid #f2dfa8;border-radius:10px;padding:12px 14px;margin:28px 0 0}
.sn-dora span{color:var(--sn-mute);font-size:15px;flex:1 1 220px}
.sn-dora a{background:#f0a400;color:#1d1400;text-decoration:none;font-weight:600;border-radius:8px;padding:8px 14px}
.sn-ad{margin:22px 0;min-height:100px}
.sn-foot{border-top:1px solid var(--sn-line);background:#fff;font-size:13px;color:var(--sn-mute);padding:16px 0}
@media (max-width:600px){h1{font-size:22px}.sn-cols{columns:1}.sn-table{font-size:14px}}
.sn-report{background:none;border:0;padding:0;color:var(--sn-brand);text-decoration:underline;cursor:pointer;font:inherit}
