body.developer-page{height:100dvh;min-height:0;overflow:hidden;zoom:1!important;user-select:text!important;background:radial-gradient(ellipse at 65% -30%,#ba914b15,transparent 65%),#0b0c10}.portal-shell{display:grid;grid-template-columns:240px minmax(0,1fr);height:100%}.portal-sidebar{padding:32px 22px;display:flex;flex-direction:column;border-right:1px solid #ffffff0c;background:#0c0d11b0}.portal-brand{display:flex;align-items:center;gap:12px;color:#e5c483;text-decoration:none;letter-spacing:4px;font-size:14px}.portal-brand img{width:37px;height:45px}.portal-label{font-size:9px;letter-spacing:2px;color:#84775e;margin:30px 10px 18px}.portal-sidebar nav{display:flex;flex-direction:column;gap:8px}.portal-sidebar nav button{display:flex;gap:13px;text-align:left;padding:13px;border-radius:12px;border:1px solid transparent;background:transparent;color:#979aa5;font-size:14px}.portal-sidebar nav button.active{color:#efd49e;background:linear-gradient(110deg,#e5c48316,#e5c48305);border-color:#e5c48324}.portal-sidebar nav button:hover{color:#f0d495;background:#e5c48316}.portal-back{margin-top:auto;padding:28px 10px 0;color:#8b8e99;font-size:12px;text-decoration:none}.portal-workspace{display:flex;flex-direction:column;min-width:0;min-height:0}.portal-header{height:88px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0b;padding:0 42px;color:#9295a1;font-size:12px}.portal-main{margin:0;padding:36px 42px 64px;max-width:none;overflow:auto;flex:1;min-height:0;scrollbar-color:#665435 #121318}.portal-main h1{font-size:32px;letter-spacing:-1px;font-weight:500;margin:8px 0 10px}.portal-main h2{font-size:21px;font-weight:500;margin:8px 0 20px}.portal-main h3{font-size:16px;font-weight:500;margin:0 0 10px}.portal-main p{color:#9699a5;line-height:1.65;font-size:14px}.portal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.portal-heading p{margin:0}.portal-kicker{font-size:10px;letter-spacing:3px;color:#c6a86d}.portal-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.portal-actions button,.portal-main .secondary,.portal-main .primary,#portal-dialog button{min-height:42px;border-radius:25px;font-size:13px;padding:10px 20px}.portal-main .primary{background:#e5c48318;border:1px solid #e5c48355;color:#eed5a3}.portal-main .primary:hover,.portal-main .secondary:hover{background:#b28a3e40;border-color:#e5c483}.portal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:25px}.portal-stat{padding:22px;border:1px solid #ffffff0d;border-radius:16px;background:linear-gradient(145deg,#ffffff05,#ffffff01)}.portal-stat>span{display:block;color:#9295a0;font-size:12px}.portal-stat strong{display:block;font-size:29px;font-weight:400;letter-spacing:-1px;margin:16px 0 6px}.portal-stat small{font-size:11px;color:#8d826c}.portal-callout{display:flex;gap:15px;align-items:center;border:1px solid #e5c48325;background:#e5c48307;border-radius:14px;padding:17px 22px;margin:20px 0 26px;color:#cdb98f;font-size:13px;line-height:1.6}.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.portal-card{border:1px solid #ffffff13;background:#111218;border-radius:20px;overflow:hidden}.portal-cover{width:100%;height:175px;object-fit:cover;display:block;background:#171820}.portal-card-body{padding:23px}.portal-card-body .portal-actions{margin-top:22px}.portal-chip{display:inline-flex;border:1px solid #e5c48330;color:#d0b47e;background:#e5c4830a;font-size:10px;padding:5px 10px;border-radius:12px;white-space:nowrap}.portal-chip[data-status=published],.portal-chip[data-status=paid],.portal-chip[data-status=approved]{color:#98cfb0;border-color:#98cfb030;background:#98cfb008}.portal-chip[data-status=rejected]{color:#e99c91;border-color:#e99c9128}.portal-row-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.portal-meta{display:flex;gap:22px;font-size:12px;color:#858995;margin-top:18px}.portal-panel{border:1px solid #ffffff10;border-radius:18px;padding:25px;margin:20px 0;background:#ffffff02}.portal-panel p:first-child{margin-top:0}.portal-form{display:grid;gap:18px;max-width:780px}.portal-form label{display:grid;gap:8px;font-size:12px;color:#b9b7b1}.portal-form input,.portal-form textarea,.portal-form select{width:100%;padding:12px 14px;border:1px solid #ffffff1b;border-radius:10px;background:#0a0b10;color:#e9e8e4;font:inherit;outline:none;user-select:text}.portal-form input:focus,.portal-form textarea:focus,.portal-form select:focus{border-color:#c6a76a}.portal-form textarea{min-height:100px;resize:vertical}.portal-form .portal-help{font-size:11px;line-height:1.65;color:#7d8290}.portal-form progress{width:100%;accent-color:#e5c483}.portal-table-wrap{overflow:auto}.portal-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.portal-table th{color:#797f8e;font-weight:400;text-align:left;padding:14px 10px;border-bottom:1px solid #ffffff12}.portal-table td{padding:17px 10px;border-bottom:1px solid #ffffff08;color:#c2c4cc}.portal-table td:last-child{white-space:normal}.portal-empty{text-align:center;padding:55px 20px;color:#9398a5}.portal-empty strong{display:block;color:#ebe1cc;font-size:23px;font-weight:400;margin-bottom:10px}.portal-warning{color:#edb89b!important}.portal-bar{height:7px;border-radius:5px;background:#ffffff07;overflow:hidden;margin:15px 0}.portal-bar i{display:block;height:100%;background:linear-gradient(90deg,#9c7637,#e5c483);border-radius:5px}#portal-notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:15px 24px;background:#252118;border:1px solid #c7a26155;border-radius:12px;color:#efdfc0;z-index:500;max-width:90vw;font-size:13px}#portal-notice.error{background:#321d1b;border-color:#c07968}#portal-dialog{width:min(900px,94vw);max-width:94vw;max-height:90dvh;overflow:auto;padding:34px;border:1px solid #d4b16e44;border-radius:20px;background:#101117;color:#eee}#portal-dialog h2{font-weight:400}#portal-dialog iframe{width:100%;height:60vh;border:0;background:#090a0e}#portal-dialog .close-modal{min-height:0;padding:0;border:0;font-size:26px}.portal-download{display:inline-block;padding:10px 15px;color:#e1c38a;text-decoration:none;font-size:12px}.portal-main button:active{transform:none}.portal-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:25px}.portal-muted{color:#818794;font-size:12px}.portal-contact{word-break:break-word}.portal-preview-tools{display:flex;gap:15px;margin-bottom:15px}body.developer-page .profile{background:#ffffff08!important}.developer-page *{user-select:text}.developer-page button,.developer-page nav{user-select:none}@media(min-width:1500px){.portal-main{padding:45px 70px 70px}.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-cover{height:185px}}@media(max-width:1000px){.portal-shell{grid-template-columns:195px minmax(0,1fr)}.portal-sidebar{padding:24px 14px}.portal-main{padding:25px}.portal-header{padding:0 25px}.portal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-grid{grid-template-columns:1fr}.portal-split{grid-template-columns:1fr}}@media(max-width:600px){.portal-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.portal-sidebar{padding:12px;gap:12px;border-right:0;border-bottom:1px solid #ffffff10}.portal-brand{font-size:11px}.portal-brand img{width:25px;height:30px}.portal-label,.portal-back{display:none}.portal-sidebar nav{flex-direction:row;overflow:auto;gap:4px}.portal-sidebar nav button{font-size:11px;padding:9px;flex-shrink:0;gap:5px}.portal-header{height:64px;padding:0 18px}.portal-main{padding:22px 16px 50px}.portal-main h1{font-size:26px}.portal-stat{padding:16px}.portal-stat strong{font-size:24px}.portal-heading{align-items:flex-start;flex-wrap:wrap}.portal-panel{padding:18px}.portal-cover{height:160px}}
/* The studio is an application viewport, independent of the console's 110% zoom. */
html.developer-root{zoom:1;--interface-scale:1;height:100%;overflow:hidden}
body.developer-page{position:fixed;inset:0;width:100%;height:100%;min-height:0;overflow:hidden}
.developer-page .portal-shell{height:100%;min-height:0;min-width:0}
.developer-page .portal-sidebar{min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain}
.developer-page .portal-workspace{height:100%;min-height:0;min-width:0;overflow:hidden}
.developer-page .portal-main{display:block;height:auto;min-height:0;min-width:0;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding:24px 0 120px}
.developer-page .portal-main.editing-project{padding-bottom:16px;scroll-padding-top:90px;scroll-padding-bottom:calc(var(--editor-footer-height,100px) + 20px)}
.portal-main :is(.portal-panel,.portal-card,.portal-form,.portal-heading,.portal-split)>*{min-width:0}
.portal-main :is(h1,h2,h3,p,.portal-muted,.portal-save-status){overflow-wrap:anywhere}
.portal-main .portal-heading{align-items:flex-start}
.portal-main .portal-heading>div{min-width:0}
.portal-main .portal-heading>button{flex-shrink:0}
.portal-main .portal-cover{height:auto;aspect-ratio:800/470;object-fit:cover}
.portal-card h3{line-height:1.5}
.portal-card-body>.portal-actions{gap:7px;margin-top:10px}
.portal-card-body>.portal-actions:last-child{margin-top:22px}
.portal-stat strong{font-size:clamp(21px,2.2vw,29px);overflow-wrap:anywhere}
.portal-table-wrap{max-width:100%;min-width:0;overscroll-behavior:contain}
.portal-panel{min-width:0}
.portal-form :is(input,select,textarea){min-width:0;max-width:100%;box-sizing:border-box}
.portal-form input[type=file]{padding:10px;font-size:12px}
.portal-form input[type=file]::file-selector-button{font:inherit;border:1px solid #d1b07750;border-radius:8px;background:#d1b07716;color:#e2c792;padding:8px 12px;margin-right:12px;cursor:pointer}
.project-filters{display:flex;gap:12px;margin:8px 0 25px}
.project-filters :is(input,select){border:1px solid #ffffff20;background:#101117;color:#e1e0dc;padding:12px 15px;border-radius:11px;min-width:0;font:inherit;font-size:13px}
.project-filters input{flex:1}
.project-filters select{width:210px;max-width:45%}
.project-filters :is(input,select):focus{outline:1px solid #b99a62;outline-offset:2px}
.editor-summary{margin:-8px 0 20px}
.editor-steps{display:flex;list-style:none;gap:9px;margin:0 0 24px;padding:0;counter-reset:step}
.editor-steps li{display:flex;align-items:center;gap:8px;color:#777d89;font-size:12px;counter-increment:step}
.editor-steps li::before{content:counter(step);display:grid;place-items:center;width:26px;height:26px;border:1px solid #ffffff1a;border-radius:50%;font-size:10px}
.editor-steps li+li::after{content:'';order:-1;width:24px;height:1px;background:#ffffff18;margin:0 4px}
.editor-steps li[data-current=true]{color:#ecd09a}
.editor-steps li[data-current=true]::before{background:#d5b47717;border-color:#d5b47770}
.editor-tabs{display:flex;gap:8px;overflow-x:auto;position:sticky;top:0;z-index:2;padding:10px 0 14px;margin:0 0 22px;background:#0c0d12f5;backdrop-filter:blur(14px);border-bottom:1px solid #ffffff10}
.editor-tabs button{flex-shrink:0;white-space:nowrap;background:transparent;border-color:transparent!important;padding:10px 18px!important;min-height:40px!important;color:#9298a5}
.editor-tabs button[aria-selected=true]{background:#e5c48312;border-color:#e5c48340!important;color:#ecd09a}
.editor-tabs button:hover{background:#e5c48315}
.editor-advanced{border:1px solid #ffffff13;border-radius:12px;padding:15px;margin:5px 0 15px}
.editor-advanced summary{font-size:12px;color:#c8b281;cursor:pointer;padding:2px 0}
.editor-advanced[open] summary{margin-bottom:20px}
.editor-advanced p{font-size:11px!important;margin:0}
.editor-footer{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin:28px -1px -10px;padding:18px 0 12px;background:#0c0d12f5;backdrop-filter:blur(18px);border-top:1px solid #ffffff17}
.editor-footer .portal-actions{gap:10px;flex-wrap:wrap}
.editor-save-status{font-size:12px;color:#98bea8;overflow-wrap:anywhere}
.editor-save-status[data-dirty=true]{color:#d8bb81}
.editor-checklist{padding:0;list-style:none;display:grid;gap:12px;margin:0 0 20px}
.editor-checklist li{font-size:13px;color:#9399a7}
.editor-checklist li[data-ready=true]{color:#a7c9b5}
.editor-history .portal-panel:first-child{margin-top:0}
.portal-chip[data-status=archived]{color:#9196a2;border-color:#ffffff17;background:#ffffff04}
.developer-page .portal-form textarea{min-height:135px;line-height:1.7}
.developer-page .portal-form input[readonly],.developer-page .portal-form textarea[readonly]{background:#ffffff02;color:#a8adb9}
.portal-main[aria-busy=true]{cursor:progress}
#portal-dialog{scrollbar-gutter:stable;overscroll-behavior:contain;scroll-padding:20px}
#portal-notice{bottom:max(18px,env(safe-area-inset-bottom));overflow-wrap:anywhere}
@media(max-height:650px) and (min-width:601px){.portal-sidebar{padding-top:18px;padding-bottom:18px}.portal-label{margin:20px 10px 12px}.portal-sidebar nav{gap:4px}.portal-sidebar nav button{padding:11px}.portal-back{padding-top:16px}.portal-header{height:64px}.portal-main{padding-top:24px}}
@media(max-width:600px){.portal-sidebar{overflow-y:visible}.portal-sidebar nav{scrollbar-width:thin;min-width:0}.portal-header .profile{max-width:170px}.portal-heading>button{width:auto}.project-filters{flex-direction:column}.project-filters select{width:100%;max-width:100%}.editor-steps{gap:5px}.editor-steps li{font-size:10px;gap:5px}.editor-steps li+li::after{width:12px;margin:0 1px}.editor-tabs{margin-left:-2px;margin-right:-2px}.editor-tabs button{padding:10px 12px!important;font-size:12px!important}.editor-footer{gap:10px}.editor-footer .portal-actions{width:100%}.editor-footer .primary{flex:1}.portal-main .portal-stat{padding:16px 12px}.portal-stat>span{line-height:1.5}.portal-main .portal-heading{flex-wrap:wrap}}
@media(max-height:500px){.editor-footer{position:static}.developer-page .portal-main.editing-project{scroll-padding-bottom:24px}.portal-header{height:54px}.portal-main{padding-top:18px}.portal-brand img{height:28px}.portal-sidebar{padding-top:12px;padding-bottom:12px}.portal-label{margin-top:16px}.portal-back{padding-top:12px}}


.portrait-cover-picker img{width:160px;max-height:260px;aspect-ratio:2/3;object-fit:contain}

.portal-sidebar [data-view][aria-disabled="true"]{opacity:.6;cursor:help}

.game-controller-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-controller-actions>h3,.game-controller-actions>p{grid-column:1/-1}@media(max-width:600px){.game-controller-actions{grid-template-columns:1fr}}

.audience-chart{min-width:0}.audience-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.audience-chart-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;min-width:0}.audience-chart-tabs{display:flex;gap:5px;flex-wrap:wrap}.audience-chart button,.audience-chart select{font:inherit;font-size:12px;padding:9px 13px;border:1px solid #e5c48333;background:#ffffff05;color:#ddd;border-radius:20px;cursor:pointer;max-width:100%}.audience-chart-tabs button[aria-pressed=true]{color:#efd49c;border-color:#e5c48388;background:#e5c48315}.audience-chart-plot{width:100%;overflow:hidden}.audience-chart-plot svg{display:block;width:100%;height:auto;min-height:180px}.chart-grid{stroke:#ffffff12;stroke-width:1}.chart-label{fill:#9c9da8;font:12px Segoe UI,Arial,sans-serif}.chart-hit{cursor:pointer}.chart-hit:hover,.chart-hit:focus{fill:#e5c48312;outline:none;stroke:#e5c48388;stroke-width:1}.audience-chart-legend{display:flex;gap:18px;flex-wrap:wrap;color:#b9bbc6;font-size:12px}.audience-chart-legend span{display:flex;align-items:center;gap:7px}.audience-chart-legend i{width:9px;height:9px;border-radius:3px}.audience-chart-readout{min-height:24px;color:#e5c483!important}.audience-chart summary{color:#c7ad7b;cursor:pointer;font-size:13px}.audience-chart details{margin-top:18px}.audience-chart .portal-muted{font-size:12px;line-height:1.65}@media(max-width:600px){.audience-chart{padding:15px}.audience-chart-controls{width:100%}.audience-chart-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.audience-chart-tabs button{padding:9px 7px}.audience-chart-plot{overflow-x:auto}.audience-chart-plot svg{min-width:560px}.audience-chart-controls select{flex:1;min-width:0}}

.quality-search{margin:20px 0}.quality-search input{width:100%;min-height:46px;padding:12px 16px;background:#11131b;border:1px solid #e7c48144;border-radius:20px;color:inherit}.quality-cover{width:min(100%,440px);aspect-ratio:800/470;object-fit:cover;border-radius:20px;float:left;margin:0 28px 20px 0}.portal-panel:has(.quality-cover){display:flow-root}.quality-histogram{display:grid;gap:8px;max-width:440px}.quality-histogram>div{display:flex;gap:14px;align-items:center}.quality-histogram progress{flex:1;accent-color:#e7c481}.quality-review{border-bottom:1px solid #e7c48122;padding:18px 0}.quality-review p,.quality-reason{white-space:pre-wrap;overflow-wrap:anywhere}.quality-review button{margin:6px}.editing-project h1{overflow-wrap:anywhere}@media(max-width:650px){.quality-cover{float:none;width:100%;margin:0 0 18px}.quality-histogram{width:100%}}

.quality-portrait{max-width:180px;max-height:280px;object-fit:contain;border-radius:14px}.portal-panel details{padding:14px 0;overflow-wrap:anywhere}.portal-panel pre{white-space:pre-wrap;overflow-wrap:anywhere}.portal-panel audio{max-width:100%}

.portal-form :is(input:not([type=checkbox]):not([type=radio]),textarea,select){background:#202632;border:1px solid #a891626e;box-shadow:inset 0 1px 3px #0005;color:#f4f0e7;transition:border-color .15s,box-shadow .15s;}
.portal-form :is(input,textarea,select):focus-visible{outline:2px solid #e7c481;outline-offset:2px;border-color:#e7c481;box-shadow:0 0 0 5px #e7c48116;}
.portal-form :is(input,textarea):read-only{background:#141922;border-color:#ffffff24;color:#c0c5ce;}

.retention-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.retention-cards>div{padding:18px;border:1px solid #e5c48340;border-radius:16px;display:grid;gap:10px}.retention-cards strong{font-size:28px;color:#e5c483}.retention-cards span{font-size:14px}@media(max-width:700px){.retention-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.retention-cards>div{padding:12px}}
.retention-panel .audience-chart-controls{margin-left:auto}.retention-panel .audience-chart-controls>span{align-self:center;color:#b9bbc6;font-size:13px}.retention-panel select option{background:#171920;color:#eee}.retention-panel .audience-chart-plot{margin-top:24px}
