.luna-nav-icon svg,.luna-top-button svg,.luna-moon-mark svg{width:1.55em;height:1.55em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.luna-nav-icon svg{width:25px;height:25px}
.luna-top-button>span{display:grid;place-items:center}
.luna-top-button svg{width:20px;height:20px}
.luna-moon-mark{display:grid!important;place-items:center}
.luna-moon-mark svg{width:28px;height:28px}
.luna-composer{grid-template-columns:minmax(0,1fr) 40px 40px 44px!important}
.luna-receipt-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(13,110,83,.18);border-radius:12px;background:#eefbf6;color:#08785b;cursor:pointer}
.luna-receipt-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.luna-receipt-button:hover{background:#dff7ee;transform:translateY(-1px)}
.luna-receipt-button.processing{animation:luna-receipt-pulse 1.2s infinite}
.luna-composer{align-items:stretch}
.luna-composer .luna-mic-button,
.luna-composer .luna-receipt-button,
.luna-composer>button[type="submit"]{
  display:grid;
  place-items:center;
  flex:0 0 43px;
  align-self:stretch;
  width:43px;
  height:auto;
  min-height:43px;
  padding:0;
}
.luna-composer .luna-mic-button svg,
.luna-composer .luna-receipt-button svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luna-panel-skills{padding:0 16px 10px}
.luna-web-skills{border:1px solid rgba(9,105,79,.14);border-radius:16px;background:linear-gradient(145deg,#f7fffc,#eef9f5);overflow:hidden}
.luna-web-skills summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none}
.luna-web-skills summary::-webkit-details-marker{display:none}
.luna-web-skills summary>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column}
.luna-web-skills summary b{font-size:13px;color:#073d30}
.luna-web-skills summary small{font-size:10px;color:#6b7f78;margin-top:2px}
.luna-web-skills summary>i{font-style:normal;font-size:20px;transition:transform .2s}
.luna-web-skills[open] summary>i{transform:rotate(90deg)}
.luna-web-skills-moon{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;color:#dfffee;background:linear-gradient(145deg,#073d30,#0d765a);font-size:20px}
.luna-web-skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px 10px}
.luna-web-skills-grid button{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid rgba(9,105,79,.12);border-radius:12px;background:#fff;color:#163c32;text-align:left;cursor:pointer;transition:.18s ease}
.luna-web-skills-grid button:hover{border-color:#54d8aa;box-shadow:0 8px 18px rgba(5,77,57,.09);transform:translateY(-1px)}
.luna-web-skills-grid button em{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:10px;background:#eff8f4;font-style:normal}
.luna-web-skills-grid button em svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.luna-web-skills-grid button span{display:flex;min-width:0;flex-direction:column}
.luna-web-skills-grid button b{font-size:11px}
.luna-web-skills-grid button small{overflow:hidden;color:#789088;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.luna-web-skills-grid button.receipt{grid-column:1/-1;background:linear-gradient(110deg,#092f26,#0e6d55);color:#fff}
.luna-web-skills-grid button.receipt em{background:rgba(255,255,255,.12)}
.luna-web-skills-grid button.receipt small{color:#aee9d5}
.luna-page-skills{margin-bottom:14px}
.luna-page-skills .luna-web-skills-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.luna-page-skills .luna-web-skills-grid button.receipt{grid-column:auto}
.luna-page-hero{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:12px;margin-bottom:14px}.luna-page-hero>div,.luna-page-hero>button{display:flex;align-items:center;gap:12px;min-height:78px;padding:13px 16px;border:1px solid rgba(109,236,189,.18);border-radius:20px;background:linear-gradient(135deg,#082a23,#0d5e4a);color:#fff}.luna-page-orbit>span{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:radial-gradient(circle at 35% 30%,#d8fff1,#6deCBD 45%,#0e8061 70%);box-shadow:0 0 26px rgba(109,236,189,.26);animation:luna-orbit-breathe 3.2s ease-in-out infinite}.luna-page-orbit svg{width:32px;height:32px;fill:none;stroke:#063d30;stroke-width:1.8}.luna-page-orbit>div{display:flex;flex-direction:column}.luna-page-orbit b{font:800 18px/1 Manrope,sans-serif}.luna-page-orbit small{margin-top:6px;color:#a9d7c7;font-size:10px}.luna-page-hero>button{display:grid;grid-template-columns:minmax(0,1fr) auto;text-align:left;cursor:pointer}.luna-page-hero>button span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8ff0d0}.luna-page-hero>button b{font:800 22px/1 Manrope,sans-serif}.luna-page-hero>button small{grid-column:1/-1;color:#b0d5c8;font-size:10px}.luna-page-hero>button:hover{border-color:rgba(109,236,189,.46);transform:translateY(-1px)}@keyframes luna-orbit-breathe{50%{transform:scale(1.05);box-shadow:0 0 38px rgba(109,236,189,.38)}}

.luna-message.assistant.loading{background:transparent!important;box-shadow:none!important;padding-left:0!important}
.luna-thinking{display:flex;align-items:center;gap:10px;padding:5px}
.luna-thinking-orb,.luna-receipt-orb{display:block;width:24px;height:24px;border-radius:50%;background:conic-gradient(from 0deg,#6deCBD,#0c6e55,#d8fff1,#6deCBD);box-shadow:0 0 0 4px rgba(109,236,189,.13);animation:luna-spin 1.15s linear infinite}
.luna-thinking-dots{display:flex;gap:4px}
.luna-thinking-dots i{width:6px;height:6px;border-radius:50%;background:#18a77c;animation:luna-dot 1s infinite ease-in-out}
.luna-thinking-dots i:nth-child(2){animation-delay:.14s}.luna-thinking-dots i:nth-child(3){animation-delay:.28s}

.luna-web-quick-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.luna-web-quick{padding:9px 12px;border:1px solid rgba(13,110,83,.22);border-radius:999px;background:#fff;color:#095b46;font:700 12px/1.2 "DM Sans",sans-serif;cursor:pointer}
.luna-web-quick.ok{background:#0b7258;color:#fff}.luna-web-quick.ghost{background:#f5f8f7;color:#5c6d68}.luna-web-quick.suggested{background:#def7ed}
.luna-web-quick:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(5,77,57,.12)}
.luna-web-quick:disabled{opacity:.62;cursor:default;transform:none}.luna-web-quick.picked{outline:2px solid #6deCBD}
.luna-web-confirm>div:not(.luna-web-quick-row){display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:12px;border-radius:12px;background:#f3faf7}
.luna-web-confirm strong{color:#073d30}.luna-web-confirm span{font-size:12px;color:#526b63}.luna-web-confirm .warning{margin:10px 0 0;padding:9px;border-radius:10px;background:#fff4d8;color:#745314;font-size:11px}
.luna-web-option-grid{display:grid;gap:7px;margin-top:10px}
.luna-web-option-grid button{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:9px;border:1px solid rgba(13,110,83,.17);border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.luna-web-option-grid button>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:#e2f8ef;color:#08785b;font-weight:800}
.luna-web-option-grid button>div{display:flex;min-width:0;flex-direction:column}.luna-web-option-grid b{color:#173f34;font-size:12px}.luna-web-option-grid small{color:#779087;font-size:10px}

.luna-proactive-web{margin:18px 0;padding:20px;background:linear-gradient(135deg,#062f26,#0a5d49 56%,#0b7659);color:#fff;position:relative;overflow:hidden}
.luna-proactive-web:before{content:"";position:absolute;right:-80px;top:-90px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(109,236,189,.26),transparent 68%)}
.luna-proactive-web-head{display:flex;align-items:center;justify-content:space-between;position:relative}
.luna-proactive-web-head span,.forecast-engine-web-head span{color:#73edc1;font-size:10px;font-weight:800;letter-spacing:.18em}
.luna-proactive-web-head h3,.forecast-engine-web-head h3{margin:4px 0 0;font:700 18px/1.2 Manrope,sans-serif}
.luna-proactive-web-head>b,.forecast-engine-web-head>b{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.1);font-size:10px}
.luna-proactive-web-head>b i,.forecast-engine-web-head>b i{width:7px;height:7px;border-radius:50%;background:#6deCBD;box-shadow:0 0 0 4px rgba(109,236,189,.12);animation:luna-dot 1.2s infinite}
.luna-proactive-web-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;position:relative}
.luna-proactive-web-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.075)}
.luna-proactive-web-list article>em{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(109,236,189,.13);font-style:normal}
.luna-proactive-web-list article>div{display:flex;min-width:0;flex-direction:column}.luna-proactive-web-list article b{font-size:12px}.luna-proactive-web-list article span{margin-top:3px;color:#c4ded5;font-size:10px;line-height:1.35}
.luna-proactive-web-list article button{align-self:end;padding:7px 9px;border:0;border-radius:9px;background:#6deCBD;color:#063c2e;font-weight:800;font-size:10px;cursor:pointer}
.luna-proactive-web-empty{position:relative;margin:14px 0 0;color:#c2ddd3;font-size:12px}

.forecast-engine-web{margin:16px 0;padding:18px;border-radius:20px;background:#071f1a;color:#fff;box-shadow:0 18px 42px rgba(3,35,27,.18)}
.forecast-engine-web-head{display:flex;align-items:center;justify-content:space-between}
.forecast-engine-web>div:last-child{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}
.forecast-engine-web>div:last-child button{display:grid;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:9px;padding:11px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:#0b3027;color:#fff;text-align:left;cursor:pointer;transition:.18s}
.forecast-engine-web>div:last-child button:hover{background:#0f4436;border-color:rgba(109,236,189,.32);transform:translateY(-2px)}
.forecast-engine-web button em{font-style:normal}.forecast-engine-web button span{display:flex;min-width:0;flex-direction:column}.forecast-engine-web button b{font-size:11px}.forecast-engine-web button small{margin-top:2px;color:#97b9ad;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forecast-engine-web button>i{font-style:normal;color:#6deCBD}

.luna-receipt-user-file{display:flex;align-items:center;gap:10px}.luna-receipt-user-file>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.18);font-size:11px;font-weight:800}.luna-receipt-user-file>div{display:flex;min-width:0;flex-direction:column}.luna-receipt-user-file b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.luna-receipt-user-file small{font-size:10px;opacity:.74}
.luna-receipt-user-file>span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.luna-receipt-progress{display:flex;align-items:center;gap:12px;min-width:250px}.luna-receipt-progress>div{display:flex;flex:1;flex-direction:column}.luna-receipt-progress b{font-size:12px}.luna-receipt-progress div>span{margin:3px 0 8px;color:#6e817b;font-size:10px}.luna-receipt-progress div>i{display:block;height:5px;border-radius:999px;background:#e0ece8;overflow:hidden}.luna-receipt-progress div>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d7359,#6deCBD);transition:width .25s}
.luna-receipt-rejected{display:flex;flex-direction:column;gap:5px}.luna-receipt-rejected>b{color:#743d27}.luna-receipt-rejected>span{font-size:12px}.luna-receipt-rejected>small{color:#7b6d68;font-size:10px;line-height:1.4}
.luna-proposal-receipt-meta{margin:7px 0;padding:7px 9px;border-radius:9px;background:#edf9f4;color:#3d665a;font-size:10px}
.luna-operational-receipt{padding:12px;border:1px solid #b9e8d7;border-radius:14px;background:#f0fbf7}.luna-operational-receipt-head{display:flex;align-items:center;gap:10px}.luna-operational-receipt-head>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#0b7258;color:#fff}.luna-operational-receipt-head>div{display:flex;flex-direction:column}.luna-operational-receipt small,.luna-operational-receipt p{color:#627a72;font-size:10px}.luna-operational-receipt>div:not(.luna-operational-receipt-head){display:flex;flex-direction:column;margin-top:9px;font-size:11px}.luna-operational-receipt p{margin:9px 0 0}
.primary-metric-card[data-dashboard-composition]{cursor:pointer;transition:transform .18s,box-shadow .18s}.primary-metric-card[data-dashboard-composition]:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(14,66,52,.12)}.primary-metric-card[data-dashboard-composition]:focus-visible{outline:3px solid rgba(109,236,189,.55);outline-offset:3px}
.dashboard-composition-card{max-width:720px}.dashboard-composition-total{display:flex;align-items:flex-end;justify-content:space-between;padding:15px 0;border-bottom:1px solid #e4ece9}.dashboard-composition-total span{color:#6b7c76;font-size:12px}.dashboard-composition-total strong{font:800 26px/1 Manrope,sans-serif;color:#083e31}
.dashboard-composition-list{display:grid;gap:10px;margin-top:15px}.dashboard-composition-list>div{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,1.3fr) 90px;align-items:center;gap:12px}.dashboard-composition-list span{display:flex;min-width:0;flex-direction:column}.dashboard-composition-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.dashboard-composition-list small{color:#82918c;font-size:9px}.dashboard-composition-list i{display:block;height:7px;border-radius:99px;background:#e9f0ed;overflow:hidden}.dashboard-composition-list i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d7359,#6deCBD)}.dashboard-composition-list>div>strong{text-align:right;font-size:12px}
.dashboard-composition-top{margin-top:22px;padding-top:16px;border-top:1px solid #e4ece9}.dashboard-composition-top h3{margin:0 0 10px;font-size:13px}.dashboard-composition-top>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0}.dashboard-composition-top span{display:flex;flex-direction:column;font-size:11px}.dashboard-composition-top small{color:#83938e;font-size:9px}
.transaction-category-breakdown{margin-bottom:18px}.transaction-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 18px}.transaction-category-grid article{padding:12px;border:1px solid #dfebe7;border-radius:14px;background:linear-gradient(145deg,#fff,#f8fbfa)}.transaction-category-grid article>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px}.transaction-category-grid article>div>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#edf8f4}.transaction-category-grid article b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.transaction-category-grid article strong{font-size:11px;color:#0c6e55}.transaction-category-grid article>i{display:block;height:6px;margin:10px 0 6px;border-radius:99px;background:#e5eeeb;overflow:hidden}.transaction-category-grid article>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d7359,#6deCBD);animation:category-grow .65s ease-out both}.transaction-category-grid article>small{color:#62756e;font-size:10px;font-weight:700}@keyframes category-grow{from{width:0!important}}

@keyframes luna-spin{to{transform:rotate(360deg)}}@keyframes luna-dot{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes luna-receipt-pulse{50%{box-shadow:0 0 0 6px rgba(109,236,189,.18)}}
@media (max-width:1180px){.luna-proactive-web-list{grid-template-columns:1fr}.forecast-engine-web>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.luna-page-skills .luna-web-skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.luna-composer{grid-template-columns:minmax(0,1fr) 38px 38px 42px!important}.luna-composer .luna-mic-button,.luna-composer .luna-receipt-button,.luna-composer>button[type="submit"]{flex-basis:39px;width:39px;min-height:39px}.luna-web-skills-grid,.luna-page-skills .luna-web-skills-grid{grid-template-columns:1fr}.forecast-engine-web>div:last-child{grid-template-columns:1fr}.luna-proactive-web-head,.forecast-engine-web-head{align-items:flex-start;gap:10px}.luna-proactive-web-head>b,.forecast-engine-web-head>b{white-space:nowrap}.transaction-category-grid{grid-template-columns:1fr}.dashboard-composition-list>div{grid-template-columns:minmax(110px,1fr) 80px}.luna-page-hero{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.luna-thinking-orb,.luna-receipt-orb,.luna-proactive-web-head>b i,.forecast-engine-web-head>b i,.luna-receipt-button.processing,.luna-page-orbit>span{animation:none!important}}
