:root{--font-dm-sans:"Avenir Next",Avenir,"Segoe UI",sans-serif;--font-plus-jakarta:"Avenir Next",Avenir,"Segoe UI",sans-serif;--ink:#15231e;--muted:#6f7e77;--line:#dfe8e3;--canvas:#f4f8f6;--surface:#ffffff;--green:#118064;--green-dark:#0b6951;--mint:#dff3eb;--blue:#3779c5;--orange:#d87920;--purple:#7457c5;--danger:#bd5039;--shadow:0 16px 42px rgba(31,62,50,0.07);--radius:20px;--sidebar:276px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-dm-sans),sans-serif}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit}svg{width:20px;height:20px;stroke-width:1.8}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 6px 24px rgba(31,62,50,.035)}.eyebrow{margin:0 0 9px;color:var(--green);font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.outline-button,.primary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;padding:0 18px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.primary-button{border:0;color:#fff;background:var(--green);box-shadow:0 9px 22px rgba(17,128,100,.2)}.primary-button:hover{background:var(--green-dark);transform:translateY(-1px)}.primary-button:disabled{opacity:.65;cursor:wait;transform:none}.outline-button{border:1px solid #bad9ce;color:var(--green);background:#fff}.outline-button:hover{background:#edf8f4}.full-button{width:100%}.back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;color:var(--green);font-size:14px;font-weight:800;text-decoration:none}.back-link svg{width:17px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font:800 24px var(--font-plus-jakarta),sans-serif;text-decoration:none}.brand>span:last-child span{color:var(--green)}.brand.inverse{color:#fff}.brand.inverse>span:last-child span{color:#b7f1dc}.brand-mark{width:36px;height:36px;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;padding:6px;color:var(--green);border:2px solid;border-radius:10px}.brand-mark span{background:currentColor;border-radius:3px}.brand-mark span:first-child{height:8px}.brand-mark span:nth-child(2){height:18px}.brand-mark span:nth-child(3){height:12px}.login-page{min-height:100svh;display:grid;grid-template-columns:minmax(440px,1.08fr) minmax(440px,.92fr);background:#fff}.login-showcase{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:46px clamp(42px,6vw,92px);color:#fff;background:linear-gradient(145deg,#0a5e4b,#118064 62%,#2c9c7c)}.login-showcase:after,.login-showcase:before{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}.login-showcase:before{width:620px;height:620px;right:-300px;top:-240px}.login-showcase:after{width:390px;height:390px;left:-220px;bottom:-130px}.login-showcase__content{position:relative;z-index:1;width:min(580px,100%);margin:auto 0}.eyebrow-pill{display:inline-block;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.09);font-size:10px;font-weight:800;letter-spacing:1px}.login-showcase h1{margin:22px 0 16px;font:800 clamp(40px,4.7vw,68px)/1.05 var(--font-plus-jakarta),sans-serif;letter-spacing:-2.4px}.login-showcase__content>p{max-width:520px;margin:0;color:rgba(255,255,255,.78);font-size:16px;line-height:1.7}.login-showcase__footer{position:relative;z-index:1;margin:22px 0 0;color:rgba(255,255,255,.55);font-size:11px}.login-panel{display:grid;place-items:center;min-width:0;padding:48px clamp(30px,6vw,88px);background:#fbfdfc}.login-card{width:min(430px,100%)}.login-mobile-brand{display:none;margin-bottom:44px}.login-card h2{margin:0 0 10px;font:800 clamp(28px,3vw,38px) var(--font-plus-jakarta),sans-serif;letter-spacing:-1px}.login-intro{margin:0 0 28px;color:var(--muted);font-size:14px;line-height:1.6}.login-card form>label{display:block;margin:17px 0 8px;font-size:12px;font-weight:800}.login-input{height:52px;display:flex;align-items:center;border:1px solid #dbe5e0;border-radius:12px;background:#fff;transition:border-color .18s,box-shadow .18s}.login-input:focus-within{border-color:var(--green);box-shadow:0 0 0 4px rgba(17,128,100,.1)}.login-input>svg{flex:0 0 auto;width:18px;margin-left:15px;color:#8a9891}.login-input input{width:100%;min-width:0;height:100%;border:0;outline:0;background:transparent;padding:0 13px;color:var(--ink)}.login-input>button{width:48px;height:48px;display:grid;place-items:center;border:0;background:transparent;color:#85938c;cursor:pointer}.login-options{display:flex;align-items:center;justify-content:space-between;margin-top:13px;font-size:12px}.login-options label{display:flex;align-items:center;gap:8px;color:var(--muted)}.login-options input{accent-color:var(--green)}.login-help a,.login-options a{color:var(--green);font-weight:800;text-decoration:none}.login-help a:hover,.login-options a:hover{text-decoration:underline}.login-error{min-height:20px;margin:10px 0 0;color:var(--danger);font-size:12px}.login-submit{width:100%}.login-submit svg{margin-left:auto}.login-help{margin:24px 0 0;text-align:center;color:var(--muted);font-size:11px}.simple-auth-page{min-height:100svh;display:grid;place-items:center;padding:24px;background:var(--canvas)}.simple-auth-card{width:min(450px,100%);padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.simple-auth-card .brand{margin-bottom:32px}.simple-auth-card h1{margin:0 0 10px;font:800 30px var(--font-plus-jakarta),sans-serif}.simple-auth-card>p{color:var(--muted);line-height:1.6}.simple-auth-card label{display:block;margin:22px 0 8px;font-size:12px;font-weight:800}.form-message{min-height:22px;color:var(--green);font-size:12px}.form-message.error{color:var(--danger)}.simple-auth-card form .primary-button{width:100%;margin-top:8px}.simple-auth-card .back-link{margin:20px 0 0}.portal-shell{min-height:100svh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--sidebar);display:flex;flex-direction:column;padding:30px 22px 22px;border-right:1px solid var(--line);background:#fff}.sidebar-brand-row{display:flex;align-items:center;justify-content:space-between;margin:0 9px 32px}.sidebar-close{display:none;border:0;background:transparent;color:var(--muted)}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-label{margin:14px 12px 8px;color:#9ba7a1;font-size:10px;font-weight:800;letter-spacing:1.4px}.nav-link{min-height:48px;display:flex;align-items:center;gap:13px;padding:0 13px;border-radius:12px;color:#617069;font-weight:700;text-decoration:none;transition:background .18s,color .18s}.nav-link svg{width:19px}.nav-link:hover{color:var(--green);background:#f0f7f4}.nav-link.active{color:var(--green);background:#e6f4ef}.nav-link b{min-width:23px;margin-left:auto;padding:3px 7px;color:#fff;background:#e66e51;border-radius:999px;font-size:10px;text-align:center}.help-card{margin-top:auto;padding:20px;text-align:center;border-radius:16px;background:linear-gradient(145deg,#e6f6f0,#f2faf7)}.help-card>svg{width:34px;height:34px;display:block;padding:7px;margin:-37px auto 0;color:#fff;border:4px solid #fff;border-radius:50%;background:var(--green)}.help-card strong{display:block;margin-top:8px;font-size:13px}.help-card p{margin:6px 0 14px;color:var(--muted);font-size:11px;line-height:1.5}.help-card a{color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.guardian-help-card button{width:100%;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #acd5c6;border-radius:10px;color:var(--green);background:#fff;font-size:11px;font-weight:800;cursor:pointer}.guardian-help-card button:hover{border-color:var(--green);background:#edf8f4}.guardian-help-card button svg{width:14px}.logout-button{min-height:45px;display:flex;align-items:center;gap:12px;margin-top:9px;padding:0 13px;border:0;color:#7b8882;background:transparent;font-weight:700;cursor:pointer}.portal-page{min-height:100svh;margin-left:var(--sidebar)}.topbar{position:sticky;top:0;z-index:30;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,4vw,58px);border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(15px)}.mobile-menu{display:none;border:0;background:transparent;color:var(--muted);cursor:pointer}.school-identity{display:flex;align-items:center;gap:13px;text-decoration:none}.school-identity>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:var(--green);background:var(--mint);font:800 16px var(--font-plus-jakarta),sans-serif}.school-identity small,.school-identity strong{display:block}.school-identity strong{font:700 15px var(--font-plus-jakarta),sans-serif}.school-identity small{margin-top:4px;color:#8a9690;font-size:11px}.topbar-actions{display:flex;align-items:center;gap:24px}.notification-button{position:relative;width:42px;height:42px;display:grid;place-items:center;border:0;color:#67766f;background:transparent;cursor:pointer}.notification-button i{position:absolute;top:7px;right:7px;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#e76e51}.profile-summary{display:grid;grid-template-columns:43px 1fr 17px;align-items:center;gap:11px;padding:5px 7px 5px 22px;border:0;border-left:1px solid var(--line);color:inherit;background:transparent;text-align:left;cursor:pointer}.profile-summary>span{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;color:#865136;background:#f5dacb;font-weight:900}.profile-summary small,.profile-summary strong{display:block}.profile-summary strong{font-size:12px}.profile-summary small{margin-top:3px;color:#8c9892;font-size:10px}.profile-summary>svg{width:15px;color:#95a09b}.portal-main{width:min(1460px,100%);margin:auto;padding:42px clamp(24px,4vw,58px) 70px}.sidebar-backdrop{display:none}.content-page,.dashboard-page,.detail-page{display:flex;flex-direction:column;gap:20px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:4px}.page-header h1{margin:0 0 8px;font:800 clamp(28px,3vw,40px)/1.15 var(--font-plus-jakarta),sans-serif;letter-spacing:-1.2px}.page-header>div>p:last-child{margin:0;color:var(--muted);font-size:15px;line-height:1.6}.child-hero{display:flex;align-items:center;gap:18px;padding:22px 24px;background:linear-gradient(110deg,#fff 50%,#edf9f4)}.child-avatar{width:64px;height:64px;display:grid;place-items:center;flex:0 0 auto;border-radius:19px;color:var(--green);background:var(--mint);font:800 18px var(--font-plus-jakarta),sans-serif}.child-identity{min-width:0}.child-identity h2{margin:7px 0 4px;font:800 20px var(--font-plus-jakarta),sans-serif}.child-identity p{margin:0;color:var(--muted);font-size:12px}.active-chip,.ready-chip{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#e5f5ee;font-size:9px}.active-chip,.child-hero>a,.ready-chip{align-items:center;color:var(--green);font-weight:800}.child-hero>a{display:flex;gap:7px;margin-left:auto;font-size:12px;text-decoration:none}.child-hero>a svg{width:16px}.fee-alert{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:14px;padding:16px 20px;border:1px solid #f2d9bf;border-radius:15px;color:#754819;background:#fff8ef}.fee-alert>svg{width:38px;height:38px;padding:9px;border-radius:11px;background:#ffebd4}.fee-alert p,.fee-alert strong{display:block}.fee-alert strong{font-size:13px}.fee-alert p{margin:4px 0 0;color:#8d6d4d;font-size:11px}.fee-alert a{padding:9px 13px;border:1px solid #e9c9a7;border-radius:9px;font-size:11px;font-weight:800;text-decoration:none}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.payment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-card{display:flex;align-items:center;gap:15px;min-width:0;padding:18px}.summary-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px}.summary-icon.green{color:var(--green);background:var(--mint)}.summary-icon.blue{color:var(--blue);background:#e7f0fb}.summary-icon.orange{color:var(--orange);background:#fff0df}.summary-card p,.summary-card small,.summary-card strong{display:block}.summary-card small{color:var(--muted);font-size:10px}.summary-card strong{margin-top:5px;font:800 18px var(--font-plus-jakarta),sans-serif}.summary-card p{margin:3px 0 0;color:#92a099;font-size:9px}.paid-text{color:var(--orange)}.dashboard-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:20px;align-items:start}.activity-feed,.assessment-card,.fee-card{padding:24px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.section-title span{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.7px}.section-title h2{margin:5px 0 0;font:800 19px var(--font-plus-jakarta),sans-serif}.section-title>a{display:flex;align-items:center;gap:5px;color:var(--green);font-size:11px;font-weight:800;text-decoration:none}.section-title>a svg{width:15px}.activity-feature{position:relative;display:grid;grid-template-columns:128px 1fr 22px;gap:17px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.activity-feature:last-child{padding-bottom:0;border-bottom:0}.activity-art{position:relative;min-height:116px;display:grid;place-items:center;overflow:hidden;border-radius:15px}.activity-art:after,.detail-art:after{content:"";position:absolute;width:100px;height:100px;right:-35px;top:-35px;border:18px solid rgba(255,255,255,.24);border-radius:50%}.activity-art.peach,.detail-art.peach{background:linear-gradient(135deg,#ffdb98,#f5a18e)}.activity-art.mint,.detail-art.mint{background:linear-gradient(135deg,#bcebcf,#88cfae)}.activity-art.lavender,.detail-art.lavender{background:linear-gradient(135deg,#d5c4f2,#a58ddb)}.activity-art>span{font-size:42px}.activity-art>b{position:absolute;right:8px;bottom:8px;z-index:1;display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;color:#fff;background:rgba(28,44,38,.72);font-size:8px}.activity-art>b svg{width:11px}.activity-date{display:flex;align-items:center;gap:5px;color:#7d8b84;font-size:9px}.activity-date svg{width:13px}.activity-copy h3{margin:7px 0 6px;font:800 16px var(--font-plus-jakarta),sans-serif}.activity-copy>p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.teacher-note{display:flex;gap:6px;margin-top:10px;color:var(--green);font-size:9px;line-height:1.5}.teacher-note svg{flex:0 0 auto;width:13px}.activity-arrow{width:17px;color:#9aa59f}.dashboard-side{display:flex;flex-direction:column;gap:20px}.assessment-card>p{color:var(--muted);font-size:11px;line-height:1.55}.skill-row{padding:9px 0}.skill-row>div:first-child{display:flex;justify-content:space-between;margin-bottom:6px;color:#63716a;font-size:9px}.skill-row b{color:var(--green)}.progress{height:6px;overflow:hidden;border-radius:999px;background:#ebf0ed}.progress i{display:block;height:100%;border-radius:inherit;background:var(--green)}.card-link{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:13px;border-top:1px solid var(--line);color:var(--green);font-size:10px;font-weight:800;text-decoration:none}.card-link svg{width:15px}.fee-card .section-title>svg{color:var(--green)}.next-bill{padding:18px 0}.next-bill small,.next-bill span,.next-bill strong{display:block}.next-bill span{color:var(--muted);font-size:10px}.next-bill strong{margin:7px 0;font:800 26px var(--font-plus-jakarta),sans-serif}.next-bill small{display:flex;align-items:center;gap:6px;color:#7d8a84;font-size:9px}.next-bill small svg{width:14px}.fine-note{margin:0 0 14px;padding:10px;border-radius:9px;color:#8b642f;background:#fff7e8;font-size:9px;line-height:1.5}.list-search{position:relative;width:min(470px,100%);display:flex;align-items:center}.content-page:has(.guardian-social-feed)>.list-search{align-self:center;width:min(860px,100%)}.list-search svg{position:absolute;left:15px;width:18px;color:#8d9993}.list-search input{width:100%;height:48px;padding:0 16px 0 46px;border:1px solid var(--line);border-radius:12px;outline:0;background:#fff;color:var(--ink)}.list-search input:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(17,128,100,.09)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.activity-card{overflow:hidden;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.activity-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.activity-card .activity-art{min-height:190px;border-radius:0}.activity-card .activity-art>span{font-size:62px}.activity-card-body{padding:19px}.activity-card-body h2{margin:9px 0 7px;font:800 17px var(--font-plus-jakarta),sans-serif}.activity-card-body>p{min-height:48px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.tag-list span{padding:6px 9px;border-radius:999px;color:#507165;background:#edf6f2;font-size:9px;font-weight:700}.empty-state{padding:44px;text-align:center}.empty-state>span{font-size:34px}.empty-state h2{margin:11px 0 5px;font:800 18px var(--font-plus-jakarta),sans-serif}.empty-state p{margin:0;color:var(--muted);font-size:12px}.detail-hero{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(340px,1.1fr);overflow:hidden}.detail-art{position:relative;min-height:360px;display:grid;place-items:center;overflow:hidden}.detail-art>span{font-size:90px}.detail-art>b{position:absolute;right:18px;bottom:18px;z-index:1;display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;color:#fff;background:rgba(24,41,35,.72);font-size:10px}.detail-art>b svg{width:14px}.detail-hero-copy{align-self:center;padding:36px}.detail-hero-copy h1,.invoice-card h1,.report-header h1{margin:10px 0 13px;font:800 clamp(26px,3vw,38px) var(--font-plus-jakarta),sans-serif;letter-spacing:-1px}.detail-hero-copy>p{color:var(--muted);font-size:14px;line-height:1.7}.detail-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:20px}.note-card,.teacher-message{display:grid;grid-template-columns:48px 1fr 30px;gap:15px;align-items:start;padding:24px}.note-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:var(--green);background:var(--mint);font-weight:900;text-transform:uppercase}.note-card small,.teacher-message small{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.8px}.note-card h2,.privacy-card h2,.teacher-message h2{margin:6px 0;font:800 16px var(--font-plus-jakarta),sans-serif}.note-card p,.privacy-card p,.teacher-message p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.note-card>svg,.teacher-message>svg{color:var(--green)}.privacy-card{display:flex;gap:14px;align-items:flex-start;padding:24px;background:#f0f8f5}.privacy-card>svg{flex:0 0 auto;color:var(--green)}.assessment-overview{display:grid;grid-template-columns:repeat(3,1fr);padding:22px}.assessment-overview>div{padding:0 22px;border-right:1px solid var(--line)}.assessment-overview>div:last-child{border:0}.assessment-overview span{font:800 26px var(--font-plus-jakarta),sans-serif}.assessment-overview p{margin:5px 0 0;color:var(--muted);font-size:10px}.assessment-list{display:flex;flex-direction:column;gap:13px}.assessment-list-card{display:grid;grid-template-columns:52px 1fr 22px;gap:17px;align-items:center;padding:21px;color:inherit;text-decoration:none;transition:transform .18s,border-color .18s}.assessment-list-card:hover{transform:translateX(3px);border-color:#badacf}.report-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;color:var(--purple);background:#eeeafd}.assessment-list-card h2{margin:8px 0 4px;font:800 17px var(--font-plus-jakarta),sans-serif}.assessment-list-card small{color:#8b9791;font-size:10px}.assessment-list-card p{margin:9px 0 0;color:var(--muted);font-size:11px}.assessment-list-card>svg{color:#98a49e}.report-header{display:flex;align-items:center;gap:20px;padding:26px}.report-header .report-icon{width:64px;height:64px}.report-header p{margin:0;color:var(--muted)}.score-panel{padding:26px}.score-list{margin-top:17px}.score-row{display:grid;grid-template-columns:230px 1fr 42px;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.score-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.score-row strong{font-size:11px}.score-row span{padding:4px 7px;border-radius:6px;color:var(--green);background:#e7f5f0;font-size:9px;font-weight:900}.score-row>b{color:#5e6d66;font-size:10px;text-align:right}.legend{display:flex;flex-wrap:wrap;gap:16px;padding-top:18px;color:var(--muted);font-size:9px}.legend b{color:var(--green)}.teacher-message{grid-template-columns:42px 1fr}.teacher-message>svg{width:40px;height:40px;padding:9px;border-radius:12px;background:var(--mint)}.payment-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}.payment-tools select{min-width:170px;height:46px;padding:0 13px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:#fff}.payment-list{overflow:hidden}.payment-row{display:grid;grid-template-columns:1.2fr .8fr 1.2fr 1.1fr 20px;gap:14px;align-items:center;min-height:68px;padding:0 21px;border-bottom:1px solid var(--line);color:#58665f;font-size:11px;text-decoration:none}.payment-row:last-child{border:0}.payment-row:not(.payment-row-head):hover{background:#f7fbf9}.payment-row strong{color:var(--ink)}.payment-row>svg{width:16px;color:#96a19b}.payment-row-head{min-height:45px;color:#8a9690;background:#f4f8f6;font-size:9px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}.status-badge{width:max-content;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:800}.status-badge.success{color:var(--green);background:#e5f5ee}.status-badge.warning{color:#af641d;background:#fff0dd}.status-badge.late{color:#9a5d36;background:#f9e8dc}.status-badge.partial{color:#7551a0;background:#f0e8f8}.invoice-card{width:min(760px,100%);align-self:center;padding:30px}.invoice-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.invoice-card header .status-badge{flex:0 0 auto}.invoice-card header p{margin:0;color:var(--muted)}.invoice-total{margin:28px 0;padding:25px;border-radius:16px;color:#fff;background:linear-gradient(130deg,var(--green-dark),var(--green))}.invoice-total small,.invoice-total strong{display:block}.invoice-total small{color:rgba(255,255,255,.72)}.invoice-total strong{margin-top:7px;font:800 34px var(--font-plus-jakarta),sans-serif}.invoice-details{display:grid;grid-template-columns:repeat(2,1fr);gap:0 28px;margin:0 0 24px}.invoice-details>div{padding:15px 0;border-bottom:1px solid var(--line)}.invoice-details dt{color:var(--muted);font-size:9px}.invoice-details dd{display:flex;align-items:center;gap:7px;margin:6px 0 0;font-size:11px;font-weight:800}.invoice-details dd svg{width:15px;color:var(--green)}.payment-detail>.privacy-card{width:min(760px,100%);align-self:center}.school-profile-hero{display:flex;align-items:center;gap:20px;padding:26px;background:linear-gradient(110deg,#fff 45%,#edf9f4)}.school-logo{width:76px;height:76px;display:grid;place-items:center;border-radius:21px;color:var(--green);background:var(--mint);font:800 23px var(--font-plus-jakarta),sans-serif}.school-profile-hero h2{margin:8px 0 5px;font:800 22px var(--font-plus-jakarta),sans-serif}.school-profile-hero p{margin:0;color:var(--muted);font-size:11px}.school-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-card{display:flex;gap:15px;padding:22px}.info-card>svg{flex:0 0 auto;color:var(--green)}.info-card small,.info-card strong{display:block}.info-card small{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.7px}.info-card strong{margin:7px 0 4px;font-size:13px}.info-card p{margin:0;color:var(--muted);font-size:10px}.school-about{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:24px}.school-about>div{display:flex;gap:15px;padding:3px 24px;border-right:1px solid var(--line)}.school-about>div:last-child{border:0}.school-about svg{flex:0 0 auto;color:var(--green)}.school-about h2{margin:0 0 6px;font:800 15px var(--font-plus-jakarta),sans-serif}.school-about p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.settings-card{padding:23px}.settings-card header{display:flex;gap:13px;margin-bottom:10px}.settings-card header>svg{color:var(--green)}.settings-card h2{margin:0 0 5px;font:800 17px var(--font-plus-jakarta),sans-serif}.settings-card header p{margin:0;color:var(--muted);font-size:10px}.setting-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;min-height:70px;border-bottom:1px solid var(--line)}.setting-row:has(.setting-icon){grid-template-columns:38px 1fr auto}.setting-row:last-child{border:0}.setting-row small,.setting-row strong{display:block}.setting-row strong{font-size:11px}.setting-row small{margin-top:4px;color:var(--muted);font-size:9px}.setting-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:var(--green);background:var(--mint)}.setting-icon svg{width:17px}.switch{position:relative;width:44px;height:25px;display:block}.switch input{position:absolute;opacity:0}.switch span{inset:0;border-radius:999px;background:#cbd5d0;cursor:pointer}.switch span,.switch span:after{position:absolute;transition:.2s}.switch span:after{content:"";top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.17)}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translateX(19px)}.switch input:focus-visible+span{outline:3px solid rgba(17,128,100,.25);outline-offset:2px}:focus-visible{outline:3px solid rgba(17,128,100,.3);outline-offset:2px}.settings-save{grid-column:1/-1;justify-self:end;min-width:210px}.profile-settings-form{display:grid;gap:18px;max-width:980px}.profile-settings-form .settings-card{padding:28px;border:1px solid rgba(150,181,168,.38);box-shadow:0 14px 35px rgba(42,76,61,.07)}.profile-settings-form .settings-card header{padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid #edf2ef}.profile-settings-form .eyebrow{margin:0 0 7px;color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.2px}.profile-settings-form .settings-card h2{font-size:20px;letter-spacing:-.2px}.profile-settings-form .settings-card header p:last-child{max-width:560px;font-size:11px;line-height:1.6}.profile-settings-form label{display:flex;flex-direction:column;gap:8px;margin-top:15px;color:#496058;font-size:11px;font-weight:800}.profile-settings-form .contact-grid{gap:16px}.profile-settings-form input,.profile-settings-form select,.profile-settings-form textarea{width:100%;border:1px solid #dce8e1;border-radius:12px;outline:0;background:linear-gradient(180deg,#fff,#fbfdfc);color:var(--ink);box-shadow:inset 0 1px 2px rgba(29,66,51,.03);transition:border-color .18s,box-shadow .18s,background .18s}.profile-settings-form input,.profile-settings-form select{height:48px;padding:0 14px}.profile-settings-form textarea{min-height:104px;padding:13px 14px;resize:vertical;font:inherit;line-height:1.5}.profile-settings-form :is(input,select,textarea):hover{border-color:#b8d4c6}.profile-settings-form :is(input,select,textarea):focus{border-color:var(--green);background:#fff;box-shadow:0 0 0 4px rgba(17,128,100,.11),0 5px 14px rgba(17,128,100,.06)}.profile-settings-form .settings-save{min-height:48px;border-radius:13px;box-shadow:0 8px 18px rgba(17,128,100,.16)}.profile-settings-form>form .settings-save{margin-top:14px}.profile-settings-form>form textarea{margin-bottom:2px}.profile-settings-form button{height:48px;min-height:48px;padding:0 18px;border-radius:12px;font-size:11px;line-height:1}.profile-settings-form .guardian-form-card>.primary-button,.profile-settings-form .settings-save{min-width:210px}.profile-settings-form>section.settings-card>header>.outline-button{min-width:190px}.profile-settings-form .guardian-actions>button{min-width:150px}.profile-settings-form .guardian-actions{align-items:center}.profile-settings-form .guardian-actions .primary-button{margin-top:0}.profile-settings-form select{appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,#78978a 0),linear-gradient(135deg,#78978a 50%,transparent 0),linear-gradient(90deg,#e1ece6,#e1ece6);background-position:calc(100% - 18px) 21px,calc(100% - 12px) 21px,calc(100% - 36px) 10px;background-size:6px 6px,6px 6px,1px 28px;background-repeat:no-repeat;cursor:pointer}.profile-settings-form select:hover{background-color:#fbfefc}.profile-settings-form select option{padding:10px 12px;color:var(--ink);background:#fff}.profile-settings-form>section.settings-card>header{align-items:flex-start;justify-content:space-between}.guardian-form-list{display:grid;gap:14px}.guardian-form-card{padding:18px;border:1px solid #e5eee9;border-radius:14px;background:#fbfdfc}.guardian-form-card.new{margin-top:14px;border-color:#9bcbb9;background:#f4faf7}.guardian-form-card h3{margin:0 0 4px;font:800 14px var(--font-plus-jakarta),sans-serif;color:var(--ink)}.guardian-fields{min-width:0;margin:0;padding:0;border:0}.guardian-edit-note{margin:4px 0 8px;color:var(--muted);font-size:11px;line-height:1.5}.guardian-form-card.read-only :is(input,select){color:#53645d;background-color:#f1f5f3;box-shadow:none;cursor:default;opacity:1}.guardian-form-card .primary-button{margin-top:16px}.guardian-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.profile-settings-form label.primary-guardian-check{flex-direction:row;align-items:center;gap:9px;margin-top:15px;color:#496058}.profile-settings-form .primary-guardian-check input{width:17px;height:17px;accent-color:var(--green)}@media (max-width:1120px){.dashboard-content{grid-template-columns:1fr}.dashboard-side{display:grid;grid-template-columns:1fr 1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.profile-summary>div{display:none}.profile-summary{grid-template-columns:43px 16px}}@media (max-width:900px){:root{--sidebar:272px}.login-page{grid-template-columns:1fr}.login-showcase{display:none}.login-panel{min-height:100svh;padding:36px 24px}.login-mobile-brand{display:block}.sidebar{transform:translateX(-100%);transition:transform .24s ease;box-shadow:18px 0 55px rgba(20,43,34,.15)}.sidebar.open{transform:translateX(0)}.sidebar-close{display:grid;place-items:center;cursor:pointer}.sidebar-backdrop{position:fixed;inset:0;z-index:35;border:0;background:rgba(14,28,23,.45);backdrop-filter:blur(2px)}.sidebar-backdrop.visible{display:block}.portal-page{margin-left:0}.mobile-menu{display:grid;place-items:center}.topbar{justify-content:flex-start;gap:14px}.topbar-actions{margin-left:auto}.school-identity>div{display:none}.school-identity>span{width:42px;height:42px}.score-row{grid-template-columns:190px 1fr 38px}}@media (max-width:680px){.portal-main{padding:28px 18px 55px}.topbar{height:74px;padding:0 16px}.topbar-actions{gap:5px}.profile-summary{padding-left:10px;border-left:0}.profile-summary>svg{display:none}.profile-summary{grid-template-columns:40px}.profile-summary>span{width:40px;height:40px}.page-header{align-items:flex-start}.page-header h1{font-size:29px}.page-header>div>p:last-child{font-size:13px}.child-hero{align-items:flex-start}.child-hero>a{display:none}.fee-alert{grid-template-columns:34px 1fr}.fee-alert>a{grid-column:2;width:max-content}.assessment-overview,.school-about,.school-info-grid,.settings-grid,.summary-grid{grid-template-columns:1fr}.assessment-overview>div{padding:14px 6px;border-right:0;border-bottom:1px solid var(--line)}.dashboard-side{display:flex}.activity-feature{grid-template-columns:100px 1fr}.activity-arrow{display:none}.activity-art{min-height:105px}.teacher-note{display:none}.card-grid,.detail-hero{grid-template-columns:1fr}.detail-art{min-height:250px}.detail-grid{grid-template-columns:1fr}.detail-hero-copy{padding:25px}.payment-tools{align-items:stretch;flex-direction:column}.payment-row-head{display:none}.payment-row{position:relative;grid-template-columns:1fr auto;gap:7px;padding:16px 18px}.payment-row>span:nth-of-type(2){grid-column:1}.payment-row>.status-badge{grid-column:2;grid-row:1}.payment-row>svg{position:absolute;right:18px;bottom:16px}.score-row{grid-template-columns:1fr 38px}.score-row>div:first-child{grid-column:1/-1}.invoice-details{grid-template-columns:1fr}.school-about>div{padding:18px 4px;border-right:0;border-bottom:1px solid var(--line)}.settings-save{justify-self:stretch}}@media (max-width:430px){.login-card h2{font-size:28px}.login-options{align-items:flex-start;gap:12px}.child-hero{padding:17px}.child-avatar{width:52px;height:52px;border-radius:15px}.child-identity h2{font-size:16px}.fee-alert p{line-height:1.5}.summary-card{padding:15px}.activity-feed,.assessment-card,.fee-card,.settings-card{padding:18px}.activity-feature{grid-template-columns:82px 1fr;gap:12px}.activity-art{min-height:90px}.activity-art>span{font-size:32px}.activity-copy h3{font-size:14px}.activity-copy>p{font-size:10px}.assessment-list-card{grid-template-columns:44px 1fr}.assessment-list-card>svg{display:none}.report-icon{width:44px;height:44px}.report-header{align-items:flex-start;padding:20px}.report-header .report-icon{width:52px;height:52px}.invoice-card{padding:21px}.invoice-card header{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}.topbar-actions{position:relative}.notification-button[aria-expanded=true],.profile-summary[aria-expanded=true]{color:var(--green);background:#eef7f3;border-radius:12px}.family-menu,.notification-menu{position:absolute;z-index:70;top:calc(100% + 13px);right:0;width:min(350px,calc(100vw - 30px));padding:10px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 24px 60px rgba(22,49,39,.17)}.family-menu header{display:flex;align-items:center;gap:11px;padding:8px 9px 13px}.family-menu header>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#865136;background:#f5dacb;font-weight:900}.family-menu header small,.family-menu header strong{display:block}.family-menu header small{margin-top:3px;color:var(--muted);font-size:9px}.family-menu>p{margin:12px 9px 6px;color:#98a39e;font-size:8px;font-weight:800;letter-spacing:1px}.family-menu>a,.family-menu>button{min-height:62px;display:grid;grid-template-columns:42px 1fr 18px;align-items:center;gap:11px;padding:8px 9px;border:0;border-radius:11px;color:inherit;background:transparent;text-align:left;text-decoration:none}.family-menu>button{width:100%;font:inherit;cursor:pointer}.family-menu>button:disabled{opacity:.65;cursor:wait}.family-menu>a.active,.family-menu>a:hover,.family-menu>button.active,.family-menu>button:hover:not(:disabled){background:#eaf6f1}.family-menu>a>span,.family-menu>button>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--green);background:var(--mint);font-weight:900}.family-menu>a>span.jisindo,.family-menu>button>span.jisindo{color:var(--blue);background:#e5eff9}.family-menu>a small,.family-menu>a strong,.family-menu>button small,.family-menu>button strong{display:block}.family-menu>a strong,.family-menu>button strong{font-size:11px}.family-menu>a small,.family-menu>button small{margin-top:3px;color:var(--muted);font-size:9px}.family-menu>a>svg,.family-menu>button>svg{width:16px;color:var(--green)}.family-menu footer{margin-top:7px;padding-top:8px;border-top:1px solid var(--line)}.family-menu footer .family-menu-logout,.family-menu footer a{min-height:40px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;color:var(--green);background:#f4f8f6;font-size:10px;font-weight:800;text-decoration:none}.family-menu footer .family-menu-logout{width:100%;margin-top:5px;padding:0 10px;color:#b2473e;cursor:pointer}.family-menu footer .family-menu-logout:hover{background:#fff1ef}.family-menu footer .family-menu-logout:disabled{opacity:.65;cursor:wait}.family-menu footer svg{width:15px}.family-menu.without-students header{border-bottom:0}.family-menu.without-students footer{margin-top:0;padding-top:0;border-top:0}.notification-menu{right:190px;width:min(390px,calc(100vw - 30px));padding:0}.notification-menu>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.notification-menu header small,.notification-menu header strong{display:block}.notification-menu header small{margin-top:3px;color:var(--muted);font-size:9px}.notification-menu header button{border:0;color:var(--green);background:transparent;font-size:9px;font-weight:800;cursor:pointer}.notification-menu>a{display:grid;grid-template-columns:38px 1fr 7px;gap:10px;padding:13px 16px;border-bottom:1px solid #edf1ef;color:inherit;text-decoration:none}.notification-menu>a.fresh,.notification-menu>a:hover{background:#eef8f4}.notification-menu>a>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:var(--green);background:var(--mint);font-size:11px;font-weight:900}.notification-menu a small,.notification-menu a strong,.notification-menu time{display:block}.notification-menu a strong{font-size:10px}.notification-menu a small{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45}.notification-menu time{margin-top:5px;color:#9aa49f;font-size:8px}.notification-menu>a>i{width:7px;height:7px;margin-top:5px;border-radius:50%;background:#e76e51}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;overflow:auto;background:rgba(18,34,28,.54);backdrop-filter:blur(4px)}.contact-dialog,.payment-upload-dialog{width:min(620px,100%);max-height:calc(100svh - 40px);overflow:auto;border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(11,34,26,.28)}.contact-dialog>header,.payment-upload-dialog>header{display:grid;grid-template-columns:46px 1fr 38px;gap:12px;align-items:center;padding:24px 26px 18px}.contact-dialog>header>span,.payment-upload-dialog>header>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:var(--green);background:var(--mint)}.contact-dialog header h2,.payment-upload-dialog header h2{margin:0;font:800 20px var(--font-plus-jakarta),sans-serif}.contact-dialog header p,.payment-upload-dialog header p{margin:4px 0 0;color:var(--muted);font-size:11px}.contact-dialog header button,.payment-upload-dialog header button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--muted);background:#f2f5f3;cursor:pointer}.contact-dialog header button svg,.payment-upload-dialog header button svg{width:17px}.bank-detail,.contact-recipient{margin:0 26px 4px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#f6faf8}.contact-recipient{display:grid;grid-template-columns:50px 1fr;align-items:center}.bank-detail>small,.contact-recipient>small{color:#8b9892;font-size:8px;font-weight:900;letter-spacing:.8px}.bank-detail span,.bank-detail strong,.contact-recipient span,.contact-recipient strong{display:block}.bank-detail strong,.contact-recipient strong{font-size:11px}.bank-detail span,.contact-recipient span{margin-top:2px;color:var(--muted);font-size:9px}.contact-dialog form,.payment-upload-dialog form{padding:0 26px 24px}.contact-dialog label,.payment-upload-dialog label{display:flex;flex-direction:column;gap:7px;margin-top:17px;font-size:11px;font-weight:800}.contact-dialog input,.contact-dialog select,.contact-dialog textarea,.payment-upload-dialog input,.payment-upload-dialog select{width:100%;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;outline:0}.contact-dialog input,.contact-dialog select,.payment-upload-dialog input,.payment-upload-dialog select{height:44px;padding:0 12px}.contact-dialog textarea{min-height:120px;padding:11px 12px;resize:vertical;font:inherit}.contact-dialog :is(input,select,textarea):focus,.payment-upload-dialog :is(input,select):focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(17,128,100,.1)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-note,.field-note{margin:14px 0 0;padding:10px 12px;border-radius:9px;color:var(--muted);background:#f3f7f5;font-size:9px;line-height:1.5}.contact-dialog form footer,.payment-upload-dialog form footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.bank-detail{margin-top:0}.bank-detail>small{display:block;margin-bottom:5px}.payment-upload-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f6faf8}.payment-upload-summary>div>span,.payment-upload-summary>div>strong{display:block}.payment-upload-summary>div>span{margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:600}.payment-upload-summary>div>strong{color:var(--ink);font-size:12px}.payment-upload-summary>p{display:flex;justify-content:space-between;gap:12px;grid-column:1/-1;margin:2px 0 0;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:600}.payment-upload-summary>p>strong{color:var(--ink);font-size:11px}.file-drop{position:relative;min-height:88px;display:grid!important;grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:14px;border:1px dashed #9bcbb9;border-radius:9px;color:var(--green);background:#f4faf7;transition:border-color .15s ease,background .15s ease}.file-drop.is-dragging{border-color:var(--green);background:#e9f6f0}.file-drop>svg{width:22px}.file-drop input.file-input-hidden{position:absolute;width:1px!important;height:1px!important;padding:0!important;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0!important}.file-drop-content{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;min-width:0}.file-drop-content>span{flex:1 1 190px;overflow-wrap:anywhere;color:#66746d;font-size:10px;font-weight:600}.file-picker-button{min-height:34px;padding:0 11px;border:1px solid #a9d4c3;border-radius:6px;color:var(--green);background:#fff;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.file-picker-button:hover{border-color:var(--green);background:#eef8f4}.file-picker-button:focus-visible{outline:3px solid rgba(17,128,100,.2);outline-offset:2px}.payment-result{display:flex;gap:10px;margin-top:15px;padding:13px;border-radius:11px}.payment-result.paid{color:var(--green);background:#eaf7f1}.payment-result.partial{color:#aa611b;background:#fff3e4}.payment-result>svg{flex:0 0 auto}.payment-result p,.payment-result strong{display:block}.payment-result p{margin:3px 0 0;color:#617069;font-size:10px;line-height:1.5}.payment-upload-trigger{white-space:nowrap}.payment-verification-status{align-items:flex-start;padding:16px}.payment-verification-status p{font-size:12px}.payment-upload-field{display:flex;flex-direction:column;gap:7px;margin-top:17px;font-size:11px;font-weight:800}.payment-upload-label{color:var(--ink)}.payment-upload-field>small{color:var(--muted);font-size:9px;font-weight:500}.payment-rejection-message{display:grid;gap:4px;margin:0 0 16px;padding:12px 14px;border:1px solid #efc8c1;border-radius:10px;color:#a94338;background:#fff4f2;font-size:11px;line-height:1.5}.payment-rejection-message p{margin:0}.guardian-social-feed{width:min(860px,100%);display:flex;flex-direction:column;gap:24px;align-self:center}.social-post{overflow:hidden}.social-post>header{display:grid;grid-template-columns:45px 1fr auto;gap:11px;align-items:center;padding:16px 20px}.post-avatar{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;color:#9b651e;background:#fff0d9;font-weight:900}.social-post header small,.social-post header strong{display:block}.social-post header small{margin-top:3px;color:var(--muted);font-size:10px}.social-post header>b{color:var(--green);font-size:10px}.post-carousel{position:relative;min-height:520px;display:grid;place-items:center;overflow:hidden}.post-carousel:after{content:"";position:absolute;width:360px;height:360px;right:-100px;top:-110px;border:48px solid rgba(255,255,255,.22);border-radius:50%}.activity-art.peach,.post-carousel.peach{background:linear-gradient(135deg,#ffdb98,#f5a18e)}.activity-art.mint,.post-carousel.mint{background:linear-gradient(135deg,#bcebcf,#88cfae)}.activity-art.lavender,.post-carousel.lavender{background:linear-gradient(135deg,#d5c4f2,#a58ddb)}.activity-art.blue,.detail-art.blue,.post-carousel.blue{background:linear-gradient(135deg,#c7e1f7,#82afd9)}.post-scene{position:relative;z-index:1;font-size:110px}.post-carousel>button{position:absolute;z-index:3;top:50%;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.5);border-radius:50%;color:#fff;background:rgba(22,44,36,.6);cursor:pointer}.post-carousel>button:first-of-type{left:15px}.post-carousel>button:nth-of-type(2){right:15px}.post-counter{top:15px;right:15px;padding:6px 9px;border-radius:999px;color:#fff;background:rgba(22,44,36,.72);font-size:9px;font-weight:800}.post-counter,.post-dots{position:absolute;z-index:3}.post-dots{bottom:14px;display:flex;gap:6px}.post-dots i{width:7px;height:7px;border-radius:99px;background:rgba(255,255,255,.6)}.post-dots i.active{width:20px;background:#fff}.post-content{padding:17px 20px 21px}.post-action-row{display:flex;justify-content:flex-end;margin-bottom:10px}.post-action-row button{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--ink);background:transparent;cursor:pointer}.post-action-row button:last-child{margin-left:auto}.post-action-row button:hover{background:#edf6f2}.post-action-row button.liked{color:#d65358;background:#fff0f0}.post-action-row button.liked svg{fill:currentColor}.post-likes{display:block;margin:5px 0 10px;font-size:11px}.post-content>p{margin:0 0 12px;color:#4e5e56;font-size:12px;line-height:1.6}.post-content>p b{color:var(--ink)}.post-detail-link{display:inline-block;margin-top:13px;color:var(--green);font-size:10px;font-weight:800;text-decoration:none}.profile-page{display:flex;flex-direction:column;gap:20px}.profile-hero{display:flex;align-items:center;gap:20px;padding:28px;background:linear-gradient(120deg,#eef8f4,#fff)}.profile-hero>span{width:82px;height:82px;display:grid;place-items:center;flex:0 0 auto;border-radius:24px;color:#865136;background:#f5dacb;font-size:25px;font-weight:900}.profile-hero h1{margin:5px 0;font:800 30px var(--font-plus-jakarta),sans-serif}.profile-hero p:last-child{margin:0;color:var(--muted)}.profile-hero>a{margin-left:auto}.profile-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.profile-card{padding:26px}.profile-card h2{margin:0 0 20px;font:800 20px var(--font-plus-jakarta),sans-serif}.profile-card dl{margin:0}.profile-card dl>div{padding:14px 0;border-bottom:1px solid var(--line)}.profile-card dt{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.profile-card dt svg{width:14px}.profile-card dd{margin:5px 0 0;font-size:13px;font-weight:800}.linked-children{display:grid;gap:12px}.linked-children>a{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:13px;min-height:82px;padding:12px;border:1px solid var(--line);border-radius:14px;color:inherit;text-decoration:none}.linked-children>a:hover{border-color:#a7d2c2}.linked-children>a>span{width:56px;height:56px;display:grid;place-items:center;border-radius:15px;color:var(--green);background:var(--mint);font-weight:900}.linked-children>a>span.jisindo{color:var(--blue);background:#e5eff9}.linked-children small,.linked-children strong{display:block}.linked-children small{margin-top:4px;color:var(--muted);font-size:10px}.linked-children b{display:flex;align-items:center;gap:5px;color:var(--green);font-size:10px}.linked-children b svg{width:14px}.profile-empty-state{margin:0;padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:11px}.detail-media-slider{position:relative;width:100%;height:100%;min-height:360px;display:grid;place-items:center;overflow:hidden}.detail-media-slider img{width:100%;height:100%;min-height:360px;object-fit:cover}.detail-media-fallback{font-size:120px}.detail-media-slider button{position:absolute;top:50%;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;color:#fff;background:rgba(21,49,40,.62);transform:translateY(-50%);cursor:pointer}.detail-media-slider button:first-of-type{left:18px}.detail-media-slider button:nth-of-type(2){right:18px}.detail-media-slider button svg{width:22px}.detail-media-counter{position:absolute;top:16px;right:16px;padding:7px 10px;border-radius:999px;color:#fff;background:rgba(21,49,40,.7);font-size:11px;font-weight:800}.post-image{width:100%;height:100%;min-height:330px;object-fit:cover}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:18px;color:var(--muted);font-size:11px}.pagination button{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:10px;color:var(--green);background:#fff;font:inherit;font-weight:800;cursor:pointer}.pagination button:disabled{cursor:not-allowed;opacity:.45}@media (max-width:900px){.notification-menu{right:64px}.post-carousel{min-height:440px}.profile-grid{grid-template-columns:1fr}}@media (max-width:680px){.family-menu,.notification-menu{position:fixed;top:76px;right:14px;left:14px;width:auto}.contact-grid{grid-template-columns:1fr;gap:0}.contact-dialog>header,.payment-upload-dialog>header{grid-template-columns:40px 1fr 34px;padding:20px 18px 15px}.bank-detail,.contact-recipient{margin-right:18px;margin-left:18px}.contact-dialog form,.payment-upload-dialog form{padding-right:18px;padding-left:18px}.post-carousel{min-height:330px}.post-scene{font-size:76px}.social-post>header{grid-template-columns:40px 1fr}.social-post header>b{grid-column:2}.profile-hero{align-items:flex-start;padding:20px}.profile-hero>span{width:62px;height:62px;border-radius:18px}.profile-hero>a{margin-left:auto}.linked-children>a{grid-template-columns:48px 1fr}.linked-children>a>span{width:48px;height:48px}.linked-children b{grid-column:2}.page-header{flex-direction:column}.payment-upload-trigger{width:100%}}