:root{--bg:#f2f2f7;--card:#fff;--fg:#111;--sub:#6e6e73;--line:#3c3c432e;--fill:#7676801f;--accent:#111;--on-accent:#fff;--blue:#007aff;--red:#ff3b30;--green:#34c759;--orange:#ff9500;--radius:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#000;--card:#1c1c1e;--fg:#f5f5f7;--sub:#98989f;--line:#54545899;--fill:#7676803d;--accent:#f5f5f7;--on-accent:#000;--blue:#0a84ff;--red:#ff453a;--green:#30d158;--orange:#ff9f0a}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);margin:0}body{-webkit-font-smoothing:antialiased;font:16px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}:lang(ja) body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif}:lang(zh-Hans) body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif}:lang(zh-Hant) body{font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,Noto Sans TC,sans-serif}:lang(ko) body{font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}.page{max-width:760px;margin:0 auto;padding:16px 16px 96px}.page.wide{max-width:1080px}.nav{z-index:10;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(20px);border-bottom:.5px solid var(--line);align-items:center;gap:8px;min-height:52px;padding:10px 16px;display:flex;position:sticky;top:0}.nav .title{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.nav .side{gap:4px;min-width:72px;display:flex}.nav .side.right{justify-content:flex-end}h1{margin:8px 0 16px;font-size:28px;line-height:1.25}h2{margin:24px 0 8px;font-size:20px}h3{color:var(--sub);margin:16px 0 6px;font-size:15px;font-weight:600}p{margin:0 0 12px}.sub{color:var(--sub);font-size:14px}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.card{background:var(--card);border-radius:var(--radius);margin-bottom:12px;padding:16px}.list{background:var(--card);border-radius:var(--radius);margin-bottom:16px;overflow:hidden}.list>*{border-bottom:.5px solid var(--line);align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.list>:last-child{border-bottom:0}.list .grow{flex:1;min-width:0}.chev:after{content:"›";color:var(--sub);font-size:22px;line-height:1}[dir=rtl] .chev:after{content:"‹"}.btn{background:var(--fill);min-height:44px;color:var(--fg);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.4;cursor:default}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.danger{color:var(--red)}.btn.danger.filled{background:var(--red);color:#fff}.btn.block{width:100%}.btn.small{border-radius:10px;min-height:32px;padding:6px 12px;font-size:14px}.btn.plain{background:0 0;padding:6px 8px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.end{justify-content:flex-end}.stack{flex-direction:column;gap:12px;display:flex}label.field{margin-bottom:14px;display:block}label.field>span{color:var(--sub);margin:0 0 6px;margin-inline-start:4px;font-size:13px;font-weight:600;display:block}input[type=text],input[type=email],input[type=url],input:not([type]),textarea,select{background:var(--card);width:100%;box-shadow:inset 0 0 0 .5px var(--line);border:0;border-radius:12px;outline:none;padding:12px 14px}input:focus,textarea:focus{box-shadow:inset 0 0 0 2px var(--blue)}textarea{resize:vertical;min-height:96px}.check{cursor:pointer;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.check input{flex:none;width:20px;height:20px;margin-top:2px}.badge{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.badge.gray{background:var(--fill);color:var(--sub)}.badge.blue{background:color-mix(in srgb, var(--blue) 15%, transparent);color:var(--blue)}.badge.red{background:color-mix(in srgb, var(--red) 15%, transparent);color:var(--red)}.badge.green{background:color-mix(in srgb, var(--green) 18%, transparent);color:var(--green)}.badge.orange{background:color-mix(in srgb, var(--orange) 18%, transparent);color:var(--orange)}.notice{background:var(--fill);white-space:pre-wrap;border-radius:12px;margin-bottom:12px;padding:12px 14px;font-size:14px}.notice.red{background:color-mix(in srgb, var(--red) 12%, transparent)}.notice.blue{background:color-mix(in srgb, var(--blue) 12%, transparent)}.notice.orange{background:color-mix(in srgb, var(--orange) 14%, transparent)}.error{color:var(--red);white-space:pre-wrap;margin:8px 0;font-size:14px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=720px){.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}}.avatar{background:var(--fill);border-radius:50%;flex:none;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.tile{cursor:pointer;background:var(--fill);aspect-ratio:2.2;border-radius:6.25%/13.75%;position:relative;overflow:hidden}.tile img,.tile canvas{width:100%;height:100%;display:block}.tile.selected{outline:2px solid var(--fg);outline-offset:3px}.tile .tag{top:6px;color:#000;background:#fff;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;position:absolute;inset-inline-start:6px;transform:rotate(-4deg);box-shadow:0 0 4px #0000001a}.tile .lock{top:6px;font-size:13px;position:absolute;inset-inline-end:8px}.tile-wrap{flex-direction:column;gap:6px;display:flex}.tile-actions{justify-content:center;gap:2px;display:flex}.add-tile{aspect-ratio:2.2;border:2px dashed var(--line);color:var(--sub);cursor:pointer;background:0 0;border-radius:6.25%/13.75%;justify-content:center;align-items:center;font-size:28px;display:flex}.set-card{background:var(--card);border-radius:20px;padding:12px;text-decoration:none;display:block}.set-card .thumbs{grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:10px;display:grid}.set-card .thumbs>*{aspect-ratio:2.2;background:var(--fill);border-radius:6.25%/13.75%;overflow:hidden}.set-card .thumbs img{width:100%;height:100%;display:block}.checker{background-color:#fff;background-image:linear-gradient(45deg,#ddd 25%,#0000 25%),linear-gradient(-45deg,#ddd 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ddd 75%),linear-gradient(-45deg,#0000 75%,#ddd 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.editor{z-index:50;flex-direction:column;display:flex;position:fixed;inset:0}.editor .ed-nav{align-items:center;min-height:52px;padding:8px 12px;display:flex}.editor .ed-nav .title{text-align:center;flex:1;font-weight:700}.editor .ed-icon{cursor:pointer;background:0 0;border:0;border-radius:22px;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:800;display:inline-flex}.editor .ed-icon.filled{background:#00000014}.editor .ed-stage{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding:16px 12px;display:flex;overflow:auto}.editor .ed-paper{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6.25%/13.75%;position:relative}.editor .ed-paper.compact{border-radius:6.25%/27.5%}.editor .ed-paper canvas{width:100%;height:100%;display:block}.editor .handle{touch-action:none;cursor:nwse-resize;background:#fff;border:2px solid #007aff;border-radius:11px;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;box-shadow:0 1px 4px #00000059}.editor .seg{background:#00000014;border-radius:10px;margin-bottom:12px;padding:2px;display:inline-flex}.editor .seg button{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 16px;font-size:14px;font-weight:600}.editor .seg button.on{color:#000;background:#ffffffe6;box-shadow:0 1px 3px #00000026}.editor .ed-toolbar{flex-wrap:wrap;justify-content:center;gap:4px;padding:0 16px;display:flex}.editor .tool{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:4px;min-width:56px;height:56px;padding:0 8px;font-weight:800;display:inline-flex;position:relative}.editor .tool svg{width:20px;height:20px}.editor .tool .x{border-radius:16px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.editor .ed-colors{background:#0000001a;border-radius:24px 24px 0 0;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:16px;height:260px;padding:16px;display:grid;overflow:auto}.editor .color-item .label{white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;padding-inline-start:8px;font-size:12px;font-weight:600;overflow:hidden}.editor .color-item .box{background:#fff3;border-radius:8px;align-items:center;gap:8px;padding:4px;display:flex}.editor .color-item input[type=color]{cursor:pointer;background:0 0;border:0;border-radius:16px;flex:none;width:32px;height:32px;padding:0}.editor .color-item input[type=color]::-webkit-color-swatch-wrapper{padding:0}.editor .color-item input[type=color]::-webkit-color-swatch{border:1px solid #00000026;border-radius:16px}.editor .color-item .hex{box-shadow:none;background:0 0;border-radius:6px;min-width:0;padding:4px;font-family:ui-monospace,Menlo,monospace;font-size:14px}.editor .menu{z-index:5;background:var(--card);color:var(--fg);text-align:start;border-radius:14px;min-width:200px;max-height:50vh;padding:6px 0;position:absolute;bottom:60px;left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 8px 30px #00000040}.editor .menu button{cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:12px;width:100%;padding:10px 16px;font-weight:500;display:flex}.editor .menu button:hover{background:var(--fill)}.editor .img-actions{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px;display:flex}.editor .img-actions .btn{color:#000;background:#ffffffbf;border-radius:10px;min-height:34px;padding:6px 12px;font-size:14px}.editor .opts{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:12px;font-size:14px;font-weight:600;display:flex}.editor .drop-hint{border-radius:inherit;pointer-events:none;border:3px dashed #007aff;position:absolute;inset:0}.modal-back{z-index:100;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=720px){.modal-back{align-items:center}}.modal{background:var(--bg);border-radius:20px 20px 0 0;width:100%;max-width:520px;max-height:90vh;padding:20px 16px 28px;overflow:auto}@media (width>=720px){.modal{border-radius:20px}}.spinner{border:2px solid var(--line);border-top-color:var(--fg);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.center{justify-content:center;align-items:center;min-height:50vh;display:flex}.toast{background:var(--accent);color:var(--on-accent);z-index:200;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}:root{--side:#e9e9ee}@media (prefers-color-scheme:dark){:root{--side:#111113}}.shell{grid-template-columns:272px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:40;background:var(--side);border-inline-end:.5px solid var(--line);flex-direction:column;gap:20px;height:100vh;padding:16px 12px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.side-brand{align-items:center;gap:8px;padding:4px 8px;font-size:14px;font-weight:700;display:flex}.side-brand img{border-radius:6px;width:24px;height:24px}.side-profile{padding:0 8px}.side-profile .name{overflow-wrap:anywhere;margin-top:10px;font-size:17px;font-weight:700}.side-profile .notice{padding:8px 10px;font-size:12px}.side-profile-actions{flex-direction:column;gap:6px;margin-top:12px;display:flex}.side-profile-actions .btn{background:var(--card);justify-content:flex-start;width:100%;font-weight:500}.side-nav{flex-direction:column;gap:2px;display:flex}.side-nav a,.side-nav button{width:100%;color:var(--fg);text-align:start;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.side-nav a:hover,.side-nav button:hover{background:var(--fill)}.side-nav a.active,.side-nav a.current{background:var(--card);font-weight:600}.side-nav .count{color:var(--sub);font-variant-numeric:tabular-nums;margin-inline-start:auto;font-size:12px}.side-nav .danger{color:var(--red)}.side-foot{flex-direction:column;gap:12px;margin-top:auto;display:flex}.side-field{padding:0 8px;display:block}.side-field>span{color:var(--sub);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.side-field select{border-radius:8px;padding:8px 10px;font-size:14px}.scrim{display:none}.main{min-width:0}.main .page{max-width:1120px;margin:0;padding:0 32px 96px}.page-head{align-items:center;gap:12px;padding:24px 0 12px;display:flex}.page-head .grow{flex:1;min-width:0}.page-head h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:24px;overflow:hidden}.page-head .crumb{color:var(--sub);margin-bottom:2px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.page-head .crumb:hover{color:var(--fg)}.page-head.sticky{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(20px);border-bottom:.5px solid var(--line);margin:0 -32px 12px;padding:16px 32px 12px;position:sticky;top:0}.menu-btn{background:var(--fill);width:40px;height:40px;color:var(--fg);cursor:pointer;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;display:none}.main .page.detail{max-width:960px}.set-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}@media (width<=859px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{width:min(300px,85vw);height:auto;transition:transform .2s;position:fixed;inset-block:0;inset-inline-start:0;transform:translate(-100%)}[dir=rtl] .sidebar{transform:translate(100%)}.shell.open .sidebar{transform:none;box-shadow:0 0 30px #0003}.shell.open .scrim{z-index:39;background:#00000059;display:block;position:fixed;inset:0}.menu-btn{display:inline-flex}.main .page{padding:0 16px 96px}.page-head{flex-wrap:wrap;padding-top:16px}.page-head h1{font-size:20px}.page-head.sticky{margin:0 -16px 12px;padding:12px 16px}.set-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}}
