*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f8f9fd url('/brand/background.png') center top/100% 100vh fixed no-repeat;color:#263347;font-family:'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif}#portal{max-width:1120px;margin:auto;padding:28px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700}.brand img{width:38px;height:44px;object-fit:contain}button,a{font:inherit}button,.button{min-height:44px;border-radius:14px;border:1px solid #dcd7ef;background:white;color:#6044cf;padding:12px 18px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #7359e9;outline-offset:4px}.actions{display:flex;gap:12px;align-items:center}.hero{display:flex;align-items:center;justify-content:space-between;margin:55px 0 28px}.hero h1{font-size:32px;margin:0 0 10px}.hero p{color:#59657a}.hero img{width:88px;height:102px;object-fit:contain}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card,.login{padding:28px;border:1px solid #e4e1ed;border-radius:24px;background:#fffffff2;box-shadow:0 6px 24px #38406a06}.card h2{font-size:24px;margin:0 0 12px}.card p{color:#59657a;line-height:1.6;min-height:26px}.card .button{background:#7359e9;border-color:#7359e9;color:white;width:100%}.card .unavailable{padding:12px;color:#677184;background:#f3f2f8;border-radius:14px;text-align:center}.native-help{font-size:14px;margin-top:16px;line-height:1.7;color:#59657a}.native-help summary{cursor:pointer}.login{max-width:540px;margin:80px auto}.login h1{font-size:28px}.login p{line-height:1.8}.login button{background:#7359e9;color:white}.error{border-radius:12px;background:#fff0f0;color:#9b2434;padding:16px;margin:20px 0}.notice{color:#59657a;line-height:1.8;margin:24px 0}.account{font-size:14px} @media(max-width:600px){#portal{padding:20px}.grid{grid-template-columns:1fr}.hero{margin-top:32px}.hero h1{font-size:27px}.brand{font-size:20px}.card{padding:24px}.actions{flex-wrap:wrap}}
main>.card{margin:20px 0}form{display:grid;gap:16px}label{display:grid;gap:8px}input,select{font:inherit;max-width:100%;min-height:44px;padding:10px;border:1px solid #dcd7ef;border-radius:10px}.invite-qr svg{width:260px;max-width:100%;height:auto}.card input[readonly]{width:100%}

#new-person-fields{border:0;padding:0;margin:0;min-width:0}#new-person-fields[hidden]{display:none}
form,label{min-width:0}form select,form input{width:100%;min-width:0}.card{overflow-wrap:anywhere}
