:root{color:#0e0e0f;background:#f7f7f7;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button:disabled{cursor:not-allowed;opacity:.42}h1,h2,h3,p{margin-top:0}.page-shell{min-height:100vh;background:linear-gradient(#e9e9e9 1px,transparent 1px),linear-gradient(90deg,#e9e9e9 1px,transparent 1px),#f8f8f8;background-size:28px 28px}.topbar{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-height:84px;padding:18px 20px;border-bottom:2px solid #cfcfcf;background:#fffffff5}.brand{display:inline-flex;align-items:center;gap:16px;min-width:0;font-size:clamp(1.08rem,4vw,1.45rem);font-weight:950;line-height:1.1}.brand-mark{display:grid;flex:0 0 auto;width:54px;height:54px;place-items:center;color:#fff;font-size:1.4rem;font-weight:950;background:#111}.header-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.header-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:2px solid #111111;padding:0 13px;color:#fff;background:#111;font-size:.88rem;font-weight:950;box-shadow:7px 7px #00000024}.header-action-secondary{color:#111;background:#fff}.hero{display:grid;gap:42px;align-items:center;min-height:calc(100svh - 84px);padding:72px 20px 56px}.home-hero{min-height:auto;align-items:end;padding-bottom:40px}.hero-copy{max-width:860px}.prototype-label{margin-bottom:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(.86rem,2.5vw,1.1rem);font-weight:950;letter-spacing:0}h1{max-width:12ch;margin-bottom:26px;font-size:clamp(3.6rem,16vw,8rem);font-weight:950;line-height:.96;letter-spacing:0}.home-hero h1{max-width:12.5ch;font-size:clamp(3rem,13vw,7rem);line-height:1.02}.lead{max-width:46rem;margin-bottom:34px;color:#666;font-size:clamp(1.05rem,3vw,1.55rem);font-weight:850;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.primary-action{display:inline-flex;align-items:center;justify-content:center;min-width:236px;min-height:64px;padding:0 28px;color:#fff;font-size:1.2rem;font-weight:950;background:#111;box-shadow:10px 10px #00000024}.secondary-action{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:64px;border:2px solid #111111;padding:0 24px;color:#111;background:#fff;font-size:1.02rem;font-weight:950}.hero-note{display:grid;gap:12px;max-width:780px;border-top:2px solid #111111;padding-top:22px}.hero-note p{margin:0;color:#4f4f4f;font-size:.98rem;font-weight:850;line-height:1.8}.process-window{position:relative;border:3px solid #bdbdbd;padding:32px 18px;background:#fff;box-shadow:12px 12px #0000001f}.window-dots{display:flex;gap:10px;margin-bottom:28px}.window-dots span{width:16px;height:16px;border-radius:999px;background:#bdbdbd}.process-window ol{display:grid;gap:18px;margin:0;padding:0;list-style:none}.process-window li{display:grid;grid-template-columns:68px minmax(0,1fr);gap:18px;align-items:center;min-height:78px;padding:16px;background:#e9e9e9}.process-window li span{display:grid;width:56px;height:56px;place-items:center;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.25rem;font-weight:950;background:#111}.process-window li strong{display:grid;gap:6px;min-width:0;font-size:clamp(1.05rem,4.8vw,1.55rem);line-height:1.25;overflow-wrap:anywhere}.process-window li small{color:#666;font-size:.72em;font-weight:850;line-height:1.35}.download-strip{display:block;align-items:center;padding:20px;border-top:2px solid #cfcfcf;border-bottom:2px solid #cfcfcf;background:#fff}.download-strip p{max-width:760px;margin:0;color:#5f5f5f;font-size:.92rem;font-weight:950;line-height:1.65}.download-strip a{flex:0 0 auto;padding:12px 16px;color:#fff;font-size:.86rem;font-weight:950;background:#111}.registration-section{display:grid;gap:28px;padding:46px 20px;background:#f8f8f8}.registration-page .registration-section{min-height:calc(100svh - 84px);align-content:start}.registration-heading{display:grid;gap:10px;max-width:850px}.registration-heading h2{margin-bottom:4px}.registration-heading p:last-child{margin:0;color:#626262;font-size:.98rem;font-weight:800;line-height:1.8}.registration-footnote{max-width:860px;margin:-8px 0 0;border-top:2px solid #d2d2d2;padding-top:16px;color:#626262;font-size:.92rem;font-weight:850;line-height:1.75}.registration-panel{display:grid;gap:24px;max-width:860px;border:2px solid #111111;padding:18px;background:#fff;box-shadow:10px 10px #0000001f}.stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.stepper li{display:grid;gap:8px;align-content:start;min-height:78px;border:2px solid #d8d8d8;padding:10px 8px;background:#f4f4f4}.stepper span{display:grid;width:30px;height:30px;place-items:center;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;font-weight:950;background:#9b9b9b}.stepper strong{min-width:0;font-size:.78rem;line-height:1.25;overflow-wrap:anywhere}.stepper .is-active{border-color:#111;background:#fff}.stepper .is-active span,.stepper .is-done span{background:#111}.stepper .is-done{border-color:#111;background:#e9e9e9}.registration-form,.form-page{display:grid;gap:18px}.form-page-title{display:flex;gap:14px;align-items:center;padding-bottom:14px;border-bottom:2px solid #d8d8d8}.form-page-title span{display:grid;width:48px;height:48px;place-items:center;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.98rem;font-weight:950;background:#111}.form-page-title h3,.complete-view h3{margin:0;font-size:clamp(1.5rem,8vw,2.5rem);line-height:1.05}.field-grid{display:grid;gap:14px}.notice-list{display:grid;gap:12px}.notice-list p{margin:0;border-left:6px solid #111111;padding:14px 16px;background:#f4f4f4;color:#4d4d4d;font-size:.92rem;font-weight:800;line-height:1.75}.notice-list strong{color:#111;font-size:1.05rem;font-weight:950}.field{display:grid;gap:8px}.field span,.choice-field legend{color:#303030;font-size:.88rem;font-weight:950}.field input,.field select,.field textarea{width:100%;min-height:54px;border:2px solid #111111;border-radius:0;padding:0 14px;color:#111;background:#fff;font:inherit;font-size:1rem;font-weight:850}.field textarea{min-height:150px;padding:14px;resize:vertical;line-height:1.7}.field input::placeholder{color:#9a9a9a}.nickname-row{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:10px}.private-divider{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;margin:2px 0;color:#5b5b5b;font-size:.84rem;font-weight:950}.private-divider:before,.private-divider:after{height:2px;background:#d2d2d2;content:""}.segmented-field{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.segmented-field-three,.feedback-category-field{grid-template-columns:1fr}.segmented-field button{position:relative;min-height:54px;border:2px solid #111111;color:#111;background:#fff;font-weight:950}.sticky-badge{position:absolute;top:-14px;right:14px;border:2px solid #111111;padding:5px 8px;color:#111;background:#fff3a6;font-size:.72rem;font-weight:950;line-height:1;box-shadow:4px 4px #0000001f;transform:rotate(2deg)}.segmented-field button.is-selected{color:#fff;background:#111;box-shadow:7px 7px #00000021}.unit-input{display:grid;grid-template-columns:minmax(0,1fr) 64px;border:2px solid #111111;background:#fff}.unit-input input{min-height:50px;border:0}.unit-input span{display:grid;place-items:center;border-left:2px solid #111111;font-size:.92rem;font-weight:950}.compact-button{min-height:54px;padding:0 12px}.field-note{margin:0;color:#646464;font-size:.86rem;font-weight:750;line-height:1.7}.choice-field{display:grid;gap:10px;margin:0;border:0;padding:0}.choice-field label{display:flex;gap:10px;align-items:center;min-height:48px;border:2px solid #d8d8d8;padding:0 12px;background:#f4f4f4;font-weight:900}.choice-field input{width:18px;height:18px;margin:0;accent-color:#111111}.confirm-list{display:grid;gap:10px;margin:0}.confirm-list div{display:grid;grid-template-columns:minmax(104px,.38fr) minmax(0,1fr);gap:12px;border-bottom:1px solid #dddddd;padding:12px 0}.confirm-list dt,.confirm-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.confirm-list dt{color:#666;font-size:.82rem;font-weight:950}.confirm-list dd{color:#111;font-size:.98rem;font-weight:900}.form-actions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px;padding-top:8px}.form-actions-single{grid-template-columns:minmax(0,1fr)}.primary-button,.secondary-button{min-height:56px;border:2px solid #111111;padding:0 16px;font-weight:950}.primary-button{color:#fff;background:#111;box-shadow:7px 7px #00000021}.secondary-button{color:#111;background:#fff}.complete-view{display:grid;gap:18px;padding:10px 0 4px}.complete-view p{margin:0;color:#626262;font-size:.98rem;font-weight:800;line-height:1.8}.app-home{min-height:calc(100svh - 84px);padding:42px 20px 104px;background:#f8f8f8}.app-home.is-chat-open{padding-top:24px;padding-bottom:98px}.app-home-content{max-width:860px}.is-chat-open .app-home-content{max-width:none}.app-screen{display:grid;gap:22px}.is-chat-open .app-screen{min-height:calc(100svh - 206px)}.app-screen h2{margin-bottom:0}.empty-state,.task-panel{display:grid;gap:18px;border:2px solid #111111;padding:28px 18px;background:#fff;box-shadow:10px 10px #0000001f}.empty-state h3,.task-panel h3{margin:0;font-size:clamp(1.6rem,8vw,2.7rem);line-height:1.08}.empty-state p,.task-panel p{margin:0;color:#5f5f5f;font-size:1rem;font-weight:850;line-height:1.85}.mock-only-button{justify-self:start;margin-top:4px}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:0;min-height:calc(100svh - 206px);background:transparent}.chat-header{display:flex;gap:16px;align-items:center;justify-content:space-between;border-bottom:2px solid #111111;padding:0 0 16px;background:transparent}.chat-header span{color:#777;font-size:.78rem;font-weight:950}.chat-header h3{margin:4px 0 0;font-size:1.45rem;line-height:1}.chat-header strong{border:2px solid #111111;padding:8px 10px;background:#f4f4f4;font-size:.78rem;font-weight:950;line-height:1.35;text-align:center}.chat-messages{display:grid;gap:12px;min-height:0;align-content:end;padding:18px 0;background:linear-gradient(#eeeeee 1px,transparent 1px),linear-gradient(90deg,#eeeeee 1px,transparent 1px),transparent;background-size:22px 22px}.chat-message{display:grid;max-width:84%}.chat-message p{margin:0;border:2px solid #111111;padding:12px 14px;background:#fff;font-size:.94rem;font-weight:850;line-height:1.65}.chat-message.is-me{justify-self:end}.chat-message.is-me p{color:#fff;background:#111}.chat-message.is-system{justify-self:center;max-width:100%}.chat-message.is-system p{border-color:#d0d0d0;color:#666;background:#f4f4f4;font-size:.82rem}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) 82px;border:2px solid #111111;background:#fff}.chat-composer input{min-width:0;min-height:58px;border:0;padding:0 14px;font:inherit;font-weight:850}.chat-composer button{border:0;border-left:2px solid #111111;color:#fff;background:#111;font-weight:950}.value-card{display:grid;gap:18px;border:2px solid #111111;padding:20px 18px;background:#fff;box-shadow:10px 10px #0000001f}.value-card-heading{display:grid;gap:14px;border-bottom:2px solid #d8d8d8;padding-bottom:16px}.value-card-heading span{display:grid;width:44px;height:44px;place-items:center;color:#fff;background:#111;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:950}.value-card-heading h3{margin:0;font-size:clamp(1.45rem,7vw,2.35rem);line-height:1.16}.rank-list{display:grid;gap:10px;margin:0;padding:0;list-style:none;touch-action:none}.rank-list li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:64px;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease;-webkit-user-select:none;user-select:none}.rank-card{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:12px;align-items:center;min-height:64px;border:2px solid #111111;padding:10px 12px;background:#fff;cursor:grab}.rank-list li.is-lifted{cursor:grabbing}.rank-list li.is-lifted .rank-card{border-style:dashed;border-color:#777;background:repeating-linear-gradient(-45deg,#fff,#fff 8px,#f0f0f0 8px,#f0f0f0 16px);color:transparent;box-shadow:inset 0 0 0 2px #fff}.rank-list li.is-lifted .drag-handle,.rank-list li.is-lifted strong{opacity:0}.rank-list li.is-drop-target .rank-card{background:#e9e9e9;box-shadow:inset 0 0 0 2px #111,7px 7px #0000001a;transform:translateY(2px)}.rank-number{display:grid;width:36px;height:36px;place-items:center;color:#fff;background:#111;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:950}.rank-list strong{min-width:0;font-size:1rem;line-height:1.4}.drag-handle{color:#777;font-size:1.35rem;font-weight:950;text-align:center}.value-note{margin:0;color:#666;font-size:.86rem;font-weight:850;line-height:1.7}.value-drag-ghost{position:fixed;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:12px;align-items:center;min-height:64px;border:2px solid #111111;padding:10px 12px;background:#fff;box-shadow:16px 16px #0000002e;pointer-events:none;transform:rotate(-1deg) scale(1.04)}.value-drag-ghost strong{min-width:0;font-size:1rem;line-height:1.4}.value-submit-button{width:100%}.leveling-progress{display:grid;gap:12px;border:2px solid #111111;padding:18px;background:#fff;box-shadow:10px 10px #0000001f}.leveling-progress>div:first-child{display:flex;gap:16px;align-items:end;justify-content:space-between}.leveling-progress span{color:#666;font-size:.88rem;font-weight:950}.leveling-progress strong{color:#111;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:2rem;font-weight:950;line-height:1}.progress-track{height:14px;border:2px solid #111111;background:#f4f4f4}.progress-track span{display:block;height:100%;background:#111;transition:width .18s ease}.leveling-stage-list{display:grid;gap:14px}.leveling-stage{display:grid;gap:16px;border:2px solid #111111;padding:18px;background:#fff}.leveling-stage.is-locked{border-color:#d1d1d1;background:#f5f5f5}.leveling-stage-heading{display:grid;gap:10px;align-items:start}.leveling-stage-heading h3{margin-bottom:8px;font-size:clamp(1.18rem,5vw,1.65rem);line-height:1.25}.leveling-stage-heading p,.leveling-locked-note{margin:0;color:#666;font-size:.88rem;font-weight:800;line-height:1.7}.leveling-checklist{display:grid;gap:10px}.leveling-checklist button{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;min-height:58px;border:2px solid #111111;padding:10px 12px;color:#111;background:#fff;text-align:left}.leveling-checklist button span{display:grid;width:30px;height:30px;place-items:center;border:2px solid #111111;color:#fff;background:#fff;font-weight:950}.leveling-checklist button strong{min-width:0;font-size:.96rem;font-weight:950;line-height:1.45}.leveling-checklist button.is-checked{color:#fff;background:#111;box-shadow:7px 7px #00000021}.leveling-checklist button.is-checked span{border-color:#fff;color:#111;background:#fff}.bottom-tabs{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid #111111;background:#fff}.bottom-tabs button{min-height:72px;border:0;border-right:1px solid #d8d8d8;color:#5f5f5f;background:#fff;font-size:.82rem;font-weight:950}.bottom-tabs button:last-child{border-right:0}.bottom-tabs button.is-active{color:#fff;background:#111}.settings-list{display:grid;gap:12px}.settings-list button{display:grid;gap:8px;justify-items:start;min-height:86px;border:2px solid #111111;padding:16px;color:#111;background:#fff;text-align:left}.setting-choice{display:grid;gap:14px;border:2px solid #111111;padding:16px;background:#fff}.setting-choice>div:first-child{display:grid;gap:8px}.settings-list strong,.setting-choice strong{font-size:1.08rem;font-weight:950}.settings-list span,.setting-choice span{color:#666;font-size:.86rem;font-weight:800;line-height:1.5}.settings-list .danger-setting{border-color:#111;background:#f4f4f4}.settings-list .danger-setting strong{color:#111}.stories-section,.about-section,.home-entry,.site-footer{padding:46px 20px}.section-heading p{margin-bottom:10px;color:#6b6b6b;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;font-weight:950}h2{margin-bottom:24px;font-size:clamp(2rem,8vw,3.3rem);font-weight:950;line-height:1;letter-spacing:0}.story-list{display:grid;gap:16px}.story-card{border:2px solid #c6c6c6;border-radius:0;padding:24px;background:#fff;box-shadow:8px 8px #0000001a}.story-card h3{margin-bottom:14px;font-size:1.18rem}.story-card p{margin-bottom:18px;color:#5e5e5e;font-size:.95rem;font-weight:700;line-height:1.75}.about-section{color:#fff;background:#111}.home-about{display:grid;gap:30px}.home-about h2{max-width:920px}.principle-list{display:grid;gap:14px;max-width:980px}.principle-card{display:grid;gap:12px;border:1px solid rgba(255,255,255,.22);padding:20px;background:#ffffff0f}.principle-card h3{margin:0;color:#fff;font-size:clamp(1.3rem,6vw,2.1rem);line-height:1.16}.principle-card p{margin:0;color:#d8d8d8;font-size:.96rem;font-weight:750;line-height:1.85}.line-heading{display:grid;gap:6px;margin-bottom:30px}.section-kicker{margin-bottom:14px;color:#bfbfbf;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;font-weight:950}.about-section p{max-width:850px;margin-bottom:0;color:#d8d8d8;font-size:1rem;font-weight:700;line-height:1.9}.line-list{display:grid;gap:14px;max-width:980px}.line-card{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:98px;border:1px solid rgba(255,255,255,.22);padding:18px;background:linear-gradient(90deg,#ffffff1f,#ffffff0a)}.line-number{display:grid;width:48px;height:48px;place-items:center;color:#111;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;font-weight:950;background:#fff}.line-card h3{margin-bottom:7px;font-size:clamp(1.35rem,6vw,2.25rem);line-height:1}.line-card p{color:#cfcfcf;font-size:.9rem;line-height:1.4}.line-card strong{justify-self:end;border:1px solid rgba(255,255,255,.32);padding:8px 10px;color:#fff;font-size:.82rem;font-weight:950;white-space:nowrap}.faq-section{background:#f8f8f8}.faq-list{display:grid;gap:12px;max-width:980px}.faq-card{display:grid;gap:12px;border:2px solid #111111;padding:20px;background:#fff;box-shadow:8px 8px #0000001a}.faq-card h3{margin:0;font-size:clamp(1.08rem,4.6vw,1.45rem);line-height:1.35}.faq-card p{margin:0;color:#5f5f5f;font-size:.95rem;font-weight:800;line-height:1.8}.home-entry{display:grid;gap:24px;align-items:center;color:#fff;background:#111}.home-entry h2{max-width:820px}.home-entry p:not(.section-kicker){max-width:760px;margin:0;color:#d8d8d8;font-size:.98rem;font-weight:800;line-height:1.85}.home-entry .primary-action{justify-self:start;color:#111;background:#fff;box-shadow:10px 10px #ffffff2e}.site-footer{background:#e9e9e9}.footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin-bottom:24px}.footer-grid a{color:#222;font-size:.9rem;font-weight:950}.site-footer p{margin-bottom:0;color:#666;font-size:.78rem;font-weight:700;line-height:1.6}@media(min-width:780px){.topbar{grid-template-columns:minmax(280px,1fr) auto;min-height:96px;padding:20px 28px}.header-action{min-width:144px;min-height:52px;font-size:1rem}.header-action-secondary{min-width:128px}.hero{grid-template-columns:minmax(0,1fr);padding:86px max(32px,calc((100vw - 1380px)/2)) 64px}.home-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);min-height:calc(100svh - 96px)}.registration-page .registration-section{min-height:calc(100svh - 96px);padding-top:64px}.app-home{min-height:calc(100svh - 96px);padding:64px max(32px,calc((100vw - 1180px)/2)) 112px}.process-window{padding:34px 28px}.stories-section,.registration-section,.about-section,.home-entry,.site-footer,.download-strip{padding-right:max(32px,calc((100vw - 1180px)/2));padding-left:max(32px,calc((100vw - 1180px)/2))}.registration-panel{padding:28px}.stepper{gap:12px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-field,.segmented-field-three{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-category-field{grid-template-columns:repeat(2,minmax(0,1fr))}.story-list,.principle-list{grid-template-columns:repeat(3,minmax(0,1fr))}.home-entry{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:520px){.brand-mark{width:46px;height:46px}.header-actions{gap:6px}.header-action{min-height:38px;padding:0 9px;font-size:.78rem;box-shadow:none}.primary-action,.secondary-action{width:100%;min-width:0}.line-card{grid-template-columns:44px minmax(0,1fr)}.line-card strong{grid-column:2;justify-self:start}}
