.admin-auth{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;background:#292626e6}.admin-auth-panel{position:relative;width:min(440px,100%);padding:2rem;border:1px solid var(--paper-dark);border-left:8px solid var(--accent);background:var(--carbon-gray);box-shadow:10px 10px 0 var(--accent);color:var(--on-dark)}.admin-auth-panel:before{position:absolute;top:0;right:0;padding:.25rem .5rem;background:var(--accent);color:var(--on-signal);content:"AUTH / ADMIN";font-family:var(--font-mono);font-size:.58rem;font-weight:850;letter-spacing:.12em}.admin-auth-panel h2{margin:0 0 1rem;padding-bottom:.75rem;border-bottom:3px solid var(--accent);color:var(--on-dark);font-size:2.25rem}.admin-auth-panel p{color:var(--on-dark-muted)}.admin-auth-panel input{margin-bottom:.8rem}.admin-auth-panel button{width:100%;border-color:var(--accent);background:var(--accent);color:var(--on-signal)}.admin-auth-panel button:hover{border-color:var(--accent-dark);background:var(--accent-dark)}.admin-auth :focus-visible,.admin-shell :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.admin-shell{width:min(100%,960px);margin-inline:auto}.admin-heading{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-bottom:1.4rem;border-bottom:1px solid var(--ink)}.admin-heading:after{position:absolute;bottom:-1px;left:0;width:96px;height:5px;background:var(--accent);content:""}.admin-heading h1{margin:.5rem 0 .8rem}.admin-heading .admin-folio{padding-bottom:.65rem;color:var(--accent);font-family:var(--font-display);font-size:clamp(3rem,7vw,5.4rem);font-weight:900;line-height:.72;letter-spacing:-.08em}.admin-nav{display:flex;flex-wrap:wrap;gap:1px;margin-bottom:2rem;border:1px solid var(--ink);background:var(--ink)}.admin-nav a{display:inline-flex;min-height:46px;align-items:center;padding:.55rem 1rem;background:var(--paper-raised);color:var(--ink);font-weight:850;text-decoration:none}.admin-nav a:hover{background:var(--accent-wash);color:var(--ink)}.admin-nav a[aria-current=page]{background:var(--accent);color:var(--on-signal)}.admin-panel{margin-top:2rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--ink);background:color-mix(in srgb,var(--paper-raised) 72%,transparent)}.admin-panel>h2,.admin-panel>div:first-child h2{margin:0 0 1rem;padding-bottom:.55rem;border-bottom:3px solid var(--accent);font-size:clamp(1.5rem,3vw,2.1rem)}.admin-form{display:flex;flex-direction:column;gap:1.25rem}.admin-form label{display:block;margin-bottom:.35rem;font-family:var(--font-mono);font-size:.7rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.admin-form small,.admin-muted{color:var(--muted)}.admin-row{display:flex;flex-wrap:wrap;gap:1rem}.admin-row>*{flex:1;min-width:240px}.admin-check{display:flex;align-items:center;gap:.65rem}.admin-check input{width:1.2rem;height:1.2rem;accent-color:var(--accent)}.admin-check label{margin:0;cursor:pointer}.admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:1px;border:1px solid var(--ink);background:var(--ink)}.admin-actions button{min-height:50px;border:0}.admin-actions .secondary{background:var(--paper-raised);color:var(--ink)}.admin-actions .primary{background:var(--accent);color:var(--on-signal)}#publish-time-display{padding:.72rem;border:1px solid var(--line);background:var(--paper-dark);color:var(--ink-soft)}#content{min-height:320px;resize:vertical;font-family:var(--font-mono);font-size:16px;line-height:1.7}#upload-btn{padding-inline:1rem;background:var(--ink);color:var(--on-dark)}#image-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.album-admin-section{padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--ink);background:var(--paper-raised)}.album-admin-section>header{margin-bottom:1.2rem;border-bottom:1px solid var(--ink)}.album-admin-section>header h2{margin:.35rem 0 .65rem;font-size:clamp(1.55rem,4vw,2.4rem)}.album-select-row{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:end;gap:.6rem}.album-select-row label{align-self:center;margin:0}.album-select-row select,.album-select-row button{min-height:46px}.album-select-row button,#album-upload-btn{background:var(--ink);color:var(--on-dark)}.album-upload-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.album-photo-empty{margin-top:1rem;padding:1.5rem;border:1px dashed var(--line);background:var(--paper)}.album-photo-empty p{margin-bottom:0;color:var(--muted);font-size:.78rem}.album-photo-editor{display:grid;gap:1px;margin:1rem 0 0;padding:1px;border:1px solid var(--ink);background:var(--ink);list-style:none}.album-photo-editor>li{display:grid;grid-template-columns:minmax(220px,32%) minmax(0,1fr);min-width:0;margin:0;background:var(--paper-raised)}.album-photo-thumb{position:relative;min-height:260px;background:var(--iron-black);overflow:hidden}.album-photo-thumb img{width:100%;height:100%;margin:0;border:0;object-fit:cover}.album-photo-thumb>span{position:absolute;top:0;left:0;padding:.22rem .45rem;background:var(--accent);color:var(--on-signal);font-family:var(--font-mono);font-size:.6rem;font-weight:850}.album-photo-fields{min-width:0;padding:.9rem}.album-photo-card-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--line-soft)}.album-cover-choice{display:flex!important;align-items:center;gap:.4rem;margin:0!important}.album-cover-choice input{width:1rem;accent-color:var(--accent)}.album-photo-order{display:flex;gap:1px}.album-photo-order button{min-width:40px;min-height:40px;padding:.35rem .55rem}.album-photo-order button:last-child{border-color:var(--accent);color:var(--accent-dark)}.album-photo-technical{margin:.65rem 0 0;color:var(--muted);font-family:var(--font-mono);font-size:.58rem}.album-featured{align-self:end;min-height:46px;margin:0;padding:.6rem .7rem;border:1px solid var(--line);background:var(--paper)}.album-preview-link{display:flex;min-height:50px;align-items:center;justify-content:center;background:var(--paper-raised);color:var(--ink);font-weight:850;text-decoration:none}.video-admin-section{padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--ink);background:var(--paper-raised)}.video-admin-section>header{margin-bottom:1.2rem;border-bottom:1px solid var(--ink)}.video-admin-section>header h2{margin:.35rem 0 .65rem;font-size:clamp(1.55rem,4vw,2.4rem)}.existing-video-cover{margin-bottom:1.25rem}.existing-video-select{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.6rem}.existing-video-select button{min-height:46px;background:var(--ink);color:var(--on-dark)}#existing-video-editor{margin-top:1rem;padding:1rem;border:1px solid var(--ink);border-left:6px solid var(--accent);background:var(--paper-dark)}#existing-video-editor[hidden]{display:none}#existing-video-editor h3{margin:.35rem 0 1rem}.existing-video-cover-actions{display:flex;flex-wrap:wrap;gap:1px;margin-top:.65rem;padding:1px;background:var(--ink)}.existing-video-cover-actions button{flex:1;min-width:150px;min-height:44px;border:0;background:var(--paper-raised)}.existing-video-cover-actions button:first-child{background:var(--accent);color:var(--on-signal)}.existing-video-cover-actions button:last-child{background:var(--paper-raised);color:var(--accent-dark)}#existing-video-cover-preview{aspect-ratio:16 / 9;max-width:420px;margin:.8rem 0 0;overflow:hidden;border:1px solid var(--ink);background:var(--iron-black)}#existing-video-cover-preview[hidden]{display:none}#existing-video-cover-preview img{width:100%;height:100%;margin:0;border:0;object-fit:cover}.admin-video-analytics{margin-top:1rem;border:1px solid var(--ink);background:var(--paper-raised)}.admin-video-analytics>header{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid var(--ink);background:var(--iron-black);color:var(--on-dark)}.admin-video-analytics h4{margin:.25rem 0 0;font-size:1.25rem}.admin-video-analytics>header .admin-muted{max-width:240px;margin:0;color:var(--on-dark-muted);text-align:right}.admin-video-analytics dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.admin-video-analytics dl>div{min-width:0;padding:.8rem 1rem;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.admin-video-analytics dl>div:nth-child(3n){border-right:0}.admin-video-analytics dl>div:nth-last-child(-n+3){border-bottom:0}.admin-video-analytics dt{color:var(--muted);font-family:var(--font-mono);font-size:.62rem;font-weight:800;letter-spacing:.06em}.admin-video-analytics dd{overflow:hidden;margin:.2rem 0 0;color:var(--accent);font-family:var(--font-display);font-size:clamp(1.35rem,3vw,2rem);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.video-source-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;border:1px solid var(--ink);background:var(--ink)}.video-source-options label{position:relative;display:grid;min-height:96px;align-content:center;margin:0;padding:.8rem 1rem;background:var(--paper);cursor:pointer}.video-source-options input{position:absolute;width:1px;height:1px;opacity:0}.video-source-options label:has(input:checked){background:var(--accent);color:var(--on-signal)}.video-source-options strong{font-size:1rem}.video-source-options small{margin-top:.35rem;color:inherit;font-family:var(--font-mono);font-size:.58rem;letter-spacing:0;text-transform:none}.video-source-options label:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px;z-index:1}.video-source-options label:has(input:checked):has(input:focus-visible){outline-color:var(--ink)}.video-source-panel{margin-top:1px;padding:1rem;border:1px solid var(--ink);border-top:5px solid var(--accent);background:var(--paper-dark)}.video-source-panel[hidden],.video-admin-preview[hidden]{display:none}.video-inline-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.video-inline-action button,#video-upload-btn,#mux-video-upload-btn{min-height:46px;background:var(--ink);color:var(--on-dark)}.bilibili-page-field{display:grid;max-width:180px;grid-template-columns:1fr 72px;align-items:center;gap:.55rem;margin-top:.7rem}.bilibili-page-field label{margin:0}.bilibili-page-field input{min-height:42px}.video-admin-preview{aspect-ratio:16 / 9;margin-top:1rem;overflow:hidden;border:1px solid var(--ink);background:var(--iron-black)}.video-admin-preview iframe{width:100%;height:100%;border:0}.video-upload-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.7rem}.video-cover-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.55rem}.video-cover-actions button{min-height:42px;padding-inline:.9rem;background:var(--ink);color:var(--on-dark)}#video-cover-preview{position:relative;aspect-ratio:16 / 9;max-width:360px;margin:.7rem 0 0;overflow:hidden;border:1px solid var(--ink);background:var(--iron-black)}#video-cover-preview[hidden]{display:none}#video-cover-preview:not([hidden]):after{position:absolute;top:0;right:0;padding:.2rem .45rem;background:var(--accent);color:var(--on-signal);content:"COVER / PREVIEW";font-family:var(--font-mono);font-size:.52rem;font-weight:850;letter-spacing:.08em}#video-cover-preview img{width:100%;height:100%;margin:0;border:0;object-fit:cover}#video-upload-progress,#mux-video-upload-progress{display:block;width:100%;height:18px;margin:.8rem 0;border:1px solid var(--ink);border-radius:0;accent-color:var(--accent)}#video-upload-progress[hidden],#mux-video-upload-progress[hidden]{display:none}#video-url,#mux-playback-id{margin-top:.65rem;font-family:var(--font-mono);font-size:.72rem}.video-publish-flags{display:flex;flex-wrap:wrap;gap:1rem;padding:.8rem;border:1px solid var(--ink);background:var(--paper)}.video-publish-flags .admin-check{flex:1;min-width:220px}.video-publish-flags .admin-check label,.video-publish-flags .admin-check span{margin:0;cursor:pointer;font-family:var(--font-body);font-size:.82rem;letter-spacing:0;text-transform:none}.video-admin-view{display:flex;min-height:50px;align-items:center;justify-content:center;background:var(--paper-raised);color:var(--ink);font-weight:850;text-decoration:none}.video-publish-success{border-left:7px solid var(--accent);background:var(--iron-black);color:var(--on-dark)}.video-publish-success a{color:var(--on-dark);text-decoration-color:var(--accent)}.photo-metadata-options{margin-top:.8rem;border:1px solid var(--ink);background:var(--paper-raised)}.photo-metadata-options summary{min-height:44px;padding:.7rem .8rem;background:var(--iron-black);color:var(--on-dark);cursor:pointer;font-family:var(--font-mono);font-size:.68rem;font-weight:850;letter-spacing:.06em}.photo-metadata-options[open] summary{border-bottom:4px solid var(--accent)}.photo-metadata-options>p,.photo-metadata-options>.admin-row{margin-inline:.8rem}.photo-metadata-options>p{color:var(--muted);font-size:.72rem}.photo-metadata-options>.admin-row:last-child{margin-bottom:.8rem}.album-photo-private{margin-top:.65rem;padding:.55rem .65rem;border:1px solid var(--ink);border-left:4px solid var(--accent);background:var(--accent-wash)}.album-photo-private strong{display:block;margin-bottom:.28rem;color:var(--accent-dark);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.08em}.album-photo-private p{margin:0;color:var(--ink);font-size:.72rem;line-height:1.7;overflow-wrap:anywhere}#access-log>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer}#access-toggle-btn{min-height:40px;padding-inline:.8rem}@media(max-width:640px),(orientation:portrait){.admin-heading{grid-template-columns:1fr;gap:0}.admin-heading .admin-folio{position:absolute;right:0;bottom:.85rem;font-size:3rem}.admin-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.admin-nav a{justify-content:center;padding-inline:.35rem}.admin-actions{grid-template-columns:1fr}.album-select-row,.album-photo-editor>li,.video-source-options,.video-inline-action,.existing-video-select{grid-template-columns:1fr}.admin-video-analytics dl{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-video-analytics dl>div,.admin-video-analytics dl>div:nth-child(3n),.admin-video-analytics dl>div:nth-last-child(-n+3){border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.admin-video-analytics dl>div:nth-child(2n){border-right:0}.admin-video-analytics dl>div:nth-last-child(-n+2){border-bottom:0}.album-select-row label{align-self:auto}.album-photo-thumb{min-height:0;aspect-ratio:16 / 10}.album-photo-card-head{align-items:flex-start;flex-direction:column}.admin-auth-panel{padding:1.5rem 1.25rem;box-shadow:6px 6px 0 var(--accent)}}@media(prefers-reduced-motion:reduce){.admin-auth *,.admin-shell *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
