/*调整全局字体大小*/
body,html{font-size:14px;}

/*左导航悬浮sidebar-menu-inner宽度调整为90px*/
.sidebar-popup.sidebar-menu-inner > div > ul > li.sidebar-item>ul{position:absolute;top:0px;left:10px;width:90px;z-index:99}
.sidebar-popup.sidebar-menu-inner ul{width:90px}
.sidebar-popup.sidebar-menu-inner ul li{width:90px}

/*隐藏左导航scrollbar*/
.sidebar-menu.flex-fill::-webkit-scrollbar{display:none}

/*搜索框搜索图标颜色*/
#search button i{color:#6C757D;font-size:18px}

/*顶部导航栏字体+图标颜色*/
.big-header-banner .page-header{color:#ffffff;background:rgba(255,255,255,0);box-shadow:none;transition:color .3s,background-color .3s}
.big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a,.big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item){color:#ffffff;}
.big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a:hover,.big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item):hover{color:#dc3545;}
.big-header-banner:not(.header-bg) .header-mini-btn path{stroke:#ffffff;}
.big-header-banner:not(.header-bg) .header-mini-btn label:hover path{stroke:#ffffff;}

/*搜索栏字体+背景*/
.header-big #search-text{color:#6C757D;}
.io-black-mode .header-big #search-text{color:#fff;}

/*搜索activate图标颜色*/
.header-big .search-type input:checked+label:before{content:'';border-width:8px 8px 0px 8px;border-style:solid;border-color:#ffffff transparent transparent;position:absolute;left:50%;top:0;margin-left:-8px}

/*主页搜索搜索框(头+底部)字体颜色*/
.header-big:not(.no-bg) .s-type-list{color:#20c997}
.header-big:not(.no-bg) .text-muted,.header-big:not(.no-bg) .search-type .menu-item a,.header-big:not(.no-bg) .big-title .h1{color:#ffffff!important}

/*渐变背景上的搜索标签可读性*/
.header-big .s-type-list label span,
.header-big .search-type li label,
.header-big .search-type li.menu-item a{
    font-weight:600;
    letter-spacing:.02em;
    text-shadow:0 1px 3px rgba(32, 24, 20, .42), 0 0 14px rgba(32, 24, 20, .18);
}
.header-big .s-type-list label span{
    color:rgba(255,255,255,.9);
}
.header-big:not(.no-bg) .search-type label,
.header-big:not(.no-bg) .search-type .menu-item a{
    border-radius:999px;
    color:rgba(255,255,255,.88)!important;
    transition:background-color .2s, opacity .2s, color .2s;
}
.header-big:not(.no-bg) .search-type input:checked+label,
.header-big:not(.no-bg) .search-type input:hover+label,
.header-big:not(.no-bg) .search-type .menu-item a:hover{
    background-color:rgba(255,255,255,.18)!important;
    color:#fff!important;
    opacity:1;
}

/*主页header-banner底部宽度*/
.post-top{padding-bottom:50px}

/*左导航二级导航标题左侧距离*/
.sidebar-menu-inner ul li ul li a{margin-left:30px;}

/*头部导航二级导航iconfont图标*/
.navbar-collapse ul li.menu-item-has-children:after{content:'\e612';}

/*主页共享背景样式：独特流动弥散渐变*/
.main-content.grid-bg{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:#f8f2ee;
}
.main-content.grid-bg::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    background:
        radial-gradient(ellipse 44% 42% at 50% 50%, rgba(255, 128, 164, .62), transparent 66%),
        radial-gradient(ellipse 42% 40% at 50% 50%, rgba(105, 196, 255, .58), transparent 66%),
        radial-gradient(ellipse 48% 44% at 50% 50%, rgba(255, 220, 138, .56), transparent 68%),
        radial-gradient(ellipse 44% 42% at 50% 50%, rgba(123, 222, 180, .48), transparent 68%),
        conic-gradient(from 132deg at 52% 50%, rgba(255,248,241,.9), rgba(255,180,205,.42), rgba(139,216,255,.4), rgba(255,235,180,.42), rgba(184,226,202,.38), rgba(255,248,241,.9));
    background-repeat:no-repeat;
    background-size:128% 112%, 118% 126%, 132% 118%, 122% 132%, 112% 112%;
    background-position:2% 4%, 98% 8%, 82% 64%, 8% 88%, 50% 50%;
    animation:rosetears-mesh-blob-flow 54s cubic-bezier(.37,0,.63,1) infinite alternate;
}
.main-content.grid-bg > .big-header-banner,
.main-content.grid-bg > #search-bg,
.main-content.grid-bg > #content,
.main-content.grid-bg > footer.main-footer{
    position:relative;
    z-index:1;
}
.io-black-mode .main-content.grid-bg{
    background:#151723;
}
.io-black-mode .main-content.grid-bg::before{
    background:
        radial-gradient(ellipse 44% 42% at 50% 50%, rgba(139, 96, 255, .44), transparent 66%),
        radial-gradient(ellipse 42% 40% at 50% 50%, rgba(75, 181, 255, .38), transparent 66%),
        radial-gradient(ellipse 48% 44% at 50% 50%, rgba(255, 138, 102, .32), transparent 68%),
        radial-gradient(ellipse 44% 42% at 50% 50%, rgba(84, 210, 170, .3), transparent 68%),
        conic-gradient(from 132deg at 52% 50%, rgba(20,23,35,.78), rgba(135,91,255,.22), rgba(75,181,255,.19), rgba(255,138,102,.17), rgba(84,210,170,.15), rgba(20,23,35,.78));
}
#search-bg.header-big.css-color{
    background:transparent!important;
    background-image:none!important;
    overflow:visible;
    isolation:auto;
    contain:none;
    animation:none;
}
#search-bg.header-big.css-color::before{
    content:none;
}
@keyframes rosetears-mesh-blob-flow{
    0%{background-position:2% 4%, 98% 8%, 82% 64%, 8% 88%, 50% 50%}
    34%{background-position:12% 14%, 86% 18%, 70% 72%, 20% 70%, 46% 54%}
    68%{background-position:0% 22%, 94% 2%, 88% 52%, 12% 96%, 56% 46%}
    100%{background-position:16% 8%, 78% 16%, 76% 82%, 4% 76%, 48% 52%}
}
@media (max-width: 767.98px){
    .main-content.grid-bg::before{
        animation-duration:44s;
    }
}
@media (prefers-reduced-motion: reduce){
    .main-content.grid-bg::before{
        animation:none;
    }
}

/*搜索热词样式调整*/
.search-hot-text{
    position: absolute;
    z-index: 100;
    width: 100%;
    border-radius: 0 0 10px 10px;
    background: #FFF;
    box-shadow: 0px 4px 5px 0px #cccccc94;
    overflow: hidden;
}
.search-hot-text ul{
    margin: 0;
    padding: 5px 0;
}
.search-hot-text ul li{
    line-height: 30px;
    font-size: 14px;
    padding: 0px 25px;
    color: #777;
    cursor: pointer;
}
.io-black-mode .search-hot-text ul li{
    color: #fff;
}    
.search-hot-text ul li.current{
    background: #f1f1f1;
    color: #2196f3;
}
.search-hot-text ul li:hover{
    background: #f1f1f1;
    color: #2196f3;
    cursor: pointer;
}
.search-hot-text ul li span{
    display: inline-block;
    width: 20px;
    height: 20px;
    font-size: 12px;
    line-height: 20px;
    text-align: center;
    background: #e5e5e5;
    margin-right: 10px;
    border-radius: 10px;
    color: #999;
}

footer.main-footer .footer-text {
    text-align: center;
}
footer.main-footer .footer-text a {
    color: #007bff;
}
footer.main-footer .footer-text a:hover {
    color: red;
}

/*About页面*/
.panel .panel-body a {color: #007bff;}
.panel .panel-body a:hover {color: #979898;}

/*页面主体背景*/
body.io-grey-mode{background:#f8f2ee;}
body.io-black-mode{background:#151723;}
.page-container {
    position:relative;
    z-index:1;
    background:transparent;
}
.io-grey-mode .page-container .grid-bg,
.io-black-mode .page-container .grid-bg {
    background:transparent;
}

/*导航 Logo 图标裁剪边角*/
.url-card .url-img > img {
    border-radius: 20%;
}

/*工具站顶部导航层级、可读性与字体优化*/
body,
.page-header,
.navbar,
.navbar-nav,
.navbar-menu,
.search-hot-text,
.url-card,
.card {
    font-family:"HarmonyOS Sans SC", "HarmonyOS Sans", "Hongmeng Sans", "Noto Sans CJK SC", "Microsoft YaHei", Arial, sans-serif;
}
.big-header-banner,
.big-header-banner .page-header {
    z-index:1080;
}
.main-content.grid-bg > .big-header-banner {
    z-index:20;
}
.big-header-banner .page-header {
    z-index:1085;
    background:rgba(255,255,255,0);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
}
.big-header-banner.header-bg .page-header {
    background:rgba(255,255,255,.84);
    box-shadow:0 10px 30px rgba(35,28,24,.1);
}
.big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a,
.big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item) {
    color:rgba(255,255,255,.96);
    text-shadow:0 1px 8px rgba(28,20,18,.34);
}
.navbar-collapse ul li ul.sub-menu {
    top:100%;
    left:0;
    z-index:1090;
    background:rgba(255,255,255,.94);
    -webkit-backdrop-filter:saturate(160%) blur(18px);
    backdrop-filter:saturate(160%) blur(18px);
    box-shadow:0 16px 36px rgba(35,28,24,.16);
}
.navbar-collapse ul li.menu-item-has-children {
    position:relative;
    z-index:1090;
}
.navbar-collapse ul li.menu-item-has-children:hover,
.navbar-collapse ul li.menu-item-has-children.focus {
    z-index:1100;
}
.navbar-collapse ul li:hover>ul.sub-menu,
.navbar-collapse ul li.focus>ul.sub-menu {
    z-index:1101;
    overflow:visible;
}
.main-content.grid-bg > #search-bg,
.main-content.grid-bg > #content {
    z-index:1;
}
.search-hot-text {
    z-index:1000;
}
.io-black-mode .big-header-banner .page-header {
    background:rgba(255,255,255,0);
    box-shadow:none;
}
.io-black-mode .big-header-banner.header-bg .page-header {
    background:rgba(44,46,47,.9);
}
.io-black-mode .navbar-collapse ul li ul.sub-menu {
    background:rgba(44,46,47,.94);
    box-shadow:0 16px 36px rgba(0,0,0,.34);
}

/*一言放大并限制宽度，避免与导航项碰撞*/
.navbar-menu,
.navbar-menu .nav-item,
#hitokoto {
    min-width:0;
}

/*搜索分类与搜索引擎标签提亮，避免渐变背景上发灰费力*/
.header-big:not(.no-bg) .s-type-list label,
.header-big:not(.no-bg) .search-type label,
.header-big:not(.no-bg) .search-type .menu-item a {
    opacity:.92!important;
    color:rgba(255,255,255,.96)!important;
    text-shadow:0 1px 4px rgba(38,30,26,.3), 0 0 12px rgba(38,30,26,.14);
}
.header-big:not(.no-bg) .s-type-list label:hover,
.header-big:not(.no-bg) .search-type input:checked+label,
.header-big:not(.no-bg) .search-type input:hover+label,
.header-big:not(.no-bg) .search-type .menu-item a:hover {
    opacity:1!important;
    background-color:rgba(255,255,255,.24)!important;
    color:#fff!important;
}

#hitokoto {
    max-width:clamp(360px, 42vw, 640px);
}
#hitokoto_text {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:15px;
    line-height:1.5;
    font-weight:600;
    letter-spacing:.01em;
    text-shadow:none!important;
}
@media (min-width: 1400px) {
    #hitokoto_text {
        font-size:15.5px;
    }
}
@media (max-width: 1399.98px) {
    #hitokoto {
        max-width:clamp(280px, 34vw, 460px);
    }
}
@media (max-width: 1199.98px) {
    #hitokoto {
        display:none;
    }
}

