@font-face{font-family:Caveat;src:url(/assets/caveat-bold-COZh8Cw3.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:block}:root{--bg:#e7e9ee;--ink:#5a544a;--pink:#e88aa6;--card:#fcfaf4b8}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:Hiragino Maru Gothic ProN,BIZ UDGothic,Segoe UI,system-ui,sans-serif;overflow:hidden}#stage{cursor:grab;touch-action:none;position:fixed;inset:0}html,body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}input,textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}#stage.grabbing{cursor:grabbing}.panel{z-index:10;background:var(--card);-webkit-backdrop-filter:blur(10px);border:1px solid #5a544a26;border-radius:18px;max-width:270px;padding:14px 16px;position:fixed;top:16px;left:16px;box-shadow:0 8px 30px #5a544a1f}.panel h1{letter-spacing:.08em;margin-bottom:2px;font-size:13px;font-weight:700}.panel .sub{opacity:.75;margin-bottom:10px;font-size:10.5px;line-height:1.6}.row{gap:6px;display:flex}input[type=text]{min-width:0;color:var(--ink);background:#ffffffbf;border:1.5px solid #5a544a40;border-radius:10px;outline:none;flex:1;padding:7px 10px;font-family:inherit;font-size:14px;font-weight:700}input[type=text]:focus{border-color:var(--pink)}button{cursor:pointer;color:#fff;background:var(--pink);white-space:nowrap;border:none;border-radius:10px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:transform .12s,filter .12s}button:hover{filter:brightness(1.05)}button:active{transform:scale(.95)}button:disabled{opacity:.4;cursor:default}#air,#trans{background:#a89f8f;width:100%;margin-top:8px}.hint{z-index:10;letter-spacing:.05em;opacity:.6;white-space:nowrap;background:var(--card);border:1px solid #5a544a1f;border-radius:999px;padding:6px 14px;font-size:11px;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}:root{--vig:.16;--grain:.05}#fx{pointer-events:none;z-index:5;background:radial-gradient(ellipse 90% 90% at 50% 48%, transparent 55%, rgba(58,50,40,var(--vig)) 100%);position:fixed;inset:0}#fx:after{content:"";opacity:var(--grain);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"180\" height=\"180\"><filter id=\"n\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.9\" numOctaves=\"2\" stitchTiles=\"stitch\"/><feColorMatrix type=\"saturate\" values=\"0\"/></filter><rect width=\"180\" height=\"180\" filter=\"url(%23n)\"/></svg>");background-size:180px 180px;position:absolute;inset:0}.panel,.hint{display:none}:root.editable .panel,:root.editable .hint{display:block}#fallback[hidden]{display:none}#fallback{text-align:center;place-items:center;padding:24px;font-size:14px;line-height:1.8;display:grid;position:fixed;inset:0}@media (width<=520px){.panel{max-width:210px}.hint{font-size:10px}}:root{--work-ink:#3d3b4a;--work-sub:#817f8e}.works{z-index:10;left:max(14px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom));flex-wrap:wrap;gap:6px 20px;display:flex;position:fixed}.work{color:var(--work-ink);-webkit-font-smoothing:antialiased;border-radius:18px;align-items:center;gap:10px;padding:4px 14px 4px 4px;font-family:ui-rounded,SF Pro Rounded,Hiragino Maru Gothic ProN,BIZ UDGothic,system-ui,sans-serif;text-decoration:none;display:flex}.work-mark{flex:none;width:56px;height:56px;position:relative}.work-mark svg{width:40px;height:40px;fill:var(--work-ink);transition:opacity .45s;position:absolute;inset:8px}.work-mark.is-3d svg{opacity:0}.work-text{flex-direction:column;gap:3px;line-height:1.2;display:flex}.work-name{letter-spacing:.005em;font-size:15px;font-weight:650}.work-arrow{margin-left:.28em;font-size:.8em;font-weight:500;transition:transform .25s;display:inline-block}.work-desc{color:var(--work-sub);letter-spacing:.01em;font-size:12px;font-weight:500}.work:hover .work-arrow,.work:focus-visible .work-arrow{transform:translate(2px,-2px)}.work:focus-visible{outline:2px solid var(--work-ink);outline-offset:1px}@media (prefers-reduced-motion:reduce){.work-arrow,.work-mark svg{transition:none}}@media (width<=520px){.work-mark{width:48px;height:48px}.work-mark svg{width:34px;height:34px;inset:7px}:root.editable .hint{bottom:78px}}
