@font-face{font-family:LocalSerif;src:local("Hiragino Mincho ProN");font-display:swap}
:root{--paper:#fbfbfa;--surface:#fff;--ink:#272a39;--muted:#646977;--line:#d7d9e0;--accent:#a9402b;--accent-dark:#87301f;--accent-wash:#fbf1ed;--wash:#f0f2f6;--private:#315a4c;--private-wash:#eaf2ed;--serif:LocalSerif,"Noto Serif JP",serif;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:16px;line-height:1.75;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer;border:0;border-radius:3px}button:disabled{cursor:wait;opacity:.5}h1,h2,h3,p{margin:0}h1,h2{line-height:1.5;letter-spacing:.015em;text-wrap:balance}h1{font-size:32px;font-weight:600}h2{font-size:21px;font-weight:600}h3{font-size:15px;font-weight:600}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1[tabindex]:focus{outline:none}.skip{position:absolute;left:20px;top:-80px;z-index:20;padding:12px;background:#fff}.skip:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.button{display:inline-flex;gap:12px;align-items:center;justify-content:center;min-height:48px;padding:12px 23px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;line-height:1.5;text-align:center}.button:hover{background:var(--accent-dark)}.button.secondary{background:var(--surface);color:var(--ink);border:1px solid #b7bdc9}.button.secondary:hover{border-color:var(--ink);background:var(--wash)}.button.quiet{background:transparent;color:var(--muted);font-weight:400;text-decoration:underline;text-underline-offset:5px;padding:12px 2px}.button.quiet:hover{color:var(--ink)}.button.small{min-height:44px;padding:9px 13px;font-size:14px}.button.quiet.small{padding:9px 2px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}.note{font-size:14px;color:var(--muted);line-height:1.75}.error{border-left:3px solid var(--accent);background:var(--accent-wash);padding:13px 17px;margin:18px 0;color:var(--accent-dark)}.error p{margin-bottom:12px}#notice{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);max-width:min(640px,calc(100vw - 32px));padding:0;color:#fff;background:var(--ink);z-index:30;font-size:14px}#notice:not(:empty){padding:12px 20px;border-radius:3px}
.site-header{max-width:1440px;margin:auto;padding:22px 40px;border-bottom:1px solid var(--line);display:flex;gap:26px;align-items:center;min-height:86px}.brand{text-decoration:none;display:block;font-size:17px;font-weight:750;line-height:1.1;letter-spacing:-.06em;width:110px;flex-shrink:0}.brand span{display:block}.header-end{margin-left:auto;display:flex;gap:24px;align-items:center;min-width:0}.language-select{width:auto;min-width:94px;min-height:44px;padding:7px 26px 7px 10px;font-size:13px;color:var(--muted);background:transparent;border-color:var(--line)}.header-room{max-width:310px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px}.page{max-width:1280px;margin:0 auto;padding:40px 40px 64px}.cards-form-page{max-width:820px}.cards-form-page>h1{margin-bottom:12px}.cards-form-page form{margin-top:32px}.cards-form-page .note{margin-top:10px}.cards-form-page form>.button{margin-top:18px}
.field{margin:24px 0}.field:first-child{margin-top:0}label,.field-label{display:block;font-size:15px;font-weight:600;margin-bottom:9px}input,textarea,select{width:100%;border:1px solid #b7bdc9;border-radius:3px;background:#fff;color:var(--ink);padding:12px 14px;min-height:48px;line-height:1.7}input::placeholder,textarea::placeholder{color:#737a89;opacity:1}textarea{resize:vertical}fieldset{border:0;margin:0;padding:0;min-width:0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.two-fields .field{margin-top:0}summary{cursor:pointer;min-height:44px;padding:9px 0}.join-code{display:flex;gap:10px;max-width:440px}.join-code input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.16em}.join-code button{flex-shrink:0}.source-input{display:grid;grid-template-columns:minmax(0,1fr)140px;gap:20px;align-items:start}.source-input .field{margin-top:0}.source-caption{font-size:15px;color:var(--muted);margin-top:8px;overflow-wrap:anywhere}
.cards-home{max-width:1120px;padding-top:60px}.cards-home h1{font-family:var(--serif);font-size:46px;font-weight:500;line-height:1.6;max-width:800px}.home-lead{font-size:18px;line-height:2;max-width:750px;margin:20px 0 40px}.cards-paths{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line);padding-top:34px;margin-top:42px}.cards-paths h2{font-size:21px;margin-bottom:18px}.cards-paths .join-code{margin:0}.manage-existing{margin-top:24px;font-size:14px;color:var(--muted)}.manage-existing form{margin-top:8px}.cards-steps{list-style:none;padding:0;margin:0 0 30px;display:flex;gap:28px;align-items:center;color:var(--muted);font-size:14px}.cards-steps li{text-wrap:balance;padding-bottom:11px;border-bottom:2px solid var(--line);flex:1;min-width:0}.cards-steps .reached{border-color:#9aafa5}.cards-steps [aria-current]{color:var(--accent);border-color:var(--accent);font-weight:600}
.token-editor{margin-top:14px}.token-list{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:14px;min-height:44px}.word-token{display:flex;align-items:center;gap:8px;border:1px solid #abc0b4;border-radius:3px;background:var(--private-wash);color:var(--private);padding:5px 4px 5px 13px;max-width:100%;font-size:18px;overflow-wrap:anywhere}.word-token.qloo-token{color:var(--accent-dark);background:var(--accent-wash);border-color:#dcb6a9}.word-token.qloo-token button{color:var(--accent-dark)}.word-token.qloo-token button:hover{background:#efd9cf}.word-token button{min-width:38px;min-height:38px;padding:0 9px;background:transparent;color:var(--private);font-size:23px;flex-shrink:0}.word-token button:hover{background:#d5e5dc}.token-entry{display:flex;gap:10px;align-items:stretch}.token-entry textarea{flex:1;min-width:0;min-height:52px;height:52px;resize:vertical;font-size:16px}.token-entry>.button{flex-shrink:0}.token-help{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;margin-top:9px}.token-help>span:last-child{white-space:nowrap}.cards-input .field>h2{font-size:21px;margin-bottom:14px}
.cards-workspace{display:grid;grid-template-columns:minmax(0,1fr)360px;gap:0 40px;align-items:start}.cards-workspace>.cards-steps,.cards-page-head{grid-column:1/-1}.cards-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:28px}.cards-page-head h1{font-size:30px}.card-legend{display:flex;align-items:center;gap:17px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.card-legend span{display:flex;align-items:center;gap:7px}.card-legend span:before{content:"";width:10px;height:10px;display:inline-block;background:var(--private)}.card-legend .qloo:before{background:var(--accent)}.card-legend .related:before{background:#52657e}.own-elements{grid-column:1;grid-row:3}.own-elements>h2{font-size:15px;color:var(--private);margin-bottom:12px}.element-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.element-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:88px;padding:16px 18px;border:1px solid #abc0b4;border-radius:4px;background:var(--private-wash);color:var(--private);font-size:21px;line-height:1.55;text-align:left;min-width:0;overflow-wrap:anywhere}.element-card:disabled{cursor:wait}.element-card.own,.element-card.qloo{padding-right:36px}.element-card.qloo{background:var(--accent-wash);border-color:#dcb6a9;color:var(--accent-dark)}button.element-card:hover{box-shadow:inset 0 0 0 1px currentColor}button.element-card[aria-pressed=true]{box-shadow:inset 0 0 0 1px currentColor}.card-state{position:absolute;top:10px;right:12px;font-size:19px;line-height:1}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.element-card.related{background:#eef1f6;border-color:#bdc8d8;color:#354660;font-size:16px;justify-content:flex-start;gap:8px;padding:16px;min-height:155px}.element-card.related strong{font-size:19px;font-weight:600;line-height:1.5}.work-kind{font-size:12px;font-weight:600;letter-spacing:.015em}.element-card small{font-size:12px;line-height:1.6;color:#526078}.work-features.missing{color:var(--muted)}.work-features{display:flex;gap:5px;flex-wrap:wrap;font-size:12px}.work-features span{border-bottom:1px solid #b6c2d3}.work-use{font-size:12px;color:#354660;margin-top:auto;padding-top:4px;width:100%;display:flex;justify-content:space-between}
.qloo-elements{grid-column:1;grid-row:4;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.qloo-send-note{margin-top:10px;max-width:560px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.section-head h2{font-size:19px}.qloo-open>h3{margin:24px 0 12px;color:var(--muted)}.qloo-status{font-size:15px;color:var(--accent);padding:15px 0}.qloo-open{animation:hint-open .22s ease-out}.qloo-lookup h3{margin-top:24px}.qloo-lookup .note{margin-top:8px}.lookup-fields{display:flex;gap:8px;align-items:stretch}.lookup-fields input{min-width:0;flex:1}.lookup-fields select{width:95px;flex-shrink:0;font-size:14px}.lookup-fields .button{font-size:13px;max-width:165px;padding:10px}.lookup-results{display:grid;gap:9px;margin-top:14px}.work-option{display:block;padding:12px 15px;background:var(--surface);border:1px solid var(--line);border-radius:3px;text-align:left;color:var(--ink);min-height:68px}.work-option strong{font-size:17px;display:block}.work-option small{color:var(--muted);font-size:13px;display:block;margin-top:2px}.work-option:hover{border-color:var(--accent)}
.final-elements{grid-column:2;grid-row:3/span 2;position:sticky;top:20px;padding-left:28px;border-left:1px solid var(--line);max-height:calc(100dvh - 40px);overflow:auto}.final-elements h2{font-size:22px}.final-elements>.note{margin-top:10px;font-size:14px}.final-elements .token-entry{flex-direction:column}.final-elements .token-entry textarea{min-height:78px;height:78px}.final-elements .token-entry .button{align-self:flex-start}.final-elements .token-help{flex-direction:column;gap:3px}.final-elements .word-token{font-size:17px}.publish-row{margin-top:24px;display:flex;flex-direction:column;gap:12px}.publish-row>.button{align-self:flex-start}.publish-row>div>.button{width:100%;font-size:17px}.publish-row .note{margin-top:10px;font-size:12px}.attached-works{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.attached-works span{padding:5px 9px;border:1px solid #bdc8d8;background:#eef1f6;color:#354660;font-size:12px}
.board-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.board-head h1{font-size:28px}.people-board{display:grid;grid-template-columns:1fr 1fr;gap:38px}.person-board{border-top:1px solid var(--line);padding-top:20px;min-width:0}.person-board-head{display:flex;gap:15px;justify-content:space-between;align-items:center}.person-board-head h2{font-size:23px}.person-board>.element-grid{margin-top:20px}.person-board .element-card{min-height:70px;font-size:19px}.person-board .public-word{padding-right:18px}.person-board .related-grid{margin-top:14px}.person-board .element-card.related{min-height:125px;font-size:15px}.person-board .related strong{font-size:17px}.person-board.is-speaking{border-top:3px solid var(--accent);padding-top:18px}.speaker-label{font-size:12px;color:var(--accent);font-weight:600}.board-empty{padding:45px 0;color:var(--muted);border-top:1px solid var(--line)}.unpublished-members{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:30px;font-size:15px}.unpublished-members small{font-size:12px;color:var(--muted);margin-left:6px}.board-own-actions{border-top:1px solid var(--line);margin-top:36px;padding-top:15px;display:flex;align-items:center;justify-content:space-between;gap:18px}.phase-note{color:var(--accent);font-size:15px;margin-bottom:20px}.host-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:25px}.host-toolbar h1{font-size:30px;margin:6px 0}.host-links{display:flex;gap:10px 20px;flex-wrap:wrap;max-width:450px;justify-content:flex-end}.host-progress{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:35px}.api-status{font-size:12px;color:var(--muted);margin-left:auto}.api-status.on{color:var(--private)}.host-footer{display:flex;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding-top:20px;margin-top:40px}.cards-host .board-head h2{font-size:22px}
@keyframes hint-open{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.cards-workspace{grid-template-columns:minmax(0,1fr)310px;column-gap:25px}.final-elements{padding-left:20px}.cards-page-head{flex-direction:column}.related-grid{grid-template-columns:1fr}.cards-home h1{font-size:40px}.cards-paths{gap:35px}.language-select{width:auto;min-width:94px;min-height:44px;padding:7px 26px 7px 10px;font-size:13px;color:var(--muted);background:transparent;border-color:var(--line)}.header-room{max-width:220px}.header-end{gap:15px}.element-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
@media(max-width:760px){.page{padding:30px 22px 45px}.site-header{padding:17px 22px;gap:15px;flex-wrap:wrap}.brand{width:95px;font-size:15px}.language-select{width:auto;min-width:94px;min-height:44px;padding:7px 26px 7px 10px;font-size:13px;color:var(--muted);background:transparent;border-color:var(--line)}.header-room{max-width:calc(100vw - 170px)}.header-end{flex:1 0 100%;justify-content:flex-end;flex-wrap:wrap;gap:8px 20px}.header-end .button{min-height:40px;padding:4px 0;font-size:13px}.cards-home{padding-top:40px}.cards-home h1{font-size:33px}.home-lead{font-size:16px;margin:18px 0 30px}.cards-paths{grid-template-columns:1fr;gap:32px}.cards-paths>div+div{border-top:1px solid var(--line);padding-top:28px}.cards-paths h2{font-size:20px}.cards-steps{font-size:12px;gap:12px;margin-bottom:25px}.cards-steps li{line-height:1.5;min-height:48px}.cards-workspace{display:block}.cards-page-head{margin-bottom:24px}.cards-page-head h1{font-size:27px}.own-elements{margin-bottom:25px}.qloo-elements{margin-top:0;padding-top:22px}.final-elements{position:static;max-height:none;overflow:visible;border-left:0;border-top:2px solid var(--private);padding:23px 0 0;margin-top:30px}.final-elements .token-entry{flex-direction:row}.final-elements .token-entry textarea{min-height:70px;height:70px}.final-elements .token-entry .button{align-self:stretch}.final-elements .token-help{flex-direction:row}.element-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.element-card{font-size:19px;padding:14px 16px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.element-card.related{padding:13px;min-height:160px}.element-card.related strong{font-size:17px}.people-board{grid-template-columns:1fr;gap:30px}.board-head{align-items:flex-start;flex-direction:column;gap:10px}.board-head h1{font-size:26px}.host-toolbar{flex-direction:column}.host-links{justify-content:flex-start}.host-progress{gap:15px}.api-status{margin-left:0;width:100%}.source-input{grid-template-columns:minmax(0,1fr)110px;gap:12px}.source-input input,.source-input select{padding:11px 10px}.two-fields{grid-template-columns:1fr;gap:0}.token-entry .button{font-size:13px;padding:10px 12px;max-width:95px}.lookup-fields{flex-wrap:wrap}.lookup-fields input{flex-basis:60%}.lookup-fields .button{max-width:none}.host-footer{flex-wrap:wrap}.cards-form-page h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.legal-links{max-width:1320px;margin:32px auto 0;padding:22px 40px;display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);font-size:14px}.legal-links a{color:var(--muted)}.policy-page{max-width:880px}.policy-page section{margin-top:32px}.policy-page h2{font-size:21px}.policy-page p{line-height:1.85;overflow-wrap:anywhere}.beta-join-code{flex-wrap:wrap}.beta-join-code .field{flex-basis:100%;margin:0}.beta-join-code .field input{display:block;width:100%;margin-top:8px}.host-footer details{margin-left:auto}.host-footer details .button{display:block}.actions{display:flex;gap:16px;flex-wrap:wrap}@media(max-width:700px){.legal-links{padding:20px;gap:20px}.host-footer details{margin-left:0}.policy-page h1{font-size:27px}}
