@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap";:root{color:#333638;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#263d43;--gold:#a0783d;--muted:#73746f;--line:#e4dfd5;--serif:"Noto Serif JP", Georgia, serif;background:#f5f2ec;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}body{min-width:0;margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button,select{touch-action:manipulation}button,a{transition:background .16s,color .16s,border-color .16s}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #b88942}button:disabled{cursor:not-allowed}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{color:var(--ink)}h2{font-family:var(--serif);font-weight:600}::selection{color:#233338;background:#dfc89f}.site-header{border-bottom:1px solid var(--line);background:#faf8f3}.header-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1240px;margin:auto;padding:18px 34px;display:flex}.site-brand{font-family:var(--serif);color:var(--ink);align-items:center;gap:11px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{background:var(--ink);color:#e3c18b;clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%);place-items:center;width:30px;height:34px;padding-bottom:4px;font-family:Georgia,serif;font-size:19px;display:grid}.header-nav{color:#656c69;gap:22px;font-size:11px;display:flex}.header-nav a{text-decoration:none}.header-nav a:hover{color:var(--gold)}.hero{max-width:1172px;margin:auto;padding:47px 0 37px;position:relative}.hero-kicker{color:var(--gold);letter-spacing:.22em;margin-bottom:13px;font:11px Georgia,serif}.hero h1{font-family:var(--serif);letter-spacing:.05em;font-size:clamp(29px,3.2vw,42px);font-weight:600}.hero h1 span{color:#9c815b;letter-spacing:.08em;margin-left:20px;font-size:.5em}.hero-description{color:#6d726e;margin-top:16px;font-size:13px;line-height:2}.static-guide{border-top:1px solid #ddd7cb;max-width:1172px;margin:48px auto 0;padding:34px 0}.static-guide h2{margin-bottom:22px;font-size:21px}.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.guide-grid h3{font-family:var(--serif);margin-bottom:12px;font-size:15px;font-weight:600}.guide-grid p{color:#6e746f;font-size:12px;line-height:2}.guide-grid a{text-underline-offset:4px}.related-reading{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.related-reading h3{font-family:var(--serif);margin-bottom:16px;font-size:18px;font-weight:600}.related-article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.related-article{color:#73796e;overflow-wrap:anywhere;background:#fcfaf5;border:1px solid #e1dbcf;border-radius:6px;flex-direction:column;gap:8px;min-width:0;padding:18px 20px;font-size:12px;line-height:1.9;text-decoration:none;display:flex}.related-article:hover{background:#f0ece2;border-color:#bda375}.related-article .related-article-title{color:var(--ink);font-size:14px;font-weight:600}.site-footer{color:#777b75;border-top:1px solid #ddd7cb;justify-content:space-between;gap:20px;max-width:1172px;margin:0 auto;padding:24px 0 32px;font-size:11px;display:flex}.site-footer nav{gap:20px;display:flex}.site-footer a{text-decoration:none}.noscript{background:#fff;border:1px solid #bd9561;max-width:800px;margin:25px auto;padding:24px;line-height:1.8}@media (width<=1240px){.hero,.static-guide,.site-footer{margin-left:28px;margin-right:28px}.hero h1 span{margin:14px 0 0;font-size:16px;display:block}}@media (width<=760px){.header-inner{padding:16px 20px}.site-brand{font-size:12px}.header-nav{gap:12px}.header-nav a:first-child{display:none}.hero{margin-left:20px;margin-right:20px;padding:31px 0 27px}.hero h1{font-size:29px}.hero h1 span{font-size:13px}.hero-description{font-size:12px}.static-guide{margin:32px 20px 0;padding-top:25px}.guide-grid{grid-template-columns:1fr;gap:24px}.static-guide h2{font-size:18px}.related-article-grid{grid-template-columns:minmax(0,1fr)}.site-footer{flex-direction:column;margin:0 20px;line-height:1.9}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.maker-layout{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:28px;max-width:1172px;margin:0 auto;display:grid}.controls-panel{background:#fcfaf5;border:1px solid #ded8cb;border-radius:9px;padding:26px 23px}.section-kicker{color:#987c54;letter-spacing:.18em;margin-bottom:9px;font-family:Georgia,serif;font-size:9px}.controls-panel h2{font-size:19px}.panel-intro{color:#818278;margin:13px 0 24px;font-size:11px;line-height:1.9}.choice-field{margin-bottom:17px;display:block}.choice-field>span{color:#5b635e;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.choice-field select{color:#33464b;background:#fff;border:1px solid #dcd7ce;border-radius:5px;width:100%;min-width:0;min-height:42px;padding:9px 28px 9px 12px;font-size:13px;display:block}.person-choices{grid-template-columns:1fr;display:grid}.button{text-align:center;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:39px;padding:10px 15px;font-family:Noto Sans JP,sans-serif;font-size:11px;font-weight:500;line-height:1.5;text-decoration:none;display:inline-flex}.button-primary{color:#fffdf6;background:#2e4a4b;border-color:#2e4a4b}.button-primary:hover{background:#203a3c;border-color:#203a3c}.button-soft{color:#615137;background:#f0ece3;border-color:#e8dfce}.button-soft:hover{background:#e8e1d3}.button-outline{color:#53615c;background:0 0;border-color:#d7d4cb}.button-outline:hover{background:#f0ede6;border-color:#bfb9ac}.button-text{color:#6c756d;background:0 0;padding-left:8px;padding-right:8px}.button-text:hover{color:#93703b}.generate-button{width:100%;min-height:47px;margin-top:6px;font-size:12px}.generate-button>span{color:#e9c88c;margin-right:4px;font-size:17px}.control-footnote{color:#86887d;text-align:center;margin-top:16px;font-size:10px;line-height:2}.status-dot{vertical-align:middle;background:#7a9985;border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.sidebar-rule{background:#e3ddd2;height:1px;margin:24px 0 18px}.sidebar-note{color:#8a897e;font-size:10px;line-height:2}.sidebar-note strong{color:#6e6f60;font-weight:500}.results-column{flex-direction:column;gap:22px;min-width:0;display:flex}.profile-card,.house-card,.history-card,.names-card{background:#fffefa;border:1px solid #e1dbcf;border-radius:10px;overflow:clip;box-shadow:0 3px 14px #4e48290a}.card-overline{color:#8c795d;letter-spacing:.04em;border-bottom:1px solid #eee8dd;justify-content:space-between;align-items:center;gap:15px;padding:14px 26px;font-size:10px;display:flex}.card-overline>span:first-child{letter-spacing:.18em;font-family:Georgia,serif;font-size:9px}.profile-main{grid-template-columns:minmax(0,234px) minmax(0,1fr);gap:26px;padding:26px;display:grid}.portrait-column{min-width:0}.portrait-frame{background:#f7f1e7;border:1px solid #d7c6a9;border-radius:5px;padding:5px;position:relative}.portrait-frame img{aspect-ratio:1;object-fit:cover;border-radius:2px;width:100%;height:auto}.portrait-caption{text-align:center;color:#faf0dc;letter-spacing:.17em;background:linear-gradient(#0000,#172329c4);padding:7px;font:10px Georgia,serif;position:absolute;bottom:5px;left:5px;right:5px}.portrait-actions{justify-content:center;gap:17px;margin-top:12px;display:flex}.portrait-actions button{color:#7d765f;text-underline-offset:4px;background:0 0;border:0;padding:4px 0;font-size:10px;text-decoration:underline}.portrait-actions button:hover{color:#334e4e}.character-details{min-width:0;padding-top:2px}.profile-badges{flex-wrap:wrap;gap:6px;display:flex}.profile-badges>span{color:#897454;background:#f4f0e7;border:1px solid #e8dfcf;border-radius:3px;padding:3px 7px;font-size:9px}.character-details h2{letter-spacing:.015em;overflow-wrap:anywhere;margin-top:12px;font-size:clamp(19px,2vw,25px);line-height:1.65}.latin-name{color:#a28a66;overflow-wrap:anywhere;margin-top:4px;font:italic 14px/1.6 Georgia,serif}.character-position{color:#5d6866;margin-top:12px;font-size:12px}.character-position>span{color:#c9c4b8;padding:0 5px}.family-reference{color:#919185;overflow-wrap:anywhere;margin-top:6px;font-size:10px}.character-notes{gap:9px;margin:20px 0 0;display:grid}.character-notes>div{grid-template-columns:28px minmax(0,1fr);gap:8px;font-size:12px;line-height:1.9;display:grid}.character-notes dt{color:#9b835d}.character-notes dd{color:#68706a;margin:0}.name-actions{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.name-actions .button{min-height:35px;padding:8px 11px;font-size:10px}.same-house-bar{border-top:1px solid #eee8dc;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 26px;padding:17px 0 8px;display:flex}.same-house-bar p{color:#8e8d80;font-size:10px}.same-house-bar .button{min-height:34px;font-size:10px}.same-house-note{color:#87897c;padding:0 26px 18px;font-size:11px;line-height:1.8}.portrait-gallery{background:#f7f3eb;border:1px solid #e7dece;border-radius:6px;margin:0 26px 22px;padding:18px}.gallery-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.gallery-heading h3{font-size:12px}.gallery-heading span{color:#81755e;font-size:10px}.portrait-gallery>p{color:#8b897b;margin-top:8px;font-size:10px;line-height:1.8}.portrait-grid{scrollbar-gutter:stable;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;max-height:430px;margin-top:14px;display:grid;overflow-y:auto}.portrait-grid button{background:0 0;border:2px solid #0000;border-radius:5px;padding:0;overflow:hidden}.portrait-grid button[aria-pressed=true]{border-color:#9b793e}.portrait-grid button:hover{border-color:#bc9e6d}.portrait-grid img{width:100%;height:auto}.house-card,.history-card,.names-card{padding:25px 28px}.house-heading{align-items:center;gap:18px;display:flex}.crest{flex-shrink:0;width:64px;height:75px}.house-heading>div:nth-child(2){min-width:0}.house-heading h2{overflow-wrap:anywhere;font-size:21px;line-height:1.6}.house-heading .section-kicker{margin-bottom:4px}.house-motto{color:#94805d;font-family:var(--serif);margin-top:5px;font-size:11px;line-height:1.8}.founded{text-align:center;color:#a28a65;flex-direction:column;min-width:65px;margin-left:auto;display:flex}.founded>span{letter-spacing:.14em;font:8px Georgia,serif}.founded strong{color:#7c6f58;margin:5px 0;font:28px Georgia,serif}.founded small{font-size:8px}.house-summary{color:#6e766e;border-top:1px solid #e9e3d8;margin-top:18px;padding-top:17px;font-size:13px;line-height:1.9}.house-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;margin-top:23px;display:grid}.house-detail-grid h3,.house-traits h3{color:#9b835e;margin-bottom:12px;font-size:12px;font-weight:500}.territory-details h4{font-family:var(--serif);margin-bottom:8px;font-size:14px;font-weight:600}.territory-details>p{color:#72796b;font-size:12px;line-height:1.95}.territory-details .industry{color:#717a70;margin-top:10px}.industry>span{color:#a29277;margin-right:9px;font-size:9px;display:inline-block}.house-ratings{border-left:1px solid #eee7dc;padding-left:24px}.rating{color:#7c8377;align-items:center;gap:10px;margin:12px 0;font-size:10px;display:flex}.rating>span:first-child{min-width:65px}.rating-pips{gap:4px;margin-left:auto;display:flex}.rating-pips>i{background:#e9e4db;border-radius:1px;width:8px;height:8px;display:block}.rating-pips>i.filled{background:#a98d5c}.rating-value{color:#9b947f;font-size:9px}.house-traits{border-top:1px solid #eee7dc;margin-top:22px;padding-top:20px}.house-traits ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px;margin:0;padding:0;list-style:none;display:grid}.house-traits li{color:#737d6d;padding-left:13px;font-size:12px;line-height:1.9;position:relative}.house-traits li:before{content:"◇";color:#b49c73;position:absolute;left:0}.section-title-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.section-title-row h2,.names-card h2{font-size:19px}.section-title-row>span{color:#a09886;font-size:9px}.timeline{margin:25px 0 0;padding:0;list-style:none}.timeline li{grid-template-columns:57px minmax(0,1fr);gap:22px;padding:0 0 24px;display:grid;position:relative}.timeline li:before{content:"";background:#e3dbc9;width:1px;position:absolute;top:9px;bottom:-6px;left:63px}.timeline li:after{content:"";background:#c2ab7e;border:2px solid #fffefa;border-radius:50%;outline:1px solid #cfbea0;width:7px;height:7px;position:absolute;top:6px;left:60px}.timeline li:last-child{padding-bottom:0}.timeline li:last-child:before{display:none}.timeline-year{color:#8d7954;font:21px Georgia,serif}.timeline-year>span{margin-left:3px;font:8px Noto Sans JP,sans-serif}.timeline h3{font-family:var(--serif);margin-bottom:7px;font-size:13px;font-weight:500}.timeline p{color:#747d69;font-size:12px;line-height:1.95}.story-hook{background:#f4f0e5;border-left:2px solid #b49b69;margin-top:25px;padding:15px 19px}.story-hook>span{color:#a18a62;font-size:9px}.story-hook p{color:#757a6b;margin-top:7px;font-size:12px;line-height:1.9}.section-description{color:#7c826e;margin-top:11px;font-size:12px;line-height:1.9}.candidate-list{margin-top:16px}.candidate-list>div{border-top:1px solid #eee8dc;align-items:center;gap:13px;padding:12px 0;display:flex}.candidate-gender{color:#a29276;white-space:nowrap;border:1px solid #e8dfce;border-radius:3px;flex-shrink:0;padding:3px 5px;font-size:8px}.candidate-list>div>div{flex:1;min-width:0}.candidate-list strong{color:#68786c;overflow-wrap:anywhere;font-size:12px;font-weight:500;line-height:1.8;display:block}.candidate-list small{color:#96866a;overflow-wrap:anywhere;font:12px/1.8 Georgia,serif;display:block}.candidate-list button{color:#9b8a69;background:0 0;border:0;flex-shrink:0;padding:7px;font-size:9px}.candidate-list button:hover{color:#314d49}.export-card{background:#eeeee4;border:1px solid #dadbcf;border-radius:8px;padding:24px 27px}.export-card h2{font-size:19px}.export-card>div>p{color:#89907d;margin-top:11px;font-size:11px}.export-actions{flex-wrap:wrap;gap:9px;margin-top:21px;display:flex}.asset-note{color:#7e866d;margin-top:19px;font-size:11px;line-height:1.9}.notice{z-index:20;color:#4c6a55;pointer-events:none;background:#edf4e9;border:1px solid #b9c9b8;border-radius:5px;align-items:center;gap:16px;max-width:min(520px,100vw - 32px);padding:12px 15px;font-size:12px;line-height:1.8;display:flex;position:fixed;bottom:20px;right:24px;box-shadow:0 4px 20px #263d4319}.notice button{color:inherit;pointer-events:auto;background:0 0;border:0;flex-shrink:0;padding:4px 7px;font-size:20px}.notice-error{color:#8a493b;background:#fff0e8;border-color:#dcb4a0}.notice-info{color:#566875;background:#f0f3f5;border-color:#ccd6dd}@media (width<=1240px){.maker-layout{grid-template-columns:245px minmax(0,1fr);gap:22px;margin:0 28px}.controls-panel{padding:24px 19px}.profile-main{grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:22px;padding:22px}.house-ratings{padding-left:17px}.rating{gap:7px}}@media (width<=1000px){.maker-layout{grid-template-columns:220px minmax(0,1fr);gap:18px}.profile-main{grid-template-columns:1fr}.portrait-column{justify-self:center;width:210px}.character-details{padding-top:0}.character-details h2{font-size:24px}.house-heading{gap:12px}.house-heading h2{font-size:17px}.founded{min-width:45px}.founded strong{font-size:23px}.house-detail-grid{grid-template-columns:1fr;gap:20px}.house-ratings{border-left:0;padding-left:0}.rating-pips{margin-left:10px}.house-traits ul{grid-template-columns:1fr}.portrait-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=760px){.maker-layout{grid-template-columns:minmax(0,1fr);gap:20px;margin:0 16px}.controls-panel{padding:23px 20px}.panel-intro{margin:10px 0 20px}.panel-intro br{display:none}.controls-panel form{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.controls-panel form>.choice-field:first-child,.controls-panel form>.choice-field:nth-of-type(2),.person-choices .choice-field:last-child{grid-column:1/-1}.person-choices{display:contents}.generate-button{grid-column:1/-1;margin-top:2px}.choice-field{margin-bottom:14px}.control-footnote{margin-top:12px}.sidebar-rule,.sidebar-note{display:none}.results-column{gap:18px}.profile-main{gap:20px;padding:22px 20px}.portrait-column{width:235px;max-width:100%}.character-details h2{font-size:24px}.profile-badges{justify-content:center}.character-details h2,.latin-name,.character-position,.family-reference{text-align:center}.character-notes{border-top:1px solid #eee7dc;padding-top:16px}.character-notes>div{font-size:12px}.name-actions{justify-content:center}.card-overline{padding:12px 18px;font-size:9px}.card-overline>span:first-child{letter-spacing:.1em;font-size:8px}.same-house-bar{justify-content:center;margin:0 20px}.same-house-note{padding-left:20px;padding-right:20px}.portrait-gallery{margin-left:20px;margin-right:20px;padding:14px}.house-card,.history-card,.names-card{padding:23px 20px}.crest{width:50px;height:61px}.house-heading h2{font-size:17px}.house-motto{font-size:10px}.founded{display:none}.house-summary{font-size:11px}.territory-details>p,.house-traits li,.timeline p{font-size:12px}.house-detail-grid{grid-template-columns:minmax(0,1fr)}.house-traits ul{gap:10px}.section-title-row h2,.names-card h2{font-size:18px}.timeline li{grid-template-columns:46px minmax(0,1fr);gap:20px}.timeline li:before{left:51px}.timeline li:after{left:48px}.timeline-year{font-size:19px}.timeline h3{font-size:12px}.candidate-list>div{gap:8px}.candidate-gender{padding:3px;font-size:7px}.candidate-list strong{font-size:12px}.export-card{padding:23px 20px}.export-card h2{font-size:18px}.export-actions{gap:8px}.export-actions .button{flex:120px;font-size:10px}.asset-note{font-size:11px}}@media (width<=380px){.controls-panel form{display:block}.generate-button{margin-top:6px}}
