/* SoShareIT skin: bright, rounded, card-based. Loaded after style.css. */
:root{--blue:#2563eb;--blue-d:#1d4ed8;--ink:#16203a;--coral:#ff5a4f;--coral-d:#e8453a;--amber:#f5b50a;--violet:#5b4bf0;--soft:#f5f9ff;--card-r:20px}
body{background:var(--soft);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--blue-d)}
.sw-for{color:var(--blue)}

/* header */
.site-header{background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line);box-shadow:none}
.hd{display:flex;align-items:center;gap:1rem;min-height:68px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex:0 0 auto}
.brand img{max-height:36px;width:auto}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 10px rgba(37,99,235,.35)}
.brand-name{font-size:1.5rem;font-weight:800;color:var(--navy);letter-spacing:-.03em}
.brand-name b{color:var(--blue);font-weight:800}
.main-nav{flex:1;display:flex;justify-content:center;min-width:0}
.nav-pills{display:flex;flex-wrap:wrap;gap:.25rem;list-style:none;margin:0;padding:0}
.nav-pills a{display:flex;align-items:center;min-height:44px;padding:.4rem 1rem;border-radius:999px;color:var(--navy);font-weight:600;font-size:.97rem;text-decoration:none;transition:background-color .2s,color .2s}
.nav-pills a:hover{background:var(--sky);color:var(--blue-d)}
.nav-pills .current-menu-item>a,.nav-pills a[aria-current=page]{background:var(--sky);color:var(--blue-d)}
.hd-search{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);margin-left:auto;cursor:pointer;transition:background-color .2s,color .2s}
.hd-search:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.site-main{padding:1.5rem 0 4rem}

