
/* same CSS as v9.6 */
.apple-service-selector{max-width:880px;margin:24px auto;padding:0 10px}
.ass-card{background:#fff;border:1px solid #eaeaea;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.06);padding:22px}
.ass-header{font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:600;text-align:center;font-size:28px;margin-bottom:10px;letter-spacing:.2px}
.ass-subtitle{font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;color:#555;text-align:center;margin-bottom:18px}
.ass-devices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.ass-device{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #eee;border-radius:12px;padding:14px;background:#fafafa;cursor:pointer;transition:all .2s}
.ass-device:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.06)}
.ass-device.is-active{outline:2px solid #111;background:#fff}
.ass-device-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px}
.ass-device-icon img,.ass-device-icon svg{width:28px;height:28px;display:block}
.ass-device-name{font-weight:600}
.ass-model-picker{margin:8px 0 14px}
.ass-models{width:100%;padding:10px;border-radius:10px;border:1px solid #ddd;background:#fff}
.ass-services{border-top:1px solid #f0f0f0;margin-top:8px;position:relative;min-height:24px}
.ass-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 0;color:#666}
.ass-spinner{width:20px;height:20px;border:3px solid #ddd;border-top-color:#111;border-radius:50%;animation:ass-spin .8s linear infinite}
@keyframes ass-spin{to{transform:rotate(360deg)}}
.ass-skeleton{height:16px;background:linear-gradient(90deg,#f3f3f3,#e9e9e9,#f3f3f3);background-size:200% 100%;animation:ass-shimmer 1.2s ease-in-out infinite;border-radius:6px;margin:8px 0}
.ass-skeleton.w40{width:40%}.ass-skeleton.w60{width:60%}.ass-skeleton.w80{width:80%}
@keyframes ass-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.ass-service{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #f6f6f6}
.ass-price{font-weight:800;white-space:nowrap}
.ass-cta{display:inline-flex;align-items:center;gap:8px;background:#111;color:#fff;text-decoration:none;border-radius:12px;padding:12px 16px;margin:14px auto 0;font-weight:600;box-shadow:0 6px 16px rgba(0,0,0,.10);transition:transform .15s ease, box-shadow .15s ease, background .15s ease}
.ass-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.14);background:#000;text-decoration:none}
.ass-cta:active{transform:translateY(0);box-shadow:0 4px 12px rgba(0,0,0,.12);text-decoration:none}
.ass-cta, .ass-cta:visited{ text-decoration:none }
@media(max-width:640px){.ass-devices{grid-template-columns:repeat(2,1fr)}}
