/* Stylish Name Generator Homepage + site-wide night mode */
:root{--sng-site-bg:#ffffff;--sng-site-text:#26243a;--sng-site-muted:#737187;--sng-site-surface:#ffffff;--sng-site-panel:#f2f6fb;--sng-site-border:#dce5f0}
html.sng-site-night{color-scheme:dark;--sng-site-bg:#171622;--sng-site-text:#f1efff;--sng-site-muted:#bbb8d0;--sng-site-surface:#211f30;--sng-site-panel:#29263c;--sng-site-border:#413d58}
html.sng-site-night body{background-color:var(--sng-site-bg)!important;color:var(--sng-site-text)!important}
html.sng-site-night body :is(#page,.site,.site-content,.content-area,.site-main,.inside-article,.inside-page-header,.widget,.widget-area,.comments-area,.footer-widgets,.site-footer,.site-header,.main-navigation,.inside-navigation,.separate-containers .inside-article,.separate-containers .comments-area,.separate-containers .page-header){background-color:var(--sng-site-bg)!important;color:var(--sng-site-text)!important;border-color:var(--sng-site-border)!important}
html.sng-site-night body :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,figcaption,.entry-title,.entry-meta,.site-title,.site-description,.main-title,a:not(.wp-block-button__link)){color:var(--sng-site-text)}
html.sng-site-night body :is(input,textarea,select){background-color:#242236!important;color:#f1efff!important;border-color:#49445f!important}
html.sng-site-night body :is(button,.button,.wp-block-button__link){border-color:#514a72}
.sng-global-theme-toggle{position:fixed;right:18px;bottom:18px;z-index:999999;display:flex;align-items:center;gap:8px;padding:11px 15px;border:1px solid #dcd5fa;border-radius:999px;background:#fff;color:#31264f;box-shadow:0 6px 24px rgba(20,16,45,.18);font:600 13px/1.2 inherit;cursor:pointer}
.sng-global-theme-toggle:hover{transform:translateY(-1px);box-shadow:0 9px 28px rgba(20,16,45,.22)}
.sng-theme-icon{font-size:17px;line-height:1}
html.sng-site-night .sng-global-theme-toggle{background:#29263c;color:#f4f0ff;border-color:#514a72}
.sng-homepage{--sng-ink:var(--sng-site-text);--sng-muted:var(--sng-site-muted);--sng-blue:#126bff;--sng-surface:var(--sng-site-surface);--sng-panel:var(--sng-site-panel);--sng-border:var(--sng-site-border);max-width:1180px;margin:0 auto;padding:22px 18px 48px;color:var(--sng-ink);font-family:inherit}
.sng-homepage *{box-sizing:border-box}
.sng-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding:10px 0 42px}
.sng-hero-copy{min-width:0}
.sng-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #e5e0f6;border-radius:30px;background:var(--sng-surface);font-size:12px;letter-spacing:.02em;font-weight:750;color:#7055f4}
.sng-dot{width:8px;height:8px;border-radius:50%;background:#67d5a7;box-shadow:0 0 0 4px #e8fbf2}
.sng-hero h1{font-size:clamp(38px,5vw,58px);line-height:1.02;letter-spacing:-.055em;margin:22px 0;font-weight:850;color:var(--sng-ink)}
.sng-hero h1 span{background:linear-gradient(90deg,#7557f6,#d86fca);-webkit-background-clip:text;background-clip:text;color:transparent}
.sng-hero-copy>p{max-width:560px;color:var(--sng-muted);font-size:16px;line-height:1.8;margin:0 0 24px}
.sng-benefits{display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--sng-muted);font-size:12px}
.sng-benefits span::first-letter{color:#35b887;font-weight:900}
.sng-hero-art{position:relative;min-height:270px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:32px;background:linear-gradient(140deg,#f2efff,#e8ddff);box-shadow:0 20px 55px rgba(81,56,155,.08)}
.sng-orbit{position:absolute;border:1px solid rgba(132,105,248,.18);border-radius:50%;width:300px;height:300px}.sng-orbit-one{width:300px;height:300px}.sng-orbit-two{width:210px;height:210px;border-style:dashed}
.sng-preview-card{position:relative;width:78%;max-width:330px;padding:24px 22px 20px;background:rgba(255,255,255,.96);border-radius:24px;transform:rotate(-3deg);box-shadow:0 22px 48px rgba(78,55,130,.12);color:#292344}
.sng-preview-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;color:#9290a8}.sng-ready{color:#39b889}
.sng-preview-name{text-align:center;font-family:Georgia,serif;font-size:clamp(25px,3vw,37px);font-weight:700;font-style:italic;margin:24px 0 22px;color:#292344;white-space:nowrap}
.sng-preview-tags{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sng-preview-tags span{padding:10px 9px;border-radius:10px;background:#f0ecff;color:#6d5acb;font-size:10px;line-height:1.5}
.sng-generator{width:100%;scroll-margin-top:30px}
.sng-search-panel{padding:20px;background:var(--sng-panel);border:1px solid var(--sng-border);border-radius:18px;box-shadow:0 8px 18px rgba(30,47,72,.09);margin-bottom:24px}
.sng-name-input{display:block;width:100%;height:62px;border:2px solid var(--sng-border)!important;border-radius:13px!important;background:var(--sng-surface)!important;color:var(--sng-ink)!important;text-align:center;font-size:18px!important;box-shadow:none!important;margin:0 0 15px!important;padding:12px 18px!important}
.sng-name-input::placeholder{color:#8998b0;opacity:1}
.sng-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sng-tab{min-height:43px;border:1.5px solid var(--sng-blue);border-radius:7px;background:transparent;color:var(--sng-blue);font-size:15px;font-weight:750;cursor:pointer;transition:background .15s,color .15s}
.sng-tab:hover,.sng-tab.is-active{background:var(--sng-blue);color:#fff;box-shadow:0 3px 7px rgba(18,107,255,.15)}
.sng-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.sng-style-card{display:flex;align-items:stretch;gap:8px;min-width:0;min-height:84px;padding:7px 9px;border:1px solid var(--sng-border);border-radius:17px;background:var(--sng-surface);color:var(--sng-ink);transition:border-color .15s,transform .15s,box-shadow .15s}
.sng-style-card:hover{border-color:#a9baff;transform:translateY(-1px);box-shadow:0 5px 14px rgba(28,49,95,.07)}
.sng-copy-button{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;padding:9px 8px;border:0!important;border-radius:10px;background:transparent!important;color:var(--sng-ink)!important;text-align:left;box-shadow:none!important;font:inherit;cursor:pointer}
.sng-style-text{display:block;width:100%;font-size:16px;text-align:left;overflow-wrap:anywhere;line-height:1.45}

.sng-like-button{display:flex;flex:0 0 54px;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:54px;padding:6px 4px;border:1px solid var(--sng-border)!important;border-radius:12px;background:var(--sng-panel)!important;color:var(--sng-muted)!important;font:inherit;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.sng-like-button:hover{border-color:#f4a2ba!important;transform:translateY(-1px)}
.sng-heart{font-size:20px;line-height:1.1;color:#9695a8}.sng-like-button.is-liked{background:#fff0f4!important;border-color:#ffb8cd!important;color:#c9275a!important}.sng-like-button.is-liked .sng-heart{color:#e63869}.sng-like-count{font-size:12px;font-weight:750;line-height:1.15;font-variant-numeric:tabular-nums}.sng-like-button:disabled{opacity:.65;cursor:wait}.sng-like-button.is-loading{pointer-events:none}
.sng-more-wrap{text-align:center;margin-top:20px}.sng-more-button{border:1px solid var(--sng-blue);border-radius:9px;background:var(--sng-surface);color:var(--sng-blue);padding:11px 22px;font-weight:750;cursor:pointer}.sng-more-button:hover{background:var(--sng-blue);color:#fff}
.sng-note{text-align:center;color:var(--sng-muted);font-size:12px;margin:18px 0 0}.sng-toast{text-align:center;min-height:20px;color:#26966d;font-size:13px;margin-top:6px}
.sng-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}
.sng-homepage button:focus-visible,.sng-homepage input:focus-visible{outline:3px solid #9f8bff;outline-offset:2px}
@media(max-width:700px){.sng-global-theme-toggle{right:12px;bottom:12px;padding:10px 12px}.sng-homepage{padding:16px 12px 34px}.sng-hero{grid-template-columns:1fr;gap:24px;padding-bottom:30px}.sng-hero h1{font-size:clamp(38px,11vw,52px)}.sng-hero-art{min-height:230px}.sng-results{grid-template-columns:1fr;gap:9px}.sng-search-panel{padding:13px}.sng-tab{font-size:13px;min-height:42px}.sng-name-input{font-size:16px!important}.sng-benefits{gap:8px 13px}.sng-preview-card{max-width:300px}}
@media(prefers-reduced-motion:reduce){.sng-homepage *{transition:none!important;scroll-behavior:auto!important}}

/* v1.7: the next batch button is hidden until more results are available. */
.sng-more-button[hidden]{display:none!important}

/* v1.8: accessible copy and live-like controls inside each result card. */
html.sng-site-night .sng-like-button{background:#29263c!important;color:#c0bdd4!important}
html.sng-site-night .sng-like-button.is-liked{background:#412438!important;border-color:#8d3b5d!important;color:#ffc3d5!important}
html.sng-site-night .sng-like-button.is-liked .sng-heart{color:#ff85aa}
.sng-copy-button:focus-visible,.sng-like-button:focus-visible{outline:3px solid #9f8bff!important;outline-offset:2px}

/* v1.9: clearly mark styles already copied by this visitor. */
.sng-copy-state{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:750;line-height:1.2;color:#16845c;background:#e8f8f0;border:1px solid #b8ebd1;border-radius:999px;padding:4px 8px}
.sng-copy-state[hidden]{display:none!important}
.sng-style-card.is-copied{border-color:#8bd5b0;background:#f8fffb}
html.sng-site-night .sng-style-card.is-copied{border-color:#397b5c;background:#202e29}
html.sng-site-night .sng-copy-state{color:#a7f2ca;background:#173b2c;border-color:#2c7251}
