.portal-hero{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;margin-bottom:22px}.portal-welcome,.portal-weather{padding:34px;border-radius:28px}.portal-welcome{background:linear-gradient(135deg,#087c78,#075a59);color:#fff}.portal-welcome small,.module-head small{color:#f2b15c;font-weight:900;letter-spacing:.15em}.portal-welcome h1{margin:8px 0 13px;font-size:clamp(2.7rem,6vw,5rem)}.portal-welcome p{max-width:680px;margin:0;color:#d8eeea;font-size:18px}.portal-weather{display:flex;flex-direction:column;justify-content:center;background:#dcecdf}.portal-weather strong{margin:12px 0 4px;font-size:58px;line-height:1}.portal-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.portal-module{position:relative;min-height:190px;padding:23px;border:1px solid #e4d9cf;border-radius:24px;background:#fff;text-decoration:none;overflow:hidden;box-shadow:0 10px 30px rgba(48,37,33,.06);transition:.18s ease}.portal-module:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(48,37,33,.11)}.portal-module .module-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:#f5e5da;font-size:23px}.portal-module h2{margin:18px 0 5px}.portal-module p{margin:0;color:#766960}.portal-module strong{position:absolute;right:18px;top:18px;min-width:32px;padding:5px 9px;border-radius:999px;background:#f4eee8;text-align:center}.module-kitchen{background:linear-gradient(145deg,#fff,#fff1e6)}.module-home{background:linear-gradient(145deg,#fff,#eef5e9)}.module-calendar{background:linear-gradient(145deg,#fff,#eef3fb)}.module-school{background:linear-gradient(145deg,#fff,#fff5d9)}.module-activity{background:linear-gradient(145deg,#fff,#e9f6f3)}.module-music{background:linear-gradient(145deg,#fff,#f2ecf8)}.portal-today{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.module-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.module-head h1{margin:5px 0}.module-layout{display:grid;grid-template-columns:minmax(290px,.75fr) minmax(0,1.25fr);gap:20px}.module-form{align-self:start;position:sticky;top:100px}.item-list{display:grid;gap:11px}.portal-item{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:13px;padding:16px;border:1px solid #e1d6cc;border-radius:17px;background:#fff}.portal-item.done{opacity:.58}.portal-item.done h3{text-decoration:line-through}.item-symbol{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#f4e9df}.portal-item h3{margin:0 0 4px;font-size:17px}.portal-item p{margin:3px 0;color:#74675f;font-size:13px}.item-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f1ece7;color:#6c5d55;font-size:10px;font-weight:900;text-transform:uppercase}.tag.high{background:#fee3dc;color:#a23c2b}.inline-actions{display:flex;gap:6px}.mini-btn{padding:7px 9px;border-radius:9px;font-size:11px}.mini-btn.danger{margin:0;background:#9f3529;color:#fff}.empty-module{padding:48px;text-align:center}.music-toolbar{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:10px;align-items:end;margin-bottom:20px}.music-toolbar input,.music-toolbar select{margin-top:5px}.music-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.music-card{padding:20px;border:1px solid #dfd4cb;border-radius:20px;background:#fff}.music-card h2{margin:8px 0}.music-card small{color:#9b4b35;font-weight:900}.music-card .actions{margin-top:15px}.music-card .btn{padding:9px 12px;font-size:12px}.private-note{padding:12px 15px;border-radius:13px;background:#e5f2ed;color:#2e6655;font-size:13px;font-weight:700}@media(max-width:950px){.portal-hero,.module-layout,.portal-today{grid-template-columns:1fr}.portal-modules{grid-template-columns:repeat(2,1fr)}.module-form{position:static}.music-toolbar{grid-template-columns:1fr 1fr}.filter-wide{grid-column:1/-1}.music-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.portal-modules,.music-card-grid,.music-toolbar{grid-template-columns:1fr}.portal-welcome,.portal-weather{padding:24px}.portal-module{min-height:165px}.portal-item{grid-template-columns:auto 1fr}.inline-actions{grid-column:1/-1;justify-content:flex-end}.filter-wide{grid-column:auto}}
