:root{--bg-start:#dee6ff;--bg-end:#ebf0ff;--card-color:#fffc;--btn-color:#c7d9feb3;--accent-color:#007bff;--text-color:#111;--secondary-color:#555;--radius:16px;--battery-color:#26c281}@media (prefers-color-scheme:dark){:root{--bg-start:#1d2129;--bg-end:#181c23;--card-color:#1f232cd9;--btn-color:#292e38b3;--accent-color:#00bcd4;--text-color:#d4d4d4;--secondary-color:#aaa;--radius:16px}}html{background:var(--bg-end)}body{background:linear-gradient(50deg, var(--bg-start), var(--bg-end));color:var(--text-color);justify-content:center;align-items:start;min-height:100vh;margin:0;padding:20px 0 0;font-family:Roboto,sans-serif;display:flex;position:relative;overflow-x:hidden}.wrapper{box-sizing:border-box;width:100%;max-width:700px;padding:0 20px 28px;position:relative}.section{background-color:var(--card-color);border-radius:var(--radius);margin-bottom:20px;padding:12px}.section-title{color:var(--secondary-color);margin:0 0 11px;padding-left:4px;font-size:13px;font-weight:500}.container{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:10px;display:grid}.app-button{background-color:var(--btn-color);border-radius:var(--radius);text-align:center;color:var(--text-color);-webkit-tap-highlight-color:transparent;border:none;flex-direction:column;justify-content:flex-start;align-items:center;padding:12px 8px;font-size:10px;text-decoration:none;transition:transform .1s,background-color .2s;display:flex}.app-button:active{background-color:#285ee7;transform:scale(1.06)}@media (hover:hover) and (pointer:fine){.app-button:hover{background-color:#285ee7;transform:scale(1.06)}}.app-icon{opacity:.8;border-radius:9px;width:48px;height:48px;margin-bottom:8px}.app-icon-shell{color:var(--secondary-color);background:linear-gradient(135deg,#7f7f7f47,#7f7f7f1f);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.app-icon-shell img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.app-icon-initials{font-size:14px;font-weight:600;line-height:1}.settings-toggle{background-color:var(--card-color);cursor:pointer;z-index:101;width:40px;height:40px;color:var(--secondary-color);border-radius:50%;justify-content:center;align-items:center;display:flex}.footer{justify-content:space-between;align-items:flex-start;margin-top:34px;display:flex}.links{color:var(--secondary-color);padding:5px 16px;font-size:10px;font-weight:500;display:inline}.links a{color:var(--secondary-color);border-radius:var(--radius);text-decoration:none;transition:transform .2s,background-color .2s}.links a:hover{color:var(--accent-color)}.status-bar{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:700px;padding:0 32px;display:flex;position:absolute;top:18px}.info-block{background-color:unset;justify-content:space-between;align-items:center;height:116px;margin-top:15px;margin-bottom:5px;display:flex}.clock-time{font-optical-sizing:auto;font-family:Space Grotesk,sans-serif;font-size:56px;font-weight:500;line-height:1}.clock-date{opacity:.7;font-size:16px}.weather-area{text-align:right;min-width:170px;min-height:96px;color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:flex-end;padding:0;display:flex}.geo-location{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:5px;padding:0;font-size:12px;display:flex}.weather-location{align-items:center;gap:5px;margin-bottom:8px;font-size:12px;display:flex}.status-dot{border-radius:50%;width:6px;height:6px}.weather-current{align-items:center;gap:6px;min-height:48px;margin-bottom:6px;display:flex}.weather-icon{width:48px;height:48px;margin:-10px 0;display:none}.weather-temp{font-size:36px;font-weight:600}.weather-forecast{flex-wrap:wrap;justify-content:flex-end;gap:5px;min-height:38px;display:flex}.weather-forecast .hour{flex-direction:column;align-items:center;font-size:9px;display:flex}.weather-forecast .hour img{width:20px;height:20px}.weather-status{color:var(--secondary-color);font-size:11px}.battery-area{display:block}.battery-badge{justify-content:center;align-items:center;display:flex;position:relative}.battery-icon{width:42px;height:21px;display:block}.bat-bolt{width:32px;height:32px;position:absolute;left:-26px}.bat-text{fill:#fffffff2;font-size:6px}.bat-body{fill:none;stroke:var(--battery-color);stroke-width:1px}.bat-cap,.bat-fill{fill:var(--battery-color)}.bat-bolt path{fill:#ffb300}@keyframes blink{50%{opacity:.25}}.battery-badge.blink{animation:1s steps(2,start) infinite blink}@property --size{syntax:"<length>";inherits:false;initial-value:18px}@property --speed{syntax:"<time>";inherits:false;initial-value:35s}:root{--size:18px;--speed:35s;--stop1:#eec32d;--stop2:#ec4b4b;--stop3:#709ab9;--stop4:#4dffbf}.stars{background:conic-gradient(from 180deg at 50% 70%, #fafafa 0deg, var(--stop1) 72deg, var(--stop2) 144deg, var(--stop3) 216deg, var(--stop4) 288deg, #fafafa 1turn);width:211px;height:100%;-webkit-mask:radial-gradient(circle at 50% 50%, white 2px, transparent 2.5px) 50% 50% / var(--size) var(--size), url(/assets/noise-mask-QiG1ISTL.png) 256px 50% / 256px 256px;mask:radial-gradient(circle at 50% 50%, white 2px, transparent 2.5px) 50% 50% / var(--size) var(--size), url(/assets/noise-mask-QiG1ISTL.png) 256px 50% / 256px 256px;animation:flicker var(--speed) infinite linear;transition:width .5s linear,--size .2s linear,--speed .2s linear;position:absolute;inset:0;-webkit-mask-composite:source-in;mask-composite:intersect}@keyframes flicker{to{-webkit-mask-position:50%,0;mask-position:50%,0}}#sections{box-sizing:border-box;flex-wrap:wrap;align-content:flex-end;align-items:stretch;gap:14px;min-height:calc(100dvh - 190px);margin-bottom:18px;display:flex}#sections>.section{flex:1 1 var(--basis,200px);flex-direction:column;min-width:0;max-width:100%;margin-bottom:0;display:flex}#sections .container{grid-template-columns:repeat(var(--cols,4), minmax(84px, 1fr));flex:1;grid-auto-rows:1fr}#sections .container.empty{min-width:150px;min-height:74px;display:flex}#sections .section-empty{color:var(--secondary-color);border:1.5px dashed #7f7f7f59;border-radius:12px;flex:1;justify-content:center;align-items:center;font-size:11px;display:flex}#sections>.section.dragging-section{opacity:0}#sections .section-head{align-items:center;gap:6px;margin:0 2px 8px;display:flex}#sections .section-grip{color:var(--secondary-color);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:none;padding:0 2px;font-size:14px;line-height:1}#sections .section-name{min-width:0;color:var(--secondary-color);background:0 0;border:none;border-bottom:1px solid #7f7f7f40;outline:none;flex:1;padding:2px 2px 4px;font-family:inherit;font-size:13px}#sections .section-delete{width:22px;height:22px;color:var(--text-color);cursor:pointer;background:#7f7f7f2e;border:none;border-radius:50%;flex:none;padding:0;font-size:15px;line-height:1}#sections .add-section{border-radius:var(--radius);min-width:110px;min-height:80px;color:var(--secondary-color);cursor:pointer;background:0 0;border:1.5px dashed #7f7f7f59;flex:none;align-self:stretch;font-family:inherit;font-size:12px}@media (width<=460px){#sections{gap:10px}#sections>.section{flex-basis:var(--compact-basis,var(--basis,200px));padding:10px}#sections .section-title{margin-bottom:9px}#sections .container{grid-template-columns:repeat(var(--cols,4), minmax(72px, 1fr));gap:8px}#sections .app-button{padding:10px}}.app-button{font-family:inherit}.tile{display:flex;position:relative}.tile .app-button{box-sizing:border-box;width:100%;height:100%}.editing [data-tile-id]{touch-action:none}.tile.dragging{opacity:0}.drag-ghost{border-radius:var(--radius);box-shadow:0 10px 28px #00000059}.folder{box-sizing:border-box;background-color:var(--btn-color);border-radius:var(--radius);width:100%;color:var(--text-color);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;flex-direction:column;justify-content:flex-start;align-items:center;padding:12px 8px;font-family:inherit;font-size:10px;display:flex}.tile .folder{height:100%}.tile.combine-target .app-button,.tile.combine-target .folder{outline:2px solid var(--accent-color);outline-offset:2px;transform:scale(1.08)}.folder-grid{flex-wrap:wrap;place-content:center;gap:4px;width:48px;height:48px;margin-bottom:8px;display:flex}.folder-grid .app-icon{width:var(--mini,11px);height:var(--mini,11px);border-radius:10px;margin-bottom:0}.folder-grid .app-icon-initials{font-size:calc(var(--mini,11px) * .42)}.folder-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.folder-overlay{z-index:300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.folder-panel{box-sizing:border-box;background:var(--card-color);border-radius:22px;width:100%;max-width:360px;padding:18px 16px}.folder-name{box-sizing:border-box;border:none;border-bottom:1px solid var(--accent-color);width:100%;color:var(--text-color);text-align:center;background:0 0;outline:none;margin-bottom:16px;padding:4px 0 8px;font-family:inherit;font-size:16px;font-weight:500}.folder-name-static{cursor:default;border-bottom-color:#0000}.folder-apps{grid-template-columns:repeat(3,1fr);gap:12px;max-height:60vh;display:grid;overflow-y:auto}.folder-app{position:relative}.folder-app .app-button{box-sizing:border-box;width:100%}.editing .app-button{cursor:default}.editing .tile{transform-origin:50%;animation:.3s ease-in-out infinite tile-wiggle}.editing .tile:nth-child(2n){animation-delay:-.1s}.editing .tile:nth-child(3n){animation-delay:-.2s}@keyframes tile-wiggle{0%{transform:rotate(-1.1deg)}50%{transform:rotate(1.1deg)}to{transform:rotate(-1.1deg)}}.tile-remove{color:#fff;cursor:pointer;z-index:5;background:#3a4250;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:16px;line-height:1;display:flex;position:absolute;top:-6px;left:4px}.edit-done{z-index:200;color:#fff;cursor:pointer;background:#2d5ee7;border:none;border-radius:16px;padding:7px 18px;font-family:inherit;font-size:13px;font-weight:500;position:fixed;top:12px;left:50%;transform:translate(-50%)}.tray{z-index:150;box-sizing:border-box;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--card-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #7f7f7f2e;position:fixed;bottom:0;left:0;right:0}.tray-head{color:var(--secondary-color);justify-content:space-between;align-items:center;gap:12px;margin:0 2px 10px;font-size:11px;display:flex}.tray-reset{color:var(--secondary-color);cursor:pointer;background:#7f7f7f2e;border:none;border-radius:12px;flex:none;padding:4px 12px;font-family:inherit;font-size:11px}.tray-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;padding-bottom:2px;display:flex;overflow:auto hidden}.tray-row::-webkit-scrollbar{display:none}.tray-item{width:64px;color:var(--text-color);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:none;align-items:center;gap:5px;font-family:inherit;font-size:10px;display:flex}.tray-item .app-icon{border-radius:9px;width:42px;height:42px;margin-bottom:0}.tray-item span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.tray-empty{color:var(--secondary-color);padding:12px 4px;font-size:12px}.editing .wrapper{padding-bottom:150px}.debug-panel{z-index:500;color:#d8ffe9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050a10c7;border:1px solid #23ff9266;border-radius:8px;max-height:42dvh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;line-height:1.35;position:fixed;top:8px;left:8px;right:8px;overflow:hidden;box-shadow:0 12px 36px #00000059}.debug-head{background:#00000047;border-bottom:1px solid #23ff9238;justify-content:space-between;align-items:center;gap:10px;padding:7px 8px;display:flex}.debug-title{white-space:nowrap;text-overflow:ellipsis;color:#23ff92;overflow:hidden}.debug-actions{flex:none;align-items:center;gap:6px;display:flex}.debug-actions button,.debug-tab{color:#d8ffe9;font:inherit;background:#23ff921f;border:1px solid #23ff9259;border-radius:6px;padding:3px 7px}.debug-copy-status{color:#7dffb2;white-space:nowrap}.debug-log{-webkit-overflow-scrolling:touch;max-height:calc(42dvh - 33px);padding:7px 8px 8px;overflow:auto}.debug-line{grid-template-columns:58px 58px minmax(0,1fr);align-items:baseline;gap:6px;padding:1px 0;display:grid}.debug-line.error{color:#ff8585}.debug-line.warn{color:#ffd166}.debug-line.ok{color:#7dffb2}.debug-time{color:#91a3b0}.debug-scope{color:#66d9ef}.debug-message,.debug-details{overflow-wrap:anywhere;min-width:0}.debug-details{color:#aebac3;opacity:.9;grid-column:3}.debug-tab{z-index:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050a10c7;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;position:fixed;top:8px;right:8px}
