@charset "UTF-8";
:root{font-family:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:#433744;background:#fffafd;font-synthesis:none;--rose:#b7446c;--ink:#433744;--muted:#786b78;--line:#eadfe7}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 6% 12%,#ffe6ef70,transparent 45%),radial-gradient(ellipse at 94% 16%,#e5edff90,transparent 40%);min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:default;opacity:.55}a{color:var(--rose)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,g:focus-visible{outline:3px solid #6649b8;outline-offset:3px}button{border:0;background:transparent}p{line-height:1.85;margin:12px 0}h1,h2,h3{line-height:1.55;margin:0;color:var(--ink)}h1{font-size:clamp(1.8rem,3.2vw,2.6rem);letter-spacing:.055em;font-weight:700}h2{font-size:1.35rem}h3{font-size:1rem}strong{font-weight:650}.topbar{height:88px;padding:0 max(30px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebdfe88c;background:#fffafcce;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.12rem;white-space:nowrap;font-weight:750;color:var(--ink)}.brand-light{font-weight:500;margin-left:5px}.topbar nav{display:flex;align-self:stretch;gap:18px}.nav-item{display:flex;align-items:center;gap:8px;padding:0 8px;font-size:.9rem;color:#7d707c;border-bottom:3px solid transparent}.nav-item span{font-size:1.3rem}.nav-item.active{color:var(--rose);border-bottom-color:var(--rose)}.account{font-size:.875rem;background:white;border:1px solid var(--line);border-radius:30px;padding:10px 17px;white-space:nowrap}.account span{margin-left:8px}main{max-width:1190px;margin:0 auto;padding:0 24px 40px}.welcome{display:flex;justify-content:space-between;align-items:center;min-height:284px;padding:34px 16px 28px}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.12em;color:var(--rose);margin:0 0 14px}.eyebrow span{font-size:.68rem;color:#a08e9d;margin-left:20px}.greeting{color:#7f687b;font-size:.95rem;margin-bottom:0;line-height:1.85}.welcome-mark{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:154px;height:154px;margin-right:44px;transform:rotate(9deg)}.welcome-mark i{display:grid;place-items:center;border-radius:13px;font-style:normal;font-size:.85rem;box-shadow:0 6px 15px #72587109}.welcome-mark i:nth-child(5){font-size:1.9rem}.builder-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:24px;align-items:start}.panel{background:#ffffffdb;border:1px solid #eee1e9;border-radius:22px;box-shadow:0 12px 35px #5b315905}.question-panel{padding:30px 32px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.panel-heading h2{font-size:1rem}.pill{display:inline-flex;align-items:center;font-size:.75rem;letter-spacing:.02em;border-radius:20px;padding:6px 12px;background:#faeaf0;color:#a43e63;white-space:nowrap}.pill.neutral{background:#f5f0f6;color:#827087}.muted{color:var(--muted);font-size:.9rem}.small{font-size:.78rem;line-height:1.7}.quiet{color:#8a7a88}.question-panel .quiet{margin:20px 0 0}.steps{display:flex;gap:5px;margin:24px 0 28px}.steps button{height:29px;min-width:0;flex:1;border-radius:6px;background:#f4f0f4;font-size:.72rem;color:#9b8c9b;padding:0}.steps button.current{background:var(--rose);color:white}.steps button.visited{background:#f8e4ed;color:#a74468}.question-panel h2{font-size:1.55rem;line-height:1.65;letter-spacing:.035em}.question-tag{display:flex;gap:12px;font-size:1.4rem;font-weight:700;margin-bottom:18px}.question-tag span{font-size:1rem;align-self:center}form label,label{display:block;font-size:.85rem;font-weight:650;margin:22px 0 9px}input,select,textarea{width:100%;border:1px solid #ded4df;border-radius:10px;background:#fff;color:var(--ink);padding:13px;font-size:1rem;min-height:46px}textarea{min-height:116px;resize:vertical;line-height:1.8}input::placeholder,textarea::placeholder{color:#a093a0;font-size:.875rem}select{font-size:.86rem}.input-row{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.tip{display:flex;align-items:flex-start;gap:12px;border-radius:12px;padding:14px 16px;background:#faf4f8;margin:22px 0}.tip>span{color:var(--rose);font-size:1.3rem}.tip p{font-size:.8rem;color:#7b6175;margin:0;line-height:1.85}.primary,.secondary,.ai-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:10px;padding:12px 18px;min-height:45px;font-size:.875rem;font-weight:650}.primary{background:var(--rose);color:#fff;box-shadow:0 5px 12px #b7446c15}.primary:hover{background:#9f365d}.secondary{background:#fff;border:1px solid #e3d9e3}.secondary:hover{background:#faf4f8}.full{width:100%;justify-content:space-between;margin-top:12px}.ai-button{color:#95619d;background:#f6f0fa;border:1px solid #eadcef;margin:12px 0}.text-button{color:var(--rose);font-size:.8rem;padding:13px 0}.actions{display:flex;gap:12px;justify-content:space-between;margin-top:22px}.actions>.primary{flex:1}.live-chart{padding:26px}.mandala{gap:8px}.a-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cell{position:relative;text-align:left;display:flex;flex-direction:column;justify-content:space-between;min-width:0;background:var(--pale,#f7f2f7);border:1px solid color-mix(in srgb,var(--area,#bb456b) 25%,white);border-top:3px solid var(--area,#bb456b);border-radius:11px;min-height:142px;padding:13px 11px;transition:transform .15s,box-shadow .15s}.cell:hover{box-shadow:0 4px 15px #6a50671a;transform:translateY(-2px)}.cell strong{overflow-wrap:anywhere;font-size:.875rem;line-height:1.65;display:block;margin:10px 0}.cell.empty strong{color:#a0909b;font-size:.8rem;font-weight:400}.cell-label{color:var(--area,#a33d62);font-size:.75rem;font-weight:700}.cell-rating{display:flex;gap:3px;align-items:center;min-height:10px}.cell-rating>span{font-size:.65rem;color:#928191}.cell-rating i{flex:1;height:4px;max-width:20px;border-radius:3px;background:#fff9}.cell-rating i.filled{background:var(--area)}.cell.center{background:linear-gradient(135deg,#f8dce8,#f2e1f6);border:1px solid #dcadc2;text-align:center;align-items:center;justify-content:center}.cell.center strong{color:#91425f;font-size:1rem}.cell.center .cell-label{color:#ac6380;font-size:.72rem}.center-spark{color:#bb6587}.cell.focused{outline:3px solid var(--area);outline-offset:2px}.chart-note{display:flex;gap:13px;align-items:center;margin:20px 0 6px}.chart-note p{font-size:.75rem;color:#94778a;line-height:1.85}.note-line{display:block;width:30px;height:2px;background:#d5afc1}.live-chart>.text-button{border-top:1px solid #f0e7ed;width:100%;text-align:left}.daily-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:24px}.daily-focus{padding:30px}.glance{padding:26px}.stats{display:flex;justify-content:space-around;margin-top:22px;color:#897486;font-size:.85rem}.stats b{font-size:1.4rem;color:var(--rose)}.history{padding:32px 4px}.history h2{font-size:1.1rem}.history-list{margin-top:12px}.history article{display:flex;align-items:flex-start;gap:22px;border-bottom:1px solid var(--line);padding:20px 0}.history time{font-size:.8rem;color:#8c7c88;padding-top:4px}.history-check{color:var(--rose);background:#f7e5ee;width:26px;height:26px;text-align:center;border-radius:50%}.history article p{font-size:.875rem;margin:4px 0;color:#786778}.page-heading{padding:42px 6px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}.chart-panel{padding:28px}.chart-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:28px}.segmented{display:flex;border-radius:12px;background:#f3edf3;padding:4px}.segmented button{font-size:.9rem;padding:11px 22px;border-radius:9px;white-space:nowrap}.segmented button span{font-size:.75rem;margin-left:8px;color:#867589}.segmented .selected{background:white;color:var(--rose);box-shadow:0 2px 8px #50344b0c}.toolbar-right{display:flex;align-items:center;gap:10px}.toolbar-right .ai-button{margin:0}.main-a{max-width:730px;margin:auto}.main-a .cell{min-height:174px;padding:18px}.main-a .cell strong{font-size:1.03rem}.legend{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;font-size:.75rem;margin-top:27px;color:#887288}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:10px;height:10px;background:var(--rose);border-radius:3px}.b-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;min-width:870px}.b-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;background:var(--pale);padding:4px;border-radius:9px;border:1px solid color-mix(in srgb,var(--area,#bb456b) 25%,white)}.b-group .cell{padding:6px;min-height:104px;border-radius:6px}.b-group .cell strong{font-size:.75rem;font-weight:500;margin:5px 0}.b-group .cell-label{font-size:.68rem}.b-group .cell-rating>span{font-size:.6rem}.b-group.core{display:block;padding:4px;background:#f9e9f0}.b-group .a-grid{height:100%;gap:3px}.b-scroll{overflow:auto;padding:2px}.b-next{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.space-view{background:radial-gradient(ellipse at center,#f8ecf5,#fcfaff 65%);border-radius:16px;min-height:410px;position:relative;padding:24px}.space-view>div{position:relative;z-index:1}.space-view h2{font-size:1.12rem;margin-top:10px}.space-view p{font-size:.85rem;color:#8b6f83}.space-view svg{display:block;max-width:720px;width:100%;margin:-25px auto 0;overflow:visible}.space-view g{cursor:pointer}.space-view g:hover path{stroke:var(--rose);stroke-width:2}.learn-page{max-width:970px;margin:auto;padding:54px 10px}.lead{color:#806775;font-size:1.1rem;line-height:1.9}.learn-intro{display:grid;grid-template-columns:1fr 240px;gap:55px;align-items:center;margin:42px 0}.learn-intro p{font-size:.95rem;color:#766272}.learn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.learn-grid span{display:grid;place-items:center;aspect-ratio:1;border-radius:9px;background:#f0e5f0;color:#ad7195;white-space:pre-line;text-align:center}.learn-grid .middle{background:var(--rose);color:white;font-size:.8rem}.learn-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0}.learn-cards section{border-top:1px solid #d8b4c6;padding-top:20px}.learn-number{font-family:Georgia,serif;font-size:2rem;color:#bd88a2}.learn-cards h2{font-size:1.1rem;margin:16px 0}.learn-cards p{font-size:.9rem;color:#776375}.example{padding:16px;border-radius:12px;background:#f7edf3;font-size:.9rem}.learn-rules{padding:30px}.learn-rules>h2{padding-bottom:20px;border-bottom:1px solid var(--line)}.learn-rules h3{margin-top:24px;color:#a44b70}.learn-rules p{font-size:.9rem;color:#786576}.source{margin:30px 0;padding:24px 0;font-size:.8rem;color:#8b7785;border-bottom:1px solid var(--line)}.source a{font-size:.8rem}footer{max-width:1190px;margin:0 auto;padding:24px;color:#93838e;font-size:.75rem;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;border-top:1px solid #eadfea}footer>div{display:flex;gap:14px}footer button{padding:0;font-size:.75rem;color:#9e6884}footer small{font-size:.68rem;flex-basis:100%;line-height:1.8}dialog{border:1px solid #e6d5e3;border-radius:22px;padding:38px;width:min(570px,calc(100% - 30px));max-height:88vh;color:var(--ink);box-shadow:0 25px 90px #48283e33}dialog::backdrop{background:#4b354858;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:14px;top:10px;width:36px;height:36px;font-size:1.7rem;color:#987687}dialog h2{font-size:1.4rem}dialog p{font-size:.9rem}dialog .full{justify-content:center}.rating-field{border:1px solid #eee0e8;border-radius:13px;padding:18px;margin:22px 0}.rating-field legend{font-size:.8rem;color:#826277;padding:0 5px}input[type=range]{accent-color:var(--rose);padding:0;border:0;background:transparent;min-height:32px}.rating-labels{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:#8c7387}.rating-labels output{font-size:1.3rem;color:var(--rose);font-weight:700}.checkbox{display:flex;gap:9px;align-items:center;font-size:.85rem;margin:18px 0 0}.checkbox input{width:18px;min-height:18px;accent-color:var(--rose)}.rating-field p{font-size:.75rem;color:#8a7686}.question-list{padding-left:22px;font-size:.95rem;line-height:2}.suggestion{border:1px solid var(--line);padding:18px;margin:16px 0;border-radius:13px}.suggestion p{font-size:.85rem}.suggestion h3{font-size:1rem}#toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:.25s;padding:13px 22px;background:#624151;color:white;box-shadow:0 6px 20px #43233622;border-radius:13px;max-width:90vw;width:max-content;font-size:.85rem;z-index:1000}#toast.show{transform:translate(-50%,0);opacity:1}#login-error,#import-error{color:#b13857}.purpose-trigger{display:flex;justify-content:space-between;width:100%;text-align:left;border:1px dashed #dcb4ca;border-radius:11px;padding:13px 15px;margin-bottom:20px;color:#a04974;font-size:.85rem;background:#fff9fd}.purpose-list{display:grid;gap:12px;margin-top:22px}.purpose-list button{padding:16px;text-align:left;border:1px solid #e9d8e4;border-radius:12px;background:#fdf7fb}.purpose-list b,.purpose-list span{display:block}.purpose-list span{font-size:.8rem;color:#937389;margin-top:6px}.purpose-list b{font-size:.95rem}.gate{padding:90px 25px;text-align:center}.gate p{color:var(--muted)}
@media(min-width:901px){.welcome{min-height:218px;padding:24px 16px}.welcome h1{font-size:2.05rem}.welcome-mark{width:125px;height:125px}.question-panel h2{font-size:1.35rem}.steps{margin:18px 0 20px}.purpose-trigger{margin-bottom:16px}.question-panel> .muted{margin:8px 0}}
@media(max-width:900px){.topbar{padding:0 24px}.brand-light{display:block;margin:0;font-size:.8rem}.brand{font-size:.85rem}.topbar nav{gap:8px}.builder-layout,.daily-layout{gap:16px}.question-panel{padding:24px}.live-chart,.glance{padding:20px}.cell{padding:10px 8px;min-height:127px}.input-row{grid-template-columns:1fr}.input-row label{margin-top:15px}.toolbar-right{gap:5px}.chart-toolbar{flex-wrap:wrap}.space-view svg{margin-top:10px}.learn-cards{gap:18px}.welcome-mark{margin-right:8px;width:135px;height:135px}}
@media(max-width:680px){.topbar{height:72px;padding:0 18px;position:relative}.topbar nav{position:fixed;bottom:0;left:0;right:0;height:65px;background:#fffcfef5;backdrop-filter:blur(12px);border-top:1px solid #e6dbe5;z-index:50;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.nav-item{flex-direction:column;justify-content:center;gap:1px;padding:4px 16px;font-size:.7rem;border-bottom:0;border-top:3px solid transparent}.nav-item.active{border-top-color:var(--rose)}.nav-item span{font-size:1.25rem}.brand-light{display:inline;margin-left:4px;font-size:.8rem}.brand img{width:30px;height:30px}.account{padding:9px 12px;font-size:.75rem}.account span{display:none}main{padding:0 16px 26px}.welcome{padding:28px 3px 24px;min-height:0;align-items:flex-start}.welcome h1{font-size:1.55rem;letter-spacing:.025em}.welcome .eyebrow{font-size:.7rem;margin-bottom:12px}.eyebrow span{display:none}.greeting{font-size:.82rem;line-height:1.85}.welcome-mark{display:none}.builder-layout,.daily-layout{grid-template-columns:1fr;gap:20px}.panel{border-radius:18px}.question-panel{padding:24px 20px}.question-panel h2{font-size:1.4rem}.steps{gap:4px;margin:22px 0}.steps button{font-size:.68rem;height:30px}.panel-heading{gap:8px}.pill{font-size:.7rem;padding:6px 9px}.panel-heading .muted{font-size:.75rem}.input-row{grid-template-columns:1fr}.input-row label{margin-top:17px}.question-panel .muted{font-size:.875rem}.live-chart{padding:22px 18px}.cell{min-height:123px;padding:11px 9px}.cell strong{font-size:.82rem}.cell.empty strong{font-size:.75rem}.cell-rating>span{font-size:.6rem}.mandala{gap:6px}.cell.center strong{font-size:.9rem}.daily-focus{padding:24px 20px}.glance{padding:22px 18px}.actions{gap:8px}.actions button{padding:12px 10px;font-size:.8rem}.page-heading{padding:28px 4px 20px;display:block}.page-heading h1{font-size:1.6rem}.page-heading .secondary{margin-top:8px}.chart-panel{padding:18px 12px}.chart-toolbar{gap:15px;margin-bottom:20px}.segmented{width:100%}.segmented button{flex:1;padding:10px 12px}.toolbar-right{width:100%;justify-content:space-between;gap:7px}.toolbar-right button{padding:10px 12px;font-size:.75rem}.main-a .cell{min-height:127px;padding:10px 8px}.main-a .cell strong{font-size:.8rem}.legend{gap:12px;font-size:.68rem;justify-content:flex-start;margin:24px 4px}.b-next{display:block;padding:20px 4px}.b-next button{width:100%;margin-top:8px}.space-view{padding:17px 10px;min-height:340px;overflow:hidden}.space-view h2{font-size:1rem}.space-view p{font-size:.8rem}.space-view svg{width:100%;margin:30px auto 0}.learn-page{padding:32px 3px}.learn-page h1{font-size:1.9rem}.lead{font-size:1rem}.learn-intro{grid-template-columns:1fr;gap:20px;margin:30px 0}.learn-grid{width:210px;margin:auto}.learn-cards{grid-template-columns:1fr;gap:20px;margin:30px 0}.learn-rules{padding:22px 20px}.learn-rules h2{font-size:1.1rem}.learn-cards h2{display:inline;margin-left:15px}.learn-cards p{margin-top:14px}.history article{gap:10px}.history time{font-size:.68rem}.history article strong{font-size:.85rem}.history-check{flex:0 0 24px}footer{padding:22px 20px 90px;font-size:.7rem}footer small{font-size:.65rem}dialog{padding:34px 22px 25px;max-height:86vh}dialog h2{font-size:1.2rem}#toast{bottom:83px;font-size:.8rem}.rating-labels{font-size:.68rem}.brand{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.cell strong,.main-a .cell strong{font-size:1.125rem;line-height:1.65;font-weight:650}.cell{min-height:155px}.cell-label{font-size:.875rem}.cell.center strong{font-size:1.125rem}.cell.empty strong{font-size:.875rem}.cell-rating>span{font-size:.75rem}.b-grid{min-width:1450px}.b-group .cell{min-height:145px;padding:10px}.b-group .cell strong{font-size:1rem;line-height:1.65}.b-group .cell-label{font-size:.8rem}.b-group .cell-rating>span{font-size:.7rem}.b-focus-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.b-focus-nav button{padding:9px 13px;font-size:.85rem;background:#f7f0f7;border:1px solid #e9dce7;border-radius:8px}.b-focus-nav button.selected{background:#b7446c;color:white;border-color:#b7446c}.focus-context{text-align:center;margin:8px 0 22px}.focus-context h2{font-size:1.15rem}.focus-context p{color:#8d7185}
@media(max-width:680px){.cell strong,.main-a .cell strong,.cell.center strong{font-size:1rem}.cell,.main-a .cell{min-height:158px}.cell-label{font-size:.8rem}.cell-rating>span{font-size:.7rem}.cell.empty strong{font-size:.85rem}.b-focus-nav{gap:6px}.b-focus-nav button{font-size:.8rem;padding:8px 10px}.b-group .cell strong{font-size:1rem}.question-panel h2{font-size:1.35rem}.welcome h1{font-size:1.4rem}.welcome{padding-top:20px;padding-bottom:20px}}
@media print{.topbar,footer,.chart-toolbar,.legend,.b-focus-nav,button.primary,.page-heading>button{display:none}body{background:white}.panel{border:0;box-shadow:none}.b-scroll{overflow:visible}.b-grid{min-width:0}.cell{break-inside:avoid}.b-group .cell{min-height:70px}.b-group .cell strong{font-size:8pt}.b-group .cell-rating{display:none}}
.coach-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;margin-bottom:22px;border-radius:16px;background:#f5e9f2;border:1px solid #e6cede}.coach-banner h2{font-size:1.05rem}.coach-banner p{font-size:.85rem;margin:6px 0;color:#8d6481}.coach-banner .eyebrow{font-size:.75rem}.coach-banner button{flex-shrink:0}.strength{padding:18px 0;border-bottom:1px solid #ecdce7}.strength h3{margin:14px 0}.reflection blockquote{margin:18px 0;padding:12px 18px;border-left:3px solid #c186a8;background:#faf2f8;font-size:1rem;line-height:1.8}.reflection p{line-height:1.9}@media(max-width:680px){.coach-banner{display:block;padding:20px}.coach-banner button{width:100%;margin-top:14px}.coach-banner h2{font-size:1rem}}

.praise{margin:.2em 0 .4em;font-size:1.02rem;line-height:1.7;color:var(--ink)}.praise .pill{margin-right:.4em}.praise b{color:var(--rose)}.visits{display:flex;align-items:center;gap:.6em;flex-wrap:wrap;margin-top:.5em}.visit-dots{display:flex;gap:4px}.visit-dots i{width:12px;height:12px;border-radius:50%;background:var(--line);display:inline-block}.visit-dots i.on{background:var(--rose)}

.top-actions{display:flex;gap:8px;align-items:center}.bg-button{padding-inline:12px}@media(max-width:680px){.bg-label{display:none}.bg-button{padding:9px 11px}}
.bg-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:12px}
.bg-choice{border:2px solid var(--line);border-radius:14px;padding:8px;background:white;display:flex;flex-direction:column;gap:6px;align-items:stretch;font-size:.9rem;cursor:pointer}
.bg-choice.selected{border-color:var(--rose)}.bg-choice i{display:block;height:46px;border-radius:9px;background:radial-gradient(ellipse at 20% 20%,#ffe6ef,transparent 55%),radial-gradient(ellipse at 90% 30%,#e5edff,transparent 50%),#fffafd}

html[data-bg=white] body{background:#ffffff}
html[data-bg=white]{background:#ffffff}
html[data-bg=gradient] body{background:radial-gradient(ellipse at 6% 12%,#ffe6ef70,transparent 45%),radial-gradient(ellipse at 94% 16%,#e5edff90,transparent 40%),#fffafd}
html[data-bg=gradient]{background:#fffafd}
html[data-bg=blue] body{background:linear-gradient(180deg,#eaf4fb 0%,#f6fbfd 60%,#eef7fb 100%)}
html[data-bg=blue]{background:#eaf4fb}
html[data-bg=green] body{background:linear-gradient(180deg,#eef7ee 0%,#f6fbf5 60%,#eaf5ea 100%)}
html[data-bg=green]{background:#eef7ee}
.bg-choice[data-bg=white] i{background:#ffffff;box-shadow:inset 0 0 0 1px #ece3ea}
.bg-choice[data-bg=gradient] i{background:radial-gradient(ellipse at 20% 20%,#ffe6ef,transparent 55%),radial-gradient(ellipse at 90% 30%,#e5edff,transparent 50%),#fffafd}
.bg-choice[data-bg=blue] i{background:linear-gradient(180deg,#eaf4fb,#dcecf5)}
.bg-choice[data-bg=green] i{background:linear-gradient(180deg,#eef7ee,#dcefdc)}

.spin-row{display:flex;gap:12px;justify-content:center;align-items:center;margin:6px 0 2px}
.spin-row .secondary{padding:8px 16px}

.photo-btn{display:inline-block;background:linear-gradient(135deg,#c8869f,#a98bc4);color:#fff;font-weight:700;padding:14px 22px;border-radius:12px;cursor:pointer;margin:6px 0}

.shelf-list{display:flex;flex-direction:column;gap:12px}
.shelf-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.shelf-item.current{border-color:var(--rose);background:#fdf5f9}
.shelf-meta{min-width:0}
.shelf-meta strong{display:block;font-size:1rem;overflow-wrap:anywhere;line-height:1.5}
.shelf-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.shelf-actions .secondary{padding:9px 16px}
@media(max-width:680px){.shelf-item{flex-direction:column;align-items:stretch}.shelf-actions{justify-content:space-between}.shelf-actions .secondary{flex:1}}

.color-field{margin:20px 0 4px}
.color-field>span{display:block;margin-bottom:9px}
.color-swatches{display:flex;flex-wrap:wrap;gap:9px}
.color-swatches .swatch{width:34px;height:34px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #e0d5df;color:#fff;font-size:.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0}
.color-swatches .swatch.sel{box-shadow:0 0 0 2px var(--ink)}

/* スマホ：B型「全体の81マス」を画面内に収めて一覧できるように */
@media(max-width:680px){
.b-scroll{overflow:visible}
.b-grid{min-width:0;gap:5px}
.b-group{gap:2px;padding:2px}
.b-group .cell,.b-group.core .cell{min-height:36px;padding:3px 2px;border-radius:4px}
.b-group .cell strong,.b-group.core .cell strong,.b-group.core .cell.center strong{font-size:7px;line-height:1.25;margin:1px 0}
.b-group .cell-label,.b-group.core .cell-label{font-size:6px}
.b-group .cell-rating{display:none}
}

.color-areas{display:flex;flex-direction:column;gap:16px;margin:18px 0 8px}
.color-area-row{display:flex;flex-direction:column;gap:8px}
.color-area-name{font-weight:700;font-size:.9rem}
.color-areas .color-swatches .swatch{width:30px;height:30px}
