@font-face{font-family:Hoshiumi Sans;src:url(/fonts/ChillRoundFRegular/result.css)format("woff2-css");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Hoshiumi Sans;src:url(/fonts/ChillRoundFBold/result.css)format("woff2-css");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Hoshiumi Gothic;src:url(/fonts/GenJyuuGothic-P-Regular/result.css)format("woff2-css");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Hoshiumi Gothic;src:url(/fonts/GenJyuuGothic-P-Bold/result.css)format("woff2-css");font-weight:700;font-style:normal;font-display:swap}:root,:root[data-theme=light]{color-scheme:light;--ink:#3d4266;--ink-soft:#6c729b;--ink-faint:#a2a6c6;--line:122 129 186;--shadow:90 98 164;--card-fill:rgb(255 255 255/var(--card-bg-opacity,.62));--card-fill-hover:rgb(255 255 255/calc(var(--card-bg-opacity,.62) + .16));--star:104 128 226;--orb-opacity:.5;--noise-opacity:.045;--danger:#b1372e;--danger-bg:#fff0ed}:root[data-theme=dark]{color-scheme:dark;--ink:#e9ebfd;--ink-soft:#a4aad0;--ink-faint:#7d84ae;--line:150 160 232;--shadow:3 6 24;--card-fill:rgb(17 21 48/var(--card-bg-opacity,.6));--card-fill-hover:rgb(32 38 82/calc(var(--card-bg-opacity,.6) + .14));--star:186 201 255;--orb-opacity:.36;--noise-opacity:.06;--danger:#fbb4ad;--danger-bg:#b1372e2e}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}[hidden]{display:none!important}body{background-color:var(--color-bg,#f4f6fe);min-height:100dvh;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Hoshiumi Sans,Hoshiumi Gothic,PingFang SC,Hiragino Sans GB,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.65;transition:background-color .35s,color .35s;overflow-x:hidden}::selection{background:color-mix(in srgb, var(--color-primary,#7f9df2) 30%, transparent);color:var(--ink)}:focus-visible{outline:2px solid var(--color-primary,#7f9df2);outline-offset:3px;border-radius:8px}a{color:var(--color-primary,#7f9df2);text-decoration:none;transition:color .2s}a:hover{color:color-mix(in srgb, var(--color-primary,#7f9df2) 70%, var(--ink))}button{font:inherit}.theme-toggle{top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));z-index:60;border:1px solid rgb(var(--line) / var(--card-border-opacity,.4));background:var(--card-fill);width:40px;height:40px;color:var(--ink-soft);backdrop-filter:blur(var(--card-blur,18px));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:transform .25s,color .25s,border-color .25s;display:inline-flex;position:fixed}.theme-toggle:hover{color:var(--color-primary);border-color:rgb(var(--line) / .7);transform:translateY(-2px)}.theme-toggle__icon{width:18px;height:18px;display:none}.theme-toggle__icon svg{width:100%;height:100%;display:block}:root[data-theme-choice=light] .theme-toggle__icon--light,:root[data-theme-choice=dark] .theme-toggle__icon--dark,:root[data-theme-choice=system] .theme-toggle__icon--system{display:block}.bg-scene{z-index:0;pointer-events:none;background-color:var(--color-bg,#f4f6fe);position:fixed;inset:0;overflow:hidden}.bg-scene__layer{position:absolute;inset:0}.bg-scene--gradient .bg-scene__tint{background:linear-gradient(172deg, var(--gradient-start,#eef2ff) 0%, transparent 36%, transparent 64%, var(--gradient-end,#fdf2ff) 100%)}.bg-scene .orb{width:clamp(300px,46vw,620px);height:clamp(300px,46vw,620px);opacity:var(--orb-opacity);filter:blur(80px);will-change:transform;border-radius:9999px;position:absolute}.orb--a{background:radial-gradient(closest-side, color-mix(in srgb, var(--color-primary,#7f9df2) 55%, transparent), transparent 74%);top:-18%;left:-8%}.orb--b{background:radial-gradient(closest-side, color-mix(in srgb, var(--color-secondary,#f0a9cc) 50%, transparent), transparent 74%);top:-2%;right:-14%}.orb--c{background:radial-gradient(closest-side, color-mix(in srgb, var(--color-accent,#9d92ec) 48%, transparent), transparent 76%);bottom:-22%;left:16%}@keyframes orb-drift-a{0%{transform:translate(0,0)scale(1)}to{transform:translate(7vw,-4vh)scale(1.08)}}@keyframes orb-drift-b{0%{transform:translate(0,0)scale(1)}to{transform:translate(-6vw,6vh)scale(.94)}}@keyframes orb-drift-c{0%{transform:translate(0,0)scale(1.04)}to{transform:translate(4vw,-7vh)scale(.98)}}.bg-scene--moving .orb--a{animation:64s ease-in-out infinite alternate orb-drift-a}.bg-scene--moving .orb--b{animation:84s ease-in-out infinite alternate orb-drift-b}.bg-scene--moving .orb--c{animation:104s ease-in-out infinite alternate orb-drift-c}.star{color:rgb(var(--star));background:currentColor;border-radius:9999px;position:absolute}.bg-scene--twinkle .star{animation:6s ease-in-out infinite star-twinkle}.star--sm{opacity:.5;width:1.5px;height:1.5px}.star--lg{opacity:.85;width:2.5px;height:2.5px;box-shadow:0 0 6px 0 rgb(var(--star) / .8)}@keyframes star-twinkle{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.bg-scene__noise{opacity:var(--noise-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}.page-shell{z-index:1;flex-direction:column;width:100%;min-height:100dvh;display:flex;position:relative}.page-main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:clamp(72px,10vh,110px) 24px clamp(36px,6vh,60px)}.drive-header{border-bottom:1px solid rgb(var(--line) / .18);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:28px;display:flex}.drive-header__title{letter-spacing:.005em;color:var(--ink);margin:4px 0 0;font-size:clamp(1.9rem,4vw,2.4rem);font-weight:800;line-height:1.2}.drive-header__subtitle{letter-spacing:.3em;color:var(--ink-soft);margin:4px 0 0;font-size:.95rem;font-weight:500}.drive-header__desc{color:var(--ink-soft);max-width:38em;margin:14px 0 0;font-size:.92rem;line-height:1.7}.drive-header__eyebrow{letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.drive-account{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.drive-account__state{align-items:center;gap:10px;display:inline-flex}.drive-account__state--auth{border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:999px;padding:4px 6px 4px 12px}.drive-account__mode{color:var(--ink-faint);letter-spacing:.05em;align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.drive-account__mode--auth{color:var(--color-primary);font-weight:600}.drive-account__icon{flex-shrink:0;width:16px;height:16px}.drive-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0 14px;display:flex}.drive-btn__icon{vertical-align:-2px;flex-shrink:0;width:14px;height:14px;display:inline-block}.drive-crumb{color:var(--ink-soft);align-items:center;gap:6px;min-width:0;font-size:.92rem;display:inline-flex}.drive-crumb__prefix{color:var(--ink-faint)}.drive-crumb__path{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:50vw;font-weight:500;overflow:hidden}.drive-toolbar__spacer{flex:1}.drive-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.drive-btn{border:1px solid rgb(var(--line) / var(--card-border-opacity,.45));background:var(--card-fill);color:var(--ink);backdrop-filter:blur(var(--card-blur,16px));cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:.9rem;font-weight:500;transition:transform .2s,border-color .2s,background-color .2s,color .2s;display:inline-flex}.drive-btn:hover:not(:disabled){border-color:rgb(var(--line) / .7);background:var(--card-fill-hover);transform:translateY(-1px)}.drive-btn:active:not(:disabled){transform:translateY(0)}.drive-btn:disabled{opacity:.45;cursor:not-allowed}.drive-btn--primary{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary,#7f9df2) 90%, white 0%), color-mix(in srgb, var(--color-accent,#9d92ec) 90%, white 0%));color:#fff;box-shadow:0 8px 18px -10px color-mix(in srgb, var(--color-primary,#7f9df2) 80%, transparent);border-color:#0000}.drive-btn--primary:hover:not(:disabled){color:#fff;background:linear-gradient(135deg, var(--color-primary,#7f9df2), var(--color-accent,#9d92ec))}.drive-btn--ghost{border-color:rgb(var(--line) / .3);background:0 0}.drive-btn--danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, transparent);background:color-mix(in srgb, var(--danger) 10%, transparent)}.drive-btn--danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.drive-input{border:1px solid rgb(var(--line) / .45);background:var(--card-fill);backdrop-filter:blur(var(--card-blur,16px));color:var(--ink);font:inherit;box-sizing:border-box;border-radius:8px;width:100%;min-width:0;max-width:100%;padding:9px 12px;transition:border-color .2s,box-shadow .2s}.drive-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 25%, transparent);outline:none}.drive-label{color:var(--ink-soft);letter-spacing:.04em;gap:6px;min-width:0;max-width:100%;font-size:.85rem;display:grid}.drive-upload{cursor:pointer;align-items:center;display:inline-flex;position:relative}.drive-upload input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.drive-notice{min-height:22px;color:var(--danger);margin:4px 0 12px;padding:0 4px;font-size:.88rem}.drive-notice:empty{display:none}.drive-list{border-radius:var(--card-radius,18px);border:1px solid rgb(var(--line) / var(--card-border-opacity,.35));background:var(--card-fill);-webkit-backdrop-filter:blur(var(--card-blur,20px)) saturate(1.05);box-shadow:0 14px 32px -24px rgb(var(--shadow) / .55);flex-direction:column;gap:8px;padding:12px;display:flex}.drive-row{border-radius:12px;align-items:stretch;gap:8px;padding:4px 8px;transition:background-color .2s;display:flex}.drive-row+.drive-row{border-top:1px solid rgb(var(--line) / .12)}.drive-row__main{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:14px;padding:8px;transition:background-color .2s,transform .2s;display:flex}.drive-row[data-folder=true] .drive-row__main:hover{background:var(--card-fill-hover)}.drive-row[data-folder=false] .drive-row__main{cursor:default}.drive-row__icon{background:color-mix(in srgb, var(--color-primary) 13%, transparent);width:38px;height:38px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.drive-row[data-folder=true] .drive-row__icon{background:color-mix(in srgb, var(--color-accent) 16%, transparent);color:var(--color-accent)}.drive-row__icon[data-kind=image]{color:#059669;background:#10b98129}.drive-row__icon[data-kind=video]{color:#e11d48;background:#f43f5e24}.drive-row__icon[data-kind=audio]{color:#d97706;background:#f59e0b29}.drive-row__icon[data-kind=pdf]{color:#dc2626;background:#ef444424}.drive-row__icon[data-kind=code]{color:#0891b2;background:#06b6d424}.drive-row__icon[data-kind=text]{color:#4f46e5;background:#6366f124}.drive-row__icon[data-kind=archive]{color:#52525b;background:#71717a24}.drive-row__icon[data-kind=file]{background:color-mix(in srgb, var(--color-primary) 13%, transparent);color:var(--color-primary)}:root[data-theme=dark] .drive-row__icon[data-kind=image]{color:#34d399}:root[data-theme=dark] .drive-row__icon[data-kind=video]{color:#fb7185}:root[data-theme=dark] .drive-row__icon[data-kind=audio]{color:#fbbf24}:root[data-theme=dark] .drive-row__icon[data-kind=pdf]{color:#f87171}:root[data-theme=dark] .drive-row__icon[data-kind=code]{color:#22d3ee}:root[data-theme=dark] .drive-row__icon[data-kind=text]{color:#818cf8}:root[data-theme=dark] .drive-row__icon[data-kind=archive]{color:#a1a1aa}.drive-row__icon svg{width:18px;height:18px}.drive-row__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.drive-row__name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.drive-row__meta{color:var(--ink-faint);letter-spacing:.04em;font-size:.78rem}.drive-row__actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.drive-row__action{border:1px solid rgb(var(--line) / .3);color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:.78rem;text-decoration:none;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.drive-row__action:hover{color:var(--color-primary);border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.drive-row__action svg{flex-shrink:0;width:13px;height:13px}.drive-row__action--danger:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.drive-loading{text-align:center;color:var(--ink-faint);letter-spacing:.04em;padding:32px 16px;font-size:.92rem}.drive-dialog{border:1px solid rgb(var(--line) / .3);border-radius:var(--card-radius,18px);background:var(--card-fill);color:var(--ink);-webkit-backdrop-filter:blur(calc(var(--card-blur,20px) + 6px)) saturate(1.1);box-shadow:0 24px 60px -20px rgb(var(--shadow) / .6);opacity:0;width:min(380px,100vw - 32px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);transition:opacity .18s ease, transform .18s ease, overlay .18s ease allow-discrete, display .18s ease allow-discrete;padding:0;overflow:visible;transform:translateY(6px)scale(.98)}.drive-dialog[open]{opacity:1;transform:translateY(0)scale(1)}@starting-style{.drive-dialog[open]{opacity:0;transform:translateY(6px)scale(.98)}}.drive-dialog::backdrop{backdrop-filter:blur(4px);opacity:0;transition:opacity .18s ease, display .18s ease allow-discrete;background:#0f122866}.drive-dialog[open]::backdrop{opacity:1}@starting-style{.drive-dialog[open]::backdrop{opacity:0}}.drive-dialog__form{box-sizing:border-box;flex-direction:column;gap:14px;max-width:100%;padding:22px 24px;display:flex}.drive-dialog__title{margin:0;font-size:1.05rem;font-weight:700}.drive-dialog__body{color:var(--ink-soft);word-break:break-word;margin:0;font-size:.9rem;line-height:1.6}.drive-dialog__hint{color:var(--ink-soft);margin:0;font-size:.85rem;line-height:1.5}.drive-dialog__actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.drive-preview{border:1px solid rgb(var(--line) / .3);border-radius:var(--card-radius,18px);background:var(--card-fill);width:min(880px,100vw - 32px);max-width:calc(100vw - 32px);height:80dvh;max-height:calc(100dvh - 32px);color:var(--ink);-webkit-backdrop-filter:blur(calc(var(--card-blur,20px) + 8px)) saturate(1.1);box-shadow:0 24px 60px -20px rgb(var(--shadow) / .6);opacity:0;transition:opacity .2s ease, transform .2s ease, display .2s ease allow-discrete;flex-direction:column;padding:0;display:none;transform:translateY(8px)scale(.98)}.drive-preview[open]{opacity:1;display:flex;transform:translateY(0)scale(1)}@starting-style{.drive-preview[open]{opacity:0;transform:translateY(8px)scale(.98)}}.drive-preview::backdrop{backdrop-filter:blur(6px);opacity:0;transition:opacity .2s ease, display .2s ease allow-discrete;background:#0f122880}.drive-preview[open]::backdrop{opacity:1}@starting-style{.drive-preview[open]::backdrop{opacity:0}}.drive-preview__bar{border-bottom:1px solid rgb(var(--line) / .18);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.drive-preview__title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:60vw;font-size:.95rem;font-weight:600;overflow:hidden}.drive-preview__actions{flex-shrink:0;gap:8px;display:flex}.drive-preview__body{background:rgb(var(--shadow) / .04);flex:1;justify-content:stretch;align-items:stretch;min-height:0;padding:16px;display:flex;overflow:auto}.drive-preview__body>*{max-width:100%;max-height:100%}.drive-preview__body img,.drive-preview__body video{object-fit:contain;max-width:100%;max-height:100%;box-shadow:0 8px 30px -12px rgb(var(--shadow) / .5);border-radius:8px;margin:auto;display:block}.drive-preview__body iframe{background:#fff;border:0;border-radius:8px;flex:1;width:100%}.drive-preview__body audio{width:100%;margin:auto}.drive-preview__body pre{color:#d8deff;white-space:pre-wrap;word-break:break-word;background:#0f1228d9;border-radius:10px;flex:1;margin:0;padding:16px 18px;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.6;overflow:auto}.drive-preview__body pre code{font:inherit;background:0 0;padding:0}.drive-preview__placeholder{color:var(--ink-faint);margin:auto;font-size:.9rem;animation:.25s both rise-in}.drive-preview__body img,.drive-preview__body iframe,.drive-preview__body video,.drive-preview__body audio,.drive-preview__body pre{animation:.28s both rise-in}.drive-preview__note{color:var(--ink-faint);letter-spacing:.04em;min-height:1.2em;margin:0;padding:6px 18px 12px;font-size:.8rem}.drive-preview__note[data-tone=warn]{color:var(--danger)}.drive-toasts{z-index:200;pointer-events:none;flex-direction:column;gap:12px;width:min(400px,100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.drive-toast{border:1px solid rgb(var(--line) / .3);background:var(--card-fill);width:100%;backdrop-filter:blur(calc(var(--card-blur,20px) + 8px)) saturate(1.1);box-shadow:0 16px 40px -20px rgb(var(--shadow) / .5);color:var(--ink);pointer-events:auto;border-radius:14px;align-items:flex-start;gap:12px;padding:16px 18px;font-size:.95rem;animation:.22s both toast-in;display:flex}.drive-toast[data-tone=success]{border-color:#10b98180}.drive-toast[data-tone=error]{border-color:color-mix(in srgb, var(--danger) 50%, transparent)}.drive-toast[data-leaving=true]{animation:.18s both toast-out}.drive-toast__icon{width:22px;height:22px;color:var(--ink-soft);flex-shrink:0;margin-top:1px}.drive-toast__icon svg{width:100%;height:100%}.drive-toast[data-tone=success] .drive-toast__icon{color:#059669}.drive-toast[data-tone=error] .drive-toast__icon{color:var(--danger)}.drive-toast__body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.drive-toast__title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:650;overflow:hidden}.drive-toast__detail{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.drive-toast__close{width:26px;height:26px;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.drive-toast__close:hover{color:var(--ink);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.drive-toast__close svg{width:16px;height:16px}.drive-toast__progress{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-radius:999px;height:6px;position:relative;overflow:hidden}.drive-toast__progress-bar{background:linear-gradient(90deg, var(--color-primary), var(--color-accent));border-radius:999px;width:0%;transition:width .18s linear;position:absolute;inset:0}.drive-toast__progress-bar[data-indeterminate=true]{width:30%;animation:1.2s ease-in-out infinite toast-progress-indet}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(4px)scale(.98)}}@keyframes toast-progress-indet{0%{left:-30%}to{left:100%}}.drive-footer{width:100%;max-width:960px;padding:6px 24px calc(22px + env(safe-area-inset-bottom));text-align:center;color:var(--ink-faint);opacity:.9;margin:0 auto;font-size:.8rem;line-height:1.9}.drive-footer__title{letter-spacing:.1em;color:var(--ink-soft);margin:0;font-weight:650}.drive-footer__desc{margin:2px 0 0}.drive-footer__copy{letter-spacing:.06em;margin:2px 0 0;font-size:.76rem}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.entrance{animation:.65s cubic-bezier(.2,.65,.25,1) both rise-in;animation-delay:var(--delay,0s)}@media (width<=640px){.drive-header{flex-direction:column;align-items:flex-start}.drive-account{justify-content:flex-end;width:100%}.drive-row{grid-template-columns:28px minmax(0,1fr) auto}.drive-row__meta{display:none}}@media (prefers-reduced-motion:reduce){html[data-respect-motion=true] *,html[data-respect-motion=true] :before,html[data-respect-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
