/*
Theme Name: N-IPPON Theme
Theme URI: https://n-ippon.jp/
Author: N-IPPON
Description: 作品を短時間で発見するためのモバイルファーストテーマ。
Version: 0.7.5
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: n-ippon-theme
License: GPLv2 or later
*/

.affiliate-disclosure{border-bottom:1px solid rgba(76,25,41,.14);background:#eee1dd;color:#5f4a50;font-size:.75rem;line-height:1.55}
.affiliate-disclosure .site-wrap{padding-block:8px}
.affiliate-disclosure-detail{margin-left:.4em}
.work-thumb img.external-official-cover{object-fit:contain;object-position:center;background:#eaded8}
.footer-policy-nav{display:flex;flex-wrap:wrap;gap:8px 22px;margin:18px 0 12px;font-size:.88rem}
.footer-policy-nav a{text-decoration:underline;text-underline-offset:4px}
.footer-policy-nav a:hover,.footer-policy-nav a:focus-visible{color:#fff}
.site-footer small{display:block;max-width:760px;line-height:1.8}
body.admin-bar .site-header{top:32px}
.static-page-wrap{padding-block:clamp(42px,7vw,84px)}
.static-page{width:min(100%,820px);margin-inline:auto}
.static-page-header{padding-bottom:24px;border-bottom:1px solid var(--line)}
.static-page-header h1{margin:0;font-family:var(--display);font-size:clamp(2rem,4vw,3rem);line-height:1.3}
.static-page-content{font-size:1rem;line-height:1.95}
.static-page-content h2{margin:2.6em 0 .7em;font-family:var(--display);font-size:clamp(1.35rem,2.5vw,1.7rem);line-height:1.45}
.static-page-content h3{margin:2em 0 .6em;font-size:1.12rem}
.static-page-content p,.static-page-content li{max-width:72ch}
.static-page-content ul,.static-page-content ol{padding-left:1.4em}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:719px){.affiliate-disclosure{font-size:.68rem;line-height:1.4;white-space:nowrap}.affiliate-disclosure .site-wrap{padding-block:7px}.affiliate-disclosure-detail{display:none}.static-page-wrap{padding-block:36px 54px}.static-page-header{padding-bottom:18px}.static-page-content{font-size:.96rem;line-height:1.9}.static-page-content h2{margin-top:2.2em}}

/* 0.5.9 — strengthen work-title hierarchy without changing card layout */
.work-card .work-title{
    margin:6px 0 0;
    color:var(--ink);
    font-family:var(--ui);
    font-size:1.125rem;
    font-weight:700;
    line-height:1.4;
    letter-spacing:.005em;
    overflow-wrap:anywhere;
    word-break:normal;
}
.work-card .work-tags{margin-bottom:0}
.work-card .work-catch{
    margin:9px 0 7px;
    color:#6f6065;
    font-size:.82rem;
    font-weight:400;
    line-height:1.55;
}
.work-card .pick-reason{font-size:.72rem;line-height:1.4}
.work-card .card-facts,.work-card .card-ratings{font-size:.76rem;font-weight:400}
@supports (word-break:auto-phrase){.work-card .work-title{word-break:auto-phrase}}
@media(max-width:719px){
    .result-grid .work-title,.editor-pick .work-title,.work-card .work-title{
        margin-top:8px;
        font-size:1.125rem;
        font-weight:700;
        line-height:1.38;
    }
    .result-grid .work-catch,.editor-pick .work-catch,.work-card .work-catch{
        margin:10px 0 8px;
        color:#6f6065;
        font-size:.875rem;
        font-weight:400;
        line-height:1.52;
    }
    .result-grid .pick-reason,.editor-pick .pick-reason{margin-bottom:0;font-size:.76rem}
    .result-grid .card-facts,.editor-pick .card-facts,.result-grid .card-ratings,.editor-pick .card-ratings{font-size:.8rem}
}

/* 0.6.0 — center an incomplete editor selection on desktop */
@media(min-width:720px){
    .featured-grid:has(.editor-pick:only-child){
        grid-template-columns:minmax(280px,360px);
        justify-content:center;
    }
    .featured-grid:has(.editor-pick:first-child:nth-last-child(2)){
        grid-template-columns:repeat(2,minmax(280px,360px));
        justify-content:center;
    }
}

/* 0.6.1 — distinguish review body and use integer ratings */
.review-content{margin:30px 0 24px;padding:24px 26px;border:1px solid var(--line);background:rgba(255,250,246,.62)}
.review-content h2{margin:0;font-family:var(--display);font-size:1.55rem;line-height:1.4}
.review-content .entry-content{max-width:68ch;margin-top:18px;color:var(--ink);font-size:.98rem;line-height:1.9}
.review-content .entry-content>*:first-child{margin-top:0}
.review-content .entry-content>*:last-child{margin-bottom:0}
@media(max-width:719px){.review-content{margin:25px 0 22px;padding:20px 18px}.review-content h2{font-size:1.4rem}.review-content .entry-content{font-size:.95rem;line-height:1.85}}

/* 0.7.0 — persona language, preference refinement and clearer editorial hierarchy */
.hero-promise strong{font-weight:700}.preference-filter{grid-column:1/-1;margin-top:2px;padding:17px 18px;border:1px solid rgba(121,91,99,.26);border-radius:14px;background:rgba(255,250,246,.38)}
.preference-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.preference-head>div{display:flex;align-items:center;gap:10px}.preference-head span{color:var(--accent-dark);font-size:.65rem;font-weight:850;letter-spacing:.14em}.preference-head strong{font-size:.9rem}.preference-toggle{padding:5px 0;border:0;border-bottom:1px solid #74525a;background:none;color:var(--ink);font-size:.78rem;font-weight:750;cursor:pointer}
.preference-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.preference-options label{cursor:pointer}.preference-options input{position:absolute;opacity:0;pointer-events:none}.preference-options label>span{display:block;padding:8px 13px;border:1px solid #cdb9bb;border-radius:999px;background:#fffaf6;color:var(--ink);font-size:.78rem;font-weight:700;transition:150ms ease}.preference-options input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.preference-options input:checked+span,.preference-options label[data-selected="true"]>span{border-color:var(--night);background:var(--night);color:#fff}.preference-options input:disabled+span{opacity:.55}
.preference-tag{border-color:#b99a9f;background:#f8efec}.work-card .pick-reason{font-size:.76rem}.work-card .fit-note span{color:#52363e}.single-info>.work-tags{gap:7px}.one-line-review blockquote{font-family:var(--ui);font-size:1rem;line-height:1.75}.fit-panel-good strong{color:#315f4f}.fit-panel-caution strong{color:#8a4a30}
@media(min-width:720px){.diagnosis-form{grid-template-columns:1fr 1.35fr 1.35fr}.preference-filter{margin-top:4px}.main-nav{gap:28px}}
@media(max-width:719px){.preference-filter{padding:15px 14px}.preference-head{align-items:flex-start}.preference-head>div{align-items:flex-start;flex-direction:column;gap:2px}.preference-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.preference-options label>span{text-align:center}.hero-promise{line-height:1.85}.work-card .fit-note{white-space:normal}.single-info>.work-tags{margin-top:14px}}

:root{--ink:#17151c;--muted:#716d78;--paper:#f8f7f5;--card:#fff;--line:#e9e5e3;--accent:#ed515c;--accent-dark:#c93647;--night:#201b2b;--radius:20px;--shadow:0 12px 38px rgba(31,24,37,.08);--wrap:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input{font:inherit}.site-wrap{width:min(calc(100% - 32px),var(--wrap));margin-inline:auto}.site-header{position:sticky;z-index:20;top:0;background:rgba(248,247,245,.9);border-bottom:1px solid rgba(233,229,227,.8);backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{font-size:1.15rem;font-weight:900;letter-spacing:.12em}.brand-dot{color:var(--accent)}.main-nav{display:none;gap:24px;color:var(--muted);font-size:.9rem}.menu-toggle{border:0;background:none;font-size:1.5rem}.hero{overflow:hidden;padding:54px 0 42px;background:radial-gradient(circle at 85% 15%,#ffd9dc 0,transparent 37%),linear-gradient(145deg,#fff 0,#f4edef 100%)}.hero-inner{display:grid;gap:30px}.eyebrow{margin:0 0 8px;color:var(--accent);font-weight:800;letter-spacing:.12em;font-size:.78rem}.hero h1{margin:0;font-size:clamp(2.5rem,12vw,5rem);letter-spacing:-.05em;line-height:1}.hero-copy{margin:18px 0 5px;font-size:clamp(1.4rem,6vw,2.2rem);font-weight:850}.hero-sub{margin:0 0 26px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:800;box-shadow:0 8px 24px rgba(237,81,92,.26);transition:.2s}.button:hover{background:var(--accent-dark);transform:translateY(-2px)}.button-secondary{background:var(--night);box-shadow:none}.hero-card{position:relative;max-width:380px;margin:auto;padding:20px;border-radius:28px;background:var(--night);color:#fff;box-shadow:0 22px 60px rgba(32,27,43,.23)}.hero-card small{color:#c9c3d1}.section{padding:48px 0}.section-alt{background:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px}.section-heading h2{margin:0;font-size:1.65rem;letter-spacing:-.03em}.section-heading p{margin:3px 0 0;color:var(--muted);font-size:.9rem}.text-link{color:var(--accent);font-weight:700;white-space:nowrap}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.work-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.work-thumb{aspect-ratio:3/4;overflow:hidden;background:#e9e5e3}.work-thumb img{width:100%;height:100%;object-fit:cover;transition:.25s}.work-card:hover .work-thumb img{transform:scale(1.03)}.work-body{padding:13px}.work-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:7px}.tag{padding:3px 8px;border-radius:999px;background:#f1edef;color:#665f69;font-size:.68rem}.work-title{margin:0;font-size:.98rem;line-height:1.45}.work-catch{margin:7px 0;color:var(--muted);font-size:.82rem;line-height:1.5}.work-for{display:none}.work-meta{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:.82rem}.price{font-weight:850}.card-cta{color:var(--accent);font-weight:800}.chips{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 12px;scrollbar-width:none}.chip{flex:0 0 auto;padding:12px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;font-weight:750;box-shadow:0 5px 20px rgba(31,24,37,.05)}.chip:hover{border-color:var(--accent);color:var(--accent)}.recommend{display:grid;gap:20px;padding:27px;border-radius:28px;background:linear-gradient(135deg,var(--night),#3d2b42);color:#fff}.recommend p{margin:5px 0 0;color:#d4ced8}.review-list{display:grid;gap:12px}.review-row{display:grid;grid-template-columns:84px 1fr;gap:14px;padding:12px;border-radius:16px;background:#fff;border:1px solid var(--line)}.review-row img{width:84px;height:108px;object-fit:cover;border-radius:10px}.review-row h3{margin:3px 0;font-size:1rem}.review-row p{margin:4px 0;color:var(--muted);font-size:.83rem}.archive-head{padding:42px 0 24px}.archive-head h1{margin:0;font-size:2rem}.filters{margin:20px 0}.single-work{padding:30px 0 60px}.single-layout{display:grid;gap:26px}.single-cover img{width:100%;border-radius:24px;box-shadow:var(--shadow)}.single-info h1{margin:8px 0;font-size:2rem;line-height:1.3}.lead{font-size:1.12rem;font-weight:700}.for-box,.rating-box,.buy-box{margin:22px 0;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}.rating-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center}.rating-grid strong{display:block;font-size:1.35rem;color:var(--accent)}.buy-actions{display:grid;gap:10px}.site-footer{padding:42px 0;background:#18151e;color:#bbb5c0}.footer-brand{color:#fff;font-weight:900;letter-spacing:.1em}.empty-state{grid-column:1/-1;padding:32px;border:1px dashed #cbc5c8;border-radius:18px;text-align:center;color:var(--muted)}.pagination{margin-top:30px}.nav-links{display:flex;justify-content:center;gap:8px}.page-numbers{padding:8px 13px;border-radius:99px;background:#fff}.current{background:var(--accent);color:#fff}
@media(min-width:720px){.main-nav{display:flex}.menu-toggle{display:none}.hero{padding:86px 0}.hero-inner{grid-template-columns:1.2fr .8fr;align-items:center}.work-grid{grid-template-columns:repeat(3,1fr);gap:22px}.work-body{padding:18px}.work-for{display:block;color:var(--muted);font-size:.8rem}.recommend{grid-template-columns:1fr auto;align-items:center;padding:38px}.review-list{grid-template-columns:repeat(2,1fr)}.single-layout{grid-template-columns:minmax(260px,38%) 1fr;align-items:start}.single-cover{position:sticky;top:90px}.buy-actions{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.work-grid{grid-template-columns:repeat(4,1fr)}.home-featured .work-card:first-child{grid-column:span 2}.home-featured .work-card:first-child .work-thumb{aspect-ratio:1.54/1}.review-list{grid-template-columns:repeat(3,1fr)}}

/* 0.1.1 — editorial refresh */
:root{--ink:#1b1a17;--muted:#6f6a60;--paper:#f4f0e7;--card:#f9f6ef;--line:#cbc3b5;--accent:#c83f2d;--accent-dark:#9f2d20;--night:#26231f;--radius:4px;--shadow:none;--wrap:1120px}
body{background:var(--paper);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
.site-wrap{width:100%;max-width:var(--wrap);padding-inline:22px;margin-inline:auto}
.site-header{background:rgba(244,240,231,.96);border-color:var(--ink);backdrop-filter:none}
.header-inner{height:70px}.brand{font-size:1.06rem;letter-spacing:.18em}.main-nav{color:var(--ink);font-size:.82rem;letter-spacing:.04em}
.hero{padding:68px 0 58px;background:var(--paper);border-bottom:1px solid var(--ink)}
.hero-inner{gap:42px}.hero h1{font-family:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(3.25rem,13vw,7rem);font-weight:500;letter-spacing:-.065em}
.eyebrow{color:var(--accent);font-size:.7rem;letter-spacing:.2em}.hero-copy{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;letter-spacing:.02em}
.hero-card{max-width:none;margin:0;padding:4px 0 4px 24px;border-left:3px solid var(--accent);border-radius:0;background:transparent;color:var(--ink);box-shadow:none}
.hero-card small{color:var(--muted);letter-spacing:.14em}.hero-card h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600}.hero-card p{color:var(--muted)}
.button{min-height:48px;padding:0 22px;border-radius:3px;box-shadow:none;letter-spacing:.04em}.button:hover{transform:none}.button-secondary{background:var(--night)}
.section{padding:58px 0}.section-alt{background:#eae4d8;border-block:1px solid var(--line)}
.section-heading{padding-bottom:12px;border-bottom:1px solid var(--ink)}.section-heading h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:1.7rem;font-weight:600;letter-spacing:.02em}.text-link{font-size:.82rem}
.work-grid{gap:24px 16px}.work-card{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.work-thumb{border-radius:2px;background:#d9d2c6}.work-body{padding:12px 0 0}.work-title{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:1.02rem}.work-catch{color:#5f5a52}.tag{padding:2px 6px;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--muted)}.work-meta{padding-top:9px;border-top:1px solid var(--line)}
.chips{gap:8px}.chip{padding:10px 15px;border-color:var(--line);border-radius:3px;background:transparent;box-shadow:none;font-size:.86rem}
.recommend{padding:34px;border:1px solid var(--ink);border-radius:3px;background:transparent;color:var(--ink)}.recommend p{color:var(--muted)}
.review-row{padding:0 0 14px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.review-row img{border-radius:2px}
.for-box,.rating-box,.buy-box{border-color:var(--line);border-radius:3px;background:var(--card)}
.single-cover img{border-radius:3px;box-shadow:none}.single-info h1,.archive-head h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600}
.site-footer{border-top:4px solid var(--accent);background:var(--night)}
@media(min-width:720px){.site-wrap{padding-inline:30px}.hero-inner{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)}.work-grid{gap:34px 22px}.work-body{padding:14px 0 0}}
@media(min-width:1024px){.home-featured .work-card:first-child{grid-column:auto}.home-featured .work-card:first-child .work-thumb{aspect-ratio:3/4}}

/* 0.1.2 — mature comic curation */
:root{--ink:#24191d;--muted:#76656b;--paper:#f3e8e4;--card:#fbf4f0;--line:#cdb8b9;--accent:#d83e57;--accent-dark:#ae263e;--night:#35121f}
body{background:var(--paper)}
.site-header{background:rgba(243,232,228,.97);border-color:#5a303b}
.brand-dot{color:var(--accent)}
.age-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:9px;padding:2px 5px;border:1px solid var(--accent);border-radius:2px;color:var(--accent);font-size:.58rem;font-weight:800;letter-spacing:.06em;vertical-align:middle}
.hero{background:var(--night);border-bottom:4px solid var(--accent);color:#fff4f1}
.hero .eyebrow{color:#ff8a99}.hero-sub{color:#d9bcc4}
.hero-card{border-left-color:#f06175;color:#fff4f1}.hero-card small,.hero-card p{color:#d9bcc4}
.button{background:var(--accent)}.button:hover{background:var(--accent-dark)}
.section-alt{background:#e7d5d3;border-color:#c6aaad}
.section-heading{border-color:#5a303b}.text-link,.card-cta{color:var(--accent-dark)}
.work-thumb{background:#d9c7c6}.work-card:hover .work-thumb img{filter:saturate(1.06) contrast(1.03)}
.tag{border-color:#caaeb2;color:#7d4c58}.price{color:#32151e}
.chip{border-color:#b9989f;background:rgba(255,248,245,.35)}.chip:hover{border-color:var(--accent);background:#f8e1e1;color:var(--accent-dark)}
.recommend{border-color:#5a2534;background:#4a1828;color:#fff4f1}.recommend .eyebrow{color:#ff8a99}.recommend p{color:#d9bcc4}
.rating-grid strong{color:var(--accent)}.site-footer{border-color:var(--accent);background:#261018;color:#cdb5bc}
.footer-brand{color:#fff1ed}

/* 0.2.0 — decision-first information architecture */
:root{--accent:#b82f49;--accent-dark:#8c2036;--night:#32111c;--paper:#f5ece8;--card:#fffaf6;--line:#cfbabc;--good:#376c5a;--caution:#9a5a32;--ui:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--display:"Yu Mincho","Hiragino Mincho ProN",serif}
body{font-family:var(--ui)}
.hero{padding:72px 0 64px}.hero-inner{align-items:end}.hero-main{max-width:700px}.hero h1{font-size:clamp(3.8rem,14vw,8rem)}.hero-copy{margin-top:24px}.hero-promise{margin:24px 0;color:#f0dfe1;font-size:1rem}.hero-note{margin:12px 0 0;color:#bfa3aa;font-size:.76rem;letter-spacing:.06em}.hero-principle{padding:24px 0 4px 24px;border-left:1px solid #a65c6e}.hero-principle span{display:block;color:#e8788c;font-size:.68rem;font-weight:800;letter-spacing:.2em}.hero-principle strong{display:block;margin:8px 0;font-family:var(--display);font-size:1.35rem}.hero-principle p{margin:0;color:#d6bbc1;font-size:.86rem}
.section-kicker{margin-bottom:6px;color:var(--accent-dark);font-size:.68rem;font-weight:850;letter-spacing:.18em}.diagnosis-section{background:#efe0db}.diagnosis-shell{max-width:1040px}.diagnosis-heading{margin-bottom:30px}.step-count{color:var(--muted);font-size:.72rem;letter-spacing:.12em}.diagnosis-form{display:grid;gap:30px}.diagnosis-form fieldset{min-width:0;margin:0;padding:0;border:0}.diagnosis-form legend{width:100%;margin-bottom:12px;font-family:var(--display);font-size:1.12rem;font-weight:700}.diagnosis-form legend span{display:inline-block;width:30px;color:var(--accent);font-family:var(--ui);font-size:.68rem;letter-spacing:.08em}.choice-grid{display:grid;gap:8px}.choice-grid-2{grid-template-columns:repeat(2,1fr)}.choice-grid-4{grid-template-columns:repeat(2,1fr)}.choice-grid label{cursor:pointer}.choice-grid input{position:absolute;opacity:0;pointer-events:none}.choice-grid label>span{display:flex;min-height:54px;align-items:center;justify-content:center;flex-direction:column;padding:10px;border:1px solid #bfa8a8;background:rgba(255,250,246,.55);font-weight:750;transition:.18s}.choice-grid small{color:var(--muted);font-size:.68rem;font-weight:500}.choice-grid input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.choice-grid input:checked+span{border-color:var(--night);background:var(--night);color:#fff}.choice-grid input:checked+span small{color:#d9c0c5}.diagnosis-submit{width:100%;margin-top:4px}.diagnosis-results{margin-top:58px;padding-top:42px;border-top:1px solid #8d7277}.result-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.result-heading h2{margin:0;font-family:var(--display);font-size:1.8rem}.result-heading p{margin:3px 0 0}.text-button{padding:0;border:0;border-bottom:1px solid;background:none;color:var(--accent-dark);cursor:pointer}.result-card-wrap{position:relative}.result-reason{display:block;margin-bottom:9px;color:var(--accent-dark);font-size:.74rem;font-weight:850;letter-spacing:.06em}.diagnosis-pool{display:none!important}
.editor-pick .pick-reason{display:block;margin-bottom:8px;color:var(--accent-dark);font-size:.72rem;font-weight:850}.card-facts,.card-ratings{display:flex;gap:14px;margin:9px 0;color:var(--muted);font-size:.76rem}.card-facts span+span:before{content:"/";margin-right:14px;color:var(--line)}.card-ratings{padding:7px 0;border-block:1px solid var(--line)}.card-ratings b{color:var(--ink)}.fit-note{margin:7px 0;font-size:.74rem;line-height:1.45}.fit-note span{display:block;font-weight:850}.fit-good span{color:var(--good)}.fit-caution span{color:var(--caution)}.work-meta{color:var(--accent-dark);font-weight:750}.no-cover{display:grid;height:100%;place-items:center;color:#957f82;font-size:.68rem;letter-spacing:.14em}
.recommend-feature{padding:30px;border:1px solid #5c303a;background:#3f1723;color:#fff}.recommend-copy{padding-bottom:22px;border-bottom:1px solid #754253}.recommend-copy h2{margin:0;font-family:var(--display);font-size:2rem}.recommend-copy p{color:#d8bdc3}.recommend-work{display:grid;gap:22px;padding-top:24px}.recommend-cover img{width:100%;max-height:420px;object-fit:cover}.recommend-work h3{margin:10px 0 4px;font-family:var(--display);font-size:1.5rem}.recommend-work p{color:#dcc5ca}.mini-ratings{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0;font-size:.8rem}.mini-ratings b{color:#ff8ca0}.philosophy{padding:70px 0;border-top:1px solid #6a3946;background:var(--night);color:#f9ece9}.philosophy-inner{max-width:820px}.philosophy h2{margin:0;font-family:var(--display);font-size:clamp(1.8rem,6vw,3rem)}.philosophy p:not(.eyebrow){color:#d6bbc1}.philosophy .text-link{color:#ff8ca0}
.decision-box{margin:26px 0;padding:22px;border:1px solid #6d414b;background:#fff9f5}.decision-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.decision-head h2,.buy-box h2{margin:0;font-family:var(--display);font-size:1.7rem}.decision-head>span{color:var(--muted);font-size:.8rem}.score-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px 20px;margin:20px 0}.score-grid div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px}.score-grid span{font-size:.76rem}.score-grid strong{color:var(--accent);font-size:1.1rem}.score-grid meter{grid-column:1/-1;width:100%;height:5px}.score-grid meter::-webkit-meter-bar{background:#eadcda;border:0}.score-grid meter::-webkit-meter-optimum-value{background:var(--accent)}.fit-grid{display:grid;gap:10px}.fit-panel{padding:14px;border-left:3px solid}.fit-panel p{margin:5px 0 0;font-size:.85rem}.fit-panel-good{border-color:var(--good);background:#edf3ef}.fit-panel-caution{border-color:var(--caution);background:#f8eee7}.decision-box blockquote{margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--line);font-family:var(--display);font-size:1.05rem}.entry-content{margin-top:34px}.button-ghost{border:1px solid #835463;background:transparent;box-shadow:none;color:var(--ink)}.button-ghost:hover{background:#f3e3e2;color:var(--ink)}.buy-actions .button-ghost{grid-column:1/-1}
@media(min-width:720px){.hero-inner{grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr)}.diagnosis-form{grid-template-columns:1fr 1.35fr 1.35fr;align-items:start}.choice-grid-4{grid-template-columns:repeat(2,1fr)}.diagnosis-submit{grid-column:1/-1;width:min(100%,360px);margin-inline:auto}.result-grid{grid-template-columns:repeat(3,1fr)}.featured-grid{grid-template-columns:repeat(3,1fr)}.recommend-work{grid-template-columns:220px 1fr;align-items:center}.fit-grid{grid-template-columns:1fr 1fr}.score-grid{grid-template-columns:repeat(5,1fr)}.score-grid div{display:block}.score-grid strong{display:block}.single-layout{grid-template-columns:minmax(260px,34%) 1fr}}
@media(max-width:719px){.hero-principle{display:none}.choice-grid label>span{font-size:.82rem}.result-heading{align-items:start;flex-direction:column}.work-grid.result-grid{grid-template-columns:1fr}.result-grid .work-card>a{display:grid;grid-template-columns:42% 1fr}.result-grid .work-thumb{height:100%;aspect-ratio:auto}.featured-grid{grid-template-columns:1fr}.editor-pick .work-card>a{display:grid;grid-template-columns:42% 1fr}.editor-pick .work-thumb{height:100%;aspect-ratio:auto}.recommend-feature{padding:24px}.score-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:719px){.main-nav.is-open{display:flex;position:absolute;top:70px;right:16px;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);background:var(--card);box-shadow:0 14px 30px rgba(50,17,28,.15)}}

/* 0.3.0 — mobile-first service polish */
:root{--accent:#c73552;--accent-dark:#8b263d;--night:#32111c;--ink:#292326;--muted:#756a6d;--soft:#f9f2ed;--choice:#fffaf6;--radius-ui:14px}
.section-kicker{color:#75666a}.text-link,.more-explore{color:var(--ink)}.text-link:hover,.more-explore:hover{color:var(--accent-dark)}
.hero .button,.diagnosis-submit{background:var(--accent);box-shadow:0 10px 28px rgba(199,53,82,.25)}.hero .button:hover,.diagnosis-submit:hover{background:#a92944}.hero-principle{max-width:330px}.hero-principle p{line-height:1.9}
.diagnosis-shell{padding-top:4px}.diagnosis-heading{border-bottom-color:#8c7479}.diagnosis-form{gap:22px}.diagnosis-form fieldset{padding:18px;border:1px solid rgba(121,91,99,.28);border-radius:18px;background:rgba(255,250,246,.46)}.diagnosis-form legend{float:left;margin-bottom:16px}.diagnosis-form legend+*{clear:both}.diagnosis-form legend span{width:auto;margin-right:9px;padding:3px 7px;border-radius:999px;background:#e4d1ce;color:#5d3b43}.choice-grid{gap:10px}.choice-grid label>span{min-height:60px;border-color:#d1bec0;border-radius:12px;background:var(--choice);box-shadow:0 3px 10px rgba(50,17,28,.03);font-size:.88rem}.choice-grid label>span:hover{border-color:#8d6670;background:#fff}.choice-grid input:checked+span{border-color:var(--night);background:var(--night);box-shadow:0 7px 16px rgba(50,17,28,.18);color:#fff;transform:translateY(-1px)}.diagnosis-submit{min-height:60px;margin-top:18px;border-radius:12px;font-size:1rem}.diagnosis-submit span{margin-left:12px}.result-reason,.pick-reason{color:#5a4047}.result-reason{margin:0 0 10px;padding-left:10px;border-left:3px solid var(--accent-dark)}
.work-card{height:100%}.work-card>a{height:100%}.work-body{display:flex;height:100%;flex-direction:column}.pick-reason{margin:0 0 8px;font-size:.72rem;font-weight:850;letter-spacing:.04em}.work-tags{order:2}.pick-reason+.work-tags{margin-top:0}.work-title{order:3}.work-catch{order:4}.card-facts{order:5}.card-ratings{order:6}.fit-note{order:7}.work-meta{order:8;margin-top:auto}.work-catch{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fit-note{display:flex;min-width:0;gap:6px;white-space:nowrap}.fit-note span{flex:0 0 auto}.fit-note{overflow:hidden;text-overflow:ellipsis}.work-meta{border-top-color:#cbb8b9;color:var(--ink)}.card-cta{color:var(--ink)}.card-ratings b,.price{color:var(--ink)}
.recommend-feature{border-radius:4px}.symbol-label{display:inline-flex;padding:5px 9px;border:1px solid #a97682;color:#f2dce1;font-size:.66rem;font-weight:850;letter-spacing:.14em}.mini-ratings b{color:#fff}.recommend-work .button{box-shadow:none}.more-explore{display:inline-block;margin-top:14px;border-bottom:1px solid;font-size:.82rem;font-weight:750}.review-list{opacity:.9}.review-row h3{font-family:var(--ui)}
.philosophy{padding:54px 0}.philosophy h2{font-size:clamp(1.7rem,5vw,2.45rem)}.philosophy-lead{margin-bottom:5px!important;color:#fff0ee!important;font-family:var(--display);font-size:1.15rem}.philosophy-lead+p{max-width:620px;margin-top:0!important;font-size:.86rem}
.decision-box{border-radius:12px}.score-grid div{padding:9px;border-radius:9px;background:#f5e9e5}.fit-panel{border-radius:0 9px 9px 0}.fit-panel strong{font-size:.85rem}.one-line-review{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.one-line-review>span{display:block;color:var(--muted);font-size:.72rem;font-weight:750}.one-line-review blockquote{margin:3px 0 0;padding:0;border:0}.button-ghost{border-color:#9d7b82}.buy-actions .button-ghost{min-height:54px}
@media(min-width:720px){.diagnosis-form fieldset{height:100%}.diagnosis-submit{width:420px}.work-card .work-body{min-height:335px}.recommend-feature{padding:38px}.recommend-work{grid-template-columns:minmax(220px,280px) 1fr}.recommend-cover img{max-height:440px}.decision-box{padding:26px}.score-grid div{padding:11px}.score-grid meter{margin-top:6px}}
@media(max-width:719px){.site-wrap{padding-inline:18px}.section{padding:48px 0}.hero{padding:54px 0 50px}.hero h1{font-size:clamp(3.3rem,21vw,5.2rem)}.hero-copy{font-size:1.55rem}.hero-promise{margin:20px 0;font-size:.92rem}.hero .button{width:100%;min-height:56px}.section-heading{align-items:start}.section-heading h2{font-size:1.48rem}.step-count{display:none}.diagnosis-form{gap:16px}.diagnosis-form fieldset{padding:16px 14px}.diagnosis-form legend{font-size:1rem}.choice-grid-2,.choice-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid label>span{min-height:62px;padding:9px 5px}.diagnosis-submit{width:100%;min-height:62px;margin-top:16px}.diagnosis-results{margin-top:46px;padding-top:34px}.result-grid .work-card>a,.editor-pick .work-card>a{grid-template-columns:minmax(132px,42%) minmax(0,1fr)}.result-grid .work-body,.editor-pick .work-body{min-width:0;padding:14px 12px}.result-grid .work-tags,.editor-pick .work-tags{display:none}.result-grid .work-title,.editor-pick .work-title{font-size:.98rem}.result-grid .work-catch,.editor-pick .work-catch{font-size:.78rem}.result-grid .card-facts,.editor-pick .card-facts{display:block;margin:7px 0}.result-grid .card-facts span,.editor-pick .card-facts span{display:block}.result-grid .card-facts span+span:before,.editor-pick .card-facts span+span:before{display:none}.result-grid .card-ratings,.editor-pick .card-ratings{gap:8px;margin:5px 0;padding:5px 0;font-size:.69rem}.result-grid .fit-note,.editor-pick .fit-note{font-size:.69rem}.result-grid .work-meta,.editor-pick .work-meta{padding-top:7px;font-size:.72rem}.featured-grid{gap:26px}.recommend-copy h2{font-size:1.65rem}.recommend-work{gap:18px}.recommend-cover img{max-height:none}.recommend-work h3{font-size:1.35rem}.recommend-work .button{width:100%}.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.chip{padding:11px 9px;text-align:center}.review-list{gap:18px}.philosophy{padding:46px 0}.decision-head{align-items:start;flex-direction:column}.score-grid{gap:9px}.score-grid div{padding:8px}.score-grid strong{font-size:1rem}.fit-grid{gap:12px}.buy-actions .button{width:100%}}

/* 0.4.0 — final interaction and cover polish */
.hero{padding:60px 0 50px}.hero h1{font-size:clamp(3.5rem,12vw,7.2rem)}.hero-copy{margin-top:17px}.hero-promise{margin:18px 0}.hero-note{margin-top:8px}.hero-inner{gap:34px}
.choice-grid label>span{color:var(--ink);transition:transform 150ms ease,border-color 150ms ease,background-color 150ms ease,box-shadow 150ms ease}.choice-grid label>span:hover{transform:translateY(-2px);border-color:#79525d;box-shadow:0 7px 15px rgba(50,17,28,.09)}.choice-grid label>span:active{transform:translateY(0) scale(.985)}.choice-grid input:checked+span{border-color:var(--night);background:var(--night);color:#fff;box-shadow:0 8px 18px rgba(50,17,28,.2)}.choice-grid input:checked+span:hover{background:var(--night)}.diagnosis-submit{min-height:64px;margin-top:22px}
.work-thumb img{width:100%;height:100%;object-fit:cover;object-position:center top}.default-cover{filter:saturate(.88) contrast(.98)}.work-card:hover .work-thumb img{transform:scale(1.018)}.symbol-label i{margin-left:5px;font-style:normal;letter-spacing:.04em}.recommend-cover{overflow:hidden;background:#e1cfcd}.recommend-cover img{aspect-ratio:3/4;object-fit:cover;object-position:center top}.reviews-section{opacity:.88}
@media(min-width:720px){.hero{min-height:auto}.diagnosis-section{padding-top:52px}.recommend-work{grid-template-columns:minmax(250px,310px) 1fr}.recommend-cover img{max-height:460px}.review-list{gap:18px}.review-row{font-size:.94rem}}
@media(max-width:719px){body{font-size:16px}.hero{padding:46px 0 40px}.hero-copy{margin-top:14px}.hero-promise{margin:16px 0}.hero-note{margin-top:7px}.diagnosis-section{padding-top:44px}.choice-grid label>span{font-size:.9rem}.choice-grid label>span:active{border-color:var(--night);background:#efe3df}.diagnosis-submit{font-size:1rem}.result-grid .work-card>a,.editor-pick .work-card>a{display:block}.result-grid .work-thumb,.editor-pick .work-thumb{height:auto;aspect-ratio:3/4}.result-grid .work-body,.editor-pick .work-body{padding:15px 2px 0}.result-grid .pick-reason,.editor-pick .pick-reason{margin-bottom:7px;font-size:.78rem}.result-grid .work-title,.editor-pick .work-title{font-size:1.08rem;line-height:1.45}.result-grid .work-catch,.editor-pick .work-catch{margin:7px 0;font-size:.88rem;line-height:1.55}.result-grid .card-facts,.editor-pick .card-facts{display:flex;gap:9px;font-size:.8rem}.result-grid .card-facts span,.editor-pick .card-facts span{display:inline}.result-grid .card-facts span+span:before,.editor-pick .card-facts span+span:before{display:inline;margin-right:9px}.result-grid .card-ratings,.editor-pick .card-ratings{font-size:.78rem}.result-grid .fit-note,.editor-pick .fit-note{font-size:.8rem}.result-grid .work-meta,.editor-pick .work-meta{min-height:44px;align-items:center;padding-top:9px;font-size:.84rem}.featured-grid{gap:34px}.recommend-cover img{width:100%;max-height:none}.recommend-work h3{font-size:1.45rem}.mini-ratings{font-size:.88rem}.review-row{grid-template-columns:76px 1fr;padding-bottom:16px}.review-row img{width:76px;height:98px}.review-row p{font-size:.8rem}.philosophy p{line-height:1.75}}

/* 0.5.0 — working finder and mobile shortlist */
.choice-grid label[data-selected="true"]>span:after{content:"✓";display:inline-grid;position:absolute;top:7px;right:8px;width:20px;height:20px;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:50%;font-size:.68rem}.choice-grid label>span{position:relative}.diagnosis-submit[aria-busy="true"]{cursor:wait;opacity:.82}.change-conditions{display:block;margin:28px auto 0;padding:10px 2px;border:0;border-bottom:1px solid #74525a;background:none;color:var(--ink);font-weight:750;cursor:pointer}.change-conditions:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.safe-reasons{margin:12px 0 18px;padding:0;list-style:none;counter-reset:safe}.safe-reasons li{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid rgba(229,199,206,.28);counter-increment:safe}.safe-reasons li:before{content:"0" counter(safe);color:#d9afb8;font-size:.7rem;font-weight:850;letter-spacing:.05em}.reason-title{display:block;margin-top:18px;font-size:.8rem;letter-spacing:.05em}.recommend-work>div:last-child{border:0}.recommend-feature *{border-color:rgba(229,199,206,.28)}
@media(max-width:719px){.featured-grid{display:flex;width:calc(100% + 18px);gap:14px;overflow-x:auto;padding:2px 18px 18px 0;scroll-padding-left:0;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none}.featured-grid::-webkit-scrollbar{display:none}.editor-pick{flex:0 0 86%;scroll-snap-align:start}.editor-pick .work-card{height:100%}.editor-pick .work-meta{font-size:.94rem}.editor-pick .price,.editor-pick .card-ratings{font-size:.9rem}.editor-pick .fit-note{font-size:.88rem}.result-grid{display:flex!important;width:calc(100% + 18px);grid-template-columns:none!important;gap:14px;overflow-x:auto;padding:2px 18px 18px 0;scroll-snap-type:x mandatory;scrollbar-width:none}.result-grid::-webkit-scrollbar{display:none}.result-card-wrap{flex:0 0 86%;scroll-snap-align:start}.recommend-cover img{max-height:420px}.safe-reasons{font-size:.94rem}.work-card a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}}

/* 0.5.1 — prevent stretched mobile swipe cards */
@media(max-width:719px){.featured-grid,.result-grid{align-items:flex-start}.editor-pick,.result-card-wrap{align-self:flex-start}.editor-pick .work-card,.result-card-wrap .work-card{height:auto}.editor-pick .work-body,.result-card-wrap .work-body{height:auto}.editor-pick .work-meta,.result-card-wrap .work-meta{margin-top:14px}}

/* 0.5.2 — contain card content and fill review media column */
.featured-grid,.result-grid{align-items:start}.editor-pick,.result-card-wrap{min-width:0}.editor-pick .work-card,.result-card-wrap .work-card{height:auto}.editor-pick .work-card>a,.result-card-wrap .work-card>a{display:block;height:auto}.editor-pick .work-body,.result-card-wrap .work-body{display:block;height:auto;min-height:0}.editor-pick .work-meta,.result-card-wrap .work-meta{margin-top:14px}.review-row{overflow:hidden}.review-row>img{grid-column:1;width:84px;height:108px;object-fit:cover}.review-row>div{grid-column:2;min-width:0}.review-row h3,.review-row p{overflow-wrap:anywhere}
@media(max-width:719px){.review-row>img{width:76px;height:98px}}

/* 0.7.1 — progressive preference tags and compact result context */
.preference-options [hidden]{display:none!important}.preference-more{align-self:center;padding:7px 4px;border:0;border-bottom:1px solid #74525a;background:none;color:var(--ink);font-size:.76rem;font-weight:750;cursor:pointer}.preference-more:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.result-conditions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-8px 0 22px;padding:11px 0;border-block:1px solid rgba(121,91,99,.25)}.result-conditions>span{margin-right:3px;color:var(--muted);font-size:.72rem;font-weight:750}.result-conditions>div{display:flex;flex:1;flex-wrap:wrap;gap:6px}.condition-chip{padding:4px 9px;border:1px solid #cdb9bb;border-radius:999px;background:#fffaf6;font-size:.7rem;font-weight:700}.result-conditions button{padding:4px 0;border:0;border-bottom:1px solid #74525a;background:none;color:var(--ink);font-size:.72rem;font-weight:750;cursor:pointer}.work-card .fit-note span{font-size:.72rem;letter-spacing:.02em}
@media(max-width:719px){.result-conditions{align-items:flex-start}.result-conditions>div{flex-basis:70%}.result-conditions button{margin-left:auto}.preference-more{grid-column:1/-1;justify-self:center}.work-card .fit-note{display:block;overflow:visible;text-overflow:clip}.work-card .fit-note span{display:block;margin-bottom:2px}}
