:root{--app-height:100dvh;--visual-viewport-height:100dvh;--active-viewport-height:100dvh;--keyboard-height:0px;--real-vh:1vh;--screen-width:100vw;--screen-height:100dvh;--safe-area-top:env(safe-area-inset-top);--safe-area-bottom:env(safe-area-inset-bottom);--safe-area-left:env(safe-area-inset-left);--safe-area-right:env(safe-area-inset-right);--qq-primary:#111111;--qq-primary-rgb:17,17,17;--qq-gradient-1:#2c2c2c;--qq-gradient-2:#111111;--user-bubble-bg:#a0e75a;--user-bubble-color:#333;--user-bubble-font-size:14px;--user-bubble-border-width:0px;--user-bubble-border-color:transparent;--user-bubble-border-blur:0px;--user-bubble-glow-color:rgba(0,0,0,0);--user-bubble-glow-intensity:0px;--user-bubble-bg-img:none;--user-bubble-bg-img-opacity:1;--user-bubble-inner-glow:none;--user-bubble-border-img:none;--user-bubble-border-img-opacity:1;--user-bubble-liquid-glass:0px;--user-bubble-radius:16px;--char-bubble-bg:#fff;--char-bubble-color:#333;--char-bubble-font-size:14px;--char-bubble-border-width:0px;--char-bubble-border-color:transparent;--char-bubble-border-blur:0px;--char-bubble-glow-color:rgba(0,0,0,0);--char-bubble-glow-intensity:0px;--char-bubble-bg-img:none;--char-bubble-bg-img-opacity:1;--char-bubble-inner-glow:none;--char-bubble-border-img:none;--char-bubble-border-img-opacity:1;--char-bubble-liquid-glass:0px;--char-bubble-radius:16px;--ios-bg:#ffffff;--glass-bg:rgba(255, 255, 255, 0.25);--glass-border:rgba(255, 255, 255, 0.4);--text-color:#ffffff;--icon-radius:12px;--icon-shadow:0 4px 10px rgba(0,0,0,0.1);--icon-size:48px;--icon-border-width:0px;--icon-border-color:rgba(255,255,255,0.5);--status-bar-opacity:0.2;--status-bar-color:255,255,255;--dock-color:255,255,255;--profile-card-opacity:0.2;--dock-opacity:0.25;--glow-color:rgba(255, 255, 255, 0.5);--icon-glow:0px;--ui-glow:0px;--global-font-size:100%;--global-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-glow:0px;--font-glow-color:rgba(255, 255, 255, 0.8);--safe-area-top:env(safe-area-inset-top);--safe-area-bottom:env(safe-area-inset-bottom);--safe-area-left:env(safe-area-inset-left);--safe-area-right:env(safe-area-inset-right)}*{box-sizing:border-box;-webkit-overflow-scrolling:touch;margin:0;padding:0;box-sizing:border-box;font-family:var(--global-font-family);-webkit-tap-highlight-color:transparent;text-shadow:0 0 var(--font-glow) var(--font-glow-color)}html{background:var(--ios-bg,#000) no-repeat center center;-webkit-text-size-adjust:100%;font-size:var(--global-font-size)}body{background:0 0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;position:relative}.app,.iphone-container{width:100%;height:var(--app-height,100dvh);min-height:var(--app-height,100dvh);display:flex;flex-direction:column;background:var(--ios-bg) no-repeat center center;background-size:cover;color:var(--text-color);padding:0;position:relative;box-sizing:border-box;overflow:hidden}.apps-area{flex:1 1 0;overflow-y:auto;overflow-x:hidden;min-height:0}.dock{flex:0 0 auto;z-index:10}body,html{height:var(--app-height,100dvh);min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;margin:0;padding:0;overflow:hidden;overflow-x:hidden;box-sizing:border-box;width:100%;height:100%;background:var(--ios-bg,#fff);background-size:cover;overscroll-behavior:none;-webkit-overflow-scrolling:touch}#memory-app-page,#offline-mode-page,#theater-page,.qq-page,.settings-page{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh);overflow-y:auto}.status-bar{height:calc(28px + var(--safe-area-top));padding:var(--safe-area-top) 15px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;color:var(--text-color);z-index:2000;background:rgba(var(--status-bar-color),var(--status-bar-opacity));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .5s,box-shadow .3s;box-shadow:0 0 var(--ui-glow) var(--glow-color);position:relative}.status-left{display:flex;align-items:center;font-size:12px}.status-right{display:flex;align-items:center;gap:4px;font-size:12px}.battery-icon{width:22px;height:11px;border:1px solid rgba(255,255,255,.5);border-radius:2.5px;position:relative;padding:1px}.battery-level{height:100%;background-color:#fff;border-radius:1px;width:0%}.battery-icon::after{content:'';position:absolute;right:-3px;top:3px;width:2px;height:4px;background:rgba(255,255,255,.5);border-radius:0 1px 1px 0}.home-screen{background:center/cover no-repeat;flex:1 1 0;min-height:0;display:flex;flex-direction:column;align-items:stretch;position:relative;overflow:hidden;-webkit-overflow-scrolling:touch}.home-pages-viewport{width:100%;flex:1 1 auto;min-height:0;overflow:hidden}.home-pages-track{display:flex;width:200%;height:100%;transform:translateX(0);transition:transform .28s cubic-bezier(.32, .72, 0, 1);will-change:transform}.home-page{width:50%;height:100%;flex-shrink:0;padding:20px 20px 10px;display:flex;flex-direction:column;align-items:center;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.home-page::-webkit-scrollbar{display:none}.home-page-secondary{justify-content:flex-start;align-items:center}.home-secondary-content{width:100%;max-width:420px;margin-top:6px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px}.home-secondary-docs-row{width:100%;max-width:380px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:172px;align-items:center;padding:0 8px;box-sizing:border-box}.home-secondary-apps{width:100%;max-width:380px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 8px;box-sizing:border-box}.home-secondary-apps .app-item{gap:6px}.home-secondary-apps .app-name{font-size:.65rem}.home-secondary-bottom-apps{width:100%;max-width:380px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 8px;box-sizing:border-box}.home-secondary-bottom-apps .app-item{gap:6px}.home-secondary-bottom-apps .app-item--featured{grid-column:1;justify-self:stretch;width:100%}.home-secondary-bottom-apps .app-name{font-size:.65rem}.home-secondary-student-id-card{position:relative;grid-column:1/span 2;grid-row:1;margin-top:0;min-height:0;width:100%;justify-self:stretch;align-self:center;--work-lanyard-length:40px;border-radius:18px;padding:19px 8px 2px;border:1px solid transparent;background:linear-gradient(142deg,rgba(241,247,255,.97) 0,rgba(232,240,251,.96) 45%,rgba(219,230,245,.97) 100%) padding-box,linear-gradient(120deg,rgba(162,171,184,.96) 0,rgba(244,248,254,.98) 24%,rgba(138,148,163,.95) 46%,rgba(244,248,254,.98) 68%,rgba(142,151,166,.95) 84%,rgba(219,226,236,.97) 100%) border-box;background-size:100% 100%,220% 220%;box-shadow:0 14px 28px rgba(28,44,69,.2),0 4px 9px rgba(28,44,69,.15),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(197,210,230,.48);display:flex;flex-direction:column;overflow:visible;cursor:pointer;isolation:isolate;animation:7.2s linear infinite student-id-border-flow}.home-secondary-receipt-card{position:relative;grid-column:3/span 2;grid-row:1;margin-top:0;width:100%;min-height:0;justify-self:stretch;align-self:center}.home-secondary-receipt-hanger{position:absolute;left:50%;top:-2px;width:84%;height:12px;transform:translateX(-50%);border-radius:8px;background:linear-gradient(180deg,#7d848f 0,#636a75 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 2px 5px rgba(34,40,50,.28);z-index:3}.home-secondary-receipt-paper{position:relative;margin-top:8px;border-radius:14px;border:1px solid rgba(205,210,219,.95);background:linear-gradient(180deg,#fafbfd 0,#f2f4f8 100%);box-shadow:0 8px 16px rgba(63,74,93,.18),inset 0 1px 0 rgba(255,255,255,.85);padding:12px 9px 10px;overflow:hidden}.home-secondary-receipt-paper::before{content:'';position:absolute;inset:5px;border:1px dashed rgba(189,196,209,.72);border-radius:10px;pointer-events:none}.home-secondary-receipt-image-wrap{position:relative;z-index:1;height:82px;border-radius:8px;overflow:hidden;border:1px solid rgba(205,212,224,.92);background:#eef1f6;box-shadow:inset 0 1px 0 rgba(255,255,255,.74);cursor:pointer}.home-secondary-receipt-image{width:100%;height:100%;object-fit:cover;display:block}.home-secondary-receipt-text-wrap{position:relative;z-index:1;margin-top:8px;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));row-gap:4px}.home-secondary-receipt-text-line{min-height:14px;font-size:.43rem;color:#7d8799;line-height:1.1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px dashed rgba(185,193,207,.74);padding:0 2px 2px;cursor:text}.home-secondary-receipt-text-line:last-child{border-bottom:none;padding-bottom:0}.home-secondary-receipt-text-line:focus{outline:0;border-radius:3px;background:rgba(255,255,255,.72);box-shadow:0 0 0 2px rgba(169,182,205,.26)}.home-secondary-receipt-text-line:empty::before{content:attr(data-placeholder);color:#a2abbd}.home-secondary-receipt-card.camera-shell-54{width:100%;max-width:192px;aspect-ratio:1/1;justify-self:center;align-self:start;min-height:0;background:url('../data/receipt-shell-54-laochengzi.png') center center/100% 100% no-repeat}.camera-shell-54 .home-secondary-receipt-hanger{display:none}.camera-shell-54 .home-secondary-receipt-paper{position:absolute;left:23.52%;top:28.88%;width:37.96%;height:49.96%;margin-top:0;padding:0;border:none;border-radius:0;background:0 0;box-shadow:none;overflow:hidden}.camera-shell-54 .home-secondary-receipt-paper::before{display:none}.camera-shell-54 .home-secondary-receipt-image-wrap{position:absolute;inset:0 -3.4% 0 -3.4%;height:100%;border-radius:0;border:none;background:0 0;box-shadow:none}.camera-shell-54 .home-secondary-receipt-image{width:100%;height:100%;display:block;object-fit:cover}.camera-shell-54 .home-secondary-receipt-text-wrap{display:none}.home-secondary-student-id-card::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(122deg,rgba(255,255,255,.34) 0,rgba(255,255,255,.08) 34%,rgba(255,255,255,0) 57%),repeating-linear-gradient(122deg,rgba(193,201,214,.15) 0 2px,rgba(193,201,214,0) 2px 7px);mix-blend-mode:screen;opacity:.55;z-index:0;pointer-events:none}.home-secondary-student-id-card::after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(166deg,rgba(255,255,255,.6) 0,rgba(255,255,255,.16) 28%,rgba(255,255,255,0) 55%),radial-gradient(circle at 16% 3%,rgba(255,255,255,.8),rgba(255,255,255,0) 46%),linear-gradient(112deg,rgba(255,255,255,0) 43%,rgba(255,255,255,.35) 50%,rgba(255,255,255,0) 57%);opacity:.78;z-index:1;pointer-events:none}.home-secondary-student-id-title{position:absolute;top:8px;left:14px;font-size:.42rem;font-weight:700;letter-spacing:.12em;color:rgba(90,113,149,.9);text-shadow:0 1px 0 rgba(255,255,255,.7);z-index:3}.home-secondary-student-id-lanyard{position:absolute;top:-12px;left:50%;width:58px;height:var(--work-lanyard-length);transform:translateX(-50%);z-index:4;pointer-events:none}.home-secondary-student-id-lanyard::after,.home-secondary-student-id-lanyard::before{content:'';position:absolute;top:0;width:10px;height:calc(var(--work-lanyard-length) - 2px);border-radius:8px;background:linear-gradient(180deg,#eef3fb 0,#cfd7e4 44%,#b8c2d1 100%);border:1px solid rgba(129,141,160,.52);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 2px 4px rgba(39,52,71,.22)}.home-secondary-student-id-lanyard::before{left:12px;transform:rotate(15deg);transform-origin:bottom center}.home-secondary-student-id-lanyard::after{right:12px;transform:rotate(-15deg);transform-origin:bottom center}.home-secondary-student-id-clip{position:absolute;top:4px;left:50%;width:32px;height:20px;border-radius:7px 7px 10px 10px;transform:translateX(-50%);background:linear-gradient(160deg,#f7f8fb 0,#bfc6d1 52%,#e0e4eb 100%);border:1px solid rgba(102,111,124,.5);box-shadow:0 5px 10px rgba(32,41,54,.34),inset 0 1px 0 rgba(255,255,255,.8),inset 0 -1px 0 rgba(108,120,136,.32);z-index:4}.home-secondary-student-id-clip::after{content:'';position:absolute;left:50%;top:5px;width:7px;height:7px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle at 30% 30%,#e8ebf0 0,#8c94a4 78%);border:1px solid rgba(84,95,109,.55)}.home-secondary-student-id-inner{position:relative;z-index:3;display:flex;align-items:flex-start;gap:7px;flex:0 0 auto;min-height:0;padding:7px 7px 0;border-radius:12px;border:1px solid rgba(169,186,213,.45);background:linear-gradient(180deg,rgba(252,254,255,.96) 0,rgba(237,245,255,.94) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),inset 0 -6px 14px rgba(166,188,215,.2)}.home-secondary-student-id-inner::before{content:'';position:absolute;inset:5px;border-radius:8px;border:1px dashed rgba(126,139,159,.35);pointer-events:none}.home-secondary-student-id-inner::after{content:'';position:absolute;top:-8%;left:-22%;width:56%;height:128%;transform:rotate(18deg);background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,0));opacity:.34;pointer-events:none}.home-secondary-student-id-photo-wrap{width:52px;aspect-ratio:13/18;border-radius:8px;overflow:hidden;flex-shrink:0;background:#d9deea;border:1px solid rgba(118,129,147,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.74),0 2px 6px rgba(74,88,109,.18)}.home-secondary-student-id-photo{width:100%;height:100%;object-fit:cover}.home-secondary-student-id-info{min-width:0;flex:1;align-self:stretch;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));row-gap:0;align-items:stretch;padding-top:0;padding-bottom:0}.home-secondary-student-id-line{display:flex;align-items:center;min-width:0;height:100%;font-size:.46rem;color:#4f5768;line-height:1.06;padding:0;text-shadow:none}.home-secondary-student-id-line:last-child{padding-bottom:0}.home-secondary-student-id-line .id-line-value{min-width:0;color:#3c4962;font-size:.45rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;line-height:1.06;padding:0 2px;cursor:text;display:block;border-bottom:1px solid rgba(160,177,203,.36)}.home-secondary-student-id-line:last-child .id-line-value{border-bottom:none}.home-secondary-student-id-line .id-line-value[contenteditable=true]:focus{outline:0;background:rgba(255,255,255,.65);border-radius:3px;box-shadow:0 0 0 2px rgba(145,169,205,.24)}.home-secondary-student-id-line .id-line-value[contenteditable=true]:empty::before{content:attr(data-placeholder);color:#9fa8b9}@keyframes student-id-border-flow{0%{background-position:0 0,0 50%}100%{background-position:0 0,220% 50%}}.home-secondary-student-id-card.work-id-shell-2{width:100%;max-width:192px;aspect-ratio:1/1;justify-self:center;align-self:start;min-height:0;padding:0;border:none;border-radius:0;background:url('../data/work-id-shell-2.png') center center/100% 100% no-repeat;box-shadow:none;animation:none;overflow:visible;isolation:isolate}.home-secondary-student-id-card.work-id-shell-2::after,.home-secondary-student-id-card.work-id-shell-2::before,.work-id-shell-2 .home-secondary-student-id-clip,.work-id-shell-2 .home-secondary-student-id-lanyard,.work-id-shell-2 .home-secondary-student-id-title{display:none}.work-id-shell-2 .home-secondary-student-id-inner{position:absolute;left:15%;right:15%;top:41%;bottom:9%;z-index:2;display:flex;align-items:center;gap:7px;padding:0;border:none;border-radius:0;background:0 0;box-shadow:none}.work-id-shell-2 .home-secondary-student-id-inner::after,.work-id-shell-2 .home-secondary-student-id-inner::before{display:none}.work-id-shell-2 .home-secondary-student-id-photo-wrap{width:34%;aspect-ratio:0.78;border-radius:8px;overflow:hidden;border:1px solid rgba(206,209,214,.78);background:rgba(247,248,250,.96);box-shadow:0 1px 3px rgba(24,28,34,.08)}.work-id-shell-2 .home-secondary-student-id-photo{object-fit:cover}.work-id-shell-2 .home-secondary-student-id-info{padding-top:2px;padding-bottom:0;row-gap:3px}.work-id-shell-2 .home-secondary-student-id-line{align-items:center;min-height:0;font-size:.42rem;color:#7e8795;line-height:1.08}.work-id-shell-2 .home-secondary-student-id-line .id-line-value{width:100%;font-size:.42rem;color:#7b8593;border-bottom:1px solid rgba(195,198,205,.5);padding:0 1px 1px;line-height:1.08;background:0 0}.work-id-shell-2 .home-secondary-student-id-line .id-line-value[contenteditable=true]:focus{background:rgba(255,255,255,.58);box-shadow:0 0 0 2px rgba(211,215,223,.28)}.work-id-shell-2 .home-secondary-student-id-line .id-line-value[contenteditable=true]:empty::before{color:#b9bec7}.secondary-app-text{font-size:calc(var(--icon-size) * .38);line-height:1;font-weight:700;color:#2c6b4a;text-shadow:0 1px 0 rgba(255,255,255,.45);user-select:none}.dlsite-app-text{font-size:calc(var(--icon-size) * .28);letter-spacing:.02em;color:#333;text-shadow:none}.psp-shell{position:relative;width:min(100%,420px);height:clamp(150px,24vh,215px);border-radius:42px;padding:14px 15px 40px;display:grid;grid-template-columns:minmax(68px,0.9fr) minmax(170px,2.4fr) minmax(68px,0.9fr);align-items:center;gap:10px;background:linear-gradient(145deg,#fff 0,#f5f7fa 28%,#e4e9ef 60%,#f1f4f8 100%);border:none;box-shadow:inset 0 14px 20px rgba(255,255,255,.72),inset 0 -16px 24px rgba(126,139,157,.22),inset 10px 0 14px rgba(255,255,255,.2),inset -10px 0 14px rgba(110,124,142,.11),0 14px 24px rgba(22,31,43,.22),0 6px 10px rgba(18,25,35,.13);transform:rotate(0);transform-origin:center center;overflow:visible}.psp-shell::before{content:'';position:absolute;inset:0 0 auto;height:100%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.42) 0,rgba(255,255,255,.05) 28%,rgba(0,0,0,.04) 100%),radial-gradient(circle at 20% 14%,rgba(255,255,255,.58),transparent 30%),radial-gradient(circle at 82% 82%,rgba(170,183,201,.25),transparent 38%),repeating-linear-gradient(120deg,rgba(255,255,255,.04) 0 2px,rgba(255,255,255,0) 2px 7px);pointer-events:none}.psp-shell::after{content:'';position:absolute;left:9%;right:9%;bottom:-22px;height:38px;border-radius:50%;background:radial-gradient(circle,rgba(12,17,24,.26) 0,rgba(12,17,24,0) 72%);pointer-events:none}.psp-clear-shell{position:absolute;inset:-6px -7px -8px;border-radius:48px;border:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,.33),inset 0 10px 14px rgba(255,255,255,.37),inset 0 -14px 20px rgba(124,140,160,.18),inset 2px 0 4px rgba(255,255,255,.22),inset -2px 0 4px rgba(123,140,162,.14),0 2px 5px rgba(111,123,139,.24);z-index:4;pointer-events:none}.psp-clear-shell::before{content:'';position:absolute;inset:4px;border-radius:42px;border:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}.psp-clear-gloss{position:absolute;inset:-3px;border-radius:44px;background:linear-gradient(125deg,rgba(255,255,255,.72) 0,rgba(255,255,255,.18) 24%,rgba(255,255,255,0) 46%),radial-gradient(circle at 24% 16%,rgba(255,255,255,.34),transparent 40%);z-index:5;pointer-events:none;mix-blend-mode:screen}.psp-mic-hole{position:absolute;top:40px;width:10px;height:5px;border-radius:999px;background:rgba(74,68,72,.8);box-shadow:inset 0 1px 1px rgba(255,255,255,.25);z-index:2}.psp-mic-hole.left{left:14px}.psp-mic-hole.right{right:94px}.psp-left-cluster,.psp-right-cluster{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;z-index:2}.psp-left-cluster::after,.psp-right-cluster::after{content:'';position:absolute;bottom:20px;width:18px;height:18px;background:radial-gradient(circle,#14181e 34%,transparent 38%) 0 0/6px 6px,radial-gradient(circle,#14181e 34%,transparent 38%) 3px 3px/6px 6px;opacity:.95;filter:drop-shadow(0 1px 0 rgba(255, 255, 255, .18))}.psp-left-cluster::after{right:-2px}.psp-right-cluster::after{left:-2px}.psp-pad-ring{width:clamp(54px,16vw,70px);height:clamp(54px,16vw,70px);border-radius:50%;background:linear-gradient(155deg,rgba(246,249,252,.95),rgba(217,226,237,.95));border:1px solid rgba(174,187,203,.66);box-shadow:inset 0 2px 3px rgba(255,255,255,.8),inset 0 -4px 7px rgba(121,138,160,.3);display:flex;align-items:center;justify-content:center}.psp-pad-grid{position:relative;width:80%;height:80%}.pad-btn{position:absolute;width:42%;height:42%;display:flex;align-items:center;justify-content:center;font-size:.66rem;color:rgba(124,138,155,.86);background:linear-gradient(150deg,rgba(250,252,255,.98),rgba(216,226,238,.98));border:1px solid rgba(167,181,200,.84);clip-path:polygon(50% 0%,100% 36%,84% 100%,16% 100%,0% 36%);box-shadow:inset 0 2px 2px rgba(255,255,255,.82),inset 0 -3px 5px rgba(117,136,159,.34);text-shadow:0 1px 0 rgba(255,255,255,.7)}.pad-btn.up{top:0;left:29%}.pad-btn.left{left:0;top:29%}.pad-btn.right{right:0;top:29%}.pad-btn.down{bottom:0;left:29%}.psp-analog-wrap{width:clamp(29px,9vw,38px);height:clamp(29px,9vw,38px);border-radius:50%;background:linear-gradient(155deg,rgba(246,249,253,.95),rgba(212,221,234,.95));border:1px solid rgba(163,178,198,.78);box-shadow:inset 0 2px 3px rgba(255,255,255,.78),inset 0 -4px 6px rgba(114,132,156,.32);display:flex;align-items:center;justify-content:center}.psp-analog-core{width:78%;height:78%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0,#ecf1f7 65%,#cdd7e3 100%);box-shadow:inset 0 2px 3px rgba(255,255,255,.9),inset 0 -4px 8px rgba(114,132,158,.32)}.psp-screen-wrap{position:relative;z-index:2;width:100%;height:100%;min-height:92px;max-height:150px;border-radius:9px;background:linear-gradient(145deg,#8b9299 0,#676d73 54%,#4e5358 100%);border:1.6px solid rgba(123,134,146,.9);overflow:hidden;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.27),inset 0 0 14px rgba(0,0,0,.26),0 3px 8px rgba(67,80,96,.22)}.psp-screen-image{width:100%;height:100%;object-fit:cover;display:none;filter:saturate(1.05) contrast(1.05)}.psp-screen-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;color:rgba(238,244,248,.86);font-size:.7rem;letter-spacing:.05em;background:linear-gradient(150deg,rgba(155,160,163,.22),rgba(83,88,92,.62)),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,rgba(0,0,0,0) 1px 4px)}.psp-screen-gloss{position:absolute;inset:0;background:linear-gradient(134deg,rgba(255,255,255,.34) 0,rgba(255,255,255,.08) 28%,rgba(255,255,255,0) 52%),linear-gradient(20deg,rgba(255,255,255,.1),rgba(255,255,255,0) 46%);mix-blend-mode:screen;pointer-events:none}.psp-action-ring{width:clamp(56px,16vw,72px);height:clamp(56px,16vw,72px);border-radius:50%;background:linear-gradient(154deg,rgba(246,249,253,.95),rgba(213,222,235,.95));border:1px solid rgba(168,182,200,.66);box-shadow:inset 0 2px 3px rgba(255,255,255,.84),inset 0 -4px 7px rgba(114,132,154,.31);position:relative;display:flex;align-items:center;justify-content:center}.psp-action-btn{position:absolute;width:clamp(20px,6.5vw,26px);height:clamp(20px,6.5vw,26px);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:rgba(96,110,126,.95);background:linear-gradient(160deg,rgba(251,253,255,.98),rgba(215,225,238,.98));border:1px solid rgba(165,178,197,.82);box-shadow:inset 0 1px 2px rgba(255,255,255,.82),inset 0 -3px 5px rgba(110,129,154,.34);text-shadow:0 1px 0 rgba(255,255,255,.7)}.psp-action-btn.top{top:4px;left:50%;transform:translateX(-50%)}.psp-action-btn.left{left:4px;top:50%;transform:translateY(-50%)}.psp-action-btn.right{right:4px;top:50%;transform:translateY(-50%)}.psp-action-btn.bottom{bottom:4px;left:50%;transform:translateX(-50%)}.psp-action-center{width:clamp(18px,5.6vw,22px);height:clamp(18px,5.6vw,22px);border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,#dce4ef 78%);box-shadow:inset 0 1px 2px rgba(255,255,255,.82),0 1px 4px rgba(112,129,154,.5)}.psp-power-text{margin-top:-1px;font-size:.58rem;letter-spacing:.04em;color:rgba(98,110,126,.9)}.psp-led-row{display:flex;align-items:center;gap:4px}.psp-led-star{font-size:.62rem;color:rgba(245,248,255,.96);text-shadow:0 0 3px rgba(255,255,255,.88)}.psp-led-dot{width:6px;height:6px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f6ffef,#b8d684 78%);box-shadow:0 0 4px rgba(203,236,122,.75)}.psp-bottom-strip{position:absolute;left:72px;right:44px;bottom:8px;height:24px;border-radius:18px;background:linear-gradient(160deg,rgba(248,251,255,.98),rgba(214,223,236,.98));border:1px solid rgba(169,181,200,.74);display:flex;align-items:center;justify-content:space-between;padding:0 8px;gap:4px;box-shadow:inset 0 1px 2px rgba(255,255,255,.84),inset 0 -3px 6px rgba(113,132,158,.3);z-index:2}.strip-btn,.strip-label{color:rgba(102,114,130,.92);text-shadow:0 1px 0 rgba(255,255,255,.72);white-space:nowrap}.strip-btn{min-width:16px;height:14px;padding:0 4px;border-radius:999px;border:1px solid rgba(165,179,198,.72);background:linear-gradient(160deg,rgba(251,253,255,.98),rgba(216,226,238,.98));display:inline-flex;align-items:center;justify-content:center;font-size:.52rem;box-shadow:inset 0 1px 1px rgba(255,255,255,.72)}.strip-label{font-size:.5rem;letter-spacing:.02em}.strip-center{flex:1 0 28px;max-width:40px;min-width:24px;height:10px;border-radius:999px;background:linear-gradient(160deg,rgba(251,253,255,.92),rgba(221,230,241,.92));border:1px solid rgba(164,179,198,.72);position:relative}.strip-center::before{content:'PSP';position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font-size:.43rem;letter-spacing:.08em;color:rgba(104,116,132,.85)}.psp-shell.psvita-shell{width:min(100%,440px);height:auto;aspect-ratio:2157/1217;padding:0;display:block;background:url('../data/game-console-shell-6.png') center center/100% 100% no-repeat;border:none;border-radius:0;box-shadow:none;overflow:visible;filter:none}.psp-shell.psvita-shell::after,.psp-shell.psvita-shell::before,.psvita-shell .psp-bottom-strip,.psvita-shell .psp-clear-gloss,.psvita-shell .psp-clear-shell,.psvita-shell .psp-left-cluster,.psvita-shell .psp-mic-hole,.psvita-shell .psp-right-cluster{display:none}.psvita-shell .psp-screen-wrap{position:absolute;left:24.36%;top:20.96%;width:52.58%;height:53.62%;min-height:0;max-height:none;border-radius:0;background:#000;border:none;overflow:hidden;box-shadow:none;z-index:2}.psvita-shell .psp-screen-image{display:block;position:absolute;inset:-10px -4px;width:calc(100% + 8px);height:calc(100% + 20px);max-width:none;max-height:none;margin:0}.psvita-shell .psp-screen-image:not([src]),.psvita-shell .psp-screen-image[src=""]{display:none}.psvita-shell .psp-screen-placeholder{font-size:.68rem;letter-spacing:.04em;color:rgba(244,247,252,.88);background:linear-gradient(160deg,rgba(18,18,18,.56),rgba(0,0,0,.78)),repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 4px)}.psvita-shell .psp-screen-gloss{background:linear-gradient(135deg,rgba(255,255,255,.18) 0,rgba(255,255,255,.05) 24%,rgba(255,255,255,0) 46%),linear-gradient(20deg,rgba(255,255,255,.08),rgba(255,255,255,0) 48%)}@media (max-width:420px){.psp-shell{padding:12px 12px 36px;grid-template-columns:minmax(60px,0.9fr) minmax(150px,2.4fr) minmax(60px,0.9fr);transform:rotate(0)}.psp-bottom-strip{left:64px;right:38px;bottom:7px;padding:0 6px;gap:3px}.strip-btn{min-width:14px;font-size:.48rem;padding:0 3px}.psp-shell.psvita-shell{width:min(100%,400px)}}.home-pagination{display:none!important;visibility:hidden!important;pointer-events:none!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;overflow:hidden!important;flex:0 0 0!important}.home-page-dot{width:6px;height:6px;border-radius:50%;border:0;background:rgba(255,255,255,.4);box-shadow:0 1px 3px rgba(0,0,0,.35);cursor:pointer;transition:background .25s,transform .25s}.home-page-dot.active{background:rgba(255,255,255,.95);transform:scale(1.15)}.widgets-container{width:100%;max-width:400px;margin-top:8px}.merged-widget{width:100%;background:0 0;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;color:var(--text-color);box-shadow:none}.merged-widget .clock-part{display:flex;flex-direction:column}.merged-widget .time{font-size:2rem;font-weight:300;line-height:1}.merged-widget .date{font-size:.75rem;opacity:.8}.merged-widget .weather-part{text-align:right}.merged-widget .location{font-size:.9rem;font-weight:600}.merged-widget .temp{font-size:1.5rem;font-weight:300}.profile-card{width:100%;max-width:400px;min-height:120px;margin-top:10px;background:rgba(255,255,255,var(--profile-card-opacity));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:28px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-color);padding:10px;box-shadow:0 8px 32px rgba(0,0,0,.1),0 0 var(--ui-glow) var(--glow-color);position:relative;overflow:hidden;cursor:pointer;transition:box-shadow .3s}.profile-card-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:var(--profile-card-opacity);display:none}.avatar-container{width:55px;height:55px;min-width:55px;min-height:55px;aspect-ratio:1;border-radius:50%;overflow:hidden;border:2px solid rgba(255,255,255,.5);margin-bottom:6px;cursor:pointer;background:#eee;display:flex;justify-content:center;align-items:center;flex-shrink:0;transition:.3s}.avatar-container img{width:100%;height:100%;object-fit:cover}.profile-info{text-align:center;width:100%}.profile-location{font-size:.55rem;opacity:.6;margin-bottom:2px;outline:0}.profile-signature{font-size:.7rem;font-weight:400;opacity:.5;font-style:italic;outline:0}.anniversary-container{width:100%;max-width:400px;margin-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.anniversary-widget{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;padding:15px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-color);box-shadow:0 8px 32px rgba(0,0,0,.1),0 0 var(--ui-glow) var(--glow-color);aspect-ratio:1/1;position:relative;overflow:hidden;cursor:pointer;transition:box-shadow .3s}.anniversary-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.8}.anniversary-content{display:flex;flex-direction:column;align-items:center;text-shadow:0 2px 4px rgba(0,0,0,.5),0 0 var(--font-glow) var(--font-glow-color);pointer-events:none;z-index:1}.anniversary-title{font-size:.75rem;opacity:.9;margin-bottom:5px;pointer-events:auto}.anniversary-days{font-size:2.2rem;font-weight:700;line-height:1;pointer-events:auto}.anniversary-unit{font-size:.7rem;margin-top:5px;opacity:.8}.empty-apps-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px}.apps-sticker-container{width:100%;max-width:400px;margin-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.apps-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.app-item{display:flex;flex-direction:column;align-items:center;gap:3px}.app-icon{width:var(--icon-size);height:var(--icon-size);min-width:var(--icon-size);min-height:var(--icon-size);aspect-ratio:1;flex-shrink:0;border-radius:var(--icon-radius);background:rgba(255,255,255,.25);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-size:100% 100%;background-position:center;background-repeat:no-repeat;box-shadow:var(--icon-shadow),0 0 var(--icon-glow) var(--glow-color);border:var(--icon-border-width) solid var(--icon-border-color);display:flex;align-items:center;justify-content:center;font-size:calc(var(--icon-size) * .18);color:#333;font-weight:700;overflow:hidden;transition:.3s}.app-name{font-size:.7rem;color:var(--text-color);text-shadow:0 1px 2px rgba(0,0,0,.5),0 0 var(--font-glow) var(--font-glow-color);transition:color .3s}.big-sticker-container{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.15);transition:transform .3s,box-shadow .3s;aspect-ratio:1/1}.big-sticker-container:active{transform:scale(.98)}.big-sticker-container img{width:100%;height:100%;object-fit:cover}.app-icon{background-color:rgba(255,255,255,.25)}.app-icon svg{stroke:#333}.dock{height:75px;margin:10px 20px 0;background:rgba(var(--dock-color),var(--dock-opacity));backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:30px;display:flex;justify-content:space-evenly;align-items:center;padding:0 10px;box-shadow:0 0 var(--ui-glow) var(--glow-color);transition:box-shadow .3s;flex-shrink:0}.dock-icon{width:var(--icon-size);height:var(--icon-size);min-width:var(--icon-size);min-height:var(--icon-size);aspect-ratio:1;flex-shrink:0;background:rgba(255,255,255,.25);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-size:100% 100%;background-position:center;background-repeat:no-repeat;border-radius:var(--icon-radius);box-shadow:var(--icon-shadow),0 0 var(--icon-glow) var(--glow-color);border:var(--icon-border-width) solid var(--icon-border-color);display:flex;align-items:center;justify-content:center;font-size:calc(var(--icon-size) * .43);overflow:hidden;transition:.3s}[onclick],button{touch-action:manipulation}.icon-cece,.icon-confessional,.icon-data,.icon-dlsite,.icon-douban,.icon-ledger,.icon-life,.icon-lofter,.icon-msg,.icon-phone,.icon-sonnet{background-color:rgba(255,255,255,.25)}.icon-data svg,.icon-msg svg,.icon-phone svg{stroke:#333}.icon-dlsite .dlsite-app-text{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.icon-lofter{background-color:rgba(255,255,255,.25)}.icon-lofter .lofter-app-text{font-size:calc(var(--icon-size) * .4);line-height:1;font-weight:800;color:#2c6b4a}.icon-confessional{background-color:rgba(255,255,255,.25)}.icon-confessional .confessional-app-text{font-size:calc(var(--icon-size) * .36);line-height:1;font-weight:800;color:#2c6b4a}.icon-calendar{background-color:rgba(255,255,255,.25)}.icon-calendar svg{stroke:#333;width:58%;height:58%;max-width:28px;max-height:28px}.beauty-page,.settings-page,.world-book-page{position:absolute;top:0;left:0;width:100%;height:var(--app-height,100dvh);min-height:var(--app-height,100dvh);background:rgba(0,0,0,.85);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);z-index:1000;display:none;flex-direction:column;padding:60px 20px calc(20px + 0px);color:#fff;overflow-y:auto;animation:.3s fadeIn;box-sizing:border-box}#settings-page,#world-book-page{padding:0;overflow:hidden;background:#fff;display:none;flex-direction:column;height:var(--app-height,100dvh);min-height:var(--app-height,100dvh)}#settings-page>div[style*="overflow-y: auto"],#world-book-page>div[style*="overflow-y: auto"]{padding-bottom:calc(0px + 20px);box-sizing:border-box;-webkit-overflow-scrolling:touch}#world-book-detail-modal{height:var(--app-height,100dvh);min-height:var(--app-height,100dvh);overflow:hidden}#world-book-detail-modal>div[style*="overflow-y: auto"]{padding-bottom:calc(0px + 20px);box-sizing:border-box;-webkit-overflow-scrolling:touch}@keyframes fadeIn{from{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.beauty-header,.settings-header,.world-book-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.close-btn{background:rgba(255,255,255,.2);border:none;color:#fff;padding:8px 15px;border-radius:15px;cursor:pointer}.beauty-section,.settings-section,.world-book-section{margin-bottom:25px;background:rgba(255,255,255,.1);padding:15px;border-radius:20px;border:1px solid rgba(255,255,255,.1)}.beauty-section h3,.settings-section h3,.world-book-section h3{font-size:1rem;margin-bottom:15px;opacity:.9}.category-header{font-size:.85rem;font-weight:700;margin:20px 0 10px;padding-left:5px;color:#007aff;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(0,122,255,.3);padding-bottom:5px}.rule-item{background:rgba(255,255,255,.05);border-radius:15px;padding:15px;margin-bottom:12px;border:1px solid rgba(255,255,255,.1);transition:.3s}.rule-item:hover{background:rgba(255,255,255,.08);transform:translateY(-2px)}.rule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.rule-title{font-weight:600;font-size:.9rem;color:#007aff}.rule-content{font-size:.8rem;opacity:.8;line-height:1.4;margin-bottom:10px;white-space:pre-wrap}.rule-meta{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;opacity:.5}.rule-actions{display:flex;gap:10px}.switch{position:relative;display:inline-block;width:40px;height:20px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:rgba(255,255,255,.2);transition:.4s;border-radius:20px}.slider:before{position:absolute;content:"";height:16px;width:16px;left:2px;bottom:2px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:#34c759}input:checked+.slider:before{transform:translateX(20px)}.switch.light .slider{background-color:#e0e0e0}.switch.light input:checked+.slider{background-color:#34c759}.rule-input-area{display:flex;flex-direction:column;gap:10px}.rule-input-area input,.rule-input-area textarea{width:100%;padding:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;outline:0;font-size:.9rem}.rule-input-area textarea{height:100px;resize:none}.wallpaper-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wallpaper-item{aspect-ratio:9/16;border-radius:10px;background-size:cover;background-position:center;cursor:pointer;border:2px solid transparent}.wallpaper-item.active{border-color:#007aff}.icon-upload-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.icon-upload-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px;cursor:pointer;transition:.2s;display:flex;flex-direction:column;align-items:center}.icon-upload-item:hover{background:rgba(255,255,255,.15);transform:translateY(-2px)}.icon-upload-preview{width:45px;height:45px;border-radius:var(--icon-radius);display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:4px;background-size:100% 100%;background-position:center;background-repeat:no-repeat;transition:.3s;overflow:hidden;border:var(--icon-border-width) solid var(--icon-border-color);box-shadow:var(--icon-shadow),0 0 var(--icon-glow) var(--glow-color)}.control-group{margin-bottom:15px}.control-group label{display:block;font-size:.8rem;margin-bottom:8px;opacity:.7}.control-group input[type=range]{width:100%;accent-color:#007aff}.action-btn,.upload-btn{width:100%;padding:12px;background:#007aff;border:none;border-radius:12px;color:#fff;font-weight:600;margin-top:10px;cursor:pointer;transition:.2s;display:flex;justify-content:center;align-items:center;gap:8px}.action-btn:active{transform:scale(.98);opacity:.9}.action-btn.secondary{background:rgba(255,255,255,.15)}#beauty-page{background:#fff;color:#111;backdrop-filter:none;-webkit-backdrop-filter:none}#beauty-page .beauty-header{margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #111}#beauty-page .beauty-header h2{color:#111;font-weight:700;letter-spacing:.02em}#beauty-page .beauty-section{background:#fff;border:1px solid #111;border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,.04)}#beauty-page .beauty-section h3{color:#111;opacity:1;font-weight:600}#beauty-page .beauty-section p,#beauty-page .control-group label,#beauty-page .icon-upload-item>div:last-child{color:#222;opacity:1}#beauty-page .action-btn,#beauty-page .close-btn,#beauty-page .upload-btn{background:#111!important;color:#fff!important;border:1px solid #111;border-radius:999px}#beauty-page .close-btn{width:auto;margin-top:0;padding:8px 16px}#beauty-page .action-btn:active,#beauty-page .close-btn:active,#beauty-page .upload-btn:active{transform:scale(.98);opacity:.88}#beauty-page .wallpaper-item.active{border-color:#111}#beauty-page .icon-upload-item{background:0 0;border:none;padding:0;gap:6px}#beauty-page .icon-upload-item:hover{background:0 0;transform:none}#beauty-page .icon-upload-preview{background-color:#111;box-shadow:none}#beauty-page .icon-upload-preview svg{stroke:#ffffff!important}#beauty-page .control-group input[type=range],#beauty-page input[type=checkbox]{accent-color:#111111}#beauty-page input[type=text],#beauty-page textarea{background:#fff!important;border:1px solid #111!important;color:#111!important}#beauty-page input[type=text]::placeholder,#beauty-page textarea::placeholder{color:#7a7a7a!important}#beauty-page input[type=color]{background:#fff!important;border:1px solid #111!important;border-radius:10px!important}#data-page,#settings-page{background:#fff!important;color:#111!important;backdrop-filter:none;-webkit-backdrop-filter:none}#settings-page>div:first-child{background:#fff!important;border-bottom:1px solid #111!important}#data-page .settings-header{background:#fff!important;border:none!important}#settings-page>div:last-child{background:#fff!important}#settings-page>div:last-child>div{background:#fff!important;border:1px solid #111!important;border-radius:16px;margin:12px 14px;padding:16px!important;box-shadow:0 8px 20px rgba(0,0,0,.04)}#settings-page div[style*="background: #fafafa"],#settings-page div[style*="background: linear-gradient"]{background:#fff!important;border:1px solid #111!important}#data-page div,#data-page h2,#data-page h3,#data-page label,#data-page p,#data-page span,#settings-page div,#settings-page h2,#settings-page h3,#settings-page label,#settings-page p,#settings-page span{color:#111!important}#data-page .close-btn,#data-page button,#settings-page button{background:#111!important;color:#fff!important;border:1px solid #111!important;border-radius:999px!important}#data-page button span,#settings-page button span{color:#fff!important}#settings-page input[type=password],#settings-page input[type=text],#settings-page textarea{background:#fff!important;border:1px solid #111!important;color:#111!important}#settings-page input[type=password]::placeholder,#settings-page input[type=text]::placeholder,#settings-page textarea::placeholder{color:#7a7a7a!important}#data-page input[type=range],#settings-page input[type=range]{accent-color:#111111}#settings-page input[type=range]{background:#d9d9d9!important}#settings-page input[type=checkbox]+span{background-color:#d9d9d9!important;border:1px solid #111}#settings-page input[type=checkbox]:checked+span{background-color:#111!important}#settings-page input[type=checkbox]+span+span{background-color:#fff!important;border:1px solid #111}#settings-page .model-list{background:#fff!important;border:1px solid #111}#settings-page .model-item{border-bottom:1px solid #e5e5e5}#settings-page .model-item.selected,#settings-page .model-item:hover{background:#f3f3f3;color:#111}#settings-page .mini-btn,#settings-page .mini-btn.del,#settings-page .mini-btn.use{background:#111!important;color:#fff!important}#settings-page .status-badge,#settings-page .status-badge.error,#settings-page .status-badge.success{background:#f3f3f3!important;color:#111!important;border:1px solid #111}#data-page .settings-section{background:#fff!important;border:1px solid #111!important}#data-page .settings-section h3{opacity:1}#data-page div[style*="background: linear-gradient"]:not(.settings-header),#data-page div[style*="background: rgba("]{background:#fff!important;border:1px solid #111!important}#data-page p[style*="color: rgba(255,255,255,0.8)"]{color:#444!important}.input-group{margin-bottom:15px}.input-group label{display:block;font-size:.85rem;margin-bottom:8px;color:rgba(255,255,255,.7)}.input-group input,.input-group select{width:100%;padding:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;outline:0;font-size:.9rem}.input-group input:focus{border-color:#007aff;background:rgba(255,255,255,.15)}.model-list{margin-top:10px;max-height:200px;overflow-y:auto;background:rgba(0,0,0,.2);border-radius:12px;padding:5px}.model-item{padding:10px;border-bottom:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-between;align-items:center;cursor:pointer}.model-item:last-child{border-bottom:none}.model-item:hover{background:rgba(255,255,255,.05)}.model-item.selected{color:#007aff;font-weight:700}.preset-item{padding:12px;background:rgba(0,0,0,.05);border-radius:12px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(0,0,0,.1)}.preset-info{flex:1;overflow:hidden}.preset-name{font-size:.85rem;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#262626}.preset-url{font-size:.65rem;opacity:.7;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#666}.preset-actions{display:flex;gap:8px}.mini-btn{padding:4px 8px;border-radius:6px;font-size:.7rem;border:none;cursor:pointer;color:#fff}.mini-btn.use{background:#007aff}.mini-btn.del{background:#ff3b30}.status-badge{font-size:.7rem;padding:2px 8px;border-radius:10px;background:rgba(255,255,255,.1)}.status-badge.success{background:rgba(52,199,89,.2);color:#34c759}.status-badge.error{background:rgba(255,59,48,.2);color:#ff3b30}.icon-observe{background-color:rgba(255,255,255,.25)}.icon-observe svg{stroke:#333;width:58%;height:58%;max-width:28px;max-height:28px}.app-icon .app-icon-custom-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;display:none;z-index:1}.app-icon.has-custom-image .app-icon-custom-image{display:block}.app-icon.has-custom-image svg,.app-icon.has-custom-image .secondary-app-text{opacity:0}

.dock{margin-left:max(20px,env(safe-area-inset-left))!important;margin-right:max(20px,env(safe-area-inset-right))!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(18px,6vw,30px)!important;box-sizing:border-box!important}


html{--home-fill-bg:var(--ios-bg,#000) no-repeat center center/cover;background:var(--home-fill-bg,var(--ios-bg,#000))}
body{background:var(--home-fill-bg,var(--ios-bg,#000))}
/* Custom screen size: render the app as a centered virtual phone */
html.has-custom-screen-size{--screen-width:350px;--screen-height:740px;--app-height:var(--screen-height);--visual-viewport-height:var(--screen-height);--active-viewport-height:var(--screen-height);--keyboard-height:0px;--real-vh:7.4px;--safe-area-top:0px;--safe-area-bottom:0px;--safe-area-left:0px;--safe-area-right:0px;--safe-area-top-js:0px;--safe-area-bottom-js:0px}
html.has-custom-screen-size body{background:#dcdcdc;display:flex;align-items:center;justify-content:center;min-height:100dvh;position:fixed;inset:0}
html.has-custom-screen-size .app,html.has-custom-screen-size .iphone-container{flex:0 0 auto!important;width:var(--screen-width)!important;height:var(--screen-height)!important;min-height:var(--screen-height)!important;max-width:none!important;max-height:none!important;border-radius:18px;box-shadow:0 12px 36px rgba(0,0,0,.35)}
html.is-fill-screen-mode .app,html.is-fill-screen-mode .iphone-container{border-radius:0!important;box-shadow:none!important}
html.has-custom-screen-size.is-fill-screen-mode{--screen-width:100vw;--screen-height:100%;--app-height:100%;--visual-viewport-height:100%;--active-viewport-height:100%;--keyboard-height:0px;--real-vh:1vh;--safe-area-top:env(safe-area-inset-top);--safe-area-bottom:env(safe-area-inset-bottom);--safe-area-left:env(safe-area-inset-left);--safe-area-right:env(safe-area-inset-right);--safe-area-top-js:env(safe-area-inset-top);--safe-area-bottom-js:env(safe-area-inset-bottom)}
html.has-custom-screen-size.is-fill-screen-mode body{background:var(--home-fill-bg,var(--ios-bg,#000));width:100%;min-height:100%;height:100%;position:fixed;inset:0;align-items:stretch!important}
html.has-custom-screen-size.is-fill-screen-mode .app,html.has-custom-screen-size.is-fill-screen-mode .iphone-container{width:100vw!important;height:100%!important;min-height:100%!important;max-width:100vw!important;max-height:none!important;border-radius:0!important;box-shadow:none!important}
/* Full-screen mode: app pages should cover the home dock instead of only filling the home content area. */
html.is-fill-screen-mode .beautify-settings-panel,
html.is-fill-screen-mode .app > [class*="-page"],
html.is-fill-screen-mode .app > [id$="-page"],
html.is-fill-screen-mode .iphone-container > [class*="-page"],
html.is-fill-screen-mode .iphone-container > [id$="-page"],
html.is-fill-screen-mode #alipay-balance-page,
html.is-fill-screen-mode #alipay-contacts-page,
html.is-fill-screen-mode #alipay-finance-page,
html.is-fill-screen-mode #alipay-page,
html.is-fill-screen-mode #alipay-scan-page,
html.is-fill-screen-mode #alipay-user-profile-page,
html.is-fill-screen-mode #beauty-page,
html.is-fill-screen-mode #chat-detail-page,
html.is-fill-screen-mode #daily-news-page,
html.is-fill-screen-mode #data-page,
html.is-fill-screen-mode #group-chat-page,
html.is-fill-screen-mode #group-offline-mode-page,
html.is-fill-screen-mode #group-settings-page,
html.is-fill-screen-mode #help-me-think-page,
html.is-fill-screen-mode #html-generator-page,
html.is-fill-screen-mode #html-generator-viewer-page,
html.is-fill-screen-mode #life-app-page,
html.is-fill-screen-mode #life-diet-anim-page,
html.is-fill-screen-mode #life-diet-page,
html.is-fill-screen-mode #life-ledger-page,
html.is-fill-screen-mode #life-period-page,
html.is-fill-screen-mode #memory-page,
html.is-fill-screen-mode #offline-mode-page,
html.is-fill-screen-mode #qq-page,
html.is-fill-screen-mode #qzone-notifications-page,
html.is-fill-screen-mode #qzone-settings-page,
html.is-fill-screen-mode #settings-page,
html.is-fill-screen-mode #tb-cart-page,
html.is-fill-screen-mode #tb-checkout-page,
html.is-fill-screen-mode #tb-product-detail,
html.is-fill-screen-mode #theater-page,
html.is-fill-screen-mode #world-book-detail-modal,
html.is-fill-screen-mode #world-book-page,
html.is-fill-screen-mode .beauty-page,
html.is-fill-screen-mode .chat-detail-page,
html.is-fill-screen-mode .qq-page,
html.is-fill-screen-mode .settings-page,
html.is-fill-screen-mode .world-book-page{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:var(--app-height,100vh)!important;min-height:var(--app-height,100vh)!important;max-height:var(--app-height,100vh)!important;margin:0!important;border-radius:0!important;box-sizing:border-box!important}
html.is-fill-screen-mode .beautify-settings-panel{z-index:99999!important}
/* Keep QQ nav visible under contacts/messages list. chat-detail-page has z-index:1200 and covers it naturally when open, so the ios-chat-overlay-open class-based hide is unnecessary and becomes stale after back-navigation (class only re-evaluates on viewport change, not on screen switch). */
#qq-page .qq-nav,.qq-page .qq-nav{display:flex!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}

/* Final reference-style fullscreen override: keep a single relative viewport
   container and let the dock sit inside the home flex layout. */
html.is-fill-screen-mode,
html.is-fill-screen-mode body,
html.has-custom-screen-size.is-fill-screen-mode,
html.has-custom-screen-size.is-fill-screen-mode body{
  width:100%!important;
  height:var(--app-height,100dvh)!important;
  min-height:var(--app-height,100dvh)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--home-fill-bg,var(--ios-bg,#000))!important;
}
html.is-fill-screen-mode body,
html.has-custom-screen-size.is-fill-screen-mode body{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  align-items:initial!important;
  justify-content:initial!important;
}
html.is-fill-screen-mode body::before,
html.is-fill-screen-mode body::after,
html.has-custom-screen-size.is-fill-screen-mode body::before,
html.has-custom-screen-size.is-fill-screen-mode body::after{
  content:none!important;
  display:none!important;
}
html.is-fill-screen-mode .app,
html.is-fill-screen-mode .iphone-container,
html.has-custom-screen-size.is-fill-screen-mode .app,
html.has-custom-screen-size.is-fill-screen-mode .iphone-container{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  height:var(--app-height,100dvh)!important;
  min-height:var(--app-height,100dvh)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  background:var(--home-fill-bg,var(--ios-bg,#000))!important;
}
html.is-fill-screen-mode #main-screen,
html.is-fill-screen-mode .home-screen,
html.has-custom-screen-size.is-fill-screen-mode #main-screen,
html.has-custom-screen-size.is-fill-screen-mode .home-screen{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  align-items:stretch!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:0 0 calc(12px + env(safe-area-inset-bottom,0px))!important;
  background:var(--home-fill-bg,var(--ios-bg,#000))!important;
}
html.is-fill-screen-mode .home-pages-viewport,
html.has-custom-screen-size.is-fill-screen-mode .home-pages-viewport{
  width:100%!important;
  height:auto!important;
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
html.is-fill-screen-mode .home-pages-track,
html.has-custom-screen-size.is-fill-screen-mode .home-pages-track{
  display:flex!important;
  width:200%!important;
  height:100%!important;
  min-height:0!important;
}
html.is-fill-screen-mode .home-page,
html.has-custom-screen-size.is-fill-screen-mode .home-page{
  height:100%!important;
  min-height:0!important;
  padding-bottom:0!important;
}
.home-screen>.dock,
html.is-fill-screen-mode .home-screen>.dock,
html.has-custom-screen-size.is-fill-screen-mode .home-screen>.dock{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  align-self:center!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(18px,6vw,30px)!important;
  width:fit-content!important;
  max-width:calc(100vw - 40px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))!important;
  margin:0 auto!important;
  padding:0 clamp(18px,6vw,25px)!important;
  min-height:75px!important;
  height:75px!important;
  max-height:75px!important;
  border-radius:30px!important;
  z-index:900!important;
  background:rgba(var(--dock-color),var(--dock-opacity))!important;
  backdrop-filter:blur(30px)!important;
  -webkit-backdrop-filter:blur(30px)!important;
}
