:root{color:#17201d;font-synthesis:none;text-rendering:optimizelegibility;--ink:#17201d;--muted:#65706c;--line:#dfe5e2;--line-strong:#cbd5d0;--surface:#fff;--subtle:#f6f8f7;--primary:#087f5b;--primary-hover:#066b4d;--primary-soft:#edf7f2;--radius-sm:.375rem;--radius:.625rem;--radius-lg:.875rem;background:#fff;font-family:Inter,Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--surface);min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input{color:inherit;font:inherit}button{cursor:pointer}:where(a,button,input):focus-visible{outline:2px solid var(--primary);outline-offset:2px}.app{min-height:100vh}.site-header{z-index:10;border-block-end:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;justify-content:space-between;align-items:center;min-height:4rem;padding-inline:max(1rem,50vw - 29rem);display:flex;position:sticky;top:0}.brand{letter-spacing:-.025em;align-items:center;gap:.55rem;font-size:1rem;font-weight:800;display:inline-flex}.brand span{border-radius:var(--radius-sm);color:#fff;background:var(--primary);place-items:center;width:1.875rem;height:1.875rem;display:grid}.brand svg{width:1rem;height:1rem}.contact{border:1px solid var(--line);border-radius:var(--radius);align-items:center;min-height:2.5rem;padding-inline:.85rem;font-size:.8125rem;font-weight:700;display:inline-flex}.contact:hover{border-color:var(--line-strong);background:var(--subtle)}main{width:min(58rem,100% - 2rem);margin-inline:auto}.hero{border-block-end:1px solid var(--line);justify-items:start;gap:1.5rem;padding:5.5rem 0 4rem;display:grid}.hero-mark{border-radius:var(--radius-lg);width:3rem;height:3rem;color:var(--primary);background:var(--primary-soft);border:1px solid #cce5da;place-items:center;display:grid}.hero-mark svg{width:1.5rem;height:1.5rem}.hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.25rem,7vw,4rem);line-height:1}.feature-row{flex-wrap:wrap;gap:.5rem;display:flex}.feature-row span{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:2rem;color:var(--muted);align-items:center;gap:.4rem;padding-inline:.65rem;font-size:.75rem;font-weight:700;display:inline-flex}.feature-row svg,.plan-card li svg{width:.95rem;height:.95rem;color:var(--primary)}.plans{padding-block:3rem 5rem}.plans h2,.manage h1,.legal h1{letter-spacing:-.03em;margin:0 0 1.25rem;font-size:1.5rem}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.plan-card,.create-form,.link-card,.status-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.plan-card{flex-direction:column;min-height:20rem;padding:1.5rem;display:flex}.plan-card>div,.plan-card footer{justify-content:space-between;align-items:center;display:flex}.plan-label{color:var(--primary);font-size:.8125rem;font-weight:800}.plan-card>div strong{letter-spacing:-.04em;font-size:2rem}.plan-card ul{color:var(--muted);gap:.75rem;margin:0;padding:1.75rem 0;list-style:none;display:grid}.plan-card li{align-items:center;gap:.5rem;display:flex}.plan-card footer{margin-top:auto}.plan-card footer p{margin:0}.plan-card footer strong{letter-spacing:-.04em;font-size:1.625rem}.plan-card button,.create-form button,.status-card button{border:1px solid var(--primary);border-radius:var(--radius);color:#fff;background:var(--primary);min-height:2.75rem;padding-inline:1.25rem;font-weight:800}.plan-card button:hover,.create-form button:hover,.status-card button:hover{border-color:var(--primary-hover);background:var(--primary-hover)}.plan-card button:disabled{cursor:wait;opacity:.6}.manage,.legal{padding-block:3rem 5rem}.manage>header,.status-card{justify-content:space-between;align-items:center;display:flex}.manage>header span{border-radius:var(--radius-sm);color:var(--primary);background:var(--primary-soft);padding:.45rem .7rem;font-size:.8125rem;font-weight:800}.create-form{gap:1rem;margin-block-end:2rem;padding:1.5rem;display:grid}.create-form h2,.link-list h2,.status-card h2{margin:0;font-size:1.125rem}.create-form label{color:var(--muted);gap:.45rem;font-size:.8125rem;font-weight:700;display:grid}.create-form input{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:2.875rem;padding-inline:.8rem}.create-form input:hover,.create-form input:focus{border-color:var(--line-strong)}.link-list{gap:.75rem;display:grid}.link-card{gap:1rem;padding:1.25rem;display:grid;position:relative}.link-card>div{gap:.3rem;min-width:0;padding-inline-end:5.5rem;display:grid}.link-card a{color:var(--primary);word-break:break-all;font-size:.8125rem}.link-card dl{gap:1.875rem;margin:0;display:flex}.link-card dl div{gap:.2rem;display:grid}.link-card dt{color:var(--muted);font-size:.6875rem}.link-card dd{margin:0;font-weight:800}.link-actions{gap:.4rem;display:flex;position:absolute;top:1rem;right:1rem}.link-actions button,.qr-sheet>button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);place-items:center;width:2.5rem;height:2.5rem;padding:0;display:grid}.link-actions button:hover,.qr-sheet>button:hover{border-color:var(--line-strong);background:var(--subtle)}.link-actions svg{width:1rem;height:1rem}.qr-sheet{z-index:20;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);justify-items:center;gap:.875rem;width:min(22.5rem,100% - 2rem);margin:auto;padding:1.25rem;display:grid;position:fixed;inset:auto 1rem 1rem;box-shadow:0 1rem 2.5rem #17201d29}.qr-sheet>button{justify-self:end}.qr-sheet img{width:min(17.5rem,100%);height:auto}.qr-sheet strong{max-width:100%;color:var(--primary);word-break:break-all;font-size:.75rem}.status-card{margin-block-end:1.5rem;padding:1.25rem}.legal{min-height:65vh}.legal dl{border:1px solid var(--line);border-radius:var(--radius-lg);margin:2rem 0 0;overflow:hidden}.legal dl div{border-block-end:1px solid var(--line);grid-template-columns:7.5rem 1fr;display:grid}.legal dl div:last-child{border-block-end:0}.legal dt,.legal dd{margin:0;padding:1rem}.legal dt{color:var(--muted);background:var(--subtle)}.site-footer{border-block-start:1px solid var(--line);color:var(--muted);justify-items:center;gap:1.125rem;padding:1.875rem 1rem 2.5rem;font-size:.75rem;display:grid}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:1.125rem;display:flex}@media (width<=600px){.hero{padding-block:3.5rem 3rem}.plan-grid{grid-template-columns:1fr}.plan-card{min-height:18rem}.manage{padding-block-start:2rem}.legal dl div{grid-template-columns:5.75rem 1fr}}
