*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}img{max-width:100%;display:block}button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;padding:0}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00000040}.window{-webkit-backdrop-filter:blur(52px)saturate(200%)brightness(1.04);will-change:transform;background:#ebedf29e;border:1px solid #ffffff8c;border-radius:16px;flex-direction:column;width:720px;max-width:calc(100vw - 40px);height:520px;max-height:calc(100vh - 120px);animation:.45s cubic-bezier(.16,1,.3,1) both windowOpen;display:flex;position:absolute;overflow:hidden;box-shadow:0 40px 90px #0003,0 8px 24px #0000001a,0 0 0 .5px #0000001a,inset 0 1px #ffffffbf}.window--active{box-shadow:0 48px 100px #00000047,0 12px 32px #0000001f,0 0 0 .5px #00000024,inset 0 1px #fffc}.window--dragging{opacity:.93;cursor:grabbing;transition:none!important}@keyframes windowOpen{0%{opacity:0;transform:scale(.82)translateY(24px)}60%{opacity:1;transform:scale(1.015)translateY(-3px)}to{opacity:1;transform:scale(1)translateY(0)}}.window__titlebar{cursor:grab;-webkit-backdrop-filter:blur(8px);background:linear-gradient(#ffffffb8 0%,#f8f8fc94 100%);border-bottom:1px solid #00000012;flex-shrink:0;align-items:center;height:48px;padding:0 16px;display:flex;position:relative}.window__titlebar:active{cursor:grabbing}.window--active .window__titlebar{background:linear-gradient(#ffffffd6 0%,#f4f4faad 100%)}.window__traffic-lights{z-index:1;gap:8px;display:flex}.window__btn{border-radius:50%;width:12px;height:12px;transition:filter .15s;position:relative}.window__btn--close{background:#ff5f57}.window__btn--minimize{background:#febc2e}.window__btn--fullscreen{background:#28c840}.window:not(.window--active) .window__btn{background:#d4d4d4}.window__btn:after{color:#00000073;opacity:0;justify-content:center;align-items:center;font-size:8px;font-weight:800;line-height:1;transition:opacity .1s;display:flex;position:absolute;inset:0}.window__traffic-lights:hover .window__btn:after{opacity:1}.window__traffic-lights:hover .window__btn--close:after{content:"✕";font-size:7px}.window__traffic-lights:hover .window__btn--minimize:after{content:"−";font-size:12px}.window__traffic-lights:hover .window__btn--fullscreen:after{content:"⤢";font-size:9px}.window__title{color:#000000d9;white-space:nowrap;pointer-events:none;font-size:13px;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.window:not(.window--active) .window__title{color:#00000059}.window__content{background:#fcfcffeb;flex:1;padding:28px;overflow-y:auto}.window__content::-webkit-scrollbar{width:6px}.window__content::-webkit-scrollbar-track{background:0 0}.window__content::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.window__content::-webkit-scrollbar-thumb:hover{background:#00000040}.app-content{color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;line-height:1.6}.app-content h2{color:#1d1d1f;letter-spacing:-.01em;margin-bottom:14px;font-size:18px;font-weight:700}.app-content h3{color:#1d1d1f;margin-bottom:8px;font-size:15px;font-weight:600}.app-content p{color:#424245;margin-bottom:12px;font-size:14px}.app-hero{align-items:center;gap:20px;margin:-28px -28px 0;padding:32px 28px 28px;display:flex;position:relative;overflow:hidden}.app-hero h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700}.app-hero p{opacity:.8;margin:4px 0 0;font-size:14px}.app-hero__text{z-index:1;position:relative}.app-hero--blue{color:#fff;background:linear-gradient(135deg,#0c5cb6 0%,#1a8ae8 50%,#38bdf8 100%)}.app-hero--blue h1,.app-hero--blue p,.app-hero--blue a{color:#fff}.app-hero--purple{color:#fff;background:linear-gradient(135deg,#4c1d95,#7c3aed 50%,#a78bfa 100%)}.app-hero--purple h1,.app-hero--purple p{color:#fff}.app-hero--dark{color:#fff;background:linear-gradient(135deg,#0f172a,#1e293b 60%,#334155 100%);flex-wrap:wrap;justify-content:space-between}.app-hero--dark h1,.app-hero--dark p{color:#fff}.app-hero--green{color:#fff;background:linear-gradient(135deg,#065f46,#059669 50%,#34d399 100%)}.app-hero--green h1,.app-hero--green p{color:#fff}.app-hero--teal{color:#fff;background:linear-gradient(135deg,#0f766e,#0ea5a4 52%,#67e8f9 100%)}.app-hero--teal h1,.app-hero--teal p{color:#fff}.app-hero--cyan{color:#fff;background:linear-gradient(135deg,#0c4a6e,#0284c7 50%,#38bdf8 100%)}.app-hero--cyan h1,.app-hero--cyan p{color:#fff}.app-body{flex-direction:column;gap:24px;padding-top:24px;display:flex}.about{background:#f8fafc;flex-direction:column;display:flex}.about .app-hero{gap:18px}.about__avatar{object-fit:cover;border:2.5px solid #ffffff73;border-radius:50%;flex-shrink:0;width:68px;height:68px;box-shadow:0 4px 16px #0003}.about__hero-text h1{margin-bottom:2px;font-size:22px}.about__hero-text p{opacity:.8}.about__body{background:#f8fafc;padding:28px}.about__links{gap:14px;margin-top:8px;display:flex}.about__links a{color:#ffffffe6;background:#ffffff26;border-radius:999px;padding:3px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s}.about__links a:hover{background:#ffffff47}.about__bio-card{padding:4px 0 2px}.about__bio{color:#424245;border-left:3px solid #1a8ae8;margin:0;padding-left:16px;font-size:14px;line-height:1.7}.about__section{flex-direction:column;gap:14px;display:flex}.about__section h2{border-bottom:1px solid #dbe4ef;margin-bottom:0;padding-bottom:10px}.about__skill-groups{flex-direction:column;gap:14px;display:flex}.about__skill-group{--about-accent:#2563eb;--about-accent-soft:#2563eb14;--about-accent-border:#2563eb33;--about-accent-text:#1d4ed8;flex-wrap:wrap;align-items:flex-start;gap:10px 14px;display:flex}.about__skill-group--backend{--about-accent:#2563eb;--about-accent-soft:#2563eb14;--about-accent-border:#2563eb2e;--about-accent-text:#1d4ed8}.about__skill-group--frontend{--about-accent:#0284c7;--about-accent-soft:#0284c714;--about-accent-border:#0284c72e;--about-accent-text:#0369a1}.about__skill-group--infrastructure{--about-accent:#7c3aed;--about-accent-soft:#7c3aed14;--about-accent-border:#7c3aed2e;--about-accent-text:#6d28d9}.about__skill-group--tools{--about-accent:#475569;--about-accent-soft:#47556914;--about-accent-border:#4755692e;--about-accent-text:#334155}.about__skill-group--other{--about-accent:#c2410c;--about-accent-soft:#c2410c14;--about-accent-border:#c2410c2e;--about-accent-text:#9a3412}.about__skill-label{text-transform:uppercase;letter-spacing:.05em;color:#475569;flex-shrink:0;align-items:center;gap:8px;min-width:110px;font-size:12px;font-weight:700;display:inline-flex}.about__skill-dot{background:var(--about-accent);border-radius:2px;flex-shrink:0;width:8px;height:8px}.about__skills{flex-wrap:wrap;flex:1;gap:8px;display:flex}.about__skill{background:var(--about-accent-soft);border:1px solid var(--about-accent-border);color:var(--about-accent-text);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;transition:background .2s,border-color .2s,transform .15s}.about__skill:hover{transform:translateY(-1px)}.about__experience-item{background:#fff;border:1px solid #e6edf5;border-radius:14px;padding:18px}.about__exp-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.about__experience-item h4{color:#1d1d1f;margin-bottom:0;font-size:14px;font-weight:600}.about__exp-date{color:#86868b;white-space:nowrap;font-size:12px}.about__exp-company{color:#86868b;margin:2px 0 0;font-size:13px}.about__exp-bullets{flex-direction:column;gap:6px;margin:10px 0 0;padding-left:18px;list-style:outside;display:flex}.about__exp-bullets li{color:#424245;font-size:13px;line-height:1.55}.about__project-link{color:#007aff;font-size:13px;font-weight:500;text-decoration:none}.about__project-link:hover{text-decoration:underline}.projects{background:#f8fafc;flex-direction:column;display:flex}.projects__body{background:#f8fafc;padding:28px}.project-feature{background:linear-gradient(#fbf8ff,#f5f1ff);border:1px solid #e8defe;border-radius:18px;padding:26px;box-shadow:0 10px 30px #4c1d950f}.project-feature__header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.project-feature__badge{color:#166534;text-transform:uppercase;letter-spacing:.04em;background:#dcfce7;border-radius:999px;align-items:center;gap:8px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.project-feature__badge-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.8s ease-out infinite projectLivePulse;box-shadow:0 0 #22c55e73}@keyframes projectLivePulse{0%{box-shadow:0 0 #22c55e73}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.project-feature__link{color:#7c3aed;font-size:13px;font-weight:500;text-decoration:none}.project-feature__link:hover{text-decoration:underline}.project-feature__title{color:#0f172a;margin-bottom:10px;font-size:24px;font-weight:700}.project-feature__desc{color:#475569;margin-bottom:18px;font-size:14px;line-height:1.65}.project-feature__details{flex-direction:column;gap:14px;margin-bottom:22px;display:flex}.project-feature__detail{color:#334155;--project-detail-soft:#7c3aed14;--project-detail-border:#7c3aed2e;--project-detail-text:#6d28d9;flex-direction:column;gap:8px;font-size:13px;line-height:1.5;display:flex}.project-feature__detail--stack{--project-detail-soft:#7c3aed14;--project-detail-border:#7c3aed2e;--project-detail-text:#6d28d9}.project-feature__detail--api{--project-detail-soft:#0284c714;--project-detail-border:#0284c72e;--project-detail-text:#0369a1}.project-feature__detail--process{--project-detail-soft:#47556914;--project-detail-border:#4755692e;--project-detail-text:#334155}.project-feature__detail-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:11px;font-weight:700}.project-feature__detail-tags{flex-wrap:wrap;gap:8px;display:flex}.project-feature__detail-tag{background:var(--project-detail-soft);border:1px solid var(--project-detail-border);color:var(--project-detail-text);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:500}.project-feature__highlights{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.project-feature__highlight{background:#fff;border:1px solid #e9e5f5;border-radius:12px;flex-direction:column;gap:6px;min-height:110px;padding:16px;display:flex}.project-feature__highlight strong{color:#0f172a;font-size:13px}.project-feature__highlight span{color:#64748b;font-size:12px;line-height:1.5}.projects__more{background:#fff;border:1px solid #e6edf5;border-radius:14px;padding:18px}.contact{background:#f8fafc;flex-direction:column;display:flex}.contact__body{background:#f8fafc;padding:28px}.contact__links{flex-direction:column;gap:10px;display:flex}.contact__link{cursor:pointer;background:#fff;border:1px solid #e6edf5;border-radius:14px;align-items:center;gap:14px;padding:12px 16px;transition:background .2s,transform .15s,border-color .2s;display:flex}.contact__link:hover{background:#f8fbff;border-color:#d6e4f3;transform:translateY(-1px)}.contact__link-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.contact__link-icon svg{width:20px;height:20px}.contact__link-info h4{color:#1d1d1f;margin-bottom:1px;font-size:14px;font-weight:600}.contact__link-info p{color:#86868b;margin:0;font-size:13px}.contact__form-card{background:#fff;border:1px solid #e6edf5;border-radius:16px;padding:20px}.contact__form-copy{color:#64748b;margin:0 0 14px}.contact__form{flex-direction:column;gap:12px;display:flex}.contact__input,.contact__textarea{color:#1d1d1f;background:#f8f9fb;border:1px solid #e2e4e8;border-radius:12px;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.contact__input:focus,.contact__textarea:focus{background:#fff;border-color:#059669;box-shadow:0 0 0 3px #0596691a}.contact__textarea{resize:vertical;min-height:120px}.contact__submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:12px;align-self:flex-start;padding:10px 28px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 8px #05966933}.contact__submit:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0596694d}.contact__submit:active{transform:scale(.97)}.github{background:#f8fafc;flex-direction:column;display:flex}.github__body{background:#f8fafc;padding:28px}.github__profile-link{color:#fff;white-space:nowrap;background:#3b82f62e;border:1px solid #60a5fa47;border-radius:999px;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s}.github__profile-link:hover{background:#3b82f647}.github__state{color:#86868b;background:#f8f9fb;border-radius:14px;padding:14px 16px;font-size:13px}.github__state--error{color:#b42318;background:#fef3f2}.github__list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.github__repo{background:#fff;border:1px solid #e6edf5;border-radius:16px;flex-direction:column;gap:10px;padding:18px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.github__repo:hover{border-color:#d8e2ec;transform:translateY(-2px);box-shadow:0 10px 28px #0f172a14}.github__repo-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.github__repo-top h3{color:#0f172a;margin:0;font-size:14px;font-weight:600}.github__repo-top span{color:#94a3b8;font-size:12px}.github__repo p{color:#64748b;margin:0;font-size:13px;line-height:1.5}.github__repo-meta{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.github__repo-stat{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:2px 8px}.github__repo-lang{align-items:center;gap:5px;display:flex}.github__lang-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.github__repo-live{color:#166534;text-transform:uppercase;background:#dcfce7;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:600}.feed{background:#f8fafc;flex-direction:column;max-width:740px;display:flex}.feed__body-shell{background:#f8fafc;gap:18px;padding:28px}.feed__section-label{text-transform:uppercase;letter-spacing:.06em;color:#86868b;align-items:center;gap:8px;padding:0 4px;font-size:11px;font-weight:600;display:flex}.feed__feature,.feed__entry,.feed__commit-item{background:#fff;border:1px solid #e6edf5;border-radius:18px;box-shadow:0 2px 8px #0f172a08}.feed__loading-dot{background:#0284c7;border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite feedPulse}@keyframes feedPulse{0%,to{opacity:.3}50%{opacity:1}}.feed__notice{color:#86868b;background:#fff;border:1px solid #e6edf5;border-radius:12px;padding:12px 16px;font-size:13px}.feed__feature{padding:22px 22px 20px}.feed__feature-meta,.feed__entry-meta,.feed__commit-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.feed__feature h2{margin:10px 0 8px;font-size:20px}.feed__feature p,.feed__entry p{color:#475569;margin:0}.feed__notes,.feed__commit-list{flex-direction:column;gap:10px;display:flex}.feed__entry{padding:18px 20px}.feed__entry h3{margin:10px 0 6px;font-size:15px}.feed__tag{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.feed__tag--design{color:#0369a1;background:#0284c714;border:1px solid #0284c72e}.feed__tag--process{color:#334155;background:#47556914;border:1px solid #4755692e}.feed__tag--shipped{color:#15803d;background:#22c55e14;border:1px solid #22c55e2e}.feed__commit-item{flex-direction:column;gap:12px;padding:16px 18px;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.feed__commit-item:hover{border-color:#d8e2ec;transform:translateY(-1px);box-shadow:0 10px 24px #0f172a0f}.feed__commit-top span{color:#64748b;font-size:12px}.feed__commit-project{align-items:center;gap:8px;min-width:0;display:inline-flex}.feed__commit-repo{color:#0f172a;font-size:13px;font-weight:600}.feed__commit-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.8s ease-out infinite projectLivePulse;box-shadow:0 0 #22c55e59}.feed__commit-card{background:#f8fafc;border:1px solid #e6edf5;border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.feed__commit-row{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:10px;display:grid}.feed__commit-row--link{text-decoration:none}.feed__commit-label{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;padding-top:1px;font-size:11px;font-weight:600}.feed__commit-msg{color:#475569;font-size:13px;line-height:1.55;display:block}.feed__commit-link{color:#0284c7;font-size:13px;font-weight:500}.projects__more h3{margin-bottom:4px;font-size:14px;font-weight:600}.projects__more p{color:#86868b;margin:0;font-size:13px}.desktop{background:#0c5cb6;width:100%;height:100%;position:relative;overflow:hidden}.desktop__wallpaper{background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.desktop__wallpaper--next{opacity:0;z-index:1;transition:opacity ease-in-out}.desktop__wallpaper--fading{opacity:1}.desktop__hint{pointer-events:none;z-index:2;justify-content:center;animation:1.2s ease-out .3s both hintFadeIn;display:flex;position:absolute;bottom:100px;left:0;right:0}.desktop__hint-text{-webkit-backdrop-filter:blur(16px)saturate(140%);color:#ffffffc7;letter-spacing:.01em;background:#00000038;border:1px solid #ffffff1f;border-radius:999px;padding:6px 20px;font-size:13px;font-weight:500}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.desktop__canvas{position:absolute;inset:28px 0 0}.menubar{z-index:9000;-webkit-backdrop-filter:blur(30px)saturate(180%);color:#000000d9;background:#ffffffb8;border-bottom:.5px solid #00000014;justify-content:space-between;align-items:center;height:28px;padding:0 16px;font-size:13px;font-weight:500;display:flex;position:absolute;top:0;left:0;right:0}.menubar__left{align-items:center;gap:14px;display:flex}.menubar__apple{opacity:.85;align-items:center;display:flex}.menubar__app-name{font-size:13px;font-weight:600}.menubar__right{align-items:center;gap:18px;display:flex}.menubar__status{color:#000000b8;background:#ffffff75;border-radius:999px;align-items:center;gap:7px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-flex;box-shadow:inset 0 .5px #fff6}.menubar__status-dot{background:#34c759;border-radius:999px;width:7px;height:7px;box-shadow:0 0 10px #34c7598c}.menubar__item{color:#000000bf;font-size:13px;font-weight:400}.menubar__time{font-variant-numeric:tabular-nums}.dock{z-index:8000;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.dock__container{-webkit-backdrop-filter:blur(34px)saturate(180%);background:linear-gradient(#ffffff57,#ffffff29);border:1px solid #ffffff52;border-radius:24px;align-items:flex-end;gap:8px;padding:8px 14px 10px;display:flex;position:relative;box-shadow:0 18px 60px #0a122338,inset 0 1px #ffffff5c,inset 0 -1px #ffffff14}.dock__reflection{pointer-events:none;background:linear-gradient(#ffffff4d,#0000);border-radius:18px 18px 40px 40px;height:48%;position:absolute;top:2px;left:18px;right:18px}.dock__item{transform-origin:bottom;flex-direction:column;align-items:center;padding:0;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.dock__item:hover{transform:translateY(-8px)scale(1.25)}.dock__item:hover+.dock__item{transform:translateY(-3px)scale(1.1)}.dock__item:has(+.dock__item:hover){transform:translateY(-3px)scale(1.1)}.dock__icon{border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;transition:box-shadow .2s,transform .2s;display:flex;position:relative;box-shadow:0 10px 18px #00000029,inset 0 1px #ffffff47}.dock__icon:before{content:"";pointer-events:none;background:linear-gradient(#ffffff2e,#0000 45%);border-radius:15px;position:absolute;inset:1px}.dock__item:hover .dock__icon{transform:translateY(-1px);box-shadow:0 14px 24px #0000003d,inset 0 1px #ffffff52}.dock__item--open .dock__icon{box-shadow:0 8px 18px #00000038,inset 0 1px #ffffff47,0 0 0 1px #ffffff2e}.dock__icon svg{width:28px;height:28px}.dock__tooltip{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#18181bc7;border-radius:10px;padding:6px 12px;font-size:12px;font-weight:500;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.dock__item:hover .dock__tooltip{opacity:1;transform:translate(-50%)translateY(-2px)}.dock__indicator{background:linear-gradient(90deg,#ffffff4d,#ffffffe6,#ffffff4d);border-radius:50%;width:18px;height:4px;margin-top:5px;box-shadow:0 0 8px #ffffff73}@media (max-width:920px){.desktop__hint{bottom:94px}.desktop__hint-text{font-size:12px}}@media (prefers-reduced-motion:reduce){.desktop__hint,.dock__item{transition:none;animation:none}}.android{background:#1a1a2e;flex-direction:column;width:100%;height:100%;font-family:Roboto,Inter,sans-serif;display:flex;position:relative;overflow:hidden}.android__wallpaper{z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.android__wallpaper--next{opacity:0;z-index:1;transition:opacity ease-in-out}.android__wallpaper--fading{opacity:1}.android__status{z-index:10;color:#ffffffd9;flex-shrink:0;justify-content:space-between;align-items:center;height:36px;padding:8px 20px;display:flex}.android__status--app{color:#000000b3;z-index:10;background:#f8f9fa}.android__status-time{font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.android__status-icons{opacity:.7;align-items:center;gap:6px;display:flex}.android__home{z-index:5;flex-direction:column;flex:1;gap:16px;padding:8px 20px;display:flex;position:relative;overflow-y:auto}.android__clock-widget{flex-direction:column;align-items:flex-start;padding:20px 0 4px;display:flex}.android__clock-time{color:#fffffff2;letter-spacing:-.02em;text-shadow:0 1px 8px #0000004d;font-size:52px;font-weight:200;line-height:1}.android__clock-date{color:#ffffffa6;text-shadow:0 1px 4px #00000040;margin-top:4px;font-size:14px;font-weight:400}.android__profile-widget{-webkit-backdrop-filter:blur(24px)saturate(150%);-webkit-tap-highlight-color:transparent;text-align:left;background:#ffffff1f;border:1px solid #ffffff29;border-radius:22px;align-items:center;gap:12px;padding:14px 16px;transition:background .2s,transform .15s;display:flex}.android__profile-widget:active{background:#ffffff2e;transform:scale(.98)}.android__profile-img{object-fit:cover;border:2px solid #ffffff4d;border-radius:50%;flex-shrink:0;width:44px;height:44px}.android__profile-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.android__profile-name{color:#fffffff2;text-shadow:0 1px 3px #0000004d;font-size:15px;font-weight:600}.android__profile-role{color:#fff9;text-shadow:0 1px 2px #0003;font-size:12px;font-weight:400}.android__profile-badge{color:#6ee7a0;white-space:nowrap;text-shadow:0 1px 2px #0003;background:#34c75938;border:1px solid #34c7594d;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:600}.android__grid{grid-template-columns:repeat(4,1fr);gap:18px 8px;padding:8px 4px;display:grid}.android__app-icon{-webkit-tap-highlight-color:transparent;touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:7px;padding:0;transition:transform .18s,opacity .18s;display:flex;position:relative}.android__app-icon:active .android__icon-shape{transform:scale(.9)}.android__app-icon--dragging{z-index:20}.android__app-icon--dragging .android__icon-shape{box-shadow:0 18px 30px #00000038,0 6px 14px #00000024}.android__app-icon--target .android__icon-shape{box-shadow:0 0 0 3px #ffffffa6,0 10px 18px #00000029}.android__icon-shape{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .15s,box-shadow .18s;display:flex;box-shadow:0 2px 8px #0000001f}.android__icon-shape svg{width:26px;height:26px}.android__app-label{color:#ffffffeb;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 3px #00000073;max-width:64px;font-size:11px;font-weight:500;overflow:hidden}.android__dock{z-index:5;flex-shrink:0;padding:0 20px 6px;position:relative}.android__dock-tray{-webkit-backdrop-filter:blur(24px)saturate(140%);background:#ffffff1a;border:1px solid #ffffff1f;border-radius:26px;justify-content:center;align-items:center;gap:20px;padding:10px 20px 12px;display:flex}.android__dock-icon{-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:center;gap:6px;display:flex}.android__dock-icon:active .android__icon-shape{transform:scale(.88)}.android__activity{z-index:5;background:#f2f4f8;flex-direction:column;flex:1;animation:.42s cubic-bezier(.16,1,.3,1) activitySlideUp;display:flex;position:relative;overflow:hidden}@keyframes activitySlideUp{0%{opacity:0;transform:translateY(56px)scale(.97)}60%{opacity:1;transform:translateY(-4px)scale(1.005)}to{opacity:1;transform:translateY(0)scale(1)}}.android__app-bar{background:linear-gradient(160deg, color-mix(in srgb, var(--app-color,#4285f4) 18%, #fff), color-mix(in srgb, var(--app-color,#4285f4) 8%, #f2f4f8) 100%);flex-shrink:0;align-items:center;gap:8px;padding:14px 8px 16px;display:flex}.android__back-btn{width:40px;height:40px;color:color-mix(in srgb, var(--app-color,#4285f4) 70%, #000);-webkit-tap-highlight-color:transparent;border-radius:20px;justify-content:center;align-items:center;transition:background .15s;display:flex}.android__back-btn:active{background:#0000000f}.android__back-btn svg{width:24px;height:24px}.android__app-bar-title{color:#000000d9;font-size:20px;font-weight:500}.android__app-content{background:#fff;border-radius:24px 24px 0 0;flex:1;padding:0;overflow-y:auto;box-shadow:0 -2px 16px #0000000a}.android__app-content .app-hero{border-radius:0;margin:0}.android__app-content .app-body{padding:20px}.android__navbar{z-index:10;flex-shrink:0;justify-content:center;align-items:center;padding:6px 0 10px;display:flex}.android__nav-pill{-webkit-tap-highlight-color:transparent;background:#ffffff59;border-radius:3px;width:120px;height:5px;transition:background .15s}.android__nav-pill:active{background:#ffffffa6}