/* Rosetears brand alignment: low-risk visual overrides */
:root {
    --rt-green-950:#102a22;
    --rt-green-800:#1f5b3f;
    --rt-green-600:#2f8f55;
    --rt-green-400:#72c08a;
    --rt-green-soft:#edf8f0;
    --rt-rose-600:#c75b7a;
    --rt-rose-400:#e58aa5;
    --rt-rose-soft:#fff2f6;
    --rt-blue-500:#4f8bd8;
    --rt-purple-500:#8b6bd9;
    --rt-bluegreen:#3d9c8f;
    --rt-ink:#25352d;
    --rt-muted:#5b6b63;
    --rt-surface:#fbfdfb;
}

body.io-grey-mode,
.main-content.grid-bg {
    background:#f7fbf7;
    color:var(--rt-ink);
}

.main-content.grid-bg::before {
    background:
        radial-gradient(ellipse 42% 36% at 15% 12%, rgba(114,192,138,.34), transparent 68%),
        radial-gradient(ellipse 54% 44% at 56% 8%, rgba(229,138,165,.36), transparent 68%),
        radial-gradient(ellipse 42% 36% at 88% 18%, rgba(139,107,217,.3), transparent 66%),
        radial-gradient(ellipse 50% 42% at 78% 80%, rgba(79,139,216,.28), transparent 70%),
        radial-gradient(ellipse 46% 40% at 12% 86%, rgba(199,91,122,.24), transparent 70%),
        linear-gradient(145deg, rgba(251,253,251,.96), rgba(237,248,240,.76) 38%, rgba(255,242,246,.72) 68%, rgba(245,241,255,.66));
    opacity:1;
    filter:saturate(112%);
}

