body{background:#eeece7}main{max-width:560px;box-shadow:0 0 40px #09285210}.header{padding:16px 20px}.brand{font-size:24px}.crest-img{width:58px;height:62px}.welcome{padding:15px 20px}.welcome strong{font-size:16px}.welcome small{font-size:12px}.demo-strip{text-align:center;color:#7b6d58;font-size:11px;padding:6px;background:#f1ecdf;letter-spacing:.06em}.wrap{padding:16px 20px}.tile{font-size:17px;line-height:1.5}.tile.big{min-height:154px;font-size:21px}.tile.small{font-size:15px;min-height:124px}.tile small{font-size:12px}.tile.red{background:linear-gradient(135deg,#bd0026,#a80020)}.sectionhead h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:24px}.sectionhead .link{padding:8px 0;font-size:14px}.linebox{font-size:14px;line-height:1.5}.lineicon{padding:12px 8px}.linebox button{font-size:14px}.date{font-size:30px}.stats b{font-size:20px}.stats span:last-child{border:0}.notice :is(button,a){font-size:16px;line-height:1.7}.notice small{font-size:13px}.magazine-cover{background:url('assets/reference.jpeg') 91.65% 58.61% / 251.34% 582.04%;aspect-ratio:522/206;min-height:0;padding:0;cursor:pointer}.magazine-cover>*{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.magazine:not(.magazine-cover){background:linear-gradient(115deg,#062852,#34556e)}.actions :is(button,a){font-size:17px;padding:13px 4px}.event{line-height:1.5}.event b{font-size:20px}.hint{line-height:1.7}.sheet{max-height:90dvh;padding:0 20px 25px;overscroll-behavior:contain}.sheethead{position:sticky;top:0;background:#fff;z-index:2;padding:18px 0 12px;gap:8px;border-bottom:1px solid #eee;margin-bottom:15px}.sheethead h2{flex:1;font-size:21px;margin:0}.back{font-size:32px;border:0;background:#f5f2eb;color:var(--navy);width:36px;height:36px;border-radius:50%;line-height:1}.close{flex-shrink:0}.option{line-height:1.6;font-size:16px}.primary{line-height:1.4}.secondary{width:100%;padding:13px;background:white;border:1px solid var(--navy);color:var(--navy);border-radius:6px;margin-top:10px;font-weight:700}.danger{color:var(--red);border-color:var(--red)}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0}.calendar-head button{border:1px solid #ddd;background:white;border-radius:6px;width:40px;height:40px;font-size:22px;color:var(--navy)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:16px}.calendar .day-label{text-align:center;font-size:12px;padding:5px}.calendar button{padding:6px 0;border:1px solid #e5e5e5;border-radius:6px;background:#fff;color:var(--navy);min-height:47px}.calendar button small{display:block;color:#3e7f60;font-size:10px}.calendar button.selected{background:var(--navy);color:white;border-color:var(--navy)}.calendar button.selected small{color:#d3eddc}.calendar button:disabled{background:#f7f7f7;color:#bbb}.calendar button:disabled small{color:#aaa}.calendar button.sun,.sun{color:#b50927}.calendar button.sat,.sat{color:#2358a6}label{display:block;font-size:14px;font-weight:600}.field{color:var(--navy);background:white}.facts{display:grid;grid-template-columns:100px 1fr;gap:12px;margin:20px 0;font-size:15px}.facts dt{color:#737e88}.facts dd{margin:0;font-weight:600}.notice-content{line-height:1.9;color:#344c64}.success-mark{width:65px;height:65px;background:#e7f5e8;color:#248348;border-radius:50%;display:grid;place-items:center;margin:20px auto;font-size:32px}.status-msg{text-align:center;line-height:1.8}.barcode{position:relative}.barcode:after{content:'SAMPLE';position:absolute;inset:30px 15px;background:#fff;font-size:22px;letter-spacing:8px;color:#777}.member-photo svg{width:68px;height:68px}.history-table{width:100%;border-collapse:collapse}.history-table td,.history-table th{text-align:left;padding:13px 8px;border-bottom:1px solid #eee}.history-table th:first-child{width:50px}.history-table th{color:#8a7858}.details-note{background:#f7f5ee;padding:13px;border-radius:6px;line-height:1.7;font-size:14px}.ext-link{display:block;text-decoration:none;text-align:center}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#062852;color:white;padding:13px 20px;border-radius:9px;z-index:30;box-shadow:0 6px 24px #0003;font-size:14px;max-width:90%;width:max-content}.menu{top:96px}.menu :is(button,a){color:var(--navy)}button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #b17a25;outline-offset:3px}.reservation button{border:0;background:white;color:var(--navy);width:100%;text-align:left;font:inherit;cursor:pointer}.reservation .subrow{border-top:1px solid #eee}.empty{padding:24px;text-align:center;color:#64758a}.history-year span:last-child{color:var(--navy);font-size:20px}.sheet .hint{text-align:left}.menu.show{max-height:70dvh;overflow:auto}.member-meta{font-weight:500}.linked{border:0}.saved-tag{font-size:12px;color:#718176}body.modal-open{overflow:hidden}.event button{min-height:44px}.subrow{line-height:1.6}.back[hidden]{display:none}
@media(max-width:420px){.header{padding:12px 15px;gap:8px}.brand{font-size:21px}.crest-img{width:49px;height:53px}.welcome{padding:13px 15px;gap:4px}.welcome strong{font-size:14px}.welcome small{font-size:10px}.linked{font-size:10px;padding:7px}.wrap{padding:12px 14px}.tile.big{min-height:134px;font-size:18px}.tile.small{min-height:114px;font-size:13px}.sectionhead h2{font-size:21px}.sectionhead .link{font-size:12px}.linebox{font-size:12px;padding:11px;gap:8px}.linebox button{font-size:12px}.stats b{font-size:18px}.actions :is(button,a){font-size:15px}.event b{font-size:18px}.event{font-size:14px}.event button{padding:8px 11px}.sheet{padding:0 16px 25px}.calendar{gap:4px}}
@media(min-width:850px){main{max-width:1120px;margin:24px auto;border-radius:12px}.header{padding:20px 32px}.brand{font-size:28px}.crest-img{width:65px;height:68px}.welcome{padding:18px 32px}.welcome strong{font-size:19px}.welcome small{font-size:14px}.linked{font-size:14px}.wrap{padding:24px 30px;display:grid;grid-template-columns:1fr 1fr;column-gap:34px;align-items:start}.desktop-left,.desktop-right{min-width:0}.desktop-left>.sectionhead:first-child,.desktop-right>.sectionhead:first-child{margin-top:0}.sheet{width:620px;border-radius:16px;max-height:85dvh}.overlay{align-items:center}.menu{left:auto;right:max(24px,calc((100vw - 1120px)/2));transform:none;top:132px;width:320px}.tile.big{min-height:156px}.demo-strip{font-size:12px}.hint.footer{grid-column:1/-1;margin:26px 0 4px}.magazine-cover{margin-top:8px}.event{padding:16px}.sheet .primary{font-size:17px}}

/* User-supplied member screens, displayed directly without phone/browser chrome. */
.sheet.member-view{width:min(560px,100%);padding:0;background:white;border-radius:0;max-height:100dvh;height:100dvh}.member-view .sheethead{margin:0;padding:10px 14px;border-bottom:1px solid #eee}.member-view .sheethead h2{font-size:16px;font-weight:500}.member-original{color:#333;background:#fff}.reference-brand,.reference-body{position:relative;width:100%;overflow:hidden}.reference-brand{aspect-ratio:1179/150;border-bottom:1px solid #eee;box-shadow:0 2px 3px #00000008}.reference-brand img,.reference-body img{display:block;width:100%;height:auto;position:absolute;left:0;top:0;max-width:none}.reference-brand img{transform:translateY(-13.6932707355%)}.reference-body img{transform:translateY(-19.5618153365%)}.reference-checkin{aspect-ratio:1179/1670}.reference-profile{aspect-ratio:1179/1525}.original-history{margin:0 9.1%;padding:30px 0 0;border-top:1px solid #e8e8e8}.original-history h3{border-left:5px solid #a99a6c;font-size:21px;padding:2px 0 2px 13px;margin:0 0 20px;font-weight:800}.original-history .history-year{font-size:18px;padding:17px 0 22px;border:0;justify-content:flex-start;gap:0;color:#444}.original-history .history-year span:first-child{width:59%;font-weight:800}.original-history .history-year span:last-child{color:#333;font-size:18px;font-weight:500}.reference-note{padding:20px 18px 30px;font-size:11px;line-height:1.6;color:#8c8c8c;text-align:center;margin:0}.member-view .sheethead .close,.member-view .sheethead .back{width:32px;height:32px}.member-view .sheethead .close{font-size:21px}
@media(min-width:850px){.sheet.member-view{height:90dvh;max-height:90dvh;border-radius:10px}.original-history h3{font-size:25px}.original-history .history-year,.original-history .history-year span:last-child{font-size:23px}}

.reference-menu-hit{position:absolute;right:2%;top:4%;width:15%;height:90%;border:0;background:transparent;cursor:pointer}.reference-nav{padding:8px 20px;border-bottom:1px solid #eee}.reference-nav button{display:block;width:100%;padding:12px;border:0;border-bottom:1px solid #eee;background:white;text-align:left;color:#333}
