@layer base,components;
@layer base{
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172d2b;background:#f6f8f8;--accent:#187f72;--pale:#e4f3ef;--line:#dce5e3;font-synthesis:none;color-scheme:light}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:3px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}input,select,textarea{max-width:100%}textarea{resize:vertical}button:disabled{cursor:default;opacity:.5}[hidden]{display:none!important}svg{display:block}h1,h2,h3,p{margin-block:0 1rem}h1{font-size:clamp(1.7rem,4vw,2.35rem);line-height:1.2;letter-spacing:-.035em}h2{font-size:1.25rem;letter-spacing:-.02em}p{line-height:1.65}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #dc9b24;outline-offset:3px}.student{--accent:#6750c9;--pale:#eee9fc;color:#292442}.sr-only,.skip-link{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{position:fixed;width:auto;height:auto;clip-path:none;background:white;padding:1rem;z-index:100}.wrap{max-width:1180px;margin-inline:auto;padding-inline:28px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:1.2rem;font-weight:750;text-decoration:none;letter-spacing:-.04em}.brand-icon svg{width:21px;height:21px}.brand-icon{width:34px;height:34px;border-radius:10px;background:var(--accent);display:grid;place-items:center;color:#fff}.header-right{display:flex;align-items:center;gap:22px;font-size:.9rem}.header-right a{text-decoration:none;color:#53645f}.language-select{display:flex;align-items:center;gap:7px}.language-select svg{width:18px;height:18px}.language-select select{font-size:.84rem;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;max-width:160px}.home-main{padding-block:32px 24px}.home-top{display:grid;grid-template-columns:minmax(0,1fr) 324px;gap:36px;align-items:center;min-height:276px}.eyebrow{font-size:.73rem;text-transform:uppercase;font-weight:750;letter-spacing:.14em;color:var(--accent);margin-bottom:14px}.intro p{max-width:540px;font-size:1rem;color:#53645f;margin-bottom:19px}.local-badge{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;color:#53645f;background:#fff;border:1px solid var(--line);padding:7px 11px;border-radius:20px}.local-badge svg{width:15px;height:15px;color:var(--accent)}.home-ad{width:324px;text-align:center;align-self:center}.ad-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#7a8581;margin-bottom:6px}.ad-holder{width:300px;height:250px;margin:auto;border:1px solid var(--line);background:#eef2f1;display:grid;place-items:center;overflow:visible}.ad-holder:empty:after{content:'Advertisement';color:#8c9893;font-size:.73rem}.homepage-display-ad{width:300px;height:250px}.tools-heading{display:flex;justify-content:space-between;align-items:baseline;margin:22px 0 13px}.tools-heading h2{margin:0;font-size:1.1rem}.tools-heading span{font-size:.8rem;color:#6d7c76}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tool-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;text-decoration:none;display:flex;flex-direction:column;gap:10px;min-height:150px;transition:transform .15s,border-color .15s}.tool-card:hover{border-color:var(--accent);transform:translateY(-2px)}.card-icon{width:34px;height:34px;color:var(--accent);background:var(--pale);border-radius:9px;display:grid;place-items:center}.card-icon svg{width:20px;height:20px}.tool-card strong{font-size:.95rem}.tool-card p{font-size:.78rem;line-height:1.5;color:#61706a;margin:0}.card-top{display:flex;align-items:center;justify-content:space-between}.arrow{color:#8c9893}.home-note{font-size:.78rem;color:#61706a;margin:19px 0 0}.home-footer{border-top:1px solid var(--line);padding-block:22px;color:#65756d;font-size:.78rem}.footer-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.home-footer nav{display:flex;flex-wrap:wrap;gap:16px}.home-footer a{text-decoration:none}.language-directory{margin-top:18px}.language-directory summary{cursor:pointer}.language-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.tool-main{padding-block:28px 45px}.breadcrumbs{display:flex;gap:8px;font-size:.8rem;color:#65756d;margin-bottom:24px}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:30px;align-items:start}.tool-intro{margin-bottom:24px}.tool-intro p{max-width:710px;color:#61706a}.tool-panel{border:1px solid var(--line);border-radius:14px;background:#fff;padding:26px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;min-width:0;font-size:.88rem;font-weight:550}.field input,.field select,.field textarea,.table-wrap input{width:100%;border:1px solid #cbd7d2;border-radius:8px;background:#fff;padding:11px;color:inherit;font-weight:400}.field input[type=color]{height:43px;padding:5px}.field input[type=file]{font-size:.85rem;background:#f7faf9}.field small,.muted{font-size:.8rem;font-weight:400;color:#65756d}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.checkbox-field{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-bottom:16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 18px;background:var(--accent);border:1px solid var(--accent);border-radius:8px;color:white;font-size:.86rem;font-weight:650;text-decoration:none}.button-secondary{background:white;color:var(--accent)}.tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin-block:7px 18px}.notice{padding:12px 14px;border-radius:8px;background:var(--pale);font-size:.83rem;line-height:1.6;overflow-wrap:anywhere}.notice:empty{display:none}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-block:20px}.result-card{padding:14px;background:#f6f8f8;border:1px solid var(--line);border-radius:9px}.result-card span{display:block;font-size:.74rem;color:#65756d}.result-card strong{display:block;font-size:1.2rem;margin-top:6px;overflow-wrap:anywhere}.image-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-block:20px}.image-preview-grid figure{margin:0;min-width:0;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/16px 16px;border:1px solid var(--line);border-radius:8px;overflow:hidden;padding:12px;text-align:center}.image-preview-grid figcaption{font-size:.73rem;background:white;padding:6px}.side-section{padding:18px 0;border-bottom:1px solid var(--line)}.side-section:first-child{padding-top:0}.side-section h2{font-size:.95rem}.side-section p{font-size:.82rem;color:#61706a}.side-section a{display:block;font-size:.85rem;margin-block:13px;text-decoration:none}.table-wrap{overflow-x:auto;margin-block:16px}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{padding:8px;border-bottom:1px solid var(--line);text-align:start}.weekday-grid{display:flex;gap:12px;flex-wrap:wrap}.weekday-grid label{font-size:.8rem}.timer-display{font-variant-numeric:tabular-nums;font-size:4rem;font-weight:750;letter-spacing:-.05em}.timer-panel{text-align:center;padding:24px}.article{max-width:800px;margin:35px auto 55px;background:white;border:1px solid var(--line);border-radius:14px;padding:34px}.article p,.article li{font-size:.95rem;line-height:1.8}.article h2{margin-top:30px}.article a{color:var(--accent)}.privacy-settings{border:0;background:transparent;color:inherit;font:inherit;padding:0}.noscript{padding:18px;background:#fff4d8}
@media (min-width:1000px) and (max-height:790px){.home-main{padding-top:20px}.home-top{min-height:265px}.tool-card{min-height:135px;padding:14px}.tools-heading{margin-top:14px}.tool-card p{font-size:.74rem}.card-icon{width:29px;height:29px}}
@media (max-width:900px){.wrap{padding-inline:20px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-layout{grid-template-columns:minmax(0,1fr)}.tool-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-top{gap:24px}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.wrap{padding-inline:16px}.header-inner{height:64px;gap:8px}.brand{font-size:1.05rem;gap:7px}.brand-icon svg{width:21px;height:21px}.brand-icon{width:30px;height:30px}.header-right{gap:10px}.header-right>a{display:none}.language-select select{max-width:120px;font-size:.78rem}.language-select svg{display:none}.home-main{padding-top:25px;display:flex;flex-direction:column}.home-top{display:contents}.intro{order:0}.intro h1{font-size:1.7rem}.eyebrow{font-size:.65rem;margin-bottom:10px}.intro p{font-size:.85rem;margin-bottom:13px;line-height:1.5}.local-badge{font-size:.67rem;padding:5px 8px}.tools-section{order:1}.tools-heading{margin-top:22px;margin-bottom:11px}.tools-heading span{font-size:.65rem}.tool-grid{gap:8px}.tool-card{min-height:88px;padding:10px 12px;gap:7px}.tool-card p{display:none}.tool-card strong{font-size:.81rem;line-height:1.35}.card-icon{width:28px;height:28px;border-radius:7px}.card-icon svg{width:17px;height:17px}.home-ad{order:2;width:100%;margin-top:22px}.ad-holder,.homepage-display-ad{width:320px;height:100px;max-width:100%}.home-note{order:3}.footer-row{display:block}.footer-row nav{margin-top:15px;gap:13px}.tool-panel{padding:18px}.tool-main{padding-top:20px}.tool-intro h1{font-size:1.65rem}.tool-intro p{font-size:.88rem}.field-grid{gap:0 12px}.field{font-size:.8rem}.field input,.field select,.field textarea{padding:10px;min-width:0}.image-preview-grid{grid-template-columns:1fr}.tool-side{grid-template-columns:1fr;gap:0}.article{padding:23px;margin:25px 16px}.timer-display{font-size:3.2rem}.result-card{padding:11px}.result-card strong{font-size:1.05rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
}

.image-upload.file-dropzone{padding:18px;border:2px dashed #b4c9c1;border-radius:12px;background:#f7faf9;cursor:pointer;transition:border-color .15s,background-color .15s}.image-upload.file-dropzone:focus-within,.image-upload.file-dropzone.is-dragover{border-color:var(--accent);background:var(--pale)}.image-upload.file-dropzone .upload-drop-hint{font-size:.85rem;font-weight:400;color:#53645f;line-height:1.5}.image-upload.file-dropzone input[type=file]{background:#fff;cursor:pointer}.image-upload.file-dropzone:has(input:disabled){opacity:.65;cursor:wait}