.big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a,
.big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item),
.big-header-banner:not(.header-bg) #hitokoto_text {
    color:var(--rt-ink)!important;
    text-shadow:none!important;
}

.big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a:hover,
.big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item):hover,
footer.main-footer .footer-text a:hover,
.panel .panel-body a:hover {
    color:var(--rt-rose-600)!important;
}

.big-header-banner:not(.header-bg) .header-mini-btn path {
    stroke:var(--rt-ink);
}

.big-header-banner:not(.header-bg) .header-mini-btn label:hover path {
    stroke:var(--rt-rose-600);
}

.big-header-banner.header-bg .page-header {
    background:rgba(251,253,251,.82);
    -webkit-backdrop-filter:saturate(150%) blur(18px);
    backdrop-filter:saturate(150%) blur(18px);
    box-shadow:0 14px 34px rgba(16,42,34,.1);
}

.navbar-collapse ul li ul.sub-menu {
    border:1px solid rgba(47,143,85,.12);
    border-radius:18px;
    background:rgba(251,253,251,.94);
    box-shadow:0 18px 44px rgba(16,42,34,.12);
}

.header-big:not(.no-bg) .big-title .h1 {
    color:var(--rt-ink)!important;
    text-shadow:none!important;
}

.search-hot-text ul li {
    color:var(--rt-muted);
}