/* content */
article.page,article.post,article.hentry{border-radius:28px;border:1px solid var(--line);box-shadow:var(--shadow)}
.entry-title{font-weight:800;letter-spacing:-.03em}
.entry-content h2{border-left:0;padding-left:0;font-weight:800;letter-spacing:-.025em;position:relative}
.entry-content h2:before{content:"";display:inline-block;width:10px;height:.9em;border-radius:6px;background:linear-gradient(180deg,#60a5fa,var(--blue));margin-right:.6rem;vertical-align:-.1em}
.entry-content li::marker{color:var(--blue)}
.entry-content>p:first-of-type,.taxonomy-description>p:first-child{background:linear-gradient(135deg,#eaf2ff,#f3efff);border-radius:var(--card-r)}
.entry-content button,.entry-content input[type=button],.entry-content input[type=submit]{background:var(--blue);border-radius:999px}
.entry-content button:hover,.entry-content input[type=button]:hover,.entry-content input[type=submit]:hover{background:var(--blue-d)}
.entry-content th,.taxonomy-description th{background:#eaf2ff}

/* cards */
.sw-wish,.sw-top,.sw-row,.sw-branch,.post-card{border-radius:var(--card-r);border:1px solid var(--line);transition:transform .2s,box-shadow .2s}
.sw-wish:hover,.sw-row:hover,.sw-branch:hover,.post-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(37,99,235,.14)}
.sw-top{border-top:0;background:linear-gradient(180deg,#fff,#f4f8ff)}
.sw-top .sw-rank{font-family:Inter,sans-serif;background:var(--blue);border-color:#fff}
.sw-top-1 .sw-rank{background:var(--amber);color:var(--navy)}
.sw-top-2 .sw-rank{background:#6366f1}
.sw-row .sw-n{font-family:Inter,sans-serif;color:var(--blue)}
.sw-copy{background:var(--blue);border-radius:999px}
.sw-copy:hover{background:var(--blue-d)}
.sw-copy.is-done{background:#16a34a}
.sw-badge{background:#eaf2ff;color:var(--blue-d)}
.sw-topics a{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.sw-topics a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.post-card img{border-radius:var(--card-r) var(--card-r) 0 0}
.post-card .card-title a:hover{color:var(--blue)}
.pagination .active .page-link{background:var(--blue);border-color:var(--blue)}
.page-feedback{background:#eaf2ff;border-color:#cfe0fb;border-radius:var(--card-r)}
.page-feedback .btn{border-color:var(--blue);color:var(--blue-d)}
.page-feedback .btn:hover,.page-feedback .btn-primary{background:var(--blue);color:#fff}

/* hero */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:1rem;margin:0 0 2rem;padding:clamp(1.5rem,4vw,3.2rem);border-radius:32px;overflow:hidden;background:radial-gradient(900px 400px at 85% 10%,#dbeafe 0,transparent 60%),linear-gradient(135deg,#e6f1ff 0%,#eef0ff 55%,#fdf0f8 100%);border:1px solid #dbe7fb}
.hero-badge{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 1rem;padding:.35rem .85rem;border-radius:999px;background:#fff;color:var(--blue-d);font-weight:700;font-size:.85rem;box-shadow:0 2px 8px rgba(37,99,235,.12)}
.hero-badge .ico{width:16px;height:16px;color:#ec4899}
.hero-title{font-size:clamp(2rem,4.6vw,3.6rem);font-weight:800;line-height:1.08;letter-spacing:-.035em;margin:0 0 1rem;color:var(--navy);text-align:left;max-width:15ch}
.hero-lead{font-size:1.1rem;color:var(--ink);max-width:34rem;margin:0 0 1.4rem}
.hero-search{display:flex;align-items:center;gap:.4rem;max-width:36rem;padding:.35rem .35rem .35rem 1rem;background:#fff;border-radius:999px;box-shadow:0 8px 26px rgba(37,99,235,.16);border:1px solid #d6e4fb}
.hero-search>.ico{color:var(--blue);flex:0 0 auto}
.hero-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;min-height:46px;font:inherit;color:var(--ink)}
.hero-search:focus-within{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}
.hero-search button{display:grid;place-items:center;width:50px;height:50px;border:0;border-radius:50%;background:var(--blue);color:#fff;cursor:pointer;transition:background-color .2s}
.hero-search button:hover{background:var(--blue-d)}
.hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1.1rem 0 0;font-size:.9rem;font-weight:600}
.hero-chips span{color:var(--navy)}
.hero-chips a{display:inline-flex;align-items:center;min-height:36px;padding:.2rem .9rem;border-radius:999px;background:rgba(255,255,255,.8);border:1px solid #cfe0fb;color:var(--blue-d);text-decoration:none;transition:background-color .2s,color .2s}
.hero-chips a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.hero-art{position:relative;min-height:300px}
.hero-art .blob{position:absolute;inset:8% 4% 4% 10%;border-radius:46% 54% 42% 58%/52% 44% 56% 48%;background:linear-gradient(135deg,#bfdbfe,#c7d2fe 60%,#fbcfe8);opacity:.7}
.hc{position:absolute;z-index:1;display:flex;align-items:center;gap:.5rem;padding:.8rem 1.1rem;border-radius:18px;background:#fff;font-weight:800;color:var(--navy);box-shadow:0 14px 30px rgba(15,29,68,.16);white-space:nowrap;animation:bob 6s ease-in-out infinite}
.hc i{font-style:normal;font-size:1.5rem}
.hc1{top:6%;left:16%;transform:rotate(-6deg)}
.hc2{top:30%;right:0;transform:rotate(5deg);animation-delay:-1.5s}
.hc3{top:56%;left:4%;transform:rotate(-3deg);animation-delay:-3s}
.hc4{bottom:2%;right:10%;transform:rotate(4deg);animation-delay:-4.5s}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -10px}}
.home-body{margin-top:0}
.home .site-main>.container>.home-body{max-width:none;background:transparent;border:0;box-shadow:none;padding:0}
.home .entry-content>p:first-of-type{text-align:left;margin:0 0 2rem;max-width:none}

/* footer */
.site-footer{background:linear-gradient(180deg,#fff,#eef4ff);color:var(--ink-2);border-top:1px solid var(--line);padding:3rem 0 1.5rem}
.site-footer a{color:var(--navy)}
.site-footer a:hover{color:var(--blue);text-decoration:underline}
.site-footer .footer-title{color:var(--navy);font-size:1.05rem;font-weight:800}
.site-footer .copy{border-top:1px solid var(--line);color:var(--ink-2)}
.brand-foot{margin-bottom:.8rem}
.foot-about{max-width:30rem;margin:0}

/* search sheet */
.find-form{display:flex;gap:.6rem}
.find-form input{flex:1;min-width:0;min-height:52px;padding:.5rem 1.1rem;border:2px solid #cfe0fb;border-radius:999px;font:inherit;background:#fff}
.find-form input:focus{outline:3px solid rgba(37,99,235,.3);border-color:var(--blue)}
.find-form button{display:flex;align-items:center;gap:.4rem;min-height:52px;padding:0 1.3rem;border:0;border-radius:999px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer}

@media (max-width:991.98px){
 .main-nav{display:none}
 .hd{min-height:60px}
 body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
 .sheet{background:#fff;border-radius:28px 28px 0 0}
 .sheet .offcanvas-title{font-family:Inter,sans-serif;font-weight:800}
 .sheet-grid a{border-radius:16px;background:#f5f9ff;border-color:var(--line)}
 .to-top{background:#fff;color:var(--navy);box-shadow:0 6px 18px rgba(15,29,68,.18);bottom:calc(98px + env(safe-area-inset-bottom));z-index:1030}

 /* bottom tab bar with raised centre action */
 .dock{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1040;background:#fff;border:0;border-radius:22px 22px 0 0;box-shadow:0 -6px 24px rgba(15,29,68,.12);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
 .dock ul{display:flex;list-style:none;margin:0;padding:0;align-items:flex-end}
 .dock li{flex:1;min-width:0}
 .dock a,.dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;min-height:58px;border:0;border-radius:14px;background:transparent;color:#7b86a3;font:inherit;font-size:.75rem;font-weight:700;text-decoration:none;cursor:pointer;transition:color .2s}
 .dock .ico{width:26px;height:26px}
 .dock a.is-active{color:var(--violet);background:transparent}
 .dock a:hover,.dock button:hover{color:var(--violet)}
 .dock-mid button{color:var(--coral);position:relative}
 .dock-fab{display:grid;place-items:center;width:58px;height:58px;margin-top:-30px;border-radius:50%;background:linear-gradient(135deg,#ff7a6b,var(--coral-d));color:#fff;box-shadow:0 0 0 5px #fff,0 8px 18px rgba(255,90,79,.45);transition:transform .15s}
 .dock-fab .ico{width:28px;height:28px}
 .dock-mid button:active .dock-fab{transform:scale(.94)}
 .dock-mid button:hover{color:var(--coral-d)}
 .hero{grid-template-columns:1fr;border-radius:24px}
 .hero-title{max-width:none}
 .hero-art{min-height:210px}
 .hc{padding:.55rem .85rem;font-size:.9rem;border-radius:14px}
 .hc i{font-size:1.2rem}
 .hc1{left:2%}.hc2{right:2%;top:34%}.hc3{left:0;top:62%}.hc4{display:none}
}
@media (max-width:575.98px){
 :root{--r:20px}
 .container{padding-left:14px;padding-right:14px}
 .site-main{padding-top:.75rem}
 .hero{margin-left:0;margin-right:0;padding:1.4rem 1.1rem}
 article.page,article.post,article.hentry{margin:0;border:1px solid var(--line)!important;border-radius:22px;box-shadow:var(--shadow);padding:1.1rem 1rem}
 .home .site-main>.container>.home-body{padding:0;border:0!important;box-shadow:none;border-radius:0}
 .sw-grid{margin-left:0;margin-right:0;gap:14px}
 .sw-wish,.sw-top,.sw-row,.sw-branch,.post-card,.page-feedback{border:1px solid var(--line)!important;border-radius:var(--card-r)!important;box-shadow:var(--shadow);margin-left:0;margin-right:0}
 .sw-wish{margin-top:0;padding:1.1rem}
 .sw-top,.sw-row,.sw-branch{padding-left:1rem;padding-right:1rem}
 .sw-top{padding-top:2rem}
 .sw-podium,.sw-list{gap:14px}
 .post-card .card-body{padding:1rem}
 .post-card img{border-radius:var(--card-r) var(--card-r) 0 0}
 .entry-content>p:first-of-type{border-radius:var(--card-r);margin-left:0;margin-right:0;padding:1rem}
 .entry-content table,.taxonomy-description table{margin-left:0;margin-right:0;max-width:100%;border-radius:12px;border:1px solid var(--line)}
}
@media (min-width:992px){.dock,.to-top,.sheet{display:none!important}.hd-search{margin-left:0}}
@media (prefers-reduced-motion:reduce){.hc{animation:none}*{transition:none!important}}
.finder-sheet{height:auto;max-height:70vh;border-radius:28px 28px 0 0;background:#fff;border:0;box-shadow:0 -10px 40px rgba(15,29,68,.2)}
.finder-sheet .offcanvas-title{font-weight:800;color:var(--navy)}
.finder-sheet .offcanvas-body{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom))}
@media (min-width:992px){.finder-sheet{left:50%;right:auto;width:min(640px,94vw);transform:translate(-50%,100%)}.finder-sheet.show{transform:translate(-50%,0)}}
