:root{--type-body:'DM Sans',Arial,sans-serif;--type-title:'Cormorant Garamond',Georgia,serif}body{font-family:var(--type-body);font-size:16px;line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--type-title);font-weight:600;text-wrap:balance}h1{font-size:clamp(36px,4.5vw,55px);line-height:1.06}h2{line-height:1.16}button,.button,input,select,textarea{font-family:var(--type-body)}button,.button{font-weight:500;min-height:42px}input,select,textarea{font-size:16px;min-width:0}#sidebar{overflow-y:auto;max-height:100dvh;scrollbar-width:thin}#nav a{font-size:13px;letter-spacing:.005em;border-radius:12px;gap:12px;padding:10px 12px;min-height:46px}#nav a>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#f6f3e9;color:#647961;flex-shrink:0}#nav svg{width:20px;height:20px;display:block}#nav a.active{background:#e8eee3;color:#214b38;font-weight:600}#nav a.active>span{background:#214b38;color:#e8d59b}#nav a:hover>span{background:#e0e8d8}#online-badge{font-size:12px;border-color:#d4dfcd;color:#37623e;background:#eef4e8;white-space:nowrap}.tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}td,th{font-size:13px}.card{min-width:0}.formgrid>label{min-width:0}#history-count{color:var(--muted);font-size:13px}#cert-message{color:#8b3c30}#cert-preview{background:#f4f0e5;border-radius:8px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b59a58;outline-offset:3px}@media(max-width:1100px){.account{gap:7px}.tutorial-shortcut{font-size:11px;padding:8px}.titleline{gap:14px;flex-wrap:wrap}}@media(max-width:720px){header{height:auto;flex-wrap:wrap;gap:8px;padding:12px;min-height:76px}.account{flex:1;min-width:0;flex-wrap:wrap;justify-content:flex-end}.account .tutorial-shortcut{font-size:10px}.account button{padding:8px 10px;min-height:40px}header #account{font-size:11px;max-width:130px}#online-badge{font-size:11px}main{padding:24px 14px}dialog{padding:19px;width:calc(100% - 20px);max-height:92dvh}.actions{flex-wrap:wrap}.actions>*{max-width:100%}.card{padding:18px}.tablewrap table{min-width:570px}.teacher-turn p{font-size:16px}.cinema-copy p{font-size:16px}.cinema-bottom{flex-wrap:wrap}#toast{max-width:calc(100vw - 24px);width:max-content;overflow-wrap:anywhere}.formgrid{grid-template-columns:1fr}.titleline h1{overflow-wrap:anywhere}.titleline .button{white-space:normal}#sidebar{width:min(285px,86vw)}}@media(max-width:360px){.account .tutorial-shortcut{display:none}.account{gap:4px}.account button{padding:8px}.cinema-top{flex-wrap:wrap}.cinema-controls{gap:6px}.cinema-controls>button{padding:7px}.cinema-copy{padding:20px 16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.youtube-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}.youtube-art{padding:24px;border-radius:12px;background:radial-gradient(ellipse at top right,#a7905555,transparent),#244c3c;color:#f7efd9;display:flex;align-items:center;gap:20px}.youtube-art>span{font-size:32px}.youtube-art small{font-size:11px}.youtube-card h2{font-size:30px}.youtube-card p{font-size:14px}.youtube-card .eyebrow{margin-top:20px}.youtube-card .actions{flex-wrap:wrap}.youtube-card .actions a{font-size:12px}@media(max-width:900px){.youtube-grid{grid-template-columns:1fr}}

#certificate-admin-issue,#certificate-admin-issued{margin-top:24px;scroll-margin-top:110px}.cert-recipient-check{width:22px;height:22px;min-height:22px;margin:0;accent-color:#254f3e}.certificate-guide strong{color:#244e3d}#cert-admin-message{font-weight:600}#cert-selection-count{color:var(--muted)}#cert-batch-result:empty{display:none}@media(max-width:720px){#certificate-admin-issue,#certificate-admin-issued{scroll-margin-top:145px}.certificate-guide .actions>*{width:100%}#cert-batch-issue{width:100%}}
/* A paisagem permanece visível; superfícies sólidas protegem a leitura. */
.site-wallpaper img{width:100%;transform:none;object-position:center;opacity:.85;filter:saturate(.85) brightness(.82)}
.site-wallpaper:after{background:linear-gradient(110deg,rgba(241,236,219,.62),rgba(241,236,219,.34) 58%,rgba(222,231,205,.2))}
.titleline{background:rgba(255,253,247,.94);border:1px solid #dce1d3;border-radius:16px;padding:22px 26px;box-shadow:0 5px 22px #173d2412}
footer{background:#fffdf7ef;border-radius:14px;margin:20px}
.house-contact{margin-top:25px}.contact-heading{display:flex;align-items:center;gap:18px;margin-bottom:22px}.contact-heading img{width:66px;height:66px;object-fit:contain}.contact-heading h2{margin:3px 0}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.contact-grid h3{font-family:var(--type-body);font-size:16px}.contact-socials{border-left:1px solid var(--line);padding-left:30px}.social-link{display:flex;align-items:center;gap:14px;padding:13px 16px;margin:12px 0;border:1px solid #dce1d3;border-radius:13px;background:#fffdf7;text-decoration:none;transition:transform .18s,box-shadow .18s}.social-link:hover{transform:translateY(-2px);box-shadow:0 6px 18px #244e3d20}.social-link strong,.social-link small{display:block}.social-link small{font-size:12px;color:#637468}.social-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:white;flex-shrink:0}.social-icon svg{width:25px;height:25px}.instagram .social-icon{background:linear-gradient(135deg,#7739b1,#c72872,#e98934)}.facebook .social-icon{background:#1877f2}
@media(max-width:800px){.contact-grid{grid-template-columns:1fr;gap:20px}.contact-socials{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.site-wallpaper img{object-position:65% center}.titleline{padding:19px}.house-contact .actions>*{width:100%;text-align:center}}
@media print{.site-wallpaper{display:none}.titleline{box-shadow:none;border:0;background:white}footer{background:white}}
.unread-alert{background:#254f3e;color:#fff3cc;border-color:#a88340;box-shadow:0 0 0 3px #c7a05226}#message-alert{font-size:12px;white-space:nowrap}@media(max-width:720px){#message-alert{font-size:11px;padding:8px}}
.original-download{margin:0 0 22px}.cinema-top{flex-wrap:wrap;gap:10px}.cinema-top a{color:#f5e5b8;font-size:11px;padding:7px 9px;border:1px solid #ffffff40;border-radius:7px}.cinema-copy .actions{margin-top:22px}.cinema-copy [data-finish]{background:#e6d49a;color:#173c2c;font-size:14px;padding:12px 18px}@media(max-width:720px){.original-download .actions>*{width:100%;text-align:center}.cinema-top a{font-size:10px}}