.search-hot-text ul li.current,
.search-hot-text ul li:hover {
    background:var(--rt-green-soft);
    color:var(--rt-green-800);
}

.search-hot-text ul li span {
    background:rgba(199,91,122,.1);
    color:var(--rt-rose-600);
}

#search .search-hot-text:empty,
.header-big .search-hot-text:empty,
#search .search-hot-text:not(:has(ul)),
.header-big .search-hot-text:not(:has(ul)),
#search .search-hot-text:has(ul:empty),
.header-big .search-hot-text:has(ul:empty),
#search .search-hot-text:has(ul[style*="display: none"]),
.header-big .search-hot-text:has(ul[style*="display: none"]) {
    display:none!important;
    border:0!important;
    box-shadow:none!important;
}

.url-card .url-body {
    border-radius:22px;
}

.url-card .url-body > a.card {
    border:1px solid rgba(47,143,85,.12);
    border-radius:22px;
    background:linear-gradient(145deg, rgba(255,255,255,.94), rgba(246,252,248,.88));
    box-shadow:0 16px 38px rgba(16,42,34,.08);
    overflow:hidden;
}

.url-card .url-body:hover {
    transform:translateY(-4px);
}

.url-card .url-body:hover > a.card {
    box-shadow:0 22px 46px rgba(16,42,34,.13);
}

