:root{--v172-green:#28624e;--v172-line:#dce6dd;--v172-paper:#fff;--v172-nav-height:72px}
.v172-bottom-nav,.v172-menu-backdrop,.v172-mobile-sort,.v172-mobile-admin-controls{display:none}
.v172-notice{padding:14px 16px;border:1px solid #e6d2a6;border-radius:16px;background:#fff8e9;color:#77571d;font-size:13px;line-height:1.6}
.v172-notice p{margin-top:4px}.v172-error{border-color:#e9b9ad;background:#fff4ee;color:#813c2a}
.v172-notice button{margin-top:8px;border:1px solid currentColor;border-radius:10px;padding:8px 14px;font-weight:700}
.v172-orders{grid-column:1/-1;padding:24px;background:white;border:1px solid var(--v172-line);border-radius:24px}
.v172-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.v172-section-heading h3{font-size:20px;font-weight:800;color:#2e5644}.v172-section-heading>span{font-size:12px;color:#64766b}
.v172-eyebrow{font-size:11px;font-weight:700;color:#688575;letter-spacing:.08em;margin-bottom:3px}
.v172-order-filters{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;margin-bottom:16px}
.v172-order-filters label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#5b6c60}
.v172-order-filters input,.v172-order-filters select{width:100%;min-height:44px;border:1px solid #dce6dd;background:#f7faf6;border-radius:12px;padding:10px 12px;font:inherit;color:#314c3b}
.v172-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.v172-order{min-width:0;border:1px solid var(--v172-line);border-radius:16px;padding:16px;background:#fafcf9;overflow-wrap:anywhere}
.v172-order header,.v172-order-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.v172-order-id{font-size:12px;color:#6a7c6e}.v172-pill{font-size:12px;border-radius:8px;background:#e9f2e9;padding:5px 8px;color:#396149;font-weight:700}.v172-order h4{font-size:16px;font-weight:800;margin:12px 0 6px}.v172-order p{font-size:13px;color:#5f7066}.v172-order-meta{font-size:12px;margin-top:12px;color:#6a7c6e}.v172-order-meta time{font-size:11px;text-align:right}.v172-order button{width:100%;margin-top:12px;min-height:44px;border-radius:12px;background:#336d50;color:white;font-weight:700;font-size:13px}.v172-order button:disabled{background:#edf0ea;color:#75806f;cursor:not-allowed}.v172-duplicate{margin-top:10px;color:#9d5125!important}.v172-empty{padding:28px;text-align:center;color:#697568;font-size:14px}
.v172-content-anchor{scroll-margin-top:100px}.v172-student-table td{overflow-wrap:anywhere}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d69a43!important;outline-offset:3px}
@media(max-width:767px){
 html{scroll-padding-bottom:100px}body{background:#f4f7f0;overscroll-behavior-y:none}
 .v1612-page-shell{padding-bottom:calc(var(--v172-nav-height) + env(safe-area-inset-bottom) + 20px)!important}
 .v1612-page-shell>header.v172-site-header{padding:10px 12px!important;gap:8px;background:rgba(255,255,255,.96);z-index:35;min-height:66px}
 .v172-site-header>div:first-child{gap:7px;min-width:0}.v172-site-header>div:first-child>div:first-child{width:32px;height:32px;flex:none}
 .v172-site-header>div:first-child>div:last-child>span:first-child{font-size:11px;letter-spacing:0;line-height:1.45;white-space:nowrap}.v172-site-header>div:first-child>div:last-child>span:last-child{display:none}
 .v172-site-header>div:last-child{gap:4px}.v172-site-header button,.v172-site-header select{min-height:44px;min-width:40px;padding:8px!important}.v172-site-header select{max-width:60px}.v172-site-header button[title*='PIN']{display:none}.v172-site-header button[aria-label='刷新本站資料']{font-size:0!important;min-width:40px}.v172-site-header button[aria-label='刷新本站資料']::after{content:'↻';font-size:23px}
 .v1612-page-shell>main{padding:14px 12px!important;min-width:0}
 .v172-profile{padding:16px!important;border-radius:22px!important;margin-bottom:16px!important}.v172-profile>div:last-child{gap:14px!important;align-items:stretch}
 .v172-profile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:0!important}.v172-profile-grid>div{padding:11px!important;min-width:0}.v172-profile-grid>div:nth-child(2){grid-column:1/-1;grid-row:1}.v172-profile-grid>div>div>span:first-child{font-size:12px!important}.v172-profile-grid .text-\[9px\]{font-size:11px!important;line-height:1.7}
 .v120-feature-menu,.v172-menu-caption{display:none!important}
 .v172-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));bottom:0;left:0;right:0;z-index:50;padding:6px 6px calc(6px + env(safe-area-inset-bottom));min-height:var(--v172-nav-height);background:rgba(255,255,255,.98);border-top:1px solid #d6e3d6;box-shadow:0 -4px 22px #324d3810}
 .v172-bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;border-radius:14px;color:#68796c;font-size:11px;font-weight:700;touch-action:manipulation}.v172-bottom-nav button[aria-current=page]{background:#e7f1e7;color:#205d40}.v172-more-icon{font-size:22px;line-height:22px}
 .v172-menu-backdrop{display:flex;position:fixed;inset:0;z-index:450;background:#142c2499;align-items:flex-end;backdrop-filter:blur(3px)}
 .v172-menu-sheet{width:100%;max-height:90dvh;overflow-y:auto;background:#f7faf4;border-radius:26px 26px 0 0;padding:20px 16px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -20px 70px #11251a40}
 .v172-menu-sheet>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.v172-menu-sheet h2{font-size:22px;font-weight:800;color:#2e5940}.v172-menu-sheet>header button{width:44px;height:44px;border-radius:50%;border:1px solid #d9e4d5;background:white;color:#42664c}
 .v172-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v172-menu-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 7px;min-height:96px;border-radius:18px;border:1px solid #dce7d6;background:white;color:#3c624c;font-size:12px;font-weight:700}.v172-menu-grid button[aria-current=page]{background:#e4efdf;border-color:#7fa67b}
 .v172-management-groups,.v172-management-tabs{display:none!important}.v172-mobile-admin-controls{display:grid;gap:12px}.v172-mobile-admin-controls label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#62705f}.v172-mobile-admin-controls select{width:100%;border:1px solid #d7e3d0;border-radius:12px;background:#f5f8f0;padding:10px 12px;color:#2f5c40}
 .v172-students-section{display:flex;flex-direction:column}.v172-students-section>.v172-student-roster{order:-1;padding:16px!important}
 .v172-mobile-sort{display:grid;gap:6px;margin:12px 0;font-size:12px;color:#64715f;font-weight:700}.v172-mobile-sort select{width:100%;padding:10px 14px;border:1px solid #dce6d7;border-radius:12px;background:#f8faf5}.v172-student-table{display:block;width:100%}.v172-student-table thead{display:none}.v172-student-table tbody{display:grid;gap:14px}.v172-student-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;border:1px solid #dce6d7!important;border-radius:18px;background:#f8faf5;gap:10px}
 .v172-student-table td{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:0!important;font-size:14px;min-width:0}.v172-student-table td::before{content:attr(data-label);font-size:11px;color:#74806c;font-weight:600}.v172-student-table td[data-label='姓名']{grid-column:1/-1;grid-row:1;font-size:20px;color:#2d5940}.v172-student-table td[data-label='操作'],.v172-student-table td[data-label='歷史閱讀']{grid-column:1/-1}.v172-student-table td[data-label='操作']{flex-direction:row;flex-wrap:wrap;border-top:1px solid #dce6d7;padding-top:12px!important;gap:8px}.v172-student-table td[data-label='操作']::before{width:100%}.v172-student-table button{min-height:44px;min-width:44px;margin:0!important;padding:8px!important;border-radius:10px;background:white;border:1px solid #dce6d7}
 .v172-orders{padding:16px;border-radius:20px}.v172-order-filters{grid-template-columns:minmax(0,1fr)}.v172-order-list{grid-template-columns:minmax(0,1fr)}
 .v1612-page-shell input:not([type=checkbox]):not([type=radio]):not([type=file]),.v1612-page-shell select,.v1612-page-shell textarea{font-size:16px!important;max-width:100%;min-height:44px}.v1612-page-shell input[type=checkbox],.v1612-page-shell input[type=radio]{width:20px;height:20px;flex-shrink:0}
 .v1612-page-shell button{touch-action:manipulation;min-height:44px}.v1612-page-shell h2,.v1612-page-shell h3{overflow-wrap:anywhere}.v1612-page-shell main [class*='text-[9px]'],.v1612-page-shell main [class*='text-[10px]']{font-size:11px!important;line-height:1.6}
 .v1612-page-shell main .p-10,.v1612-page-shell main .p-8{padding:18px!important}.v1612-page-shell main .p-6{padding:16px!important}.v1612-page-shell main .text-4xl{font-size:26px!important}
 .v1612-page-shell .overflow-x-auto{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.v1612-page-shell main>div,.v1612-page-shell section,.v1612-page-shell article{min-width:0}.v1612-page-shell img{max-width:100%;height:auto}.v172-shop-card{flex-wrap:wrap;align-items:flex-start!important}.v172-shop-card>div:first-child{min-width:0;flex:1}.v172-shop-card>div:last-child{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px}.v172-shop-card>div:last-child>span{margin:0}.v172-shop-card p{font-size:13px!important;line-height:1.6}
 .v172-modal-overlay{align-items:flex-end!important;padding:0!important;overflow-y:auto}.v172-modal-overlay>div,.v172-modal-overlay>section{width:100%!important;max-height:94dvh!important;overflow-y:auto!important;border-radius:24px 24px 0 0!important;padding-bottom:calc(22px + env(safe-area-inset-bottom))!important;margin:0!important}.v172-modal-overlay button{min-height:44px}.v172-modal-overlay .max-h-\[80vh\]{max-height:80dvh}
 .v172-content-anchor{scroll-margin-top:80px}.v16104-home-board{margin-bottom:16px!important}.v1691-mode-tabs{overflow-x:auto;flex-wrap:nowrap!important}.v1691-mode-tabs button{flex:none;white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){.v1612-page-shell *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* V16.17.3: viewport-driven layouts. No device sniffing or fixed canvas scale. */
.v173-responsive-shell{width:100%;min-width:0}
.v173-responsive-shell main{min-width:0}
.v173-responsive-shell main>*{min-width:0}
.v173-reading-grid>*,.v173-card-grid>*,.v173-rank-grid>*{min-width:0}
@media(min-width:768px) and (max-width:1199px){
 .v173-responsive-shell{max-width:1080px!important;padding-bottom:36px!important}
 .v173-responsive-shell>main{padding:22px 24px!important}
 .v172-site-header{padding:14px 24px!important;gap:14px!important}
 .v172-site-header button,.v172-site-header select{min-height:44px}
 .v173-profile-layout{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}
 .v173-profile-layout>div:first-child{width:100%!important}
 .v172-profile{padding:24px!important;margin-bottom:24px!important}
 .v172-profile-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
 .v172-profile-grid>div{padding:14px!important;min-width:0}
 .v172-profile-grid>div:nth-child(2){grid-column:span 2}
 .v120-feature-menu{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
 .v120-feature-menu .v120-menu-button{flex-direction:column!important;justify-content:center!important;gap:9px!important;min-height:86px!important;padding:12px 8px!important;text-align:center!important;font-size:13px!important}
 .v120-feature-menu .v120-menu-button span{white-space:normal!important;line-height:1.5}
 .v173-card-grid,.v173-reading-grid,.v173-rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
 .v172-management-groups{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .v172-management-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
 .v172-management-tabs button{min-height:48px;white-space:normal}
 .v172-student-table{min-width:820px}
 .v172-modal-overlay{padding:24px!important;align-items:center!important}
 .v172-modal-overlay>div,.v172-modal-overlay>section{max-width:min(92vw,860px)!important;max-height:88dvh!important}
 .v172-order-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v120-lab-surface iframe{min-height:620px}
}
@media(min-width:1200px){
 .v173-responsive-shell{max-width:1360px!important;padding-bottom:40px!important}
 .v173-responsive-shell>main{padding:28px 32px!important}
 .v172-site-header{padding-left:32px!important;padding-right:32px!important}
 .v173-profile-layout{display:flex!important;flex-direction:row!important;gap:24px!important}
 .v172-profile-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
 .v172-profile-grid>div{min-width:0;padding:14px!important}
 .v120-feature-menu{max-width:none!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
 .v120-feature-menu .v120-menu-button{min-height:56px!important;justify-content:flex-start!important;padding:14px 18px!important}
 .v173-card-grid,.v173-reading-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .v173-rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .v172-management-groups{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:767px){
 .v173-card-grid,.v173-reading-grid,.v173-rank-grid{grid-template-columns:minmax(0,1fr)!important}
 .v173-responsive-shell .v172-profile-grid>div{min-width:0}
 .v173-responsive-shell .v173-reading-grid p{line-height:1.85}
 .v172-site-header>div:first-child{flex:1;min-width:0}
 .v172-site-header>div:last-child{flex:none}
 .v172-site-header>div:first-child>div:last-child>span:first-child{white-space:normal}
 .fs1665-venue-grid{grid-template-columns:minmax(0,1fr)!important}
 .v173-responsive-shell .v172-section-heading{align-items:flex-start;flex-wrap:wrap}
}
