:root{--ink:#173345;--ink2:#2d4554;--teal:#318987;--teal2:#7bc6bd;--muted:#667980;--cream:#f7faf8;--line:#dce5e3;--light:#fff;--shadow:0 22px 70px rgba(17,50,59,.09);font-family:Inter,'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7faf8;min-height:100vh;overflow-x:hidden}body::before{content:"";position:fixed;inset:0;background:linear-gradient(140deg,#f7faf8 10%,#f0f7f5 67%,#fafcfb);pointer-events:none;z-index:-2}.ambient{position:fixed;width:500px;height:500px;border-radius:50%;filter:blur(80px);opacity:.22;pointer-events:none;z-index:-1}.ambient-a{top:-270px;right:-160px;background:#83d0c4}.ambient-b{bottom:-230px;left:-270px;background:#b5c5d9}.shell{max-width:1200px;padding:0 28px;margin:auto}.topbar{height:102px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:13px;font-size:22px;font-weight:800;text-decoration:none;color:var(--ink);letter-spacing:.15em}.brand small{display:block;font-size:7px;letter-spacing:.35em;margin-top:3px;font-weight:600}.brand-hyphen{color:var(--teal)}.brandmark{display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:3px;transform:rotate(-20deg)}.brandmark i{width:7px;height:7px;background:var(--teal);border-radius:2px}.brandmark i:nth-child(2),.brandmark i:nth-child(3){opacity:.35}.preview-tag{font-size:10px;letter-spacing:.16em;font-weight:800;color:#768e94}.preview-tag span{border:1px solid var(--line);border-radius:99px;padding:5px 8px;margin-left:7px}.hero{padding:30px 0 38px}.eyebrow,.section-num{color:var(--teal);letter-spacing:.24em;font-size:10px;font-weight:800}.signal{display:inline-block;width:7px;height:7px;background:var(--teal);border-radius:50%;margin-right:10px;box-shadow:0 0 0 5px rgba(49,137,135,.13)}.hero h1{font-size:clamp(35px,5vw,61px);line-height:1.27;letter-spacing:.055em;margin:19px 0 14px;font-weight:750}.hero h1 em{font-style:normal;color:var(--teal)}.hero p{line-height:2.1;font-size:14px;color:#607780}.demo-banner{display:flex;align-items:flex-start;gap:12px;background:#fff8df;border:1px solid #e8dba6;border-radius:12px;color:#766038;padding:13px 16px;font-size:12px;line-height:1.9;margin-bottom:24px}.demo-banner icon{font-style:normal;font-size:18px;font-weight:bold}.workspace{background:#fff;border:1px solid #e0e9e6;border-radius:23px;overflow:hidden;box-shadow:var(--shadow)}.tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fcfdfc}.tab{cursor:pointer;background:none;border:0;border-right:1px solid #e5ecea;min-height:66px;font:inherit;font-size:13px;font-weight:700;color:#7a9294;transition:.2s;position:relative}.tab:last-child{border-right:0}.tab span{font-size:10px;letter-spacing:.04em;color:#9caeb0;margin-right:8px}.tab:hover{background:#eef8f6;color:var(--ink)}.tab.is-active{color:var(--ink);background:#fff}.tab.is-active:after{content:"";position:absolute;bottom:-1px;left:17%;width:66%;height:3px;background:var(--teal)}.view{display:none;padding:48px 56px 56px}.view.active{display:block;animation:fadein .35s ease}@keyframes fadein{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.two-col{display:grid;grid-template-columns:45% 1fr;gap:7%;align-items:center}.device-panel{display:flex;flex-direction:column;align-items:center;background:radial-gradient(ellipse at center,#e6f3ef,transparent 70%);padding:4px}.device{width:285px;height:562px;border-radius:42px;padding:8px;border:5px solid #1c2c3b;background:#122a38;box-shadow:0 32px 45px rgba(10,35,42,.25),inset 0 0 0 1px #6b7a85;overflow:hidden;color:#fff;position:relative}.phone-top{display:flex;justify-content:space-between;padding:9px 22px 4px;font-size:11px;font-weight:700;color:#e1eae9}.phone-content{height:calc(100% - 25px);padding:25px 23px 10px;position:relative;overflow:hidden}.phone-content:before{content:"";position:absolute;right:-120px;top:110px;width:320px;height:320px;border:1px solid #5b9295;border-radius:50%;opacity:.23}.phone-content:after{content:"";position:absolute;right:-78px;top:152px;width:240px;height:240px;border:1px solid #6a9b9b;border-radius:50%;opacity:.2}.phone-watermark{font-size:92px;letter-spacing:.05em;font-weight:900;line-height:.9;transform:rotate(-90deg);position:absolute;left:-203px;top:234px;color:#1c4551;white-space:nowrap;opacity:.36}.card-scene{position:relative;height:100%;z-index:1;display:flex;flex-direction:column;align-items:flex-start}.card-overline{font-size:8px;letter-spacing:.22em;color:#8fc6c6}.card-logo{font-size:26px;font-weight:850;letter-spacing:.1em;margin-top:24px}.card-logo span{color:#6aada6}.card-rule{width:36px;height:2px;background:#75b9b2;margin:23px 0}.card-person{font-size:28px;font-weight:800;letter-spacing:.12em}.card-role{font-size:10px;color:#b4ccce;letter-spacing:.12em;margin-top:6px}.card-quote{font-size:11px;font-weight:600;line-height:1.9;margin-top:20px}.qr-wrap{background:#fff;border:5px solid white;border-radius:10px;padding:5px;margin:auto auto 0;min-width:156px;min-height:156px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 36px rgba(110,207,203,.11);animation:glow 4s ease-in-out infinite}.qr-wrap svg{width:142px;height:142px;display:block}.qr-hint{width:100%;text-align:center;font-size:8px;letter-spacing:.18em;color:#9fd4d1;margin:12px 0}.card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:7px;letter-spacing:.15em;color:#85a7aa}.pulse-dot{display:block;width:6px;height:6px;border-radius:50%;background:#93d0c7;box-shadow:0 0 12px #84c8be}@keyframes glow{50%{box-shadow:0 0 45px rgba(110,207,203,.33)}}.device-caption{font-size:11px;color:#819396;letter-spacing:.12em;margin:21px 0 0}.controls h2,.public-actions h2,.view-title{font-weight:750;line-height:1.36;letter-spacing:.055em;font-size:clamp(28px,3.2vw,42px);margin:17px 0 12px}.lead{font-size:14px;line-height:1.95;color:#607780;margin:0 0 25px}.info-box{border:1px solid var(--line);border-radius:13px;padding:16px 18px;margin:23px 0 22px}.info-label{font-size:10px;letter-spacing:.14em;color:#8ba2a6}.copy-url{font-size:13px;overflow-wrap:anywhere;margin:9px 0 12px;font-weight:650}.quiet-button{border:0;background:none;padding:0;color:var(--teal);font:inherit;font-size:12px;font-weight:750;cursor:pointer}.quiet-button span{margin-left:10px}.button-stack{display:grid;gap:10px}button{font-family:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #8bc3ba;outline-offset:3px}.primary-button,.ghost-button{cursor:pointer;width:100%;border-radius:11px;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;padding:12px 18px;font-size:13px;font-weight:750;transition:.2s}.primary-button{background:var(--teal);color:#fff;border:1px solid var(--teal)}.primary-button:hover{background:#236e70}.ghost-button{background:#fff;color:var(--ink);border:1px solid var(--line)}.ghost-button:hover{border-color:#94c0b7;background:#f2faf8}.primary-button span,.ghost-button span{font-size:17px}.tiny-note,.hint{font-size:11px;color:#83979a;line-height:1.8;margin:12px 0 0}.tiny-note code{background:#eef3f1;padding:2px 4px}.public-card-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.public-card{background:#173345;min-height:414px;border-radius:22px;color:#fff;padding:35px;box-shadow:0 28px 50px #17334522;position:relative;overflow:hidden}.public-card:before{content:"";position:absolute;width:390px;height:390px;border:1px solid #438d8c55;border-radius:50%;right:-140px;bottom:-190px}.public-card:after{content:"";position:absolute;width:300px;height:300px;border:1px solid #438d8c40;border-radius:50%;right:-90px;bottom:-139px}.light{color:#96d0ca}.public-logo{font-size:35px;letter-spacing:.06em;font-weight:900;margin:26px 0}.public-separator{height:2px;width:45px;background:#89c5bd;margin:32px 0}.public-name{font-size:35px;letter-spacing:.12em;font-weight:800}.public-role{color:#b9cecf;font-size:13px;margin-top:7px}.public-quote{line-height:1.8;font-size:13px;margin-top:26px}.services{font-size:8px;letter-spacing:.11em;margin-top:32px;line-height:1.8;color:#b5d1d2}.services span{color:#63b4b1;margin:0 3px}.public-actions .primary-button,.public-actions .ghost-button{margin-bottom:10px}.public-links{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.public-links a{border:1px solid var(--line);border-radius:8px;color:var(--teal);padding:8px 12px;text-decoration:none;font-size:12px;font-weight:700}.muted-panel{padding:20px;background:#f2f7f5;border-radius:13px;margin-top:18px}.muted-panel h3{margin:0;font-size:14px}.muted-panel p{font-size:12px;line-height:1.8;color:var(--muted)}.small-btn{font:inherit;font-size:12px;color:var(--teal);font-weight:750;cursor:pointer;background:none;border:1px solid #bad9d6;border-radius:9px;padding:9px 12px}.small-btn:hover{background:#eaf7f4}.max600{max-width:640px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0 29px}.method{min-height:114px;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:14px;background:white;padding:18px;color:var(--ink);transition:.2s;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.method:hover,.method.is-selected{border-color:#48a4a0;background:#f1faf8;box-shadow:inset 0 0 0 1px #48a4a0}.method-icon{font-size:23px;color:var(--teal)}.method strong{font-size:14px}.method small{font-size:11px;color:#7b9396}.editor-grid{display:grid;grid-template-columns:43% 1fr;gap:32px;align-items:start}.editor-left{background:#f4f8f7;border-radius:15px;padding:24px}.method-instructions h3{font-size:18px;margin:0 0 10px}.method-instructions p{color:var(--muted);font-size:13px;line-height:1.85}.method-instructions ol{padding-left:18px;color:#496870;font-size:12px;line-height:2}.tool-panel{border-top:1px solid var(--line);padding-top:20px}.image-picker{cursor:pointer;border:1px dashed #78afa9;background:#fff;border-radius:10px;min-height:66px;padding:16px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px;font-weight:750;color:var(--teal)}.image-picker input{display:none}.image-preview{margin-top:10px;border-radius:8px;overflow:hidden;border:1px solid #d3dfda;background:#fff}.image-preview img{max-width:100%;display:block;max-height:270px;margin:auto;object-fit:contain}.tool-panel .field-label{margin:14px 0}.scanner{margin:13px 0}.scanner video{width:100%;max-height:240px;background:#123;border-radius:8px}.scanner button{margin-top:7px}.contact-form{background:#fff;border:1px solid #e3eae8;border-radius:15px;padding:22px}.form-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:17px}.form-head strong{font-size:16px}.form-head span{font-size:9px;letter-spacing:.08em;color:#95a5a4}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:var(--ink);margin-bottom:15px}.field-label input,.field-label textarea,.searchbar input{width:100%;min-width:0;border:1px solid var(--line);padding:12px;border-radius:8px;font:inherit;font-size:13px;background:#fbfdfc;color:var(--ink)}.field-label textarea{resize:vertical;min-height:90px}.field-label input::placeholder,.field-label textarea::placeholder{color:#a7b6b5}.required{color:#e17e70}.checkline{display:flex;gap:11px;align-items:start;font-size:12px;line-height:1.65;margin:18px 0}.checkline input{width:17px;height:17px;accent-color:var(--teal);flex-shrink:0}.share-after{border-top:1px solid var(--line);margin-top:35px;padding-top:24px}.share-after h3{margin:0 0 10px;font-size:18px}.share-after p{font-size:13px;color:var(--muted);line-height:1.85}.share-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.dashboard-top{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.stat{padding:20px;border:1px solid var(--line);border-radius:13px;display:flex;flex-direction:column;gap:10px}.stat>span{font-size:11px;color:var(--muted)}.stat strong{font-size:28px}.stat small{font-size:12px;font-weight:500;margin-left:3px}.searchbar{display:flex;gap:10px;margin-bottom:20px}.searchbar input{flex:1}.contact-list{display:grid;gap:10px}.person-row{border:1px solid var(--line);border-radius:12px;padding:17px;background:#fff}.person-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.person-head strong{font-size:15px}.person-head span{color:var(--teal);font-size:11px;font-weight:800}.person-row p{font-size:12px;margin:7px 0;line-height:1.6;color:var(--muted)}.person-meta{display:flex;justify-content:space-between;gap:15px;color:#7c9196;font-size:11px}.person-meta button{cursor:pointer;border:0;background:none;color:#b35b51;font-size:11px;font-weight:700}.empty-note{border:1px dashed #c9d7d3;border-radius:12px;background:#f7faf8;padding:34px;text-align:center;color:#789194;font-size:13px;line-height:1.8}.flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:33px 0}.flow-card{border:1px solid var(--line);border-radius:16px;padding:22px;min-width:0}.flow-no{font-size:12px;color:var(--teal);font-weight:900;letter-spacing:.2em}.flow-card h3{font-size:16px;min-height:48px;line-height:1.5}.flow-step{border-radius:8px;padding:13px 11px;text-align:center;font-size:12px;line-height:1.55;background:#eff7f5;color:#294d53;font-weight:600}.flow-line{height:20px;width:1px;background:#acd5cf;margin:0 auto}.architecture-line{margin-top:32px;border-top:1px solid var(--line);padding-top:35px;display:flex;justify-content:space-around;align-items:center;gap:12px}.architecture-line>div{flex:1;border:1px solid var(--line);border-radius:10px;padding:15px;font-size:13px;text-align:center;font-weight:800}.architecture-line small{display:block;font-size:11px;font-weight:400;color:var(--muted);line-height:1.8;margin-top:8px}.architecture-line>span{font-size:24px;color:#7bbcb8}.footer{display:flex;justify-content:space-between;gap:15px;padding:25px 0 50px;color:#84989b;font-size:9px;letter-spacing:.11em}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,24px);border-radius:99px;background:#173345;color:#fff;padding:13px 22px;box-shadow:0 10px 35px #17334540;font-size:12px;opacity:0;pointer-events:none;transition:.3s;z-index:20;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@media(max-width:900px){.view{padding:32px}.two-col{grid-template-columns:1fr 1fr;gap:24px}.device{transform:scale(.9);transform-origin:center;margin:-24px 0}.controls h2{font-size:30px}.editor-grid{grid-template-columns:1fr}.editor-left{padding:18px}.public-card-layout{gap:20px}}@media(max-width:650px){.shell{padding:0 15px}.topbar{height:80px}.preview-tag{font-size:8px}.preview-tag span{display:none}.brand{font-size:19px}.hero{padding:20px 0 26px}.hero h1{font-size:33px}.hero p{font-size:12px}.demo-banner{font-size:11px}.workspace{border-radius:17px}.tabs{grid-template-columns:repeat(4,1fr)}.tab{min-height:64px;font-size:10px;line-height:1.55;padding:8px 4px}.tab span{display:block;margin:0;font-size:9px}.view{padding:24px 18px 28px}.two-col{grid-template-columns:1fr}.device{transform:scale(1);margin:0}.device-panel{margin-bottom:28px}.controls h2,.view-title{font-size:32px}.lead{font-size:13px}.public-card-layout{grid-template-columns:1fr}.public-card{min-height:380px;padding:26px}.public-actions{padding-top:20px}.method-grid{gap:7px}.method{padding:13px 10px;min-height:105px}.method strong{font-size:12px}.method small{font-size:10px}.form-grid{grid-template-columns:1fr;gap:0}.contact-form{padding:17px}.form-head{align-items:start;flex-direction:column}.share-actions{grid-template-columns:1fr}.dashboard-top{gap:6px}.stat{padding:13px}.stat strong{font-size:22px}.stat>span{font-size:10px}.searchbar{flex-direction:column}.flow-grid{grid-template-columns:1fr}.flow-card h3{min-height:0}.architecture-line{flex-direction:column}.architecture-line>div{width:100%}.architecture-line>span{transform:rotate(90deg)}.footer{flex-direction:column;gap:9px}.public-logo{font-size:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* The QR destination is a clean public card, not the prototype workspace. */
.is-public-card .hero,.is-public-card .demo-banner,.is-public-card .tabs,.is-public-card .footer,.is-public-card .preview-tag{display:none!important}
.is-public-card .topbar{height:80px}
.is-public-card .topbar .brand{cursor:default}
.is-public-card .workspace{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
.is-public-card .view{padding:22px 0 48px}
.is-public-card .public-card-layout{align-items:start;gap:36px}
.is-public-card .public-actions{padding-top:12px}
.is-public-card .public-status{font-size:12px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line);padding:15px 0 0;margin-top:20px}
.is-public-card .public-status span{color:var(--teal);margin-right:6px}
@media(max-width:650px){.is-public-card .topbar{height:70px}.is-public-card .view{padding:12px 0 35px}.is-public-card .public-card-layout{gap:20px}.is-public-card .public-actions{padding:0 2px}.is-public-card .public-card{border-radius:18px}}
