:root{font-family:Noto Sans JP,sans-serif;color:#eeeefa;background:#101329;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:10px}button:hover{background:#ffffff0b}input,select{background:#11152c;color:#eeeefa;border:1px solid #3a3c58;padding:12px;border-radius:9px;min-height:44px;width:100%;color-scheme:dark}label{display:block;color:#bbbcd2;margin:16px 0}label input,label select{margin-top:8px}.shell{max-width:1440px;margin:auto;display:flex;min-height:100vh}aside{width:238px;padding:42px 28px;border-right:1px solid #ffffff0d;position:fixed;height:100vh}.brand{display:flex;gap:10px;font-size:29px;color:#c3adff;line-height:1.35;font-weight:800}.brand>span{font-size:19px;color:#f5f0ff}.small{font-size:11px;color:#979ab4;line-height:1.9}aside>.small{font-size:8px;letter-spacing:1.5px;margin:18px 0 50px}nav{display:grid;gap:10px}nav button{justify-content:start;padding:14px 18px;color:#969ab5;gap:16px}nav button.active{background:#b69aef20;color:#d5beff;box-shadow:inset 3px 0 #bca0fa}.side-foot{position:absolute;bottom:40px;color:#777b99;font-size:9px;line-height:2.5;letter-spacing:1px}.side-foot b{font-size:10px;font-weight:400}main{margin-left:238px;padding:38px 54px;max-width:1120px;width:calc(100% - 238px)}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.eyebrow{letter-spacing:2.8px;font-size:9px;color:#9f92bd}h1{font-size:25px;letter-spacing:1px;margin:9px 0}h3{font-size:15px}h3 span{font-size:9px;color:#767b99;letter-spacing:1.5px;margin-left:15px;font-weight:400}.avatar{border:1px solid #74618f;background:#b39acd22;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:#d4bcfa}.hero{background:radial-gradient(ellipse at 90% 10%,#6e488452,transparent 65%),linear-gradient(120deg,#2c284c,#1b203e);border:1px solid #9b7db333;border-radius:20px;padding:32px 36px;display:flex;justify-content:space-between;overflow:hidden}.pill{font-size:8px;letter-spacing:2px;border:1px solid #d4b7f84a;border-radius:30px;padding:6px 12px;color:#d5c0f0}h2{font-size:34px;line-height:1.6;margin:20px 0 10px;letter-spacing:2px}h2 em{font-style:normal;color:#d2b7ff}.hero p{color:#b0acc7;font-size:11px;margin-bottom:24px}.primary{background:#c5a8f5;color:#231d38;font-weight:700;padding:12px 22px;box-shadow:0 4px 20px #a78ade16}.primary:hover{background:#d5bdff}.orbit{align-self:center;width:210px;height:210px;border:1px solid #a48ab334;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transform:rotate(-10deg);margin-right:10px;box-shadow:0 0 0 25px #c5a8f505,0 0 0 50px #c5a8f503}.orbit b{font-size:23px;text-align:center;line-height:1.8;color:#d9c7f5}.orbit span{position:absolute;top:-30px;right:0;font-size:85px;color:#d1b8fa}.orbit i{position:absolute;bottom:-18px;left:0;font-size:65px;color:#ab97e6}.count-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0 30px}.card{background:#191d35;border:1px solid #ffffff0a;border-radius:15px;padding:24px;margin-bottom:20px}.count-grid .card{margin:0}.countdown>span{font-size:11px;color:#b4abc9}.countdown strong{font-size:35px;color:#e7d7ff;margin-right:6px}.countdown div{color:#9695af;font-size:12px;margin-top:12px}.countdown small{float:right;font-size:10px;margin-top:25px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:6px 0}.section-title button{font-size:10px;color:#b8a3db}.progress-label{display:flex;justify-content:space-between;font-size:11px;color:#b6accd}.track{height:5px;background:#2c3049;border-radius:10px;margin:15px 0}.track i{display:block;background:#c6aafa;height:100%;border-radius:10px}.empty{text-align:center;padding:24px;color:#7e84a2}.empty p{font-size:12px}.empty button{font-size:12px;color:#c6affa}.task{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid #ffffff09;align-items:center}.checkbox{min-height:24px;width:24px;flex-shrink:0;border:1px solid #71708f;border-radius:7px;padding:0}.done .checkbox{background:#bc9deb;color:#19152d}.task b{font-size:12px;font-weight:500}.task small{display:block;color:#8186a1;font-size:10px;margin-top:8px}.tag{font-size:9px;color:#bfb2e2;background:#a18bd51a;border-radius:5px;padding:3px 8px;margin-right:9px}.done b{text-decoration:line-through;color:#7f829a}.task-actions{display:flex;gap:10px;font-size:11px;padding:10px}.task-actions input{max-width:165px}.character{display:flex;gap:17px;background:#bda5e60a;border:1px solid #bca5dd20;border-radius:14px;padding:18px 22px;margin-bottom:28px}.char-icon{width:45px;height:45px;flex-shrink:0;background:#b49ad620;border-radius:50%;display:grid;place-items:center;font-size:27px;color:#c6aaff}.character span{color:#c9b4eb;font-size:11px;font-weight:700}.character small{font-size:9px;color:#83809b;margin-left:8px;font-weight:400}.character p{font-size:11px;line-height:1.9;color:#c4bfd4;margin:7px 0 0}.character>button{align-self:start;min-height:20px;color:#8f829f}.week{display:flex;justify-content:space-around;align-items:end;min-height:130px}.week>div{text-align:center;font-size:10px;color:#9c99b4;width:8%}.bar{max-height:100px;min-height:4px;width:100%;background:linear-gradient(#a48bc9,#65557e);border-radius:5px;margin-bottom:10px}.week small{display:block;font-size:9px;margin-top:6px}footer{margin-top:30px;color:#646b89;display:flex;gap:10px;align-items:center;justify-content:center;font-size:9px}.notice{padding:12px;background:#3a3158;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:16px}@media(min-width:1400px){aside{margin-left:0}}@media(max-width:950px){main{padding:30px}.orbit{width:150px;height:150px}.orbit b{font-size:19px}.hero{padding:28px}aside{width:200px;padding:36px 20px}main{margin-left:200px;width:calc(100% - 200px)}}@media(max-width:680px){aside{position:fixed;bottom:0;top:auto;height:auto;width:100%;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#15192ff5;z-index:10;border-top:1px solid #ffffff10;border-right:0}.brand,aside>.small,.side-foot{display:none}nav{display:flex;justify-content:space-around;gap:0}nav button{display:flex;flex-direction:column;padding:7px 12px;gap:4px;border-radius:10px;font-size:9px;min-width:55px}nav button.active{box-shadow:none}main{margin:0;width:100%;padding:24px 20px 110px}header{margin-bottom:22px}h1{font-size:22px}.hero{padding:26px 22px;min-height:290px;position:relative}h2{font-size:28px}.hero>div:first-child{z-index:1}.orbit{position:absolute;right:-45px;bottom:48px;width:125px;height:125px;opacity:.55;margin:0}.orbit b{font-size:15px}.orbit span{font-size:55px}.orbit i{font-size:45px}.hero p{font-size:10px}.hero .primary{font-size:12px}.count-grid{gap:10px;margin:16px 0 22px}.countdown{padding:16px}.countdown>span{font-size:9px}.countdown strong{font-size:28px}.countdown small{float:none;display:block;margin-top:5px;font-size:8px}h3 span{font-size:7px;margin-left:7px}.card{padding:19px}.section-title button{font-size:9px}.character{padding:16px;gap:12px}.character p{font-size:10px}.char-icon{width:35px;height:35px}button{touch-action:manipulation}input,select{font-size:16px}}.sync-state{font-size:10px;color:#aaa1bd;margin:-12px 0 20px}.metric{font-size:28px;color:#d2b7ff}.stat-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ffffff0a}.event-item,.message{border-top:1px solid #ffffff14;margin-top:24px;padding-top:20px}.event-image{max-width:100%;max-height:180px;object-fit:cover;border-radius:10px}.reward-row{display:flex;gap:12px;align-items:center;margin:16px 0;flex-wrap:wrap}.reward-row img{width:55px;height:55px;object-fit:cover;border-radius:8px}.reward-row p{font-size:11px;color:#aaa0be}textarea{display:block;width:100%;min-height:100px;margin-top:8px;background:#11152c;border:1px solid #3a3c58;color:inherit;border-radius:10px;padding:12px;font:inherit;font-size:16px}blockquote{margin:14px 0;padding:12px 15px;border-left:3px solid #c5a8f5;background:#c5a8f508;white-space:pre-wrap;overflow-wrap:anywhere}.notice{overflow-wrap:anywhere}details{margin-top:20px}summary{cursor:pointer;color:#c5a8f5}.subject-tabs{display:flex;gap:8px;flex-wrap:wrap}.subject-tabs button{border:1px solid #514764;padding:8px 14px}.subject-tabs button.selected{background:#c5a8f52a;color:#dec6ff}.options{display:grid;gap:12px;margin:24px 0}.options button{text-align:left;justify-content:start;padding:15px;border:1px solid #574d6b;line-height:1.8}.options button span{background:#c5a8f522;border-radius:6px;padding:2px 8px;margin-right:10px;color:#d7baff}.options button:hover:not(:disabled){border-color:#c5a8f5}.options button:disabled{opacity:.6}.quiz h3{font-size:18px;line-height:1.9}.answer-result{padding:18px;border-radius:10px;line-height:1.9;background:#8fc2af15;border:1px solid #8fc2af55}.answer-result.incorrect{background:#dda97c15;border-color:#dda97c55}.scope-row{border-bottom:1px solid #ffffff0d;padding:20px 0}.scope-row>div{display:flex;gap:15px;flex-wrap:wrap}.scope-row label{font-size:11px;display:flex;align-items:center;gap:6px}.scope-row input{width:20px;min-height:20px;height:20px;accent-color:#c5a8f5;margin:0}.order-answer,.card-back{padding:24px;background:#bca0ed12;margin:20px 0;border-radius:10px;line-height:1.8}.character-line{color:#cfb6f2;line-height:2}button:disabled{opacity:.45;cursor:default}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar>span{font-size:10px;color:#9a91af;padding:8px 0}.calendar button{flex-direction:column;font-size:12px;gap:4px;min-height:55px;border:1px solid #ffffff09}.calendar .selected{background:#c5a8f52a;border-color:#c5a8f5}.calendar small{font-size:9px;color:#ba9de7}.char-icon{width:66px;height:73px;background:transparent;border-radius:14px;overflow:hidden}.char-icon svg{width:100%;height:100%}.character button{font-size:10px;color:#ac99c8}.character>button{min-width:25px}.event-item h4{overflow-wrap:anywhere}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #dac2ff;outline-offset:3px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.media-placeholder{display:inline-block;min-width:44px;min-height:44px;overflow:hidden}.media-placeholder img{max-width:100%;max-height:180px;object-fit:cover;border-radius:10px}.reward-row .media-placeholder img{width:55px;height:55px}.score-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.test-slogan{color:var(--lavender, #c4b5fd);font-size:1.15rem;font-weight:700;white-space:pre-wrap;overflow-wrap:anywhere}table{width:100%;border-collapse:collapse}th,td{padding:8px 4px;text-align:left}[data-character=kenty]{--member-color: #ffe08a;--member-surface: #292633;--member-border: #75643b}[data-character=mitty]{--member-color: #ffb4d4;--member-surface: #302337;--member-border: #80516b}.character[data-character]{background:var(--member-surface);border-color:var(--member-border)}.character[data-character] span,.character[data-character] button,.message[data-character]>span,.character-line[data-character]{color:var(--member-color)}.character[data-character] .char-icon{color:var(--member-color);background:transparent}.character[data-character] p{color:#eeeefa}.message[data-character]{border-top-color:var(--member-border)}.member-face{display:block;width:100%;height:100%;object-fit:cover}.artist-photo{display:block;width:100%;height:auto;aspect-ratio:2 / 1;border-radius:12px}.artist-teaser h3{margin-top:8px}.member-link{color:#d6c2f5;margin-top:12px;text-align:left;line-height:1.6}.unit-intro h2{font-size:clamp(24px,5vw,36px);margin:10px 0}.unit-intro p{line-height:1.9}.unit-tagline{color:#d6c2f5}.members-page>button{margin-bottom:16px}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.member-profile{padding:0;overflow:hidden;border:1px solid var(--member-border);background:var(--member-surface)}.member-profile>img{display:block;width:100%;height:auto;aspect-ratio:1}.member-profile-copy{padding:22px}.member-profile h3,.member-title{color:var(--member-color)}.member-profile h3{font-size:24px;margin:12px 0}.member-profile p,.member-profile blockquote{line-height:1.9;overflow-wrap:anywhere}.member-profile blockquote{margin:20px 0 0;border-left:3px solid var(--member-color);padding-left:14px}@media(max-width:600px){.member-grid{grid-template-columns:1fr}}
