.portal{min-height:100vh;color:#f6edde;background:radial-gradient(ellipse at 80% 0,#493353 0,transparent 45%),#211e30;padding:0 max(20px,calc((100vw - 1380px)/2));font-family:DM Sans,system-ui,sans-serif}.portal-header{display:flex;align-items:center;gap:22px;padding:24px 0;border-bottom:1px solid #695573;flex-wrap:wrap}.portal-header img{width:210px;max-width:50vw}.portal-header nav{display:flex;gap:5px;flex-wrap:wrap;flex:1}.portal button{font-size:14px;padding:10px 15px;min-height:42px;margin:4px;border-radius:12px;border:1px solid #766082;background:#382d46;color:#f4e5f6;cursor:pointer}.portal button.primary,.portal button[aria-current=page],.portal button[aria-pressed=true]{background:#d1b4e8;color:#271c32;border-color:#e6cee9}.portal button:disabled{opacity:.5;cursor:not-allowed}.portal label{display:block;font-size:14px;margin:16px 0 8px;color:#e7daeb}.portal input,.portal textarea,.portal select{display:block;width:100%;max-width:100%;margin:7px 0;padding:12px;background:#201c2d;border:1px solid #806a8c;border-radius:10px;color:#fff2e4;font:inherit}.portal textarea{min-height:95px;resize:vertical}.portal input[type=color]{height:48px}.portal .check{display:flex;align-items:center;gap:10px}.portal .check input{width:20px}.portal :focus-visible{outline:3px solid #e4bdde;outline-offset:3px}.portal h1{font-size:clamp(28px,4vw,48px);line-height:1.15;margin:22px 0}.portal h2{font-size:23px;margin:8px 0 14px}.portal p{line-height:1.65}.portal .muted,.portal small{color:#c2aecb}.portal section{padding:20px 0 40px}.portal-notice{min-height:30px;color:#f1c8de;margin-top:12px}.portal-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:48px;min-height:470px}.portal-hero h1{font-size:clamp(38px,5.5vw,72px);max-width:730px}.portal-hero img{width:100%;filter:drop-shadow(0 25px 50px #d88dbc30)}.portal-hero p{max-width:600px;font-size:18px}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:22px}.portal-card{border:1px solid #735b7e;border-radius:20px;background:linear-gradient(145deg,#392b46,#292438);padding:24px;min-width:0;box-shadow:0 10px 35px #120b201c}.portal section.auth-card{max-width:450px;margin:40px auto;padding:32px}.portal-split{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.5fr);gap:24px}.portal-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid #65516e;padding:10px 0}.portal-row input,.portal-row select{width:180px;flex:1}.portal-messages{max-height:450px;min-height:200px;overflow:auto;background:#211d30;border-radius:12px;padding:15px;overflow-wrap:anywhere}.portal-messages p{border-bottom:1px solid #4c3b5b;padding-bottom:12px;white-space:pre-wrap}.portal .thread-row,.library-row{border-bottom:1px solid #6c527a;padding:15px 0}.thread-row b,.thread-row small{display:block}.shop-card img,.listing-image{width:100%;max-height:240px;object-fit:contain;background:#211c2d;border-radius:12px}.asset-placeholder{display:grid;place-items:center;height:150px;background:linear-gradient(140deg,#a47bc2,#5c467b);font-size:65px;border-radius:12px;color:#f8dbbd}.profile-dot{display:grid;place-items:center;border-radius:50%;width:65px;height:65px;color:#211c2d;font-size:36px}.portal footer{padding:28px 0;margin-top:40px;border-top:1px solid #675074;color:#bdacc5;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.admin-tabs{margin-bottom:20px}.platform-room-bar{position:sticky;top:0;z-index:60;background:#31243d;border-bottom:1px solid #ad85bd;padding:10px 20px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.platform-room-bar button{padding:10px}.platform-room-bar span{font-size:13px;color:#e9c1e1}.portal .studio-shell{padding:16px 0}.portal .studio-grid{grid-template-columns:230px minmax(250px,1fr) 250px}.portal .studio-grid input{padding:6px}.portal .studio-shell button{padding:7px;margin:1px}.portal .studio-shell label{margin:5px 0}.portal .studio-shell input[type=checkbox]{width:auto;display:inline}.portal .studio-shell{overflow-x:auto}@media(max-width:850px){.portal-hero,.portal-split{grid-template-columns:1fr}.portal-hero{gap:10px}.portal-hero img{max-height:260px}.portal-header{gap:12px}.portal-header nav{order:3;width:100%}.portal-card{padding:19px}.portal .studio-grid{display:flex;flex-direction:column}.portal .studio-grid>*{width:100%}.portal-header button{padding:8px 10px}.portal{padding:0 16px}}.portal .mobile-menu-toggle{display:none}.form-feedback{color:#ffd0db;min-height:24px}.account-required{border:1px solid #d4a1c4;background:#49314b;border-radius:12px;padding:15px}.account-details{margin-top:24px}.character-editor{display:grid;grid-template-columns:minmax(200px,.8fr) 1.2fr;gap:24px;align-items:start}.character-editor canvas{width:100%;height:350px;border-radius:16px;touch-action:none}.avatar-colors{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:12px}.portal .auth-card .primary{width:100%;margin:14px 0}.portal .auth-card small{display:block;font-size:13px;margin-top:5px}.portal input,.portal textarea,.portal select{font-size:16px}.portal .password-field button{min-height:48px}.portal-messages p,.portal .shop-card,.portal .portal-card{overflow-wrap:anywhere}@media(max-width:850px){.portal .mobile-menu-toggle{display:block;margin-left:auto}.portal-header nav{display:none}.portal-header nav.menu-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;background:#2c2238;padding:10px;border-radius:12px}.portal-header nav button{min-height:48px}.character-editor{grid-template-columns:1fr}.character-editor canvas{height:280px}.portal-row{align-items:stretch}.portal-row input,.portal-row select{width:100%;flex-basis:100%}.portal .auth-card{margin:20px auto;padding:22px}.portal-messages{max-height:45dvh}.platform-room-bar{position:relative}.platform-room-bar button{min-height:44px}.portal-header>a{max-width:55%}.portal-header img{max-width:100%}}.portal form{display:block}.portal form>label,.portal form>div{min-width:0}.portal .character-editor{margin:20px 0}.portal .portal-card{min-width:0}.room-subtitle{display:block;font-size:12px;font-weight:400;margin-top:4px}.return-to-room{position:absolute;z-index:12;top:12px;left:12px;min-height:44px;background:#30263f;color:#fff;border:1px solid #d1b4e8;border-radius:10px;padding:10px 14px}.movie-room-owner{position:absolute;z-index:11;bottom:12px;left:12px;background:#211e30df;color:#fff;border-radius:8px;padding:8px;pointer-events:none}@media(max-width:700px){.platform-room-bar{gap:6px;padding:8px;flex-wrap:wrap}.platform-room-bar strong{flex:1;min-width:140px}.platform-room-bar span{flex-basis:100%;font-size:12px}.return-to-room{font-size:13px;top:8px;left:8px}.movie-room-owner{font-size:12px;max-width:80%}}.portal .email-onboarding{max-width:560px;margin:40px auto;padding:32px}.portal .profile-page{max-width:1050px;margin:0 auto}.portal .profile-page>.portal-card{padding:28px;margin-bottom:24px}.portal .account-details form{max-width:700px}.portal .profile-page h1{font-size:clamp(26px,4vw,38px);margin:24px 0}.portal .character-editor{grid-template-columns:minmax(220px,.8fr) 1.2fr}.portal .character-editor>div{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.portal .avatar-colors{grid-column:1/-1}.portal .portal-card>form{margin-top:20px}.portal .portal-card h2{margin-top:0}@media(max-width:650px){.portal .email-onboarding{padding:22px;margin:20px auto}.portal .profile-page>.portal-card{padding:18px}.portal .character-editor{grid-template-columns:1fr}.portal .character-editor canvas{height:280px}.portal .character-editor>div{grid-template-columns:1fr 1fr}}
