.studio-loading{padding:70px 6%;color:var(--muted)}#sign-out{background:none}.studio-layout{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:calc(100vh - 108px)}.studio-sidebar{padding:37px 24px;border-right:1px solid var(--line);background:#2e0c13}.studio-sidebar p{font-size:.75rem;color:var(--muted);letter-spacing:.15em;margin:0 0 20px}.studio-sidebar a{display:block;font-size:.875rem;padding:13px 14px;margin:5px 0;border-radius:2px}.studio-sidebar a.active{background:var(--wine);box-shadow:inset 2px 0 var(--sky)}.studio-sidebar a:hover{background:#65000088}.studio-content{padding:42px 5%;max-width:1500px;width:100%}.studio-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:32px}.studio-heading h1{font-size:2.3rem;line-height:1.3}.studio-heading .eyebrow{margin-bottom:8px}.studio-heading p:not(.eyebrow){line-height:1.7;color:var(--muted);font-size:.9375rem;margin:12px 0 0}.studio-empty{border:1px dashed var(--line);padding:55px 30px;text-align:center;background:var(--panel)}.studio-empty h2{font:1.55rem/1.4 var(--serif);margin:0 0 15px}.studio-empty p{line-height:1.7;color:var(--muted);margin-bottom:25px;font-size:1rem}.studio-list{display:grid;gap:15px}.studio-row{display:flex;align-items:center;gap:22px;background:var(--panel);border:1px solid var(--line);padding:16px}.studio-row:hover{border-color:#ad727b}.studio-cover{width:115px;height:85px;object-fit:cover;flex-shrink:0;background:#650000;display:grid;place-items:center;color:var(--sky);font-size:1.5rem}.studio-row-info{flex:1;min-width:0}.studio-row-info h2{font:1.3rem/1.4 var(--serif);margin:0 0 10px;overflow-wrap:anywhere}.studio-row-info p{font-size:.8125rem;color:var(--muted);margin:0;line-height:1.6}.status-badge{display:inline-flex;align-items:center;font-size:.75rem;padding:5px 9px;border:1px solid var(--line);border-radius:2px;white-space:nowrap}.status-badge.published{border-color:#89cff055;color:var(--sky);background:#89cff00b}.studio-form{background:var(--panel);border:1px solid var(--line);padding:26px;margin-bottom:28px}.studio-form label,.auth-form label{display:block;font-size:.875rem;font-weight:500;line-height:1.6;margin-bottom:8px}.studio-form input:not([type=file]),.studio-form textarea,.auth-form input{width:100%;border:1px solid var(--line);background:#220b10;color:var(--ink);border-radius:2px;padding:12px 14px;font-size:1rem;line-height:1.6}.studio-form textarea{resize:vertical;min-height:95px}.form-field{margin-bottom:21px}.form-columns{display:grid;grid-template-columns:1fr 1.4fr;gap:25px}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.helper{font-size:.8125rem;line-height:1.7;color:var(--muted);margin:9px 0 0}.upload-zone{border:1px dashed #a2767e;background:#65000044;padding:35px 25px;text-align:center;margin-bottom:25px;border-radius:3px}.upload-zone.dragging{border-color:var(--sky);background:#89cff018}.upload-zone h2{font:1.5rem/1.4 var(--serif);margin:0 0 10px}.upload-zone p{font-size:.9375rem;line-height:1.7;color:var(--muted);margin:0 0 20px}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.upload-zone label.button{display:inline-flex;cursor:pointer}.upload-zone:focus-within{outline:3px solid var(--sky);outline-offset:4px}.upload-summary{margin:20px 0}.upload-task{padding:12px 15px;border:1px solid var(--line);margin:8px 0;background:var(--panel);font-size:.875rem}.upload-task>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:8px;overflow-wrap:anywhere}.upload-task progress{display:block;width:100%;height:6px;accent-color:var(--sky)}.upload-task .error{color:#ffb6c3}.upload-task .done{color:var(--sky)}.studio-media{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.media-card{background:var(--panel);border:1px solid var(--line);overflow:hidden}.media-card>img,.media-card>video,.media-card>.media-placeholder{width:100%;height:170px;object-fit:cover;min-height:0}.media-card-caption{padding:13px}.media-card-caption p{font-size:.8125rem;line-height:1.5;margin:0 0 12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.media-card-caption button{background:none;border:1px solid var(--line);border-radius:2px;padding:8px 10px;font-size:.8125rem;width:100%}.media-card-caption button.selected{color:var(--sky);border-color:#89cff077}.media-card-caption button:hover{border-color:var(--sky)}.share-box{background:var(--panel);border:1px solid var(--line);padding:18px 20px;margin:0 0 26px}.share-box label{font-size:.875rem;display:block;margin-bottom:10px}.share-controls{display:flex;gap:12px}.share-controls input{flex:1;min-width:0;background:var(--paper);border:1px solid var(--line);color:var(--ink);padding:12px;font-size:1rem}.auth-wrap{max-width:490px;margin:60px auto;padding:0 24px}.auth-wrap h1{font-size:2.4rem;margin-bottom:20px}.auth-wrap>p{font-size:1rem;line-height:1.8;color:var(--muted)}.auth-form{margin-top:30px}.auth-form .button{width:100%;margin-top:4px}.form-error{font-size:.875rem;line-height:1.7;color:#ffb6c3;min-height:24px;margin:15px 0}.auth-footnote{font-size:.8125rem!important}.about-edit-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.about-edit-grid .studio-form textarea{min-height:140px}.portrait-editor{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}.portrait-edit-card{border:1px solid var(--line);padding:13px;background:var(--panel)}.portrait-edit-card img,.portrait-edit-card .portrait-placeholder{width:100%;aspect-ratio:3/4;height:auto;object-fit:cover}.portrait-edit-card p{font-size:.875rem;line-height:1.6}.portrait-edit-card .button{width:100%;padding:11px 8px;font-size:.8125rem}.portrait-edit-card:focus-within{outline:2px solid var(--sky)}#studio-notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--sky);color:#220b10;font-size:.875rem;padding:13px 22px;border-radius:2px;z-index:20;max-width:90vw;display:none}#studio-notice.visible{display:block}.inline-alert{border:1px solid #ba7280;background:#65000044;padding:17px;margin:20px 0;font-size:.9375rem;line-height:1.7}.form-actions .helper{max-width:430px}.studio-content .back-link{margin-bottom:25px}.about-upload-status{grid-column:1/-1;font-size:.875rem;line-height:1.7;color:var(--sky)}.studio-dialog{max-width:550px;width:calc(100vw - 32px);background:var(--panel);padding:30px;border:1px solid var(--line)}.studio-dialog h2{font:1.8rem/1.4 var(--serif);margin:0 0 24px}.studio-dialog .studio-form{padding:0;border:0;margin:0}
@media(max-width:1100px){.studio-layout{grid-template-columns:175px minmax(0,1fr)}.studio-sidebar{padding:30px 15px}.studio-content{padding:35px 5%}.studio-media{grid-template-columns:repeat(3,minmax(0,1fr))}.about-edit-grid{grid-template-columns:1fr}.portrait-editor{max-width:600px}}
@media(max-width:700px){.studio-layout{display:block}.studio-sidebar{display:flex;gap:6px;padding:10px 6%;border-right:0;border-bottom:1px solid var(--line)}.studio-sidebar p{display:none}.studio-sidebar a{margin:0;padding:11px 15px}.studio-content{padding:30px 6%}.studio-heading{align-items:flex-start;flex-wrap:wrap;gap:18px;margin-bottom:25px}.studio-heading h1{font-size:1.85rem}.studio-heading>.button{width:100%}.studio-form{padding:20px}.form-columns{grid-template-columns:1fr;gap:0}.form-actions{align-items:stretch}.form-actions .button{flex:1}.studio-row{gap:13px;padding:12px;flex-wrap:wrap}.studio-cover{width:75px;height:85px}.studio-row-info h2{font-size:1.1rem}.studio-row>.status-badge{margin-left:88px;margin-top:-5px}.studio-media{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.media-card>img,.media-card>video,.media-card>.media-placeholder{height:155px}.upload-zone{padding:28px 18px}.upload-zone h2{font-size:1.3rem}.upload-zone .button{width:100%}.share-controls{flex-wrap:wrap}.share-controls input{width:100%;flex-basis:100%}.share-controls .button{width:100%}.auth-wrap{margin:40px auto}.auth-wrap h1{font-size:2rem}.studio-empty{padding:35px 22px}.portrait-editor{gap:12px}.portrait-edit-card{padding:10px}.portrait-edit-card .button{font-size:.8125rem}.studio-dialog{padding:25px}.studio-row-info{min-width:120px}}