.url-card .card-body {
    color:var(--rt-muted);
}

.url-card .url-img {
    border-radius:16px;
    background:linear-gradient(135deg, var(--rt-green-soft), var(--rt-rose-soft));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.76);
}

.url-card .url-img > img {
    border-radius:18%;
}

.url-card a,
footer.main-footer .footer-text a,
.panel .panel-body a {
    color:var(--rt-green-800);
}

.sidebar-menu-inner a {
    transition:background-color .2s ease, color .2s ease;
}

.sidebar-show,
.sidebar-item>a:hover,
.sidebar-item li>a:hover,
.sidebar-popup>div>ul>li>a:hover {
    background:rgba(61,156,143,.18)!important;
    color:#fff!important;
}

.sidebar-show>a:before,
.sidebar-item>a:hover:before {
    background:var(--rt-bluegreen);
}

.io-black-mode body,
body.io-black-mode,
.io-black-mode .main-content.grid-bg {
    background:#151723;
    color:rgba(255,255,255,.86);
}

.io-black-mode .big-header-banner:not(.header-bg) .page-header .navbar-nav>li>a,
.io-black-mode .big-header-banner:not(.header-bg) .navbar-menu a:not(.dropdown-item),
.io-black-mode .big-header-banner:not(.header-bg) #hitokoto_text,
.io-black-mode .header-big:not(.no-bg) .big-title .h1 {
    color:rgba(255,255,255,.9)!important;
}

.io-black-mode .url-card .url-body > a.card,
.io-black-mode .navbar-collapse ul li ul.sub-menu {
    border-color:rgba(114,192,138,.16);
    background:rgba(35,38,45,.9);
    box-shadow:0 18px 44px rgba(0,0,0,.28);
}

.io-black-mode .search-hot-text ul li.current,
.io-black-mode .search-hot-text ul li:hover {
    background:rgba(114,192,138,.14);
    color:#bde7c8;
}

@media (max-width: 575.98px) {
    .url-card {
        padding-left:8px;
        padding-right:8px;
    }

    .url-card .url-body {
        border-radius:20px;
    }

    .url-card .url-body > a.card {
        min-height:94px;
        margin-bottom:16px!important;
        border-radius:20px;
        box-shadow:0 12px 28px rgba(16,42,34,.08);
    }

    .url-card .card-body {
        padding:.8rem .7rem .9rem;
    }

    .url-card .url-content {
        align-items:flex-start!important;
    }

    .url-card .url-img {
        width:38px;
        height:38px;
        margin-right:.55rem!important;
    }

    .url-card .url-info {
        padding-right:0;
    }

    .url-card .url-info .text-sm {
        line-height:1.35;
    }

    .url-card .url-info p.text-xs {
        display:-webkit-box;
        overflow:hidden;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        white-space:normal;
        font-size:12.5px!important;
        line-height:1.45;
        color:rgba(91,107,99,.86)!important;
    }

    .url-card .default a.togo,
    .url-card .mini a.togo {
        top:auto;
        right:10px;
        bottom:10px;
        width:24px;
        height:24px;
        line-height:24px;
        border-radius:999px;
        background:rgba(255,255,255,.46);
        opacity:.18;
    }

    .url-card .url-body:hover a.togo,
    .url-card a.togo:focus {
        opacity:.42;
    }

    .url-card a.togo i {
        font-size:13px;
    }

    .io-black-mode .url-card .url-info p.text-xs {
        color:rgba(255,255,255,.66)!important;
    }

    .io-black-mode .url-card .default a.togo,
    .io-black-mode .url-card .mini a.togo {
        background:rgba(255,255,255,.08);
    }
}

@media (prefers-reduced-motion: reduce) {
    .url-card .url-body,
    .sidebar-menu-inner a {
        transition:none;
    }

    .url-card .url-body:hover {
        transform:none;
    }
}
