:root{color:#25463f;font-synthesis:none;line-break:strict;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#fff8ef;font-family:system-ui,-apple-system,sans-serif;line-height:1.65}h1,h2,h3{word-break:auto-phrase}*{box-sizing:border-box}body{margin:0}main{overflow-wrap:anywhere;max-width:760px;margin:auto;padding:48px 20px 36px}header{margin-bottom:32px}h1{letter-spacing:.04em;margin:14px 0;font-size:clamp(2rem,6vw,3rem)}h2{margin-top:0;font-size:1.18rem}p{margin:12px 0}.badge{color:#285d4e;letter-spacing:.1em;background:#e0ece5;border-radius:30px;padding:6px 12px;font-size:.8rem}section{background:#fff;border:1px solid #e3e5da;border-radius:20px;margin:18px 0;padding:26px}label{margin:18px 0;font-weight:600;display:block}textarea,select,input{width:100%;min-width:0;max-width:100%;font:inherit;color:#25463f;background:#fff;border:1px solid #b6c4b9;border-radius:9px;margin-top:8px;padding:12px;display:block}textarea{resize:vertical;min-height:100px}input[type=date],input[type=time],input[type=datetime-local]{text-align:left}input::-webkit-date-and-time-value{text-align:left;margin:0}@supports (-webkit-touch-callout:none){input[type=date],input[type=time],input[type=datetime-local]{appearance:none;align-items:center;min-height:52px;display:flex}}input[type=file]{padding:10px;font-size:.85rem}input[type=file]::file-selector-button{font:inherit;color:#25463f;background:#e5eee9;border:0;border-radius:8px;margin-right:10px;padding:6px 10px;font-weight:600}button,.button{cursor:pointer;font:inherit;color:#fff;background:#377367;border:0;border-radius:10px;padding:12px 18px;font-weight:600;text-decoration:none;display:inline-block}button:disabled{opacity:.45;cursor:default}button.secondary{color:#25463f;background:#e5eee9}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #d88b20}.actions{flex-wrap:wrap;gap:12px;display:flex}.preview{align-items:center;gap:22px;display:flex}.preview img{border-radius:22px;width:100px;height:100px}.note,footer{color:#5b7065;font-size:.85rem}dl div{border-bottom:1px solid #e9eee8;justify-content:space-between;gap:14px;padding:9px 0;display:flex}dd{text-align:right;margin:0}aside{overflow-wrap:anywhere;background:#e0ece5;border-radius:12px;padding:18px}footer{margin-top:28px}.supporter{text-align:center}.supporter img{border-radius:30px;width:min(100%,420px)}.supporter p{font-size:1.2rem}.eyebrow{color:#5b7065}@media (width<=480px){main{padding-top:28px}section{padding:20px}.preview{align-items:flex-start;gap:14px}.preview img{width:76px;height:76px}}.study-app{max-width:760px;padding-top:28px;padding-bottom:80px}.app-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.brand{color:#25463f;font-size:1.3rem;font-weight:800;text-decoration:none}.brand span{color:#5b7065;font-size:.7rem;font-weight:400;display:block}.local-badge{white-space:nowrap;background:#e0ece5;border-radius:20px;padding:5px 10px;font-size:.7rem}.app-nav{background:#e9ede4;border-radius:14px;gap:8px;padding:6px;display:flex}.app-nav button{white-space:nowrap;word-break:keep-all;color:#5b7065;background:0 0;flex:auto;min-width:0}.app-nav button[aria-current]{color:#25463f;background:#fff;box-shadow:0 2px 8px #25463f0d}.today-card{text-align:center;background:#fffdf8}.today-card h1{letter-spacing:0;font-size:clamp(1.2rem,4vw,1.8rem)}.face-placeholder{font-size:78px;line-height:1.4;display:inline-block}.today-total{margin:18px 0 10px;font-size:2rem;font-weight:800}.today-total span{color:#6d7e73;font-size:1rem;font-weight:400}progress{accent-color:#377367;border:0;border-radius:10px;width:80%;height:9px;overflow:hidden}progress::-webkit-progress-bar{background:#e5ede5}progress::-webkit-progress-value{background:#377367;border-radius:10px}.timer-clock{font-variant-numeric:tabular-nums;text-align:center;letter-spacing:.04em;font-size:clamp(2rem,10vw,3.8rem);font-weight:700;display:block}.timer-subject{text-align:center;color:#5b7065}.start-button{width:100%;margin-top:5px}.section-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-title h1{letter-spacing:0;font-size:1.5rem}.section-title h2{margin:0}.record-row{color:#25463f;text-align:left;background:0 0;border-bottom:1px solid #e9eee8;border-radius:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:18px 0;font-weight:400;display:flex}.record-row:last-child{border-bottom:0;padding-bottom:0}.record-row small{color:#6d7e73;overflow-wrap:anywhere;font-size:.75rem;display:block}.record-row>span:last-child{flex-shrink:0;font-size:.85rem}.app-status{color:#935226;overflow-wrap:anywhere;font-size:.9rem}.app-status:empty{display:none}.study-app:has(.modal-backdrop) .app-status:not(:empty){z-index:20;background:#fff8ef;border:1px solid #935226;border-radius:10px;padding:12px;position:fixed;top:0;left:16px;right:16px}.modal-backdrop{z-index:10;background:#18372fb3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.app-dialog{width:100%;max-width:480px;max-height:90dvh;margin:0;overflow-y:auto}.celebration{text-align:center}.danger{background:#aa493a}.check-label{align-items:flex-start;gap:8px;font-size:.85rem;font-weight:400;display:flex}.check-label input{flex-shrink:0;width:auto;margin:.35em 0 0;display:inline-block}.empty{text-align:center;padding:38px 24px}.exam-summary{background:#eef4ed;border-color:#cfdecf}.exam-name{overflow-wrap:anywhere;margin:22px 0 0;font-size:1.1rem;font-weight:650}.exam-countdown{margin:4px 0;font-size:2rem;font-weight:800}.exam-summary .section-title button,.exam-row button{flex-shrink:0;padding:9px 12px;font-size:.8rem}.exam-list{margin:18px 0 0;padding:0;list-style:none}.exam-row{border-top:1px solid #e0e8de;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.exam-row>div{overflow-wrap:anywhere;min-width:0}.exam-row small{color:#5b7065;font-size:.8rem;display:block}.exam-form{background:#fafcf9;border:1px solid #cfdecf;border-radius:12px;margin-top:20px;padding:0 16px 20px}.native-date-field{background:#fff;border:1px solid #b6c4b9;border-radius:9px;align-items:center;width:100%;min-width:0;max-width:100%;min-height:52px;margin-top:8px;padding:0 12px;font-weight:400;display:flex}.native-date-field:focus-within{outline-offset:2px;outline:3px solid #d88b20}.native-date-field input[type=date]{text-align:left;background:0 0;border:0;border-radius:0;width:100%;min-width:0;max-width:100%;height:50px;min-height:0;margin:0;padding:0;font-size:16px;line-height:50px}.native-date-field input[type=date]:focus-visible{outline:none}.exam-error{color:#aa493a}.past-exams{margin-top:20px}.past-exams summary{cursor:pointer;color:#5b7065}.face-open{background:0 0;border-radius:24px;margin:4px auto;padding:0}.supporter-face{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%;display:block}.supporter-face.large{border-radius:24px;width:min(100%,320px);margin:auto}.face-placeholder.large{font-size:110px}.supporter-option{border-top:1px solid #e4ebe4;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:18px;display:flex}.supporter-option>div{overflow-wrap:anywhere;min-width:0}.supporter-option button{flex-shrink:0}.face-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 26px;display:grid}.face-grid>div{text-align:center;min-width:0}.face-grid img,.face-grid .face-placeholder{width:100%}.face-grid img{aspect-ratio:1;object-fit:cover;border-radius:12px}.face-grid .face-placeholder{font-size:clamp(32px,9vw,64px)}.face-grid span:not(.face-placeholder){font-size:.8rem;display:block}.face-grid button{width:100%;margin-top:8px;padding:8px 4px;font-size:.75rem}.preset-choice{border-top:1px solid #e4ebe4}.preset-choice .supporter-option{border-top:0}.message-list{border-top:1px solid #e4ebe4;padding:12px 0}.message-list summary{cursor:pointer;font-weight:700}.message-list li{margin:8px 0}.camera-preview,.crop-preview{aspect-ratio:1;object-fit:cover;background:#e6eee5;border-radius:14px;width:min(100%,320px);margin:16px auto;display:block}.weekly-chart{width:100%;height:auto;display:block}.share-qr{width:min(100%,256px);height:auto;image-rendering:pixelated;margin:20px auto;display:block}.scold-step{border-top:1px solid #e4ebe4;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:20px 0;display:grid}.scold-step h3{margin:0 0 8px;font-size:1.05rem}.scold-step p{margin:8px 0 14px}.scold-number{color:#fff;background:#377367;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.scold-export{background:#fafcf9;border:1px solid #cfdecf;border-radius:12px;margin:16px 0;padding:14px}.scold-export img{aspect-ratio:1;object-fit:contain;border-radius:12px;width:min(100%,240px);margin:0 auto 12px;display:block}.scold-diagram{background:#eef4ed;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;padding:12px;font-size:.82rem;display:flex}.scold-diagram span{background:#fff;border-radius:8px;padding:6px 8px}.scold-diagram b{color:#377367}.scold-setup ol{padding-left:1.4em}.scold-setup li{margin:8px 0}.scold-setup details{margin:14px 0}.scold-setup summary{cursor:pointer;font-weight:650}.scold-setup .button-link{color:#fff;text-align:center;overflow-wrap:anywhere;background:#377367;border-radius:10px;max-width:100%;padding:10px 16px;font-weight:700;display:inline-block}.scold-copy{border-top:1px solid #e4ebe4;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;display:flex}.scold-copy span{overflow-wrap:anywhere;flex:180px;min-width:0}@media (width<=480px){.section-title{flex-wrap:wrap}.study-app{padding-top:20px}.app-nav{gap:4px}.app-nav button{padding:10px 4px;font-size:.9rem}.supporter-option{flex-direction:column;align-items:stretch;gap:8px}.supporter-option button{align-self:flex-start;max-width:100%}.face-grid{gap:8px}.face-grid button{white-space:nowrap;padding:8px 2px}}@media (width<=340px){.app-nav button{padding:10px 2px;font-size:.82rem}}
