/* Amal reference identity over the existing API-backed wallet. No route,
   action, form, capability, monetary value or provider is fabricated here. */
:root{--accent:#008750;--accent-deep:#00633c;--accent-soft:#e6f3ea;--canvas:#031b13;--canvas-ink:#f7f1df;--canvas-dim:#a7c6b5;--canvas-line:#49745b66;--r-sheet:22px;--r-md:18px;--r-sm:13px}
[data-theme='dark']{--accent:#36c286;--accent-deep:#a8e4bd;--accent-soft:#124331;--ink:#f3f3e8;--dim:#9dbbac;--mute:#7c9b8c;--bg:#031b13;--surface:#0c2a20;--surface-2:#123729;--hair:#3c624d66;--press:#244c3566;--dock-bg:#062016f5;--shadow-soft:0 8px 22px #0002}
.canvas{background:var(--canvas);padding-bottom:30px}.canvas.short{padding-bottom:28px}.canvas.bare{background:var(--canvas)}
:is(.canvas,.lock) .art{background-image:linear-gradient(90deg,#031b13ef 5%,#031b1377),url('assets/amal-coast-reference.png');background-size:cover,1672px 941px;background-position:center,35% 0;animation:none;transform:none;opacity:.52;inset:0}
:is(.canvas,.lock) .bloom,:is(.canvas,.lock) .drift{opacity:.15;animation:none}
.lock{background:#031b13}.lock .art{background-size:cover,1672px 941px;background-position:center,35% 0;opacity:.45;mask-image:linear-gradient(#000 0%,#000 40%,transparent 85%)}
.lock .logo:has(.i-gem){background:transparent}
.amal-brand-mark{width:265px;height:70px;position:relative;background:url('assets/amal-reference.png') -33px -3px / 620px 349px no-repeat;mix-blend-mode:lighten;flex:0 0 auto}
.lock :is(.haze,.mist,.orb,.bloom,.drift,.motes,.sheen){display:none}
.lock .logo.amal-brand-mark{width:265px;height:70px;border:0;border-radius:0;background:transparent url('assets/amal-reference.png') -33px -3px / 620px 349px no-repeat;box-shadow:none}
.lock h2{font-size:23px;font-weight:750;letter-spacing:-.6px}.lock p{font-weight:500;line-height:1.6;max-width:310px;text-align:center}
.balance-block{padding:19px 19px 28px;border-radius:18px;border:1px solid #82ad8666;background:linear-gradient(100deg,#0a432bea,#09271b55),url('assets/amal-coast-reference.png') -219px 0 / 1045px 588px;position:relative;overflow:hidden;margin-top:20px}
.balance-block:after{content:'';position:absolute;pointer-events:none;height:90px;width:140%;left:-20%;bottom:-79px;border-radius:50%;transform:rotate(-7deg);background:#053120;border-top:1px solid #dbca85;box-shadow:0 -8px 20px #2b805055}
.balance{font-size:36px;font-weight:650;letter-spacing:-1.7px;line-height:1.15}.balance small{font-size:22px}.balance-block .cap{font-weight:500}.tier{color:#f1e6bb;border-color:#c4cba555}
.pills{gap:9px;margin-top:19px}.pill{border-radius:18px;background:#0b3324cc;box-shadow:none;border-color:#4e785e66;min-height:62px}.pill.key{color:#f7f6e8;background:linear-gradient(145deg,#288d5f,#00663f);border-color:#87bf9466;box-shadow:none}.pill span{font-size:10px;font-weight:600}
.sheet{margin-top:-15px;border-radius:18px 18px 0 0;box-shadow:none}.sheet:before{display:none}.scroll{padding-top:18px}.btn{min-height:50px;font-weight:650}.btn.primary{background:linear-gradient(180deg,#42b77e,#00804d);border:1px solid #8dcca866;border-radius:25px;color:#fff;box-shadow:0 4px 12px #001f1520}.btn.primary:disabled{opacity:.42}.btn.quiet{border-radius:15px}
.seg{border-radius:12px;background:#0b2c1f;border-color:#426a5166;padding:4px}.seg button{border-radius:9px;font-weight:500}.seg button.on{background:#f6efda;color:#123324;font-weight:700}.c-search{border-radius:13px;background:#0d3125a0}
.plastic.brand-mir,.plastic.brand-balance,.prod:not(.plastic){border:1px solid #75977477;background-image:linear-gradient(100deg,#0d3529ea,#09271b44),url('assets/amal-coast-reference.png');background-position:center,-219px 0;background-size:auto,1045px 588px}.plastic-mark{color:#f4ecd6;letter-spacing:-.5px}.prod{border-radius:18px}
.dock{border-color:#315c4266;box-shadow:0 -3px 18px #00150e44}.dock button.on{color:var(--accent-deep)}.dock button{font-size:10px;min-height:48px}.cell .g{border-radius:14px}.row{min-height:58px}.c-title{font-size:23px}.topbar .ttl{font-size:19px}.field{border-radius:13px}.field:focus-within{outline:1px solid var(--accent)}
/* Clip the reference's coastline only: no physical cards, phone or collage
   content from the lower part of the source image is exposed. */
body{background:#020e09}.app{width:100%;max-width:460px;margin-inline:auto;border-inline:1px solid #20403155}
:is(.canvas,.lock) .art{height:230px;inset:0 0 auto;background-image:linear-gradient(180deg,#031b1366,#031b13),url('assets/amal-coast-reference.png');background-size:100% 100%,1672px 941px;background-position:center,-350px 0;mask-image:linear-gradient(#000,transparent);opacity:.72}
.lock .art{height:280px;inset:0 0 auto;background-image:linear-gradient(180deg,#031b1322,#031b13),url('assets/amal-coast-reference.png');background-size:100% 100%,1672px 941px;background-position:center,-350px 0;mask-image:linear-gradient(#000 20%,transparent);opacity:.75}
.lock .auth-form{width:min(100%,360px);max-width:360px;align-self:center}.lock .auth-form .field,.lock .auth-form .btn,.lock .auth-form .auth-err{width:100%;max-width:none}
@media(max-width:420px){.balance{font-size:34px}.canvas{padding-left:18px;padding-right:18px}.app{border:0}.lock .auth-form{width:100%;max-width:360px}.lock .logo.amal-brand-mark{margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Isolated refinement proposal: compact real data, no invented capabilities. */
[data-screen="home"] .canvas{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:15px}
[data-screen="home"] .id-row{margin-top:0;gap:10px}
[data-screen="home"] .ava{width:36px;height:36px;border-radius:50%;background:linear-gradient(150deg,#36a36f,#005136);border:1px solid #78b08f55;font-weight:650}
[data-screen="home"] .id-row .greet{font-size:10px;font-weight:450;color:#bdd3c2}
[data-screen="home"] .id-row .who{font-size:13px;font-weight:600}
[data-screen="home"] .ghost-btn{width:33px;height:33px;background:transparent;border-color:#50745944;color:#f1efdc}
[data-screen="home"] .balance-block{margin-top:16px;padding:15px 17px 24px;border-radius:14px;background-image:linear-gradient(100deg,#0b432def,#073322c9),url('assets/amal-coast-reference.png');border-color:#8ac99877}
[data-screen="home"] .balance-block .cap{font-size:10px;font-weight:450}
[data-screen="home"] .balance{font-size:31px;letter-spacing:-1px;margin-top:8px;font-weight:650}
[data-screen="home"] .delta{font-size:9px;margin-top:7px;color:#bddbc8;font-weight:450}
[data-screen="home"] .tier{font-size:7px;padding:3px 6px;font-weight:500;letter-spacing:.4px}
[data-screen="home"] .pills{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:16px}
[data-screen="home"] .pill,[data-screen="home"] .pill.key{background:none;border:0;box-shadow:none;padding:0;min-height:0;gap:7px;color:#ebf5ec}
[data-screen="home"] .pill .gl{height:43px;width:43px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(150deg,#18543c,#062d21);border:1px solid #3a705450;color:#d9f1df;font-size:18px}
[data-screen="home"] .pill.key .gl{background:linear-gradient(140deg,#299562,#046e43);color:#f3ffee}
[data-screen="home"] .pill span{font-size:9px;font-weight:500}
[data-screen="home"] .sheet{margin-top:0;border-radius:0;background:var(--bg)}
[data-screen="home"] .scroll{padding-top:9px}
[data-screen="home"] section{margin-top:23px}
[data-screen="home"] section:first-child{margin-top:0}
[data-screen="home"] section>.gap{display:none}
[data-screen="home"] .cap-row .h{font-size:13px;font-weight:600;letter-spacing:-.15px}
.amal-home-all{display:flex;align-items:center;gap:3px;border:0;background:none;color:#8ac4a0;font-family:inherit;font-size:10px;padding:4px 0 4px 8px;cursor:pointer}
.amal-home-all .ic-svg{height:11px;width:11px}
[data-screen="home"] .op{padding-top:11px;padding-bottom:11px}
[data-screen="home"] .op .ic{height:34px;width:34px;border-radius:50%;background:#133e2d;color:#d7ecdc}
[data-screen="home"] .op .t{font-size:12px;font-weight:550}
[data-screen="home"] .op .s{font-size:9px;margin-top:3px;font-weight:400}
[data-screen="home"] .op .v{font-size:12px;font-weight:550}
.op .v.in,.sum-strip b.in{color:#70d6a2}
[data-screen="home"] .grid4{gap:9px}
[data-screen="home"] .cell{border-radius:11px;background:#0b2b20;border:1px solid #41684e44;padding:10px 3px}
[data-screen="home"] .cell .g{height:25px;margin-bottom:5px;background:none;color:#accdb5}
[data-screen="home"] .cell span{font-size:9px;font-weight:450}
[data-screen="home"] .amal-home-verification{margin-top:23px}
.hub-card{background:#0c2d20;border:1px solid #355d4344;color:#dcecdf;border-radius:13px;min-height:90px;box-shadow:none;padding:12px 10px}
.hub-card:after{display:none}.hub-ico{background:#183d2b;color:#a5cbb1;border-radius:50%}.hub-t{font-size:11px;font-weight:600}.hub-s{font-size:9px;font-weight:450;color:#94b09e}
.dock{grid-template-columns:repeat(5,1fr);width:100%;max-width:none;bottom:0;padding:7px 13px max(15px,env(safe-area-inset-bottom));border:0;border-top:1px solid #355f4344;border-radius:0;box-shadow:none;background:#051e14f5;backdrop-filter:blur(12px);gap:5px}
.dock button{font-size:8px;font-weight:450;min-height:46px;padding:7px 2px 4px;gap:5px;color:#8aa994}
.dock button .gl{font-size:19px}.dock button.on{background:none;color:#f2e8c5;box-shadow:none}
.dock button[data-arg="scanner"]{width:48px;height:48px;border-radius:50%;justify-self:center;background:#12402c;border:1px solid #466d4e55;color:#dbeeda;transform:translateY(-7px);padding:7px 0 4px;gap:1px}
.dock button[data-arg="scanner"] .gl{font-size:22px}.dock button[data-arg="scanner"]:active{transform:translateY(-7px) scale(.96)}
[data-screen="cards"] .svc-hero-body{display:none}
[data-screen="cards"] .canvas{padding-bottom:23px}
[data-screen="cards"] .topbar{margin-top:0}
[data-screen="cards"] .plastic-stack{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 0 10px;scrollbar-width:none}
[data-screen="cards"] .plastic-stack>.prod.plastic{flex:0 0 100%;width:100%;scroll-snap-align:start;min-height:190px;aspect-ratio:1.7}
[data-screen="cards"] .issue-card{border-radius:12px;padding:12px;box-shadow:none;background:var(--surface)}
[data-screen="cards"] .issue-card .t{font-size:12px;font-weight:600}
@media(max-width:420px){[data-screen="home"] .balance{font-size:31px}}
