.dd-mobile{--m-accent:#157e93;min-height:100dvh;background:hsl(var(--background));color:hsl(var(--foreground));font-size:16px}.dd-mobile *{box-sizing:border-box}.dd-mobile .m-header{height:64px;display:flex;align-items:center;justify-content:space-between;max-width:680px;margin:auto;padding:10px 18px;border-bottom:1px solid hsl(var(--border))}.dd-mobile .m-brand{font-size:21px;font-weight:800;letter-spacing:-.8px}.dd-mobile .m-brand span{color:#18a9bc}.dd-mobile .m-header-actions{display:flex;gap:4px}.dd-mobile .m-header-actions button{display:grid;place-items:center;width:44px;height:44px;border-radius:14px}.dd-mobile .m-main{max-width:680px;margin:auto;padding:22px 18px calc(110px + env(safe-area-inset-bottom));animation:m-enter .15s ease-out}.dd-mobile h1{font-size:28px;line-height:1.2;font-weight:750;letter-spacing:-.8px;margin:0 0 18px}.dd-mobile h2{font-size:18px;font-weight:650;margin:22px 0 12px}.dd-mobile .m-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:40;width:100%;max-width:680px;display:flex;justify-content:space-around;background:hsl(var(--background));border-top:1px solid hsl(var(--border));padding:8px 8px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -5px 25px #00000008}.dd-mobile .m-nav a{flex:1;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:hsl(var(--muted-foreground));font-size:11px;font-weight:600;border-radius:14px}.dd-mobile .m-nav a[aria-current=page]{color:#16a9bc;background:#18a9bc12}.dd-mobile .m-card{display:block;padding:16px;border:1px solid hsl(var(--border));border-radius:18px;background:hsl(var(--card));margin-bottom:10px}.dd-mobile .m-row{display:flex;gap:12px;align-items:center;justify-content:space-between}.dd-mobile .m-stack{display:grid;gap:12px}.dd-mobile .m-muted{font-size:13px;color:hsl(var(--muted-foreground));line-height:1.5}.dd-mobile .m-title{font-size:16px;font-weight:650}.dd-mobile .m-tag{font-size:12px;border-radius:20px;padding:5px 9px;background:#18a9bc18;color:#1799ae;white-space:nowrap}.dd-mobile .m-field{display:block;width:100%;border:1px solid hsl(var(--border));border-radius:13px;background:hsl(var(--background));padding:13px 12px;min-height:48px;font-size:16px;margin:6px 0 12px}.dd-mobile .m-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 16px;border-radius:14px;background:var(--m-accent);color:#fff;font-weight:650;text-align:center}.dd-mobile .m-secondary{background:hsl(var(--muted));color:hsl(var(--foreground));border:1px solid hsl(var(--border))}.dd-mobile button:disabled{opacity:.45;cursor:wait}.dd-mobile .m-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dd-mobile .m-product{text-align:left;min-height:108px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;margin:0}.dd-mobile .m-product strong{color:#18a9bc}.dd-mobile .m-dock{position:fixed;z-index:35;bottom:calc(82px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 36px);max-width:644px;box-shadow:0 5px 24px #0003}.dd-mobile .m-count{display:flex;align-items:center;gap:10px}.dd-mobile .m-count button{min-width:44px;min-height:44px;background:hsl(var(--muted));border-radius:12px}.dd-mobile .m-notice{border-left:3px solid #e7ab40;padding:10px 12px;margin:12px 0;font-size:14px;background:#e7ab4010}.dd-mobile .m-avatar{width:42px;height:42px;flex-shrink:0;border-radius:14px;display:grid;place-items:center;background:#18a9bc18;color:#18a9bc;font-weight:700}.dd-mobile .m-wrap{min-width:0;overflow-wrap:anywhere}.dd-mobile .m-link{display:block;padding:15px 0;min-height:48px;border-bottom:1px solid hsl(var(--border))}.dd-mobile details summary{cursor:pointer;padding:12px 0;min-height:48px;font-weight:600}.dd-mobile a:focus-visible,.dd-mobile button:focus-visible,.dd-mobile input:focus-visible{outline:3px solid #18a9bc;outline-offset:3px}@keyframes m-enter{0%{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.dd-mobile .m-main{animation:none}}