.quant-category-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quant-category-summary>span{display:grid;gap:4px;padding:12px 14px;border:1px solid #e8edf4;border-radius:16px;background:#fff}.quant-category-summary small{color:#7a8a9a}.quant-category-summary b{font-size:18px;color:#1a2a3a}.quant-category-summary .positive,.quant-rule-list .positive,#quantRuleButton .positive{color:#278258}.quant-category-summary .negative,.quant-rule-list .negative,#quantRuleButton .negative{color:#d05d55}.quant-picker-field{display:grid}.quant-picker-field.full{grid-column:1/-1}.quant-choice-button{display:flex;align-items:center;gap:12px;min-height:66px;padding:11px 14px;border:1px solid #e8edf4;border-radius:16px;background:#fff;color:#1a2a3a;text-align:left;font:inherit;cursor:pointer;box-shadow:0 4px 14px rgba(74,144,217,.08)}.quant-choice-button>span{display:grid;gap:3px;flex:1}.quant-choice-button small{color:#7a8a9a;font-size:12px}.quant-choice-button b{line-height:1.35}.quant-choice-button>i{font-style:normal;font-size:26px;color:#4a90d9}.quant-choice-button>strong{font-size:20px}.quant-choice-button:active,.quant-picker-list>button:active,.quant-category-tabs button:active,.quant-picker-tools button:active{transform:scale(.97);transition:transform .15s ease}.quant-picker{display:grid;gap:14px}.quant-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.quant-picker-head small{color:#4a90d9;font-weight:700}.quant-picker-head h2{margin:3px 0 0}.quant-picker-search{width:100%;min-height:50px;border:1px solid #e8edf4!important;border-radius:16px!important;background:#f8faff!important;font-size:16px!important}.quant-picker-tools{display:flex;justify-content:flex-end;gap:8px}.quant-picker-tools button{min-height:44px;padding:0 13px;border:1px solid #e8edf4;border-radius:30px;background:#fff;color:#4a6a8a;font-weight:700}.quant-picker-list{display:grid;gap:8px;max-height:58vh;overflow:auto;padding:1px}.quant-picker-list>button{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 13px;border:1px solid #e8edf4;border-radius:16px;background:#fff;color:#1a2a3a;text-align:left;font:inherit;cursor:pointer}.quant-picker-list>button.selected{border-color:#4a90d9;background:#f0f7ff;box-shadow:inset 0 0 0 1px #4a90d9}.quant-picker-list>button>span:not(.quant-avatar){display:grid;gap:3px;flex:1}.quant-picker-list>button small{color:#7a8a9a}.quant-picker-list>button i{font-style:normal;font-size:22px;color:#4a90d9}.quant-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:30px;background:#f0f7ff;color:#3a7bc4;font-weight:800}.quant-picker-list>button.selected .quant-avatar{background:#4a90d9;color:#fff}.quant-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}.quant-picker-footer>b{color:#1a2a3a}.quant-picker-footer .btn{min-height:48px}.quant-rule-list>button{align-items:center;min-height:72px}.quant-rule-list strong{min-width:52px;font-size:20px;text-align:right}.quant-category-tabs{display:flex;gap:8px;overflow:auto;padding:1px;scrollbar-width:none}.quant-category-tabs button{min-width:max-content;min-height:44px;padding:0 14px;border:1px solid #e8edf4;border-radius:30px;background:#fff;color:#4a6a8a;font-weight:700}.quant-category-tabs button.active{border-color:#4a90d9;background:#f0f7ff;color:#3a7bc4}
@media(max-width:820px){.quant-category-summary{grid-template-columns:1fr 1fr}.quant-category-summary>span{min-height:68px}.quant-choice-button{min-height:70px}.quant-form .actions button[onclick="openQuantificationRules()"]{display:none}#modal .dialog:has(.quant-picker){position:absolute;left:0;right:0;bottom:0;width:100%;max-width:none;max-height:92vh;margin:0;border-radius:24px 24px 0 0;padding:18px 16px max(18px,env(safe-area-inset-bottom));box-shadow:0 -8px 40px rgba(0,0,0,.12);animation:quantDrawerIn .3s cubic-bezier(.32,.72,0,1)}.quant-picker-list{max-height:55vh}.quant-rule-picker .quant-picker-list{max-height:48vh}}@media(max-width:380px){.quant-category-summary>span{padding:10px 12px}.quant-choice-button{padding:10px 12px}.quant-picker-list>button{padding:9px 11px}.quant-rule-list strong{min-width:44px;font-size:18px}}@keyframes quantDrawerIn{from{transform:translateY(100%)}to{transform:translateY(0)}}
.quant-dorm-weekly{border-color:#b8d7ad!important;background:#edf7e9!important;color:#34662b!important}.quant-dorm-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quant-dorm-summary span{display:grid;gap:3px;padding:12px;border-radius:16px;background:#f8faff;text-align:center}.quant-dorm-summary b{font-size:22px;color:#1a2a3a}.quant-dorm-summary small{color:#7a8a9a}.quant-dorm-list{display:grid;gap:8px;max-height:42vh;overflow:auto}.quant-dorm-room{display:grid;gap:7px;padding:12px 14px;border:1px solid #e8edf4;border-radius:16px;background:#fff}.quant-dorm-room>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.quant-dorm-room span{font-weight:800;color:#1a2a3a}.quant-dorm-room b{padding:5px 9px;border-radius:30px;font-size:12px;white-space:nowrap}.quant-dorm-room p{margin:0;color:#4a6a8a;line-height:1.55}.quant-dorm-room small{color:#7a8a9a;line-height:1.5}.quant-dorm-room.eligible{border-color:#cfe3c8;background:#f7fbf5}.quant-dorm-room.eligible b{background:#e5f4df;color:#34702b}.quant-dorm-room.deducted{border-color:#f0d1ce;background:#fff9f8}.quant-dorm-room.deducted b{background:#fbe6e4;color:#a44740}.quant-dorm-done{padding:12px 14px;border-radius:16px;background:#e5f4df;color:#34702b;font-weight:700}@media(max-width:820px){.quant-dorm-review .actions{position:sticky;bottom:0;margin:0 -2px;padding-top:10px;background:#fff}.quant-dorm-review .actions .btn{flex:1}.quant-dorm-list{max-height:38vh}}@media(max-width:380px){.quant-dorm-summary span{padding:10px 6px}.quant-dorm-summary b{font-size:19px}.quant-dorm-room{padding:11px 12px}}
.quant-reward-window{padding:11px 14px;border-radius:14px;background:#fff6e6;color:#9a6614;font-weight:700}.quant-reward-window.open{background:#e5f4df;color:#34702b}.quant-reward-groups{display:grid;gap:10px;max-height:44vh;overflow:auto}.quant-reward-group{overflow:hidden;border:1px solid #cfe3c8;border-radius:18px;background:#fff}.quant-reward-group header{display:flex;align-items:center;gap:12px;padding:13px 14px;background:#f7fbf5}.quant-reward-group header>span{display:grid;gap:3px;flex:1}.quant-reward-group header small{color:#4a6a8a}.quant-reward-group header b{color:#1a2a3a;line-height:1.4}.quant-reward-group header strong{font-size:22px;color:#278258}.quant-reward-names{display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px}.quant-reward-names>span{display:grid;gap:2px;min-width:92px;padding:8px 10px;border-radius:12px;background:#f0f7ff;color:#1a2a3a;font-weight:800}.quant-reward-names small{color:#7a8a9a;font-size:11px;font-weight:500}.quant-reward-group footer{padding:0 14px 12px;color:#4a6a8a;font-size:13px}.quant-excluded{border-top:1px solid #e8edf4;padding-top:10px}.quant-excluded summary{min-height:44px;color:#4a6a8a;font-weight:700;cursor:pointer}.quant-excluded .quant-dorm-list{max-height:24vh}@media(max-width:380px){.quant-reward-names>span{min-width:calc(50% - 4px)}.quant-reward-group header{padding:12px}.quant-reward-names{padding:10px 12px}}
.quant-review-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#34702b}.quant-review-section-head small{color:#7a8a9a}.quant-review-section-head.manual{color:#9a6614}.quant-reward-groups.manual{max-height:none}.quant-reward-group.manual{border-color:#ead9b9}.quant-reward-group.manual header{background:#fff9ed}.quant-reward-group.manual header strong{font-size:16px;color:#9a6614;white-space:nowrap}.quant-reward-group.manual .quant-reward-names>span{background:#fff6e6}.quant-role-note{margin:0;color:#7a8a9a;font-size:13px;line-height:1.5}
.quant-rank-row{grid-template-columns:32px minmax(0,1fr) auto auto!important}.quant-history-link{min-height:44px;padding:0 10px;border:0;border-radius:12px;background:#f0f7ff;color:#3a7bc4;font-weight:700;cursor:pointer}.quant-history-link:active{transform:scale(.97);transition:transform .15s ease}.quant-history-tools{display:grid;grid-template-columns:minmax(150px,.55fr) minmax(220px,1fr) auto auto;gap:8px;margin:14px 0 8px}.quant-history-tools select,.quant-history-tools input{width:100%;min-height:46px;border:1px solid #e8edf4;border-radius:14px;background:#f8faff;color:#1a2a3a;font:inherit}.quant-history-tools .btn{min-height:46px;white-space:nowrap}.quant-history-result{margin:0 0 8px}@media(max-width:820px){.quant-history-tools{grid-template-columns:1fr 1fr}.quant-history-tools input{grid-column:1/-1;grid-row:1}.quant-history-tools .btn{width:100%}.quant-history-tools .btn.primary{grid-column:1/-1}.quant-rank-row{grid-template-columns:32px minmax(0,1fr) auto!important}.quant-rank-row .quant-point{grid-column:3}.quant-rank-row .quant-history-link{grid-column:2/4;justify-self:stretch;margin-bottom:7px}}@media(max-width:380px){.quant-history-tools{grid-template-columns:1fr}.quant-history-tools input,.quant-history-tools select,.quant-history-tools .btn{grid-column:1;grid-row:auto}.quant-rank-row{column-gap:7px}}
.quant-period-field{display:grid;gap:7px;color:#4a6a8a;font-size:14px;font-weight:700}.quant-period-field input{width:100%;min-height:48px;padding:0 12px;border:1px solid #e8edf4;border-radius:14px;background:#f8faff;color:#1a2a3a;font:inherit}.quant-month-rows{display:grid;gap:8px;max-height:50vh;overflow:auto}.quant-month-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:10px 12px;border:1px solid #e8edf4;border-radius:16px;background:#fff}.quant-month-row>span{display:grid;gap:2px;min-width:0;color:#1a2a3a}.quant-month-row small{color:#7a8a9a;font-size:12px}.quant-month-row input{min-height:44px;max-width:48%;border:1px solid #e8edf4;border-radius:12px;background:#f8faff;color:#1a2a3a;font:inherit}.quant-period-reminders{display:grid;gap:8px;margin:0 0 16px;padding:16px;border:1px solid #dce9f7;border-radius:24px;background:#f0f7ff}.quant-period-reminders h3{margin:0 0 3px;color:#1a2a3a}.quant-period-reminder{display:grid;gap:3px;width:100%;min-height:56px;padding:11px 13px;border:1px solid #e8edf4;border-radius:16px;background:#fff;color:#1a2a3a;text-align:left;font:inherit;cursor:pointer}.quant-period-reminder small{color:#7a8a9a}.quant-period-reminder:active{transform:scale(.97);transition:transform .15s ease}@media(max-width:380px){.quant-month-row{align-items:stretch;flex-direction:column}.quant-month-row input{max-width:none;width:100%}}
.quant-week-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x mandatory}.quant-week-tab{display:grid;flex:0 0 112px;gap:2px;min-height:72px;padding:10px;border:1px solid #e8edf4;border-radius:16px;background:#fff;color:#1a2a3a;text-align:left;font:inherit;scroll-snap-align:start;cursor:pointer}.quant-week-tab b{font-size:15px}.quant-week-tab small{color:#7a8a9a;font-size:11px;white-space:nowrap}.quant-week-tab em{font-size:11px;font-style:normal;color:#7a8a9a}.quant-week-tab.active{border-color:#4a90d9;background:#f0f7ff;box-shadow:inset 0 0 0 1px #4a90d9}.quant-week-tab.active em{color:#3a7bc4}.quant-week-tab:active,.quant-week-tools button:active{transform:scale(.97);transition:transform .15s ease}.quant-week-tools{display:flex;gap:8px}.quant-week-tools button{min-height:44px;padding:0 12px;border:1px solid #d9e8f7;border-radius:12px;background:#f0f7ff;color:#3a7bc4;font-weight:700;cursor:pointer}.quant-week-rooms{display:flex;flex-direction:column;gap:12px}.quant-week-room{overflow:hidden;border:1px solid #e8edf4;border-radius:18px;background:#fff}.quant-week-room header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#f8faff}.quant-week-room header>span{display:grid;gap:3px}.quant-week-room header b{color:#1a2a3a}.quant-week-room header small{font-size:12px;color:#7a8a9a}.quant-week-room-check{display:flex;align-items:center;gap:7px;min-height:44px;color:#3a7bc4;font-size:13px;font-weight:700;white-space:nowrap}.quant-week-room-check input,.quant-week-check input{width:20px;height:20px;accent-color:#4a90d9}.quant-week-person{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:62px;padding:9px 14px;border-top:1px solid #e8edf4}.quant-week-person>span,.quant-week-check span{display:grid;gap:2px}.quant-week-person b{color:#1a2a3a}.quant-week-person small{font-size:11px;color:#7a8a9a}.quant-week-person strong{color:#278258}.quant-week-check{display:flex;align-items:center;gap:10px;min-height:44px;flex:1;cursor:pointer}.quant-week-score{display:flex;align-items:center;gap:6px;color:#4a6a8a;font-size:12px;white-space:nowrap}.quant-week-score input{width:76px;min-height:44px;padding:0 7px;border:1px solid #e8edf4;border-radius:12px;background:#fff;color:#1a2a3a;font:inherit;font-size:16px;text-align:center}.quant-week-score input:disabled{background:#f5f7fa;color:#7a8a9a}.quant-week-warning{margin:0;color:#9a6614;line-height:1.5}.quant-week-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 0;border-top:1px solid #e8edf4}.quant-week-actions span{color:#1a2a3a;font-weight:700}.quant-week-actions .btn{min-height:48px}@media(max-width:380px){.quant-week-room header,.quant-week-person{padding-left:11px;padding-right:11px}.quant-week-score input{width:66px}.quant-week-actions{flex-wrap:wrap}.quant-week-actions .btn{width:100%}}
.quant-cadre-history-modes{display:flex;gap:8px;margin:0 0 14px}.quant-cadre-history-modes .btn{min-height:44px;flex:1}.quant-cadre-history-rows{display:grid;gap:8px}.quant-cadre-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid #e8edf4;border-radius:14px;background:#f8faff}.quant-cadre-history-row span{display:grid;gap:4px;min-width:0}.quant-cadre-history-row small{font-size:11px;color:#7a8a9a;overflow-wrap:anywhere}.quant-cadre-history-row strong{color:#278258;white-space:nowrap}
