body{margin:0;background:var(--bg);color:var(--text);font:16px/1.9 var(--font)}main{max-width:800px;margin:32px auto;padding:36px;background:var(--surface);border:1px solid var(--separator);border-radius:24px;box-shadow:var(--shadow-card)}h1{font-size:30px;line-height:1.5}h2{font-size:21px;line-height:1.55;margin:24px 0 8px}p,input{overflow-wrap:anywhere}p{margin:18px 0}label{display:block;font-weight:700;margin-top:14px}input{box-sizing:border-box;width:100%;padding:14px;font:inherit;border:1px solid var(--control-border);border-radius:12px;background:var(--surface);color:var(--text)}button{padding:14px 22px;margin:14px 10px 14px 0;font:inherit;font-weight:700;cursor:pointer;border:1px solid var(--accent);border-radius:14px;background:var(--accent);color:#fff;white-space:normal;max-width:100%;min-height:48px}button:disabled{background:var(--surface-2);border-color:var(--separator);color:var(--text-2);cursor:default}a{color:var(--accent);min-height:44px;display:inline-flex;align-items:center}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[role=status]{font-weight:700;padding:16px 20px;border-radius:16px;background:var(--surface-2)}#device-limit{margin:28px 0;padding:4px 20px 18px;background:var(--surface-2);border-radius:16px}#device-list{list-style:none;margin:14px 0 4px;padding:0}#device-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:14px 0;border-top:1px solid var(--separator)}#device-list li:first-child{border-top:none}.device-info{display:flex;flex-direction:column;gap:2px}.device-label{font-weight:700}.device-meta{color:var(--text-2);font-size:14px}.device-current{font-weight:700;color:var(--accent)}#device-list button{margin:0}#account-panel{margin:28px 0;padding:4px 0 16px;border-top:2px solid var(--separator);border-bottom:1px solid var(--separator)}#account-login{max-width:560px}#account-login button{margin-top:18px}#account-status{min-height:1.9em;margin:8px 0;font-weight:600}#account-signed-in{margin:16px 0;padding:12px 18px;background:var(--surface-2);border-radius:16px}#restore{margin:26px 0 12px}#restore button{margin-top:8px}.restore-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}#rejoin{margin:28px 0;padding:0 18px 14px;border-left:4px solid var(--accent)}#purchase-login{margin:24px 0;padding:4px 20px 18px;border:2px solid var(--accent);border-radius:16px}#purchase-login h2{margin-top:18px}#purchase-login-actions p{margin:10px 0}#purchase-status{min-height:1.9em;margin:8px 0;font-weight:600}#purchase-local{margin:22px 0}#purchase-local summary{padding:10px 0;min-height:44px;font-weight:700;cursor:pointer}#purchase-local p{margin:12px 0}#receipt-view{margin:26px 0}#receipt-url{padding:14px;border:1px solid var(--separator);border-radius:12px;background:var(--surface-2);font-weight:700;-webkit-user-select:all;user-select:all}#receipt-status{min-height:1.9em;margin:8px 0;font-weight:600}[hidden]{display:none!important}@media(max-width:650px){main{margin:16px 12px;padding:24px 18px}h1{font-size:26px}h2{font-size:19px}button{width:100%;margin:10px 0}#account-signed-in{padding:10px 14px}}
/* 賞のチケット（2026-10-15。award-tickets.js）。カードの外枠・見出しは screens.css の .dpg-scr__card。ここは中身だけ。id で書いて、screens.css の .dpg-scr--sub button などより先に効かせる */
#award-ticket-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
#award-ticket-list .award-ticket+.award-ticket{padding-top:18px;border-top:1px solid var(--scr-line,var(--separator))}
#award-tickets .award-ticket__head{display:flex;align-items:center;gap:14px;min-width:0}
#award-tickets .award-ticket__icon{flex:none;width:38px;height:38px;fill:none;stroke:var(--scr-accent,var(--accent));stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#award-tickets .award-ticket__text{display:flex;flex-direction:column;min-width:0}
#award-tickets .award-ticket__title{font-size:16px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}
#award-tickets .award-ticket__title span{display:inline-block}
#award-tickets .award-ticket__sub{font-size:13px;line-height:1.6;color:var(--scr-muted,var(--text-2))}
#award-tickets button{display:block;width:100%;max-width:100%;min-height:50px;margin:0;padding:10px 12px;text-wrap:balance;border:1.5px solid transparent;border-radius:14px;font:inherit;font-size:16px;font-weight:800;line-height:1.4;text-align:center;cursor:pointer}
#award-tickets .award-ticket__use{margin-top:14px}
#award-tickets .award-ticket__use:not(:disabled),#award-tickets .award-ticket__yes:not(:disabled){background:var(--scr-grad,var(--accent));color:#fff;box-shadow:0 3px 0 #4215a8}
#award-tickets .award-ticket__use:disabled,#award-tickets .award-ticket__yes:disabled{background:#d9d6d3;border-color:transparent;color:#3b3631;box-shadow:none;cursor:default}
#award-tickets .award-ticket__no{background:#fff;border-color:var(--scr-control,var(--control-border));color:var(--scr-text,var(--text))}
#award-tickets .award-ticket__no:disabled{background:#f1eeea;border-color:#e5dcd2;color:#65594d;cursor:default}
#award-tickets .award-ticket__confirm{margin-top:10px;padding:14px 16px;border:1.5px solid var(--scr-accent-line,var(--separator));border-radius:14px;background:var(--scr-accent-soft,var(--surface-2))}
#award-tickets .award-ticket__ask{margin:0;font-size:15px;font-weight:800;line-height:1.6}
#award-tickets .award-ticket__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
#award-tickets .award-ticket__actions button{flex:1 1 120px;width:auto}
#award-ticket-status{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:var(--scr-surface-2,var(--surface-2));font-size:14px;font-weight:700;line-height:1.6}
#award-ticket-status:empty{margin:0;padding:0}
#award-ticket-note{margin:12px 0 0;font-size:13px;line-height:1.6;color:var(--scr-muted,var(--text-2));text-align:center}
