/* A restrained cinematic identity: the original logo remains untouched. */
.company-intro.brand-intro{animation:none;background:radial-gradient(ellipse at 50% 42%,#fff 0%,#eef4ffdc 43%,#dce8f578 100%);pointer-events:none;z-index:110;overflow:hidden}
.company-intro.brand-intro[hidden]{display:none}
.brand-intro.is-playing{animation:brand-stage-fade 2.4s both}
.brand-puzzle,.brand-resolved{position:absolute;width:180px!important;height:180px!important;border-radius:0!important;box-shadow:none!important}
.brand-puzzle{direction:ltr;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);transform:scale(1.1);filter:drop-shadow(0 16px 22px #18366f16)}
.brand-puzzle-piece{background-image:url('/qiyam-logo.jpg');background-size:500% 500%;background-position:var(--bg-x) var(--bg-y);will-change:transform,opacity}
.is-playing .brand-puzzle-piece{animation:brand-piece-assemble 1.35s cubic-bezier(.16,.85,.2,1) var(--delay) both}
.company-intro.brand-intro .brand-resolved{object-fit:contain;animation:none;opacity:0}
.is-playing .brand-resolved{animation:brand-resolved-in .6s 1.4s both!important}
.is-playing .brand-puzzle{animation:brand-puzzle-out .2s 1.7s forwards}
.brand-orbit{width:280px;height:280px;position:absolute;border:1px solid #4a83dc24;border-radius:50%;box-shadow:0 0 0 30px #628add0a,0 0 0 60px #628add06;opacity:0}
.is-playing .brand-orbit{animation:brand-orbit-in 2s both}
.brand-comet{position:absolute;width:240px;height:4px;background:linear-gradient(90deg,transparent,#69a3f6,#fff);border-radius:100%;filter:drop-shadow(0 0 7px #71a5ef);transform:rotate(-35deg);opacity:0}
.is-playing .brand-comet{animation:brand-comet-pass 1.2s .05s ease-out both}
.brand-spark-ring{position:absolute;width:200px;height:200px;border:1px solid #8cacec;border-radius:50%;opacity:0}
.is-playing .brand-spark-ring{animation:brand-ring .65s 1.45s both}
@keyframes brand-piece-assemble{0%{transform:translate(var(--from-x),var(--from-y)) rotate(var(--rotation)) scale(.15);opacity:0;filter:blur(3px)}35%{opacity:1}100%{transform:translate(0,0) rotate(0) scale(1);opacity:1;filter:blur(0)}}
@keyframes brand-stage-fade{0%,82%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@keyframes brand-resolved-in{to{opacity:1;transform:scale(1.1)}}
@keyframes brand-puzzle-out{to{opacity:0}}
@keyframes brand-orbit-in{0%{opacity:0;transform:scale(.65)}50%{opacity:1}100%{opacity:0;transform:scale(1.2)}}
@keyframes brand-comet-pass{0%{opacity:0;translate:550px -340px}20%{opacity:1}65%{opacity:1;translate:0 0}100%{opacity:0;translate:-200px 130px}}
@keyframes brand-ring{0%{opacity:.6;transform:scale(.6)}100%{opacity:0;transform:scale(1.8)}}
.auth-logo-controls{display:flex;justify-content:center;gap:8px;margin:-14px auto 16px}
.auth-logo-control{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dee7f4;border-radius:50%;background:#f5f8fe;color:#54719b;cursor:pointer;transition:background .2s,transform .2s}
.auth-logo-control:hover,.auth-logo-control:focus-visible{background:#e3edff;transform:translateY(-2px);outline:2px solid #a5bfe6;outline-offset:2px}
.auth-logo-control.is-enabled{background:#e5efff;color:#235caa}
.auth-logo-control svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.user-avatar:has(img){padding:0;overflow:hidden;background:#f4f7fd}
.user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.profile-layout{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);gap:22px;align-items:start}
.profile-portrait{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;padding:36px 22px;gap:16px;background:linear-gradient(160deg,#f4f7ff 0%,#fff 60%);border-color:#dfe7f7}
.profile-portrait-glow{position:absolute;top:-85px;width:260px;height:200px;border-radius:50%;background:#cedeff60;filter:blur(22px);pointer-events:none}
.profile-photo{position:relative;width:148px;height:148px;object-fit:cover;border:6px solid #fff;border-radius:50%;box-shadow:0 12px 30px #2c4c8520}
.profile-portrait h2{margin:0;font-size:21px;overflow-wrap:anywhere;line-height:1.7}
.profile-upload{position:relative;overflow:hidden;cursor:pointer}
.profile-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.profile-upload:focus-within{outline:3px solid #7b9acb;outline-offset:3px}
.profile-details .panel-head{background:linear-gradient(90deg,#fff,#f2f6ff)}
.profile-avatar-choices{border:1px solid #e1e7f2;border-radius:15px;padding:16px;display:flex;gap:12px;flex-wrap:wrap}
.profile-avatar-choices legend{padding:0 8px;font-size:13px;font-weight:600;color:#445372}
.profile-avatar-choice{position:relative;display:flex;flex:1;min-width:110px;align-items:center;flex-direction:column;text-align:center;gap:9px;padding:15px 10px;border:1px solid #e4e9f3;border-radius:12px;font-size:11px;cursor:pointer;background:#fafcff}
.profile-avatar-choice img{width:57px;height:57px;border-radius:50%;object-fit:cover}
.profile-avatar-choice input{position:absolute;top:10px;inset-inline-start:10px;width:14px;height:14px;accent-color:#3467b0}
.profile-avatar-choice:has(input:checked){border-color:#5480c2;background:#edf4ff;box-shadow:0 0 0 2px #5480c217}
.profile-avatar-choice:focus-within{outline:2px solid #7a9dcf}
.profile-scope-note{margin:20px 0 0;padding:12px 15px;border-radius:11px;background:#f6f8fc;color:#657289;font-size:12px;line-height:1.8}
@media(max-width:850px){.profile-layout{grid-template-columns:1fr}.profile-portrait{padding:25px}.profile-photo{width:120px;height:120px}.profile-avatar-choices{gap:8px}.profile-avatar-choice{min-width:90px}.brand-puzzle,.brand-resolved{width:150px!important;height:150px!important}}
@media(prefers-reduced-motion:reduce){.company-intro.brand-intro{display:none}.brand-intro *{animation:none!important}.auth-logo-control{transition:none}.auth-logo-control:hover{transform:none}}
@media print{.profile-layout,.auth-logo-controls,.brand-intro{display:none!important}}
